一种基于语言模型和翻译模型的清洗平行语料方法及系统技术方案

技术编号:19543784 阅读:114 留言:0更新日期:2018-11-24 20:37
本发明专利技术属于计算机软件技术领域,公开了一种基于语言模型和翻译模型的清洗平行语料的方法及系统,语料预处理主要是处理相同语系的多个方向的双语平行语料;使用源语言和目标语言的语言模型对平行语料进行筛选;使用翻译模型对双语平行语料筛选语料。本发明专利技术利用语言模型和翻译模型清洗大规模的双语语料;使用启发式的规则清洗平行语料的时间和人力成本都比较高,只有发现了问题,才能针对某个问题进行处理,无法大规模解决语序不畅和翻译不准确的问题。而使用语言模型和翻译模型可以在短时间内即可解决使用规则无法解决的问题,既节省了时间和人力成本,又可以清洗语料,而语料质量的提高,可有效提高机器翻译质量。

A Method and System for Cleaning Parallel Corpus Based on Language Model and Translation Model

The invention belongs to the field of computer software technology, and discloses a method and system for cleaning parallel corpus based on language model and translation model. The preprocessing of corpus mainly deals with bilingual parallel corpus in multiple directions of the same language family, and uses the language model of source language and target language to screen parallel corpus. The translation model is used to screen bilingual parallel corpus. The invention uses language model and translation model to clean large-scale bilingual corpus, and uses heuristic rules to clean parallel corpus with high time and labor cost. Only when problems are found, can a problem be solved, and the problems of poor word order and inaccurate translation can not be solved on a large scale. The use of language model and translation model can solve the problems that can not be solved by using rules in a short time, save time and manpower costs, and can clean the corpus. The improvement of corpus quality can effectively improve the quality of machine translation.

【技术实现步骤摘要】
一种基于语言模型和翻译模型的清洗平行语料方法及系统
本专利技术属于计算机软件
,尤其涉及一种基于语言模型和翻译模型的清洗平行语料方法及系统。
技术介绍
目前,业内常用的现有技术是这样的:机器翻译是一种利用机器学习的技术将一种自然语言翻译成另外一种自然语言的过程。作为计算语言学的一个重要分支,它涉及认知科学、语言学等学科,是人工智能的终极目标之一。现有主流的机器翻译模型是使用基于自注意力机制的编码-解码结构的神经网络模型,由编码器和解码器组成。二者均以自注意力层为主。翻译流程主要包括:首先把输入的词映射到高维的向量空间得到词向量,再把词向量输入到编码器,通过自注意力机制得到上下文向量,解码器再根据上下文向量和自注意力机制,通过softmax层输出到目标语言的词向量空间。最后通过词典得到目标语言词汇。由于神经网络模型中有大量参数,所以需要大量的双语平行语料训练,其语料的数量级一般在千万左右,对于语料的数量和质量要求较高。机器翻译系统需要较多的双语平行语料,即平行原文与平行译文对应的语料。一般的统计机器翻译系统或者神经网络机器翻译系统均为数据驱动,需要双语的平行语料,根据提供的双语平行语料训练模型。平行语料的数量和质量对机器翻译系统的性能有决定性的影响。在部分语言对中,如英中这个语言对,可供训练的双语平行语料早已超过千万,然而其质量较低,可供实际进行神经网络机器翻译训练的平行语料并没有那么多,也就是部分语料的质量并不能达到可供训练的标准。平行语料中经常出现语序不畅、翻译不准确以及各种其他无法预料的问题。现有处理语料的方法主要是基于各种启发式的规则,只有在发现问题后才能处理问题。然而现有语料规模都在千万以上,人工慢慢去发现问题的时间成本较大,并不能解决大部分问题。另外,对于语序不畅和翻译不准确的问题,基于启发式的规则的方法并不能解决,只能删除,无法解决大部分的问题。综上所述,现有技术存在的问题是:(1)现有处理语料的方法人工慢慢去发现问题的时间成本较大。(2)现有处理语料的方法对于语序不畅和翻译不准确的问题并不能解决,而这类问题在大部分的语料中都是普遍存在的,会降低机器翻译模型的翻译质量。解决上述技术问题的难度和意义:解决了语料中普遍存在的语序不畅和翻译不准确的问题,可以较大地提升语料的质量,可利用的语料数量也可以有较大的提高,尤其对于双语语料较少的语言对。神经网络机器翻译模型可以从更高质量的双语语料中学习,其模型的翻译质量也会有部分提升。
技术实现思路
针对现有技术存在的问题,本专利技术提供了一种基于语言模型和翻译模型的清洗平行语料方法及系统。本专利技术是这样实现的,一种基于语言模型和翻译模型的清洗平行语料方法,所述基于语言模型和翻译模型的清洗平行语料方法包括以下步骤:步骤一,语料预处理主要使用神经网络机器翻译模型和语言模型预处理算法对语料进行预处理;步骤二,使用源语言和目标语言的语言模型对平行语料进行筛选;步骤三,使用神经网络机器翻译模型对双语平行语料筛选语料。进一步,所述步骤一具体包括:(1)分词,使用基于隐马尔科夫模型的分词算法进行分词;(2)切分子词,使用字节对编码算法,根据词的频率,把低频词切分成子词的形式,保留高频词。对于低频词,切分成子词的形式,以保留词的原来形式而不会被替换未知词的形式。进一步,所述步骤二具体包括:(1)语言模型是根据给定若干个词,预测下一个词出现的概率,当一个句子为:S=w1,w2,...,wk;则其概率可以表示为:P(s)=P(w1,w2,...,wk)=p(w1)p(w2|w1)...p(wk|w1,w2,...wk-1);其中w1,w2......,wk为第1到k个词,那么一般使用n元语言模型来近似估算其概率:即当前词的概率只与前n-1个词有关,那么其概率可以表示为:其中w1,w2......,wn为第1到n个词,那么以已经训练好的语言模型为标准,根据以下损失函数公式输出源语言和目标语言的损失值:L=-∑iy′ilog(yi);其中y′i为语言模型中预测下一个词wi的概率,yi为待打分的语料中下一个词wi的概率;(2)对源语言和目标语言进行相同的(1)步骤,综合两种语言的语言模型打分,对语料进行排序;(3)根据排序结果,删除质量较低的平行语料。进一步,所述步骤三具体包括:(1)使用基于自注意力的编码器到解码器的神经网络结构作为翻译模型,其计算主要如下:点乘注意力:其中,Q,K,V均为词向量,T表示转置,dK表示K的维度,Xi,Xj为输入参数;多头注意力:MultiHead(Q,K,V)=Concat(head1,...,headn)其中,Q,K,V均为词向量,Concat是指把向量拼接起来,Wi为参数矩阵,head1...headi...,headn为第1到n个头向量;前馈神经网络:FFN(x)=max(0,xW1+b1)W2+b2;其中,W1,W2为权重参数,b1,b2为偏置,均可通过训练更新,a是参数;最后通过softmax得到目标语言的词向量,再通过词典得到目标语言词汇;计算如下:其中,θ,θi,θj为权重参数,T为转置,k为目标语言词表的大小。以翻译模型为标准,根据语言模型中同样的损失函数公式分别输出源语言到目标语言,目标语言到源语言的损失值;(2)结合双向的打分,对语料进行排序;(3)根据排序结果,删除质量较低的平行语料;经过语言模型和翻译模型筛选平行语料,得到高质量的双语平行语料。本专利技术的另一目的在于提供一种应用所述基于语言模型和翻译模型的清洗平行语料方法,所述基于语言模型和翻译模型的清洗平行语料系统,基于语言模型和翻译模型的清洗平行语料系统包括:语料预处理模块,用于处理相同语系的多个方向的双语平行语料;第一筛选模块,语料预处理主要使用神经网络机器翻译模型和语言模型预处理算法对语料进行预处理;第二筛选模块,使用翻译模型对双语平行语料筛选语料,去除语序不畅,翻译不准确的语料。进一步,所述语料预处理模块包括:分词单元,用于使用基于隐马尔科夫模型的分词算法进行分词。切分子词单元,用于使用字节对编码算法,根据词的频率,把低频词切分成子词的形式,保留高频词。进一步,所述第一筛选模块包括:损失值计算单元,用于以语言模型为标准,根据以下损失函数公式输出源语言和目标语言的损失值;语料排序单元,用于结合源语言和目标语言的打分,对语料进行排序;删除单元,用于根据实际情况,删除质量较低的平行语料;所述第二筛选模块包括:输出单元,用于以翻译模型为标准,根据语言模型中同样的损失函数公式分别输出源语言到目标语言,目标语言到源语言的损失值。排序单元,用于结合双向的打分,对语料进行排序;平行语料删除单元,用于根据实际情况,删除质量较低的平行语料;去除单元,用于经过语言模型和翻译模型筛选平行语料之后,去除语序不畅,翻译不准确的语料,得到高质量的双语平行语料。本专利技术的另一目的在于提供一种实现所述基于语言模型和翻译模型的清洗平行语料方法的计算机程序。本专利技术的另一目的在于提供一种实现所述基于语言模型和翻译模型的清洗平行语料方法的信息数据处理终端。本专利技术的另一目的在于提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行所述的基于语言模型和翻译模型的清洗平行语料方法。综上所本文档来自技高网
...

【技术保护点】
1.一种基于语言模型和翻译模型的清洗平行语料的方法,其特征在于,所述基于语言模型和翻译模型的清洗平行语料方法包括以下步骤:步骤一,语料预处理,使用神经网络机器翻译模型和语言模型预处理算法对语料进行预处理;步骤二,使用源语言和目标语言的语言模型对平行语料进行筛选;步骤三,使用神经网络机器翻译模型对双语平行语料筛选语料。

【技术特征摘要】
1.一种基于语言模型和翻译模型的清洗平行语料的方法,其特征在于,所述基于语言模型和翻译模型的清洗平行语料方法包括以下步骤:步骤一,语料预处理,使用神经网络机器翻译模型和语言模型预处理算法对语料进行预处理;步骤二,使用源语言和目标语言的语言模型对平行语料进行筛选;步骤三,使用神经网络机器翻译模型对双语平行语料筛选语料。2.如权利要求1所述的基于语言模型和翻译模型的清洗平行语料方法,其特征在于,所述步骤一具体包括:(1)分词,使用基于隐马尔科夫模型的分词算法进行分词;(2)切分子词,使用字节对编码算法,根据词的频率,把低频词切分成子词的形式,保留高频词;对于低频词,切分成子词的形式,以保留词的原来形式而不会被替换成未知词的形式。3.如权利要求1或2所述的基于语言模型和翻译模型的清洗平行语料方法,其特征在于,所述步骤二具体包括:(1)语言模型根据给定的若干个词,预测下一个词出现的概率,当一个句子为:S=w1,w2,...,wk;则其概率可以表示为:P(s)=P(w1,w2,...,wk)=p(w1)p(w2|w1)...p(wk|w1,w2,...wk-1);其中w1,w2......,wk为第1到k个词,那么一般使用n元语言模型来近似估算其概率:即当前词的概率只与前n-1个词有关,那么其概率可以表示为:其中w1,w2......,wn为第1到n个词,那么以已经训练好的语言模型为标准,根据以下损失函数公式输出源语言和目标语言的损失值:L=-∑iy′ilog(yi);其中y′i为语言模型中预测下一个词wi的概率,yi为待打分的语料中下一个词wi的概率;(2)对源语言和目标语言进行相同的(1)步骤,综合两种语言的语言模型打分,对语料进行排序;(3)根据排序结果,删除质量较低的平行语料。4.如权利要求1或2或3所述的基于语言模型和翻译模型的清洗平行语料方法,其特征在于,所述步骤三具体包括:(1)使用基于自注意力的编码器到解码器的神经网络结构作为翻译模型,其计算如下:点乘注意力:其中,Q,K,V均为词向量,T表示转置,dK表示K的维度,Xi,Xj为输入参数;多头注意力:MultiHead(Q,K,V)=Concat(head1,...,headn)其中,Q,K,V均为词向量,Concat是指把向量拼接起来,Wi为参数矩阵,head1...headi...,headn为第1到n个头向量;前馈神经网络:FFN(x)=max(0,xW1+b1)W2+b2;其中,W1,W2为权重参数,b1,b2为偏置,均可通过训练更新,a是参数;最后通过...

【专利技术属性】
技术研发人员:贝超程国艮
申请(专利权)人:中译语通科技股份有限公司
类型:发明
国别省市:北京,11

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

1