[发明专利]一种基于词预测的神经机器翻译方法在审
申请号: | 201710812778.6 | 申请日: | 2017-09-11 |
公开(公告)号: | CN107391501A | 公开(公告)日: | 2017-11-24 |
发明(设计)人: | 黄书剑;翁荣祥;戴新宇;陈家骏;张建兵 | 申请(专利权)人: | 南京大学 |
主分类号: | G06F17/28 | 分类号: | G06F17/28;G06F17/27;G06N3/04 |
代理公司: | 江苏圣典律师事务所32237 | 代理人: | 胡建华,于瀚文 |
地址: | 210023 江苏省南*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 预测 神经 机器翻译 方法 | ||
1.一种基于词预测的神经机器翻译方法,其特征在于,包括如下步骤:
步骤1,构建基于注意力机制的端到端神经机器翻译系统模型框架,并在编码端与解码端分别加入词预测的模块,使用平行语料进行训练;
步骤2,在翻译过程中,对于待翻译的句子,通过编码端词预测机制获取相应缩小的词表,然后进行翻译。
2.根据权利要求1所述的方法,其特征在于,步骤1包括如下步骤:
步骤1-1,使用两个循环神经网络分别作为编码端和解码端,同时使用注意力机制搭建端到端神经机器翻译系统;
步骤1-2,在翻译系统中,分别在编码端和目标端加入预测机制;
步骤1-3,使用预处理完的大规模平行语料对模型进行训练。
3.根据权利要求2所述的一种计算机中基于词预测的神经机器翻译训练方法,其特征在于,步骤1-1包括:
步骤1-1-1,使用一个双向循环神经网络作为翻译系统的编码端,对于源端的句子x=(x1,x2,…,xn),进行编码,其中x表示源端的一句句子,xn为句子x中的第n个词,句子的长度为n,从左到右的循环神经网络计算方法为:
其中为门控循环单元GRU函数,σ(·)为非线性变换,⊙为矩阵元素的乘积,tanh(·)为双曲正切函数,为从左到右的神经网络模型的参数,xi为句子中第i个词,为从左到右的神经网络的第i个隐层状态;为模型计算过程中的中间变量,公式中右箭头表示为从左到右神经网络的参数以及变量,
从右到左的循环神经网络编码器计算方法如下:
其中,为从右到左的神经网络模型的参数,xi为句子x中第第i个词,为从右到左的神经网络的第i个隐层状态;为模型计算过程中的中间变量,公式中左箭头表示为从右到左神经网络的参数以及变量;
最后将双向循环神经网络的对应输出进行拼接:
hi为将第i个词编码成的从左到右的隐层状态和从右到左的隐层状态拼接而成的表示,最后得到一组编码表示:(h1,h2,…,hn),hn即第n个编码表示,[;]表示向量的拼接;
步骤1-1-2,使用一个循环神经网络作为翻译系统的解码端,对于目标端的句子,使用解码器进行解码:
sj=gd(sj-1,[yj-1;cj]),
gd(·)为GRU函数,yj-1为第j-1个输出的词,sj-1为第j-1个词对应的解码端隐层状态,通过计算,得到当前要输出词即第j个的隐层状态,其中cj为当前将输出词对于源端每个词对应关系的表示,通过注意力机制计算而得:
其中,aji为每个源端隐层状态对应的权重,exp(·)为指数函数,为模型参数,eji为通过模型参数计算而得到中间变量,k为临时变量,对于解码器的初始输入Initial State记为s0:
Ws为模型的参数;
步骤1-1-3,使用sj生成相应的目标端的词:
P(yj|y<j,x)=fd(td([yj-1;sj;cj])),
fd(u)=softmax(Wfu),
td(v)=tanh(Wtv);
其中,P(yj|y<j,x)表示已知(y1,y2,…,yj-1)和x的情况下,选取概率最大的yj,其中fd(·)和td(·)是非线性变换函数,softmax(·)为归一化函数,Wf,Wt为模型参数,u,v为临时变量;
步骤1-1-4,生成目标端的句子:y=(y1,y2,…,ym),y表示生成的目标端句子,ym表示目标端句子中第m个词,其中m为生成句子的长度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710812778.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:文本翻译方法、装置及设备
- 下一篇:一种双向多模态递归网络的图像描述方法