一种基于预训练模型的词对齐性能提升方法

文档序号:8269 发布日期:2021-09-17 浏览:58次 英文

一种基于预训练模型的词对齐性能提升方法

技术领域

本发明涉及一种自然语言处理领域的词对齐提取技术,具体为一种基于预训练模型的词对齐性能提升方法。

背景技术

词对齐是自然语言处理的子课题,而且地位极其重要。原因是词对齐技术在自然语言领域的实例抽取、复述生成和词性标注,尤其是统计机器翻译等任务上都有较好的应用。所以一个好的自动词对齐系统是推进自然语言处理领域中大多数任务提升的关键系统。

近年来,随着人工智能的推进,深度学习获得了各个领域广泛学者的亲昧,当然机器翻译领域也不例外。近几年来,相关研究人员走出统计机器翻译(SMT)的世界,去打开了神经机器翻译(NTM)的大门。在构建神经机器翻译模型的时候,大都采用编码-解码框架,再加上最为重要的注意力机制来引入上下文信息,从而提升翻译的质量。其中最为著名的NMT翻译模型莫过于Ashish Vaswani和Noam Shazeer等人提出的Transformer模型,此模型WMT2014上面多项任务中取得了突破性的分数。

伴随着NMT突破性的成效和不断攀升的热度,一些研究人员开始依据NMT里面的注意力机制捕捉到的信息,来进行目标语句到源语之间的词对齐,其中初始尝试是在以循环神经网络作为编码器和解码器的NMT里面,之后在Transformer机器翻译模型上继续捕捉词对齐信息,并且和以往仅仅利用Attention矩阵来进行词对齐不同的是,这一方法提出添加训练参数的Explicit Alignment Mode(EAM)和引入对齐损失值Prediction Difference(PD)来改善以往在NMT上进行词对齐的方案,这两种改进相对于以前的单一使用Attention矩阵进行对齐在结果上有了较大的提升。

在实际实验的过程中,发现基于NMT进行对齐的效果相对于基于统计方法对齐的效果并不好,甚至在部分数据集上显示很大的劣势,但是在NMT上进行对齐给研究人员提供了一个新的词对齐视角——利用深度学习来进行词对齐。

之后,近两年,预训练模型的出来给研究词对齐的工作人员带来了一道曙光。由于预训练模型是基于无监督的方法进行训练出来的,所以可以使用大量的语料,使得预训练模型中的词向量拥有语义和语境信息。因此,研究人员可以直接使用词语词的词向量余弦值直接作为词语之间的相似度,进而进行抽取词对齐。但是现在存在的一个较大的问题就是,这种方法的下的词对齐很方便很易用,但是对于短语和术语的对齐效果较差。总的来看,词对齐方法总的在现在流行的而且效果较好的方法可分为三类:基于规则、基于统计和基于深度学习方法的,基于规则的方法使用内置的双语词典作为判断语言单位对齐的标志。其特点是容易实现,而且直观;基于统计的方法不需要任何事先编写规则或者学习知识,而是以一组数值待定的概率矩阵的形式出现,通过用真实语料训练统计对齐模型,可以得到概率数据,然后根据概率数据计算每个对齐方案的概率,选择概率最高的一个作为对齐输出结果,这种词对齐模型也可以归结于生成类模型;而基于深度学习方法则可以看作是一种学习知识和应用知识的过程,学习知识的过程可以看作用大量的双语对齐数据集训练网络模型里面庞大的参数。然后网络利用自己已经训练好的参数来进行判断未学习过的双语句对对齐信息,这个过程可以说是模型用来应用自己已经学习过的知识的过程。

虽然深度学习方法能获得比较好的词对齐数据,但是由于其参数量庞大,所以需要较为庞大的数据集进行训练,这样非常耗费人工标注的资源,影响了词对齐数据在很多自然语言领域其他任务的使用。

发明内容

针对深度学习需要庞大数据进行训练耗费人工标注资源,影响在自然领域的其他任务中的使用问题,本发明提供一种基于预训练模型的词对齐性能提升方法,可有效减少词对齐数据资源需求量。

为解决上述技术问题,本发明采用的技术方案是:

本发明提供一种基于预训练模型的词对齐性能提升方法,包括以下步骤:

1)使用预训练模型获取句子中词语的词向量,从而构成互译句对的词向量矩阵X和Y;

2)使用短语和术语抽取工具对互译句对词向量矩阵X和Y进行短语和术语的抽取,然后把短语和术语中的词的词向量进行加和平均处理,加强其内部之间的关联性,获得更新后的互译句对词向量矩阵X和Y;

3)将词语和词语之间的词向量余弦计算值作为两个词之间的相似度,获得互译句对的相似度矩阵Sim,计算公式如下:

Sim=cos(X,Y)

4)取卷积核定义为κ,尺寸为n×n大小,这里n为2-8,对相似度矩阵Sim进行卷积操作,使得词对齐融入上下文词的信息;

5)使用不同的词对齐抽取方法分别从更新后的互译句对相似度矩阵中抽取对应的词对齐信息。

在步骤2)中,更新对应的词向量矩阵的具体步骤为:

203)使用工具对句子进行短语和术语的抽取,然后构造数据集的短语和术语列表;

204)对句子的词向量矩阵进行短语和术语匹配,匹配出ei,......,ei+n共n个源语词为一个短语,对n个词语的词向量做出如下更新:

对句子中的所有短语和术语的词向量进行更新之后,即可获得对应更新过后的句子词向量矩阵X和Y。

在步骤4)中,使用卷积核κ来对相似度矩阵进行卷积操作,做卷积的具体操作步骤如下:

403)设置卷积核κ,卷积核的尺寸为n×n,设置卷积核中各元素的值全部设置为0-1之间;

404)对双语句对的相似度矩阵进行卷积操作,来更新双语句对的相似度矩阵。

在步骤5)中,分别使用Argmax方法、Itermax方法和Match方法对步骤4)中的相似度矩阵进行提取词对齐数据,具体的操作步骤如下:

501)使用Argmax方法来对相似度矩阵中的行和列分别进行求最大值处理,如果对应模块是行的最大值和列的最大值,那么这个模块中的源语词和目标语词是对齐的;

502)使用Itermax方法对相似度矩阵进行迭代的抽取词对齐信息。然后每一次迭代得到的词对齐都作为最后得到的词对齐结果;

503)把词对齐任务映射到一个二分图中,然后使用Match算法,来对这个图进行求解,得到最后的词对齐结果。

本发明具有以下有益效果及优点:

1.本发明通过基于预训练方法解决了深度学习需要训练数据大的问题。

2.本发明在获得句对的词向量矩阵之后,使用短语和术语表进行匹配,来解决预训练中词语之间相关度不大,而导致词语之间对齐不统一的问题。

3.本发明通过使用在句对的相似度矩阵上进行卷积操作,来解决词对齐上下文之间没有关联的问题。

4.本发明可以获取较优异的词对齐数据,可以帮助自然语言处理领域的其他任务获得比较好的提升。

5.本发明操作简单,可复现性较强,容易操作;并且,计算复杂度较低,在实际应用中耗费时间较短,可节约操作的时间成本和计算成本。

附图说明

图1为本发明基于预训练模型的词对齐的性能提升方法的流程图;

图2为所用的预训练模型结构图。

具体实施方式

下面结合说明书附图对本发明作进一步阐述。

本发明提供一种基于预训练模型的词对齐性能提升方法,具体方法如图1所示,包括如下步骤:

1)使用预训练模型获取句子中词语的词向量,从而构成互译句对的词向量矩阵X和Y;

2)使用TextBlob等短语和术语抽取工具对步骤1)所得的互译句对词向量矩阵X和Y进行短语和术语的抽取,然后把短语和术语中的词的词向量进行加和平均处理,使得他们内部之间的关联性较强一些。从而获得更新后的互译句对词向量矩阵X和Y;

3)之后把词语和词语之间的词向量余弦计算值来作为两个词之间的相似度,然后获得互译句对的相似度矩阵Sim,计算公式如下:

Sim=cos(X,Y)

4)取卷积核定义为κ,尺寸为n×n大小,这里n为2-8,对相似度矩阵Sim进行卷积操作,使得词对齐融入上下文词的信息;

本实施例中尺寸大小为3×3,对步骤3)所获得的相似度矩阵Sim进行卷积操作,对词对齐融入上下文词的信息;

5)使用三种不同的词对齐抽取方法从根据步骤4)更新后的互译句对相似度矩阵中抽取词对齐;

本发明方法还可以包括步骤6),使用测试数据来测试步骤1)到步骤5)抽取词对齐的质量。

在步骤1)中对使用预训练模型来获得句子的词向量。预训练模型是使用大量的双语预料库进行训练的,其中的任务是语言模型。本身也把词进行表征为实数向量,这个实数向量里面包含着词的词性和上下文信息等等。

如图2所示,其中训练的预训练模型的时候使用的是语言模型。结构图里面的输入wm-n+1,wm-n+2,......,wm-1是窗口单词,即使用词wm-n+1,wm-n+2,......,wm-1来预测下一词wm。在完成训练之后,预训练的每一个DECODER层都会产生对应的实数词向量,可以使用这些来当做词对齐任务。

预训练模型一般也是网络的堆叠而形成的,这也代表着每一层都会生成相对应的词向量。通过大量的实验对比来看,一般采用第八层的词向量的词对齐抽取任务效果比较好。这是因为,较低层的词向量可能还没有获得较好的学习,实数向量的包含的信息还不是很足以满足需求。然而,较高的层数的词向量里面虽然包含了很多信息,但是这些信息并不是想要的,而且预训练模型学习目标所需要的,也就是里面包含了很多语言模型的有关信息,相反,本发明所需要的词法、句法和上下文信息包含的很少,所以较高层的解码器输出表征向量也不利于对齐双语句对之间的对齐。

在步骤2)中对短语中词向量进行处理,具体为:

201)首先使用TextBlob等短语抽取工具把双语句对中的短语和术语提取出来,然后存储标记。为了节约内存,这里的标记方式为记录词组在句子中的位置。

202)根据步骤201)中的标记,对短语中的词向量进行处理,从而增强这些词语的关联性。对句子的词向量矩阵进行短语和术语匹配,匹配出ei,......,ei+n共n个源语词为一个短语,对n个词语的词向量做出如下更新:

对句子中的所有短语和术语的词向量进行更新之后,即可获得对应更新过后的句子词向量矩阵X和Y。

在步骤4)中,使用卷积核κ来对相似度矩阵进行卷积操作,具体操作步骤如下:

401)设置卷积核κ,卷积核的尺寸为n×n,设置卷积核中各元素的值全部设置为0-1之间,对双语句对的相似度矩阵进行卷积操作,来更新双语句对的相似度矩阵;

402)然后对步骤3)所得的相似度矩阵Sim进行卷积操作,从而对词对齐融入上下文词的信息。

在计算相似度矩阵Sim的时候,每一个数值的得出都单单的取决于两个词的词向量的。当对其使用卷积操作的时候,这样就会使得Sim中的每一个数值和周围的数值进行关联在一起,这样其实也是让对齐之间进行关联的,也是很符合实际需求的。例如,在双语句对“我对我很满意。”和“I am satisfied with me.”其实中文句子中的第一个“我”和“I”的对齐和第二个“我”和“me”的对齐是有关系的,如果第一个“我”和“I”进行对齐的话,那么说明第二个“我”和“I”是有极小的概率进行对齐的。相反,也代表着第一个“我”和“I”的对齐会促进第一个“我”后面的“对”和“am”的对齐,卷积正是来模拟这一过程。

在步骤5)中,分别使用Argmax方法、Itermax方法和Match方法对步骤4)中的相似度矩阵进行提取词对齐数据,因为不同的算法得出的结果有不同的优势(相对于准确率、召回率和F1值来讲)。所以,在开始的时候,用户需要针对不同的需求来选择自己想要的抽取算法。具体的操作步骤如下:

501)首先本发明使用Argmax方法来对相似度矩阵中的行和列分别进行求最大值处理,如果对应模块是行的最大值和列的最大值,那么这个模块中的源语词和目标语词是对齐的。Argmax的公式如下:

其中i代表Sim的横轴,也就是词在源语句中的位置。j代表Sim的纵轴,也就是词在目标语句的位置。如果词语i和词语j的相似度在Sim中的横向和纵向都是最大的,则代表词语i和词语j有对齐关系。

502)本发明使用Itermax方法对相似度矩阵进行迭代的抽取词对齐信息;然后每一次迭代得到的词对齐都作为最后得到的词对齐结果,对于Itermax方法,则是Argmax方法的一种改进。当符合Argmax的情况较少的时候,但是确实还有剩余词语对齐,此时就需要Itermax方法里面的迭代,来找出这剩余的词向量。

对于Sim,首先可以对其进行Argmax操作,然后获得词对齐矩阵A,A的大小和Sim的大小是一样的,只不过A中的值是非0即1的,如果Aij=1的话,那么代表词语i和词语j是具有对齐关系的,否则等于0的话,则代表词语i和词语j是没有对齐关系的。在获得对齐矩阵A之后,继续对Sim进行操作。对于Simij,如果Aij=1的话,那么Simij=0;如果Aij=0,但是对齐矩阵A的第i行或者第j列有等于1的情况的话,那么Simij=Simij×a,这个a是一个超参数,取值范围为(0,1);如果Aij=0且对齐矩阵A的第i行或者第j列没有有等于1的情况的话,那么Simij值不进行改变。对Sim进行以上的变换之后,然后再进行Argmax操作,然后获得一个临时的对齐矩阵A`,然后对对齐矩阵A做下面的更新操作。

A=A+A`

503)本发明把词对齐任务映射到一个二分图中,然后使用Match算法,来对这个图进行求解,得到最后的词对齐结果。Match方法就是把从Sim抽取词对齐的过程中看做是一个最大二分图匹配问题。其中,可以把每一个词看做一个点,那么就构成了一个图G。并且源语中的所有点可以看作为A,目标语中的所有点可以看做为子集B,可以明显的看出子集A和子集B并没有交集,那么图G可以看做是一个二分图,词对齐的问题也抽象为是最大二分图匹配问题,本发明使用类似于KM算法等来求解词对齐问题。

这三种方法虽然都能求解词对齐,但是它们求解的结果是有较大的差异的。通过实验和分析来看,Argmax求解的词对齐的准确率相比于其他两种方法较高;Itermax求的词对齐的召回率相比于其他的两个方法较高一些:Match的F1值较高一些。

通过本发明的方法,能够获得比基于统计方法词对齐系统效果更好的词对齐结果。以Europarl gold alignments数据集作为英-德测试的数据集,以Tavakoli和Faili的数据集作为英-波斯测试的数据集,以Bojar和Prokopov`a的数据集作为英-丹麦测试的数据集,分别测试了本发明的效果,均取得了不错的成绩,在实验室证明了本发明的可行性和对齐质量的优势。

通过本发明,使用者可以获得较高质量的词对齐数据,并且把他们运用到下游任务,或者充当外部信息。例如,本发明使用词对齐信息来帮助训练机器翻译模型,在机器翻译的过程中,如果拥有当前预测词的词对齐信息,那么就能定位到目标句子中的位置,来帮助获得更高质量的翻译结果。

完整详细技术资料下载
上一篇:石墨接头机器人自动装卡簧、装栓机
下一篇:槽位填充方法、装置、设备及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!