编码器-解码器模型:先编码,再解码。机器翻译问题贴合编码器解码器结构特点,
例如:
“表示”是实数向量,每个数字(维度)记为一个特征,每一个特征都有一个含义,(怪不得有时候ai翻译驴唇不对马嘴)解码器把“表示“作为输入,生成目标语言。
当今的主流的神经机器翻译系统中的编码器组成部分:词嵌入层和中间网络层。
- 词嵌入:词嵌入层将输入的一串单词序列中的每一个单词映射到多维实数表示空间的过程。
- 中间网络层:对词嵌入向量进行更深层的抽象,得到输入单词序列的中间表示的中间层。常用的模型结构:循环神经网络,卷积神经网络,自注意力机制等。
解码器:比编码器多了输出层和编码解码注意力子层。
- 输出层:输出每个目标语言位置的单词生成概率。
- 编码解码注意力子层:将一个序列(输入序列)映射到另一个序列(输出序列)。
基于注意力机制的GRU神经网络机器翻译模型链接:
https://tensorflow.google.cn/tutorials/text/nmt_with_attention?hl=zh-cn#%E7%BC%96%E5%86%99%E7%BC%96%E7%A0%81%E5%99%A8_%EF%BC%88encoder%EF%BC%89_%E5%92%8C%E8%A7%A3%E7%A0%81%E5%99%A8_%EF%BC%88decoder%EF%BC%89_%E6%A8%A1%E5%9E%8B