一种融合双语词典的蒙汉神经机器翻译方法

文档序号:28207806发布日期:2021-12-28 19:18阅读:123来源:国知局
一种融合双语词典的蒙汉神经机器翻译方法

1.本发明属于神经机器翻译技术领域,特别涉及一种融合双语词典的蒙汉神经机器翻译方法。


背景技术:

2.机器翻译技术是研究如何利用计算机高效便捷的实现源语言到目标语言的自动转换,是计算语言学的重要研究领域之一。我国是一个多民族国家,各民族都有自己的语言,因此打破语言之间的交流障碍、促进民族交流尤为重要。内蒙古自治区使用蒙古语的人数较多,对于蒙古语文字与汉语文字之间的翻译有着迫切地需求,因此蒙汉翻译具有十分重要的意义。相对于其它语种,蒙汉机器翻译研究起步较晚,且蒙古语汉语分属于不同语系,机器翻译的译文质量不尽如人意。
3.随着深度学习的不断发展,基于深度学习的神经网络机器翻译模型成为机器翻译的研究热点。神经网络翻译模型是基于词、短语和句子的连续表示,连续的词向量可以更准确的表示词的形态、语义和语法信息,能够精确地刻画近义词之间的关系。由于神经网络本身结构的复杂性,通常编解码端的词汇表大小都不宜过大,否则会使得模型过于庞大,大大降低模型的训练速度。此外,低频词的加入反而可能降低网络的性能表现。规模受限的词表引入了大量的罕见词或未登录词,导致其在翻译对理解句子意义至关重要的低频内容词时经常出错。


技术实现要素:

4.(一)解决的技术问题
5.针对现有技术的不足,本发明的目的在于提供一种融合双语词典的蒙汉神经机器翻译方法,通过在nmt系统中增加离散的翻译词典,有效地编码低频词的翻译。
6.(二)技术方案
7.为实现以上目的,本发明通过以下技术方案予以实现:一种融合双语词典的蒙汉神经机器翻译方法,通过在nmt系统中增加离散的翻译词典,有效地解决nmt在翻译低频实词时经常出错的问题。本发明包括以下步骤:步骤一、对训练数据、其他外部并行数据资源(如手制字典)或两者结合,使用传统的单词对齐方法来构造这些词汇概率;步骤二、使用注意力nmt模型中的注意力向量,将词典翻译概率转换为下一个单词的预测概率;步骤三、通过nmt概率的线性插值,或者将其作为nmt预测分布的偏差,将该概率纳入nmt。
8.步骤一中使用三种方式构造词典概率,分别为自动学习词典,手制词典与混合词典。自动学习词典的词典概率直接使用ibm之类的翻译模型从平行语料库中通过无监督的方式进行学习。这些模型可以使用期望最大化(em)算法估计两种语言标记之间的词对齐和词法转换概率p
l
(y|x)。在期望步骤中,算法首先估计期望的计数c(y|x)。在最大化步骤,词典概率由期望技术除以所有可能的总数算得:
[0009][0010]
nmt受训练速度与内存的约束,导致许多罕见词未被目标词表v
y
覆盖,据此,将词典所分配的剩余概率分配给未知的单词符号<unk>:
[0011][0012]
手制词典不包含翻译概率,为构造概率p
l
(y|x),为特定源词x定义存在于词典中的翻译集k
x
,并假设这些词是均匀分布的:
[0013][0014]
未登录源词将其概率质量分配给<unk>标签。
[0015]
手制词典的词汇覆盖率更高,但其概率不如自动学习词典的精确。故构造一种混合方法,将手制词典补充到自动学习词典中,默认使用自动学习词典p
l,a
,对未覆盖词使用手制词典:
[0016][0017]
步骤二中,神经机器翻译的目标是将源单词序列翻译为目标单词序列这些单词分别属于源语言词表v
x
和目标语言词表v
y
。nmt通过计算给定源词x和前序目标单词下,第i个目标词y
i
的条件概率来执行这次翻译。上述过程通过将上下文编码为一个固定长度的向量η
i
,并用下式计算条件概率来实现。
[0018][0019]
其中w
s
和b
s
分别为权重矩阵和偏置向量参数。
[0020]
步骤二中的神经机器翻译选用注意力模型。注意力模型在计算y
i
时集中于源句中与之相关的特定的单词。采用注意力机制的翻译模型包括以下步骤:步骤一、编码器将源句子x转换为一个矩阵r;步骤二、根据注意力向量a
i
计算上下文向量c
i
;步骤三、依据算得的条件概率预测单词y
i
,并通过最小化训练数据的负对数似然来训练本模型。
[0021]
注意力机制的步骤一中,注意力模型在计算y
i
时集中于源句中与之相关的特定的单词。首先编码器将源句子x转换为一个矩阵r,矩阵的每一列(即一个连续向量)代表输入句子中的一个单词,此表示使用双向编码器生成
[0022][0023]
[0024][0025]
其中,embed()函数将单词映射为一个表示(通常使用向量进行表示),enc()是一个堆栈式lstm神经网络。最后将和连接为一个双向表示r
j
。这些向量进一步连接为一个矩阵r,矩阵的第j列对应r
j

[0026]
注意力机制的步骤二参考编码后的输入句子一次生成一个输出单词,并使用解码器lstm跟踪整个过程。解码器的隐藏状态h
i
是一个长度固定的连续向量,包含目标单词中的信息,初始化为h0=0。基于此h
i
,计算一个相似度向量α
i
,该向量的各元素为
[0027]
α
i,j
=sim(h
i
,r
j
)
[0028]
sim()为任一相似度函数,此处使用向量的点积。之后将α
i
标准化为注意力向量,该向量表示对源句中每个单词分配的关注程度。
[0029]
a
i
=softmax(α
i
)
ꢀꢀꢀꢀꢀꢀ
(2)
[0030]
然后,使用注意力向量a
i
对编码表示的r矩阵进行加权,从而为当前时间步创建上下文向量c
i
[0031]
c=ra
[0032]
注意力机制的步骤三通过连接先前的隐藏状态h
i
‑1和上下文向量,并执行仿射转换来创建η
i
[0033]
η
i
=w
η
[h
i
‑1;c
i
]+b
η
[0034]
将上式代入方程(1),便可计算出下一个单词y
i
根据此概率进行选择,同时通过将所选单词输入解码器lstm来更新隐藏状态
[0035]
h
i
=enc(embed(y
i
),h
i
‑1)
[0036]
若将所有参数定义为θ,则可通过最小化训练数据的负对数似然来训练本模型
[0037][0038]
本发明的步骤三包含两个步骤:步骤一、将词典概率转换为条件预测概率;步骤二、合并预测概率。
[0039]
将词典整合到nmt中的步骤一首先将源句子x中单个单词的词典概率p
l
(y|x)转换为可与一起使用的形式:给定输入句子x,构造矩阵l
x
,每列对应输入句子中的一个单词,每行对应词表v
y
中的一个单词,每个元素对应相应的词典概率
[0040][0041]
由于仅需要源句子x的信息,上述矩阵可以在编码阶段预先计算出来。接下来将这个矩阵转换为下一个单词的预测概率使用方程(2)中的对位概率a计算矩阵l
x
每一列的权值:
[0042][0043]
计算词汇预测概率之后,将词典整合到nmt中的步骤二将此概率与nmt模型概率整合到一起。以下使用两种整合方式:(1)将其作为偏置,(2)线性插值。
[0044]
第一种整合方式:偏置方法,使用p
l
(
·
)偏置由nmt模型计算的概率分布。具体来讲,给p
l
(
·
)加一个很小的常数∈,对其取对数,然后将该调整后的对数概率加到输入的softmax中,如下:
[0045][0046]
对p
l
(
·
)取对数,使得其数值在计算softmax之后仍然在概率域内,超参数∈的目的是预防0概率取对数后变为

∞。当∈很小,模型会更偏向词典概率,随∈增大词典概率的权重越小。
[0047]
第二种整合方式通过在标准nmt模型概率p
m
(
·
)和词典概率p
l
(
·
)之间做线性插值来合并两个概率:
[0048][0049]
其中λ为插值系数,z是学习参数,sigmoid函数确保了最终的插值结果落入0到1之间。
[0050]
(三)有益效果
[0051]
本发明提供了一种融合双语词典的蒙汉神经机器翻译方法,其有益效果为,该融合双语词典的蒙汉神经机器翻译方法,nmt系统的一个特点是,其将词汇表中的每个单词视为连续值数字的向量,这与传统的smt模型相反,连续表示的使用是一个主要优势,它允许nmt在相似的单词或上下文之间共享统计权重,但它的缺点为容易产生流畅但不充分的翻译,相反,基于短语的机器翻译和其他传统统计机器翻译方法很少出现这种错误,这是因为它们的翻译基于离散短语映射,这确保源单词将被翻译成至少在训练数据中观察到一次翻译的目标单词,此外,由于离散映射是显式记忆的,因此只需一个实例就可以有效地学习它们(排除单词对齐中的错误),故将离散的双语词典信息合并到nmt中,可以缓解低频实词产生的致命错误。
附图说明
[0052]
图1为本发明的方法流程示意图。
具体实施方式
[0053]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完
整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0054]
请参阅图1,本发明实施例提供一种技术方案:一种融合双语词典的蒙汉神经机器翻译方法,通过在nmt系统中增加离散的翻译词典,有效地编码低频词的翻译。
[0055]
为实现上述目的,本发明采用的技术方案是:
[0056]
一种融合双语词典的蒙汉神经机器翻译方法,通过在nmt系统中增加离散的翻译词典,有效地解决nmt在翻译低频实词时经常出错的问题。本发明包括以下步骤:步骤一、对训练数据、其他外部并行数据资源(如手制字典)或两者结合,使用传统的单词对齐方法来构造这些词汇概率;步骤二、使用注意力nmt模型中的注意力向量,将词典翻译概率转换为下一个单词的预测概率;步骤三、通过nmt概率的线性插值,或者将其作为nmt预测分布的偏差,将该概率纳入nmt。
[0057]
步骤一中使用三种方式构造词典概率,分别为自动学习词典,手制词典与混合词典。自动学习词典的词典概率直接使用ibm之类的翻译模型从平行语料库中通过无监督的方式进行学习。这些模型可以使用期望最大化(em)算法估计两种语言标记之间的词对齐和词法转换概率p
l
(y|x)。期望最大化算法是在依赖于无法观测的隐藏变量的概率模型中,寻找参数最大似然估计或者最大后验估计的算法。em算法包括两个步骤:由e步和m步组成,它是通过迭代地最大化完整数据的对数似然函数的期望来最大化不完整数据的对数似然函数。在期望步骤中,算法首先估计期望的计数c(y|x)。在最大化步骤,词典概率由期望技术除以所有可能的总数算得:
[0058][0059]
通过交替使用这两个步骤,em算法逐步改进模型的参数,使参数和训练样本的似然概率逐渐增大,最后终止于一个极大点。
[0060]
nmt受训练速度与内存的约束,导致许多罕见词未被目标词表v
y
覆盖,据此,将词典所分配的剩余概率分配给未知的单词符号<unk>:
[0061][0062]
手制词典不包含翻译概率,为构造概率p
l
(y|x),为特定源词x定义存在于词典中的翻译集k
x
,并假设这些词是均匀分布的:
[0063][0064]
未登录源词将其概率质量分配给<unk>标签。
[0065]
手制词典的词汇覆盖率更高,但其概率不如自动学习词典的精确。故构造一种混合方法,将手制词典补充到自动学习词典中,默认使用自动学习词典p
l,a
,对未覆盖词使用手制词典:
[0066][0067]
步骤二中,神经机器翻译的目标是将源单词序列翻译为目标单词序列这些单词分别属于源语言词表v
x
和目标语言词表v
y
。nmt通过计算给定源词x和前序目标单词下,第i个目标词y
i
的条件概率来执行这次翻译。上述过程通过将上下文编码为一个固定长度的向量η
i
,并用下式计算条件概率来实现。
[0068][0069]
其中w
s
和b
s
分别为权重矩阵和偏置向量参数。
[0070]
步骤二中的神经机器翻译选用注意力模型。注意力模型在计算y
i
时集中于源句中与之相关的特定的单词。采用注意力机制的翻译模型包括以下步骤:步骤一、编码器将源句子x转换为一个矩阵r;步骤二、根据注意力向量a
i
计算上下文向量c
i
;步骤三、依据算得的条件概率预测单词y
i
,并通过最小化训练数据的负对数似然来训练本模型。
[0071]
注意力机制的步骤一中,注意力模型在计算y
i
时集中于源句中与之相关的特定的单词。首先编码器将源句子x转换为一个矩阵r,矩阵的每一列(即一个连续向量)代表输入句子中的一个单词,此表示使用双向编码器生成
[0072][0073][0074][0075]
其中,embed()函数将单词映射为一个表示(通常使用向量进行表示),enc()是一个堆栈式lstm神经网络。最后将和连接为一个双向表示r
j
。这些向量进一步连接为一个矩阵r,矩阵的第j列对应r
j

[0076]
注意力机制的步骤二参考编码后的输入句子一次生成一个输出单词,并使用解码器lstm跟踪整个过程。解码器的隐藏状态h
i
是一个长度固定的连续向量,包含目标单词中的信息,初始化为h0=0。基于此h
i
,计算一个相似度向量α
i
,该向量的各元素为
[0077]
α
i,j
=sim(h
i
,r
j
)
[0078]
sim()为任一相似度函数,此处使用向量的点积。之后将α
i
标准化为注意力向量,该向量表示对源句中每个单词分配的关注程度。
[0079]
a
i
=softmax(α
i
)
ꢀꢀꢀꢀꢀꢀ
(3)
[0080]
然后,使用注意力向量a
i
对编码表示的r矩阵进行加权,从而为当前时间步创建上下文向量c
i
[0081]
c=ra
[0082]
注意力机制的步骤三通过连接先前的隐藏状态h
i
‑1和上下文向量,并执行仿射转换来创建η
i
[0083]
η
i
=w
η
[h
i
‑1;c
i
]+b
η
[0084]
将上式代入方程(1),便可计算出下一个单词y
i
根据此概率进行选择,同时通过将所选单词输入解码器lstm来更新隐藏状态
[0085]
h
i
=enc(embed(y
i
),h
i
‑1)
[0086]
若将所有参数定义为θ,则可通过最小化训练数据的负对数似然来训练本模型
[0087][0088]
本发明的步骤三包含两个步骤:步骤一、将词典概率转换为条件预测概率;步骤二、合并预测概率。
[0089]
将词典整合到nmt中的步骤一首先将源句子x中单个单词的词典概率p
l
(y|x)转换为可与一起使用的形式:给定输入句子x,构造矩阵l
x
,每列对应输入句子中的一个单词,每行对应词表v
y
中的一个单词,每个元素对应相应的词典概率
[0090][0091]
由于仅需要源句子x的信息,上述矩阵可以在编码阶段预先计算出来。接下来将这个矩阵转换为下一个单词的预测概率使用方程(3)中的对位概率a计算矩阵l
x
每一列的权值:
[0092][0093]
计算词汇预测概率之后,将词典整合到nmt中的步骤二将此概率与nmt模型概率整合到一起。以下使用两种整合方式:(1)将其作为偏置,(2)线性插值。
[0094]
第一种整合方式:偏置方法,使用p
l
(
·
)偏置由nmt模型计算的概率分布。具体来讲,给p
l
(
·
)加一个很小的常数∈,对其取对数,然后将该调整后的对数概率加到输入的softmax中,softmax逻辑回归模型是logistic回归模型在多分类问题上的推广,在多分类问题中,类标签y可以取两个以上的值:
[0095][0096]
对p
l
(
·
)取对数,使得其数值在计算softmax之后仍然在概率域内,超参数∈的目的是预防0概率取对数后变为

∞。当∈很小,模型会更偏向词典概率,随∈增大词典概率的权重越小。
[0097]
第二种整合方式通过在标准nmt模型概率p
m
(
·
)和词典概率p
l
(
·
)之间做线性插值来合并两个概率,线性插值是指插值函数为一次多项式的插值方式,其在插值节点上的
插值误差为零:
[0098][0099]
其中λ为插值系数,z是学习参数,sigmoid函数确保了最终的插值结果落入0到1之间。其中sigmoid函数也叫logistic函数,用于隐层神经元输出,取值范围为(0,1),它可以将一个实数映射到(0,1)的区间,可以用来做二分类。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1