基于神经网络对文本编码的方法、装置、设备及存储介质制造方法及图纸

技术编号:23344286 阅读:19 留言:0更新日期:2020-02-15 04:10
本申请涉及神经网络领域,提供基于神经网络对文本编码的方法、装置、设备及存储介质,方法包括:编码器将训练文本转换为文本序列,根据目标词的左右相邻熵增加与目标词关联的关联词的权重;编码改进器根据各关联词的权重监控权重高于预设权重的目标关联词、监控与目标关联词关联的目标词;根据解码器的第一隐藏状态和第二隐藏状态更新编码质量判断条件;若编码结果的编码质量符合编码质量判断条件,则解码器对目标语言序列进行解码;若不符合则调整各源句子的向量表示,重复执行上述操作直至编码质量符合编码质量判断条件后,对目标语言序列进行解码。本方案使得源语言序列的向量表示持续向目标端表达的方向改善,进而改善翻译模型的效果。

Method, device, equipment and storage medium of text coding based on Neural Network

【技术实现步骤摘要】
基于神经网络对文本编码的方法、装置、设备及存储介质
本申请涉及神经网络
,尤其涉及一种基于神经网络对文本编码的方法、装置、设备及存储介质。
技术介绍
在机器翻译领域中,一般采用Transformer神经网络机器翻译模型实现多语种翻译。Transformer神经网络机器翻译模型使用一个解码器-编码器的结构来模拟整个翻译过程。编码器将输入Transformer神经网络机器翻译模型的文本分解为词汇量级的表达,并根据词频统计和双向编码原理将词汇表示为数字集合的形式,即词向量形式,编码器输出的向量能够精炼文本中各句子的内容。但是,如果输入的文本质量不高或者语义较难理解,那么在编码器编码时可能出现问题。在人工翻译一段文本时,人们通常会对源句子有一个初始化的理解,再根据语义逐渐改善语义理解,并向目标语言逐渐靠拢。在传统的Transformer神经网络机器翻译模型中,编码器只对源句子进行一次初始化编码,相较于人工翻译过程中对源句子的初始理解时编码器只对源句子进行一次初始化编码的情况,当源句子为长难句或者语义关系复杂的句子时,则会导致编码端的输出结果不理想,进而影响后续对Transformer神经网络机器翻译模型的训练,以及目标句的输出效果。
技术实现思路
本申请提供了一种基于神经网络对文本编码的方法、装置、设备及存储介质,能够解决现有技术中机器翻译长难句或者语义关系复杂的句子时,编码端的输出结果不理想的问题。第一方面,本申请提供一种基于神经网络对文本编码的方法,所述方法应用于机器翻译装置,所述机器翻译装置中部署机器翻译模型,所述机器翻译模型用于模拟整个翻译过程,所述机器翻译模型包括编码器、解码器和编码改进器;所述方法包括:所述编码器获取训练文本,将所述训练文本转换为文本序列,所述文本序列按照先后顺序依次输入编码器,根据多注意力模型对所述文本序列进行双向编码,得到编码结果,以及关注各目标词的左右相邻熵;所述编码器计算各目标词的左右相邻熵,根据目标词的左右相邻熵增加与目标词关联的关联词的权重,以及将所述文本序列中的各源句子分别初始化为向量表示;所述编码改进器根据各关联词的权重监控权重高于预设权重的目标关联词、以及监控与目标关联词关联的目标词;所述编码改进器从所述解码器接收解码器的第一隐藏状态和第二隐藏状态,根据所述第一隐藏状态和所述第二隐藏状态更新编码质量判断条件;所述编码改进器根据更新后的所述编码质量判断条件判断所述编码结果是否符合所述编码质量判断条件;若所述编码结果的编码质量符合所述编码质量判断条件,则所述解码器对所述目标语言序列进行解码;若所述编码结果的编码质量不符合所述编码质量判断条件,则所述解码器调整所述文本序列中的各源句子的向量表示,并重复执行从所述解码器接收解码器的第一隐藏状态和第二隐藏状态,根据所述第一隐藏状态和所述第二隐藏状态更新编码质量判断条件,以及根据更新后的所述编码质量判断条件判断所述编码结果是否符合所述编码质量判断条件的操作,直至编码质量符合所述编码质量判断条件后,对所述目标语言序列进行解码;所述第一隐藏状态为解码器当前的隐藏状态,所述第二隐藏状态为所述解码器上一次的隐藏状态。一种可能的设计中,所述根据多注意力模型对所述文本序列进行双向编码,得到编码结果,以及关注目标词的左右相邻熵,包括:所述编码器将所述源句子中的构成元素作为由一系列的<Key,Value>数据对构成;从所述源句子中选择一个目标词的某个元素Query,计算所述Query和各个Key的相似性(或者相关性),得到每个Key对应Value值的权重系数;所述编码器对Value进行加权求和,得到所述源句子对应的注意Attention值;所述编码器根据各源句子对应的注意Attention值对各源句子中的目标词进行双向编码,以及关注各目标词的左右相邻熵;其中,权重系数的一种计算公式如下:Attention值的一种计算公式如下:其中,ai为权重系数,Lx=||Source||代表源句子的长度。由于在计算Attention值的过程中,源句子中的Key和Value合二为一且指向的是同一个对象,所以向多关注模型中输入源句子中每个单词对应的语义编码。一种可能的设计中,所述计算各目标词的左右相邻熵,根据目标词的左右相邻熵增加与目标词关联的关联词的权重,将所述文本序列中的各源句子分别初始化为向量表示,包括:所述编码器分别计算目标词的左熵和右熵;计算目标词的左熵和右熵之间的最小值;若目标词的左熵和右熵之间的最小值高于预设阈值,则所述编码器确定所述目标词与关联词之间存在相关性,并分别按照目标词的左熵和右熵增加与目标词关联的各关联词的权重。一种可能的设计中,所述编码质量判断条件包括多个文本控制门,所述文本控制门用于从所述文本序列中查找最优的隐藏状态序列。文本控制门还可以用于判断所述文本序列中各源句子的语法是否正确,判断源句子的行数是否超出预设行数,用于判断所述文本序列中各源句子的字数是否超出预设次数,以及用于判断所述文本序列中各源句子的大小写是否正确。一种可能的设计中,所述编码器从所述解码器获取解码器的第一隐藏状态和第二隐藏状态,包括:所述编码器根据第一方程组对源句子序列的局部状态进行初始化,所述第一方程组为:δ1(i)=πibi(o1)Ψ1(i)=0其中,i=1,2...N;根据第二方程组分别对所述源句子序列进行动态规划并递推隐藏状态Ψt(i)在时刻t=2,3,...T时的局部状态:所述第二方程组为:δt(i)=max[δt-1(j)aji]bi(0t)Ψt(i)=argmax[δt-1(j)aji]其中,1≤j≤N。所述编码器根据第三方程组计算时刻T最大的概率δT(i),δT(i)为计算最可能隐藏状态序列出现的概率P*,以及计算时刻T最大的隐藏状态Ψt(i),Ψt(i)为时刻T最可能的隐藏状态;所述第三方程组为:P*=maxδT(i)i*T=argmax[δT(i)]所述编码器根据第四方程组和利用局部状态Ψ(i)开始回溯,对于t=T-1,T-2,...,1时:所述第四方程组为i*t=Ψt+1(i*t+1);所述编码器根据局部状态Ψ(i)从时刻0一直递推到时刻T,利用Ψt(i)记录的前一个最可能的状态节点回溯,直到找到最有可能的隐藏状态序列I*={i*1,i*2,...i*T}。一种可能的设计中,所述根据更新后的所述编码质量判断条件判断所述编码结果是否符合所述编码质量判断条件,包括:根据sigmoid激活函数、第一权重矩阵、第二权重矩阵、所述第一隐藏状态和所述第二隐藏状态计算每个文本控制门的向量;其中,计算每个文本控制门的向量的公式如下:其中,为文本控制门的向量,σ(W*hi+U*si-1+bz)是sigmoid激活函数,W和U为权重矩阵,hi是指解码器的本文档来自技高网...

【技术保护点】
1.一种基于神经网络对文本编码的方法,其特征在于,所述方法应用于机器翻译装置,所述机器翻译装置中部署机器翻译模型,所述机器翻译模型用于模拟整个翻译过程,所述机器翻译模型包括编码器、解码器和编码改进器;所述方法包括:/n所述编码器获取训练文本,将所述训练文本转换为文本序列,所述文本序列按照先后顺序依次输入编码器,根据多注意力模型对所述文本序列进行双向编码,得到编码结果,以及关注各目标词的左右相邻熵;/n所述编码器计算各目标词的左右相邻熵,根据目标词的左右相邻熵增加与目标词关联的关联词的权重,以及将所述文本序列中的各源句子分别初始化为向量表示;/n所述编码改进器根据各关联词的权重监控权重高于预设权重的目标关联词、以及监控与目标关联词关联的目标词;/n所述编码改进器从所述解码器接收解码器的第一隐藏状态和第二隐藏状态,根据所述第一隐藏状态和所述第二隐藏状态更新编码质量判断条件;/n所述编码改进器根据更新后的所述编码质量判断条件判断所述编码结果是否符合所述编码质量判断条件;/n若所述编码结果的编码质量符合所述编码质量判断条件,则所述解码器对所述目标语言序列进行解码;/n若所述编码结果的编码质量不符合所述编码质量判断条件,则所述解码器调整所述文本序列中的各源句子的向量表示,并重复执行从所述解码器接收解码器的第一隐藏状态和第二隐藏状态,根据所述第一隐藏状态和所述第二隐藏状态更新编码质量判断条件,以及根据更新后的所述编码质量判断条件判断所述编码结果是否符合所述编码质量判断条件的操作,直至编码质量符合所述编码质量判断条件后,对所述目标语言序列进行解码;所述第一隐藏状态为解码器当前的隐藏状态,所述第二隐藏状态为所述解码器上一次的隐藏状态。/n...

【技术特征摘要】
1.一种基于神经网络对文本编码的方法,其特征在于,所述方法应用于机器翻译装置,所述机器翻译装置中部署机器翻译模型,所述机器翻译模型用于模拟整个翻译过程,所述机器翻译模型包括编码器、解码器和编码改进器;所述方法包括:
所述编码器获取训练文本,将所述训练文本转换为文本序列,所述文本序列按照先后顺序依次输入编码器,根据多注意力模型对所述文本序列进行双向编码,得到编码结果,以及关注各目标词的左右相邻熵;
所述编码器计算各目标词的左右相邻熵,根据目标词的左右相邻熵增加与目标词关联的关联词的权重,以及将所述文本序列中的各源句子分别初始化为向量表示;
所述编码改进器根据各关联词的权重监控权重高于预设权重的目标关联词、以及监控与目标关联词关联的目标词;
所述编码改进器从所述解码器接收解码器的第一隐藏状态和第二隐藏状态,根据所述第一隐藏状态和所述第二隐藏状态更新编码质量判断条件;
所述编码改进器根据更新后的所述编码质量判断条件判断所述编码结果是否符合所述编码质量判断条件;
若所述编码结果的编码质量符合所述编码质量判断条件,则所述解码器对所述目标语言序列进行解码;
若所述编码结果的编码质量不符合所述编码质量判断条件,则所述解码器调整所述文本序列中的各源句子的向量表示,并重复执行从所述解码器接收解码器的第一隐藏状态和第二隐藏状态,根据所述第一隐藏状态和所述第二隐藏状态更新编码质量判断条件,以及根据更新后的所述编码质量判断条件判断所述编码结果是否符合所述编码质量判断条件的操作,直至编码质量符合所述编码质量判断条件后,对所述目标语言序列进行解码;所述第一隐藏状态为解码器当前的隐藏状态,所述第二隐藏状态为所述解码器上一次的隐藏状态。


2.根据权利要求1所述的方法,其特征在于,所述根据多注意力模型对所述文本序列进行双向编码,得到编码结果,以及关注目标词的左右相邻熵,包括:
所述编码器将所述源句子中的构成元素作为由一系列的<Key,Value>数据对构成;
所述编码器从所述源句子中选择一个目标词的某个元素Query,计算所述Query和各个Key的相似性(或者相关性),得到每个Key对应Value值的权重系数;
所述编码器对Value进行加权求和,得到所述源句子对应的注意Attention值;
所述编码器根据各源句子对应的注意Attention值对各源句子中的目标词进行双向编码,以及关注各目标词的左右相邻熵;
其中,权重系数的一种计算公式如下:



Attention值的一种计算公式如下:



其中,ai为权重系数,Lx=||Source||代表源句子的长度。由于在计算Attention值的过程中,源句子中的Key和Value合二为一且指向的是同一个对象,所以向多关注模型中输入源句子中每个单词对应的语义编码。


3.根据权利要求2所述的方法,其特征在于,所述计算各目标词的左右相邻熵,根据目标词的左右相邻熵增加与目标词关联的关联词的权重,将所述文本序列中的各源句子分别初始化为向量表示,包括:
所述编码器分别计算目标词的左熵和右熵;计算目标词的左熵和右熵之间的最小值;
若目标词的左熵和右熵之间的最小值高于预设阈值,则所述编码器确定所述目标词与关联词之间存在相关性,并分别按照目标词的左熵和右熵增加与目标词关联的各关联词的权重。


4.根据权利要求1-3中任一项所述的方法,其特征在于,所述编码质量判断条件包括多个文本控制门,所述文本控制门用于从所述文本序列中查找最优的隐藏状态序列。文本控制门还可以用于判断所述文本序列中各源句子的语法是否正确,判断源句子的行数是否超出预设行数,用于判断所述文本序列中各源句子的字数是否超出预设次数,以及用于判断所述文本序列中各源句子的大小写是否正确。


5.根据权利要求4所述的方法,其特征在于,所述编码器从所述解码器获取解码器的第一隐藏状态和第二隐藏状态,包括:
所述编码器根据第一方程组对源句子序列的局部状态进行初始化,所述第一方程组为:
δ1(i)=πibi(o1)
Ψ1(i)=0
其中,i=1,2...N;
所述编码器根据第二方程组分别对所述源句子序列进行动态规划并递推隐藏状态Ψt(i)在时刻t=2,3,...T时的局部状态:所述第二方程组为:
δt(i)=max[δt-1(j)aj...

【专利技术属性】
技术研发人员:陈霖捷黄章成孔令炜王健宗
申请(专利权)人:平安科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1