对文章 Sequence to Sequence Learning with Neural Networks 进行总结
文章构造了一个4层Deep LSTM网络, 每层有1000个cell, 整个网络呈现encoder-decoder结构,encoder把variable length 的input sequence映射到一个fixed dimensional的向量,decoder再映射回output sequence。
模型完成一个英文到中文的翻译任务,如下,先把序列x映射到隐层v,再输出序列y,输出为vocabulary里词语(8000个)的softmax概率。
训练目标为
推测inference为
结果:
备注: (1)训练过程会出现梯度爆炸, 所以对 梯度的Norm-2进行了限制scale。
(2)句子长短不一,在构建batch的时候注意挑相似长度的组成一个batch ,以防止计算资源浪费。
(3)在inference的时候是实时更新hypothesis库里的翻译结果,每预测一个词会对产生翻译的句子进行top-B的beam search