APP下载

一种基于小字典不对等语料的跨语言词嵌入方法

2019-09-06王红斌冯银汉余正涛文永华

中文信息学报 2019年8期
关键词:源语言目标语言语词

王红斌,冯银汉,余正涛,文永华

(昆明理工大学 信息工程与自动化学院,云南 昆明 650504)

0 引言

跨语言词嵌入最近几年引起了很多人关注,并被广泛研究和应用。除了应用于机器翻译[1]、跨实体链接[2]等传统任务外,它在文档分类[3]、语法分析[4]和词性标注[5]等任务中都有应用,并提供了一种优秀的转移机制。

现有的大多数跨语言词嵌入方法都是利用大型双语平行语料库学习跨语言词嵌入[6-7]。由于很多语言语料稀缺,Søgaard等[8],Hermann等[9],Vuli等[10]使用文档对齐或标签对齐语料库实现跨语言词嵌入,但是许多语料库并没有可用的双语词对。针对这一问题,Mikolov等[11],Artetxe等[12]提出采用学习双语字典的欧式距离的平方和最小化的线性变换方法实现跨语言词嵌入,该方法首先使用单语言语料对每种语言进行单语嵌入,然后使用两种语言单语词嵌入映射来表示两种语言之间的关系。Zhang等[5]将转换矩阵W约束为正交矩阵。Xing等[13]在单语词嵌入训练中将长度归一化,对转换矩阵进行正交性约束。Artetxe等[14]使用自学习方法来减少双语资源的需求方法。Artetxe等[12]提出了一个双语词嵌入框架,并阐明了和Mikolov[11]之间的关系,提出了一种有效的分析实施方法。Smith等[15]对Artetxe等[12]的方法进行合并降维扩展。Faruqui等[16]提出了另一思想,不是学习从源语言到目标语言的单一线性转换,而是将两种语言的词向量投影到共同的低维空间学习线性变换。以上方法采用的词典通常包含几千个双语词对,但是许多语言不容易获得这种规模的词典,特别是涉及到资源很少的语言。

本文基于Mikolov[11]映射的方法,提出了一种基于小字典语料不对等的跨语言词嵌入方法,该方法不需要大型双语语料,仅使用5 000词对。该方法首先对单语词向量进行归一化,对5 000词对正交最优线性变换求得梯度下降初始值,然后通过对大型语料英语(源语言)进行聚类,找出5 000词源语言与源语言聚类得到的每一簇的对应关系,把源语言中每一簇的平均词向量值,与小字典中目标语言对应词的平均词向量值建立对应词向量对关系,然后追加到小字典后面来泛化和扩展小字典。最后,用扩展后的小字典利用梯度下降进行优化。本文方法降低了梯度下降的迭代次数,减少了模型优化时间,提高了跨语言词嵌入的准确率。

本文的组织结构如下: 第1节为基于映射的跨语言词嵌入方法介绍; 第2节详细介绍基于小字典语料不对等的跨语言词嵌入模型;第 3节对跨语言词嵌入模型的实验和结果进行分析;第4节为结论。

1 基于映射的跨语言词嵌入方法

(1)

图1中给出了可视化的图以说明Mikolov的方法。可以看到英语和意大利语中数字的向量,并且可以看到这些单词具有相似的几何排列[11]。

图1 英文向量空间(左)和意大利文向量空间(右)的表示

图1中,将每种语言的五个数字投影到两个不同维度的向量空间,左边为数字在英文向量空间的表示,右边为数字在意大利文向量空间的表示。通过旋转可以将某个词语从一个向量空间线性转换到另一个向量空间。

2 基于小字典语料不对等的跨语言词嵌入模型

2.1 本文方法的思想

Mikolov[11]的方法,因其简单且有良好的表现在双语词嵌入工作中具有广泛应用。本文在Mikolov基础上进行扩展和优化,使其在缺乏语料和双语语料不对等的情况下有很好的表现。算法流程如下:

第一步,用Word2Vec对源语言和目标语言进行处理得到源语言S、目标语Y及字典D词向量;

第二步,归一化S、D;

第三步,正交化(SVD)D得到W1;

第四步,k-means聚类S,得到S1,S2,…,Sn个聚类簇,n为聚类的簇数;

第五步,建立S→X→Y之间的关系,S为源语言,X为字典D中的源语言词集合,Y为字典D中与X互译的目标语言词语集合,Xi为{x1,x2,…,xk}的集合,xk为源语言中的某个词,Xi与S聚类后的某个簇i存在对应关系,即Xi∈Si,对簇Si求平均词向量为S′i,同时将字典中Xi集合对应的目标语言集合Yi取词向量的平均Y′i,将S′i与Y′i这对扩展后的对应关系一同追加到字典D后面;

第六步,重复第五步,直到所有的簇S1,S2,…,Sn都找到与目标语言集合的对应关系,并将对应的均值词向量都追加到字典D中,得到新的字典D1,转到第七步。

第七步,以W1为初始值,对D1进行梯度下降求解,求解跨语言词嵌入映射模型的最优值。

在第1节中介绍了Mikolov的映射方法,由图1可以看出Mikolov的方法学习了源语言到目标语言的线性映射,这是一对一的线性映射。本文把一个源语言S聚类后的簇S1,S2,…,Sn映射到目标语言,使源语言S得到充分利用。原理图如图2所示。

图2 源语言(左)映射到目标语言(右)的单词向量分布式表示

图2中,左边为单词向量在某一语言向量空间(原语言向量空间,如英语词向量空间)的表示,右边为将左边(原语言空间)每个词向量借助字典映射到另外一种语言向量空间(目标语言向量空间,如意大利语向量空间),对源语言进行聚类,然后把源语言词向量簇与映射到目标语言空间的词向量建立对应关系。

2.2 归一化词向量

2.3 K-means聚类

K-means算法是典型的基于距离的聚类算法,采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大。簇是由距离靠近的个体组成的,因此把得到紧凑且独立的簇作为最终目标,具体如式(2)所示。

(2)

其中,μn簇Sn的均值向量,称为质心,表示如式(3)所示。

(3)

输入词向量矩阵D={x1,x2,…,xn},随机的选取任意K个词向量作为簇的初始聚类中心,代表初始地K簇,K个词向量选取对聚类结果有较大的影响。该算法在每次迭代中将词向量矩阵中剩余的词向量根据其与各个簇中心的距离,将每个词向量重新赋给最近的簇。如果在一次迭代前后,聚类的中心向量J没有发生变化,说明已经收敛,输出的簇划分为(S1,S2,…,Sn)。

2.4 聚类簇与小字典的扩展和泛化

图3 小字典泛化原理图

2.5 梯度下降优化

本文将第1节中Mikolov的方法进行转换,相当于最小残差矩阵F范数的平方,如式(4)所示。

(4)

为了降低模型参数W求解过程中的迭代次数,首先,在预处理过程中对词嵌入矩阵X和Y中的词向量进行归一化约束。其次,利用正交转换求得初始值W1,将W约束为正交矩阵(即WWT=WTW=I)。由W1=W=VWT正交性约束下计算W1,其中对YTX进行SVD分解,即YTX=UZVT[2],可以在有效的时间内计算最佳线性转换,由此得到梯度下降较为理想的初始值进W1,进而降低模型参数转换矩阵W的训练时间。

丰富的植被把丹霞地貌点缀的更具诱惑力,山坡上长满各种乔灌木,形成了林海。沟溪边绿草如茵,流水潺潺。每年6、7月间,山花烂漫,野草芳菲;9月金秋,霜叶鲜红,硕果累累,树林草丛中时有出没的野生动物,使人有新奇之感,秋夏半年是一幅色彩斑斓的迷人画卷。

由于现有的5 000词对的小字典D太小,实验效果不佳,本文将2.4节中泛化后的小字典D1作为梯度下降的训练数据对转换矩阵W的训练和学习。所追求最理想的结果是XW=Y,因此考虑为简单的线性过程[13],如式(5)所示。

(5)

由此得到损失函数如式(6)所示。

(6)

梯度下降更新迭代如式(7)所示。

(7)

其中,α为学习率,经过训练学习得到最后的转换矩阵W。

3 实验

为了验证本文方法的可行性,本文采用和Artetxe[14]一样的公共英语、意大利、德语和芬兰语数据集对本文的词嵌入方法进行评估,并与Mikolov[11],Xing[13],Artetxe[12]和Artetxe[14]等的方法进行对比,来说明本文方法的有效性。

3.1 实验数据

本文使用由Dinu等[17]提供的公共英语、意大利数据集,其中包括单语词嵌入和双语词典的训练集和测试集。有(UKWAC +维基百科+ BNC)的28亿个词英语语料和16亿意大利语词的语料(itWaC)。用欧洲平行语料库(Europarl-Parallel Corpus)中的词对作为训练集和测试集[18],以词典中5 000个最常用的词对作为训练集和随机1 500作为测试集。词嵌入使用Word2vec工具包CBoW负采样[11],上下文窗口设置为5个单词,嵌入的维度为300维,子采样为1×10-5,负样本数量为10个,源语言(英语)选用200 000个最常用词汇。

除了英语、意大利语外,本文还选择了两种有公共资源的语言进行测试。因此,为英语、德语和英语、芬兰语创建了类似的数据集。以同样的训练方式对9亿词的WaCky德语语料训练词嵌入。由于这个集合不包含芬兰语,本文对爬取到的28亿规模的语料库,用斯坦福大学的分词器进行分词[1]。此外,从欧洲平行语料库(Europarl-Parallel Corpus)中获取芬兰语和意大利语各自的词对,创建了训练和测试集。按照同样的方法、相同的配置训练德语和芬兰语单语词嵌入[17]。

对于收敛标准,当权值从一次迭代下降到给定阈值以下时停止训练。因为归一化后,点积为-1到1,所以将此阈值设置为1×10-6,这是一个比较合理的阈值。

3.2 评价指标

(8)

3.3 K-means聚类中K值的选取

本文按Artetxe[14]设置同样的参数和相同的评价标准。对20万源语言(英语)语料进行聚类,由于种子字典规模为5 000词对,本文分别对源语言聚4 000、5 000、6 000、7 000和8 000簇。在每次聚类过程中对20万数据集进行100次迭代,聚上面5类,在内存为64 GB的服务器上运行了近五天,聚类耗时过长,并且在聚更高簇时,我们现有的实验设备配置无法完成聚类。因此,本文聚类中K值的选取实验我们只做到了8 000,而由表1也看出聚类K值对实验结果有很大的影响,当K=8 000时已经取得较好的实验结果,所以本文对K的选取就为8 000。

表1 对不同K值下的双语词汇归纳的正确性(%)

小字典的大小对实验结果必然产生影响,在本文选用5 000的种子字典,更大的字典有更高的准确率,但是大的字典很多情况下由于语料稀缺,双语词典难以获得,从而转向更小的字典的研究,基于更小的字典会导致聚类后扩展的字典也更小,从而使得学习到的模型差一些,进而影响实验结果。

3.4 实验结果与分析

对于双语词嵌入的实验,本文的方法与Mikolov[11],Xing[13],Artetxe[12]和Artetxe[14]等提出的方法进行了比较。表2显示了与现有工作的比较,选择K=8 000最佳性能配置的结果与现有方法进行比较。

表2 双语词嵌入正确率实验结果对比(%)

由表2看出Xing[13]的方法比Mikolov[11]准确率高,这与他们在论文中内容一致。说明归一化和正交能很好地提高实验效果。

Artetxe[12,14]较之前的两种方法也有较好的表现结果,比之前的两种方法表现更为优秀。Artetxe[12]在Mikolov[11]的基础上引入了长度归一化和中心化,在三种语言的表现上都有很大的提高。Artetxe[14]提出了自学习框架,在25个词对情况下就有不俗的结果。但是在5 000词对下在英语—德语、英语—芬兰语结果稍逊于Artetxe[12]。

本文的方法对源语言进行聚类,使得小字典得以扩展和泛化,并用正交SVD求得梯度下降初始值W1,降低迭代次数,有效减少了模型训练时间。同时正确率也有明显的提高,但是在英语—芬兰语的表现结果比Artetxe[12]稍微差一点。分析其原因,主要是我们自己爬取芬兰语,并利用斯坦福大学的分词器进行分词来训练词向量模型。芬兰语的词向量的效果可能受分词或训练词向量模型语料规模影响,从而影响词嵌入的效果。

三种语言对的准确率都表现出相同的一般性,它们的准确度也有明显的差异,这是所涉及的语言的邻近性所致。芬兰语是非印欧语的凝集语言,使得对这一语言的任务变得相当困难。在小字典上取得良好结果表明本文方法的鲁棒性。即使对于遥远的语言对,其中嵌入空间的结构相似性可能较弱,它也能从双语词对中学习非常好的双语映射。

3.5 跨语言相似度计算

为了证明模型的有效性,本文还在跨语言相似性方面进行了测试,与Mikolov[11],Xing[13],Artetxe[12]和Artetxe[14]等的方法进行对比,来证明本文方法的有效性。采用Artetxe[14]所用的带有斯皮尔曼系数的测试集和评价指标,以相似度SIM作为度量标准,N表示测试集的大小,如式(9)所示。

(9)

表3显示了与现有工作的比较,由表3看出本文方法在先前的方法中引入了梯度下降初始值W1,对源语言聚类扩展和泛化小字典。在模型训练时间和相似度计算上都有明显的提高,但是在英语—意大利语的表现结果比Mikolov[11]稍微差一点。

表3 斯皮尔曼系数关于英语—意大利语和英语—德语的跨语言相似度的相关性

综上实验结果我们可以看出,本文方法在跨语言词嵌入方面确实取得了一定的效果,但是对3.3节中出现的源语言一个词对应目标语言的多个词的情况,本文只是对所对应的多个词向量进行取平均处理,后续工作将考虑进一步优化处理源语言一个词对应目标语言的多个词的问题,尽可能地排除所对应的目标词中的干扰词。

4 总结

本文基于Mikolov等[11],Xing等[13]的工作提出一种基于小字典不对等语料的跨语言词嵌入方法,在英语—意大利语、德语和芬兰语上进行了实验验证,结果证明了训练时间和双语词嵌入准确率都有很好的表现。本文方法首先对单语词向量进行归一化,对小字典词对正交最优线性变换求得梯度下降初始值,然后通过对大型源语言(英语)语料进行聚类,借助小字典找到与每一簇相对应的源语言词,取聚类得到的每一簇平均词向量值和源语言与目标语言对应的词向量值,建立新的双语词向量对应关系,将新建立的双语词向量扩展到小字典中,使得小字典得以泛化和扩展。最后,利用泛化扩展后的字典对跨语言词嵌入映射模型进行梯度下降求得最优值。但是聚类消耗大量时间,未来我们的研究将围绕解决这一问题开展,同时不再局限于词的映射,将扩展到句子,甚至是文本的映射。

猜你喜欢

源语言目标语言语词
语言困境
你是那样美 唐心语词
中国大学生对越南语虚词的误用
林巍《知识与智慧》英译分析
《老子》“自”类语词哲学范畴释要
浅析日语口译译员素质
教材插图在英语课堂阅读教学中的运用及实例探讨
一首诗开始的时候
以口译实例谈双语知识的必要性
从目的论角度看《红高粱》中文化负载词的翻译