基于编码器 - 解码器模型的神经机器翻译实现
1. 编码器 - 解码器模型推理流程
神经机器翻译(NMT)的推理架构流程与训练流程有所不同。推理时,源语言输入序列被送入编码器网络,生成的最终隐藏状态和细胞状态 [hf, cf] 会被送入解码器的隐藏状态和细胞状态。解码器会被转换为单时间步,其第一个输入是虚拟的 [START] 词。基于 [hf, cf] 和初始的 [START] 词,解码器会输出一个词 w 以及新的隐藏状态和细胞状态 [hd, cd] 。这个词 w 会和新的隐藏状态和细胞状态 [hd, cd] 再次被送入解码器,以生成下一个词,如此循环,直到遇到序列结束字符。
2. 实现序列到序列的神经翻译机器
我们将构建一个神经机器翻译系统,用于将简短的英语句子翻译成法语。为此,我们会使用位于 http://www.manythings.org/anki/ 的英法文本语料库( fra-eng/fra.txt )。
2.1 处理输入数据
由于神经网络只能理解数字,因此不能直接将文本数据输入到神经网络中。我们将每个单词视为一个独热编码向量,其长度等于每个语料库中单词的数量。例如,如果英语语料库包含 1000 个单词,那么独热编码向量 ve 的维度就是 1000,即 ve ∈ R1000 x 1 。
超级会员免费看
订阅专栏 解锁全文


被折叠的 条评论
为什么被折叠?



