📅  最后修改于: 2020-04-28 01:00:42             🧑  作者: Mango
Seq2seq
由Google首次引入机器翻译。在此之前,翻译工作非常幼稚。您以前键入的每个单词都被转换为其目标语言,而不考虑其语法和句子结构。Seq2seq通过深度学习彻底改变了翻译过程。它不仅在翻译时考虑了当前单词/输入,还考虑了其邻域。
如今,它可用于各种不同的应用程序,例如图像字幕,会话模型,文本摘要等。
Seq2seq工作:
顾名思义,seq2seq将一个单词序列(句子或词组)作为输入,并生成一个单词输出序列。它通过使用递归神经网络(RNN)来实现。尽管很少使用RNN的原始版本,但使用了更高级的版本,即LSTM或GRU。这是因为RNN存在梯度消失的问题。Google提出的版本使用GRU。它通过在每个时间点进行两次输入来发展单词的上下文。一个来自用户,另一个来自其先前的输出,因此名称为recurrent(输出作为输入)。
它主要有两个部分,即编码器和解码器,因此有时被称为Encoder-Decoder Network。
编码器: 它使用深层神经网络层并将输入的单词转换为相应的隐藏向量。每个向量代表当前单词和该单词的上下文。
解码器: 类似于编码器。它以编码器生成的隐藏向量、其自身的隐藏状态和当前单词为输入,以生成下一个隐藏向量,并最终预测下一个单词。
除了这两个之外,许多优化还导致了seq2seq的其他组件: