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)所示:
   131   132   133   134   135   136   137   138   139   140   141