Page 136 - 《软件学报》2020年第12期
P. 136
3802 Journal of Software 软件学报 Vol.31, No.12, December 2020
由于卷积神经网络具有可并行的特点,编码过程中可以多个窗口同时进行卷积编码,相比基于循环神经网
络的编码器具有更快的速度.但是在基于 RNN 编码器的模型中,输入序列依次编码,但由于该方法不包含输入
序列的位置信息,并且输入序列中的 embedding 在一定程度上很接近,因此在基于卷积编码器的翻译模型中将
单词对应的位置信息经过编码融入到源语言的输入过程中,通过向量相加的方式将源语言词嵌入和位置嵌入
相加得到的新向量作为编码器输入.使词嵌入过程与上下文相关联,模型学习到输入序列中各单词之间的相对
位置关系,提高模型的准确率.
2.4 源语言句法解析树的融入
本节介绍汉语、越南语句法解析树与卷积神经机器翻译模型的融合方法.基于以上汉语、越南语句法解析
树,得到了汉语、越南语句子中每个单词对应句法标签序列的向量化表示.为了将句法表征向量融入翻译模型
中,将源语言词嵌入向量、位置嵌入向量及句法标签向量进行拼接得到的向量作为模型的输入.由于本文对基
准模型的结构不作修改,因此利用全连接网络,将输入向量的维度压缩为与模型编码器相同的维度,并且使全连
接网络参与训练过程.最后训练神经网络,得到汉语-越南语的神经机器翻译模型.编码器的输入过程如图 7
所示.
Fig.7 Syntactic parse tree information integration
图 7 句法解析树信息融入
在编码端,首先需要对输入序列进行词嵌入.对于输入序列 x=(x 1 ,x 2 ,…,x m ),利用门控线性单元(GLU)将其嵌
d
入到分布空间 e 中,得到源语言的词嵌入向量为 e 1 ,…,e m ,其中,e i ∈ 是嵌入矩阵D∈ m×d 的列,计算方法如公式
(1)所示:
e i =(e i ×W 1 +b 1 )⊗σ(e i ×V 1 +c 1 ) (1)
n
其中,W 1 ,V 1 ∈ k×m×n 为权重,b 1 ,c 1 ∈ 为偏置项,m 为输入序列长度,σ为 sigmoid 函数,⊗是点乘.
位置嵌入过程与词嵌入类似,对于输入序列 x=(x 1 ,x 2 ,…,x m )所对应的绝对位置序列 p=(p 1 ,p 2 ,…,p m ),采用同样
d
的方法嵌入到分布空间 e 中,其中,p i ∈ ,其位置嵌入向量的维度大小与词向量维度大小相同.其计算方法如公
式(2)所示.
p i =(p i ×W 2 +b 2 )⊗σ(p i ×V 2 +c 2 ) (2)
d
对于输入序列中各单词对应的句法标签序列 s=(s 1 ,s 2 ,…,s m ),同样利用 GLU 方法进行嵌入,其中,s i ∈ .计算
方法如公式(3)所示.
s i =(s i ×W 3 +b 3 )⊗σ(s i ×V 3 +c 3 ) (3)
在基准模型中,采用向量加法将词向量与位置向量相加作为模型的输入.考虑到不同位置向量与词向量相
加之后的结果可能相同,会影响模型的性能,因此在编码端,我们将源语言词嵌入向量、位置嵌入向量及句法标
签向量进行拼接,然后采用全连接网络对拼接后的向量进行压缩作为编码器的输入,输入向量 I 的表示方法如
公式(4)所示: