跨语言词向量笔记7. 无监督跨语言词向量

本文完全来自于Anders Søgaard等人的著作[Søgaard2019] Søgaard, A., Vulić, I., Ruder, S., & Faruqui M. (2019). Cross-Lingual Word Embeddings

在基於单词映射求跨语言词向量的方法中,很多工作都试图在保持学到的映射可靠性的情况下,减少所需要的监督信号。一些工作发现即便只使用数词和不同语言间拼写相同的单词也可以学到可用的映射关系,另一些工作用的甚至是完全无监督的方法,其背后通常是生成式对抗网络网络(GAN)或者迭代最近点算法(iterative closest point, ICP)。所有算法的目的都可以看做是学习一个线性变换来最小化目标分布和源分布之间的散度

大多数使用无监督方法学习跨语言词向量的方法都分成两步。第一步使用GAN或ICP等方法产生一个种子词典,第二步则是使用这个种子词典做之前的映射算法(例如普式分析)。即映射算法还是有监督的,只不过不再人工制造种子词典,而是无监督学出一个种子词典。在这两步之间,还需要一个重要的启发式算法,引导如何选取词对来构造种子词典。本章第一节主要介绍种子词典的推导方法,第二节介绍精化和相关的启发式方法,第三章介绍当前无监督方法存在的问题。需要注意的是,无监督方法是目前跨语言词向量学习这一方向研究的重点,进展日新月异,因此本文的调研是不完备的

种子词典的推导

很多无监督方法使用的种子词典推导过程看上去都像是在炼丹,反直觉,但是很有趣。不过需要注意的是,推出种子词典只是迈出了一小步,后面的精化和启发式方法有时候能明显地化腐朽为神奇

基于GAN的方法

基于GAN的方法中,最典型也最出名的是MUSE[Conneau2018],其使用一个带线性生成器的原始GAN来学习嵌入空间之间的对齐。在一个有两名参与者的游戏中,判别器DD试图区分两个嵌入空间,而生成器GG试图通过将源语言空间映射到目标语言空间来欺骗判别器(这也是生成器的训练目标)

生成器可以是任何可微函数GwG_w,在本文中,其具体表现形式是一个线性映射Wst\boldsymbol{W}^{s\rightarrow t},目标使其选择的Wst\boldsymbol{W}^{s\rightarrow t}可以让输出WstXs\boldsymbol{W}^{s\rightarrow t}\boldsymbol{X}^s的分布尽可能接近Xt\boldsymbol{X}^t。判别器可以看做是一个形式为Dw:X{0,1}D_w:\mathcal{X} \rightarrow \{0,1\}的函数,在MUSE中是一个多层感知机,其任务是区分WstXs\boldsymbol{W}^{s\rightarrow t}\boldsymbol{X}^sXt\boldsymbol{X}^t。由于对于任何向量x\boldsymbol{x},我们知道是xXs\boldsymbol{x} \in \boldsymbol{X}^s还是xXt\boldsymbol{x} \in \boldsymbol{X}^t,因此对NN个来自于Xs\boldsymbol{X}^s的样本和NN个来自Xt\boldsymbol{X}^t的样本,可以计算判别器的损失函数,并更新判别器的参数:
ww+αi=1N[log(Dw(Xit))+log(1Dw(WstXis))] w \leftarrow w + \alpha\sum_{i=1}^N \nabla \left[\log( D_w(\boldsymbol{X}_i^t)) + \log (1-D_w(\boldsymbol{W}^{s \rightarrow t}\boldsymbol{X}_i^s))\right]
生成器的损失函数就是判别器的相反数

整个GAN的参数(Gw,Dw)(G_w, D_w)通过求解如下最大-最小问题得出
minGwmaxDwE[log(Dw(Xt))+log(1Dw(Gw(Xis)))] \min_{G_w}\max_{D_w} \mathbb{E}\left[\log( D_w(\boldsymbol{X}^t)) + \log (1-D_w(G_w(\boldsymbol{X}_i^s)))\right]
如果生成器在大量样本上都能战胜理想的判别器,则Xt\boldsymbol{X}^tWstXs\boldsymbol{W}^{s\rightarrow t}\boldsymbol{X}^s可以看做是很相近的,Jensen-Shannon散度比较小,也就是模型学到了真实的分布。假设数据的真实分布为pdatap_{\rm data},生成器制造的数据分布为pGp_G,则根据GAN原始论文的引理,有

如果GGDD有足够强的表示能力,而且在训练的每一步判别器都能在给定GG的情况下都能达到最优解,对pGp_G的更新又可以提高
Expdata[logDG(x)]+Expdata[log(1DG(x))] \mathbb{E}_{\boldsymbol{x} \sim p_{\rm data}}\left[\log D_G^\ast (\boldsymbol{x})\right] + \mathbb{E}_{\boldsymbol{x} \sim p_{\rm data}}\left[\log (1-D_G^\ast (\boldsymbol{x}))\right]
pGp_G收敛于pdatap_{\rm data}

但理想的结果通常依赖于若干在现实中无法成立的假设,例如生成器的表示能力有限,且实际更新的时生成器的参数而非pGp_G,因此在实践中通常是优化kk步判别器,再优化一步生成器。尽管这样的做法在实践中有时是足够的,但是原始GAN的天花板仍然不可忽视。此外,实验表明MUSE非常不稳定,不同的初始化可以对映射准确率造成非常大的差异

基于ICP的方法

通过映射的方法无监督学习跨语言词向量,也可以看做是一个“点云配准问题”,而这个问题常用ICP算法求解。和GAN一样,ICP也非常依赖初始化结果,而且大部分点云配准问题的解法都依赖若干已知完全正确的对齐结果,因此这样的做法也算是游走在有监督学习和无监督学习之间。此外,ICP容易陷入局部最优,已有算法仅用来解决二维或三维点云配准,而且效率比较低。具体做法可以参看[Hoshen2018]

其它方法

如前所述,GAN的目标是缩小pdatap_{\rm data}pGp_G之间的散度。但是如果散度变大,梯度会变小,最终消失,使得生成器无法从梯度下降中学到东西。这种现象称为模型崩塌(model collapse)。为此,可以使用Wassersten GAN(WGAN),这种模型的梯度更加平滑(其梯度近乎线性),而且当其用于跨语言词向量训练时,可以避免“中枢焦点”hub的存在(MUSE使用了一种启发式算法来做到这一点,在后面讨论)。更进一步地,可以使用CT-GAN来改善WGAN的性能。这一系列工作(在本书成书时)最新可以参考[Xu2018]。此外,还有一些工作使用了图匹配问题的Gold-Rangarajan松弛函数及其对应的Frank-Wolfe算法来求解(图匹配问题本身是NP完全的)

精化与启发式算法

如前所述,大部分通过无监督学习跨语言词嵌入的方法都是分两步走的,在引入种子词典以后需要用有监督的方式学习最终嵌入。第二部有时称为精化步骤,可以使用前面提到的所有基于词对齐的方法。实践中大部分人使用普氏分析,很大程度上都是因为受了MUSE[Conneau2018]的影响。下面对MUSE继续介绍,这种方法具体分为以下几步

  1. 单语词嵌入 使用单语词嵌入训练方法获得源语言和目标语言的词嵌入Xs\boldsymbol{X}^sXt\boldsymbol{X}^t
  2. 对抗映射 按照前面的介绍,使用GAN训练一个翻译矩阵Ω\Omega
  3. 精化(普氏分析) 使用得到的Ω\Omega可以构造一个小的高频词双语词典,然后对这个词典剪枝,仅保留那些满足双向翻译性质的词对。通过求解正交普氏问题,可学到在这些高频词对上可用的新的翻译矩阵Ω\Omega
    Ω=argminWstWstXsXtFrob=UVTs.t. UΣVT=SVD(XtXsT) \begin{aligned} \Omega^\ast = \mathop{ {\rm arg}\min}_{\boldsymbol{W}^{s\rightarrow t}}\|\boldsymbol{W}^{s\rightarrow t}&\boldsymbol{X}^s - \boldsymbol{X}^t\|_{\rm Frob} = \boldsymbol{UV}^\mathsf{T} \\ {\rm s.t.}\ \boldsymbol{U\Sigma V}^\mathsf{T} &={\rm SVD}\left(\boldsymbol{X}^t{\boldsymbol{X}^s}^\mathsf{T}\right) \end{aligned}
    新的Ω\Omega会得到新的种子词对,新的种子词对也会得到新的Ω\Omega,这个方法要求作为锚点的高频翻译对要尽可能可靠
  4. 跨域相似度局部缩放(cross-domain similarity local scaling, CSLS)作用是在高密度区域扩张,在低密度区域收缩,这样可以算出更准确的最邻近点,因此可以解决高维空间的中枢点问题。其计算方式为
    CSLS(Wxs,xt)=2cos(Wxs,xt)rt(Wxs)rs(xt)rt(Wxs)=1KxtNt(Wxs)cos(Wxs,xt) \begin{aligned} {\rm CSLS}(\boldsymbol{Wx}^s, \boldsymbol{x}^t) &= 2\cos(\boldsymbol{Wx}^s, \boldsymbol{x}^t) - r^t(\boldsymbol{Wx}^s) - r^s(\boldsymbol{x}^t) \\ r^t(\boldsymbol{Wx}^s) &= \frac{1}{K}\sum_{\boldsymbol{x}^t \in \mathcal{N}^t(\boldsymbol{Wx}^s)}\cos(\boldsymbol{Wx}^s, \boldsymbol{x}^t) \end{aligned}

其它一些方法使用了核技巧来直接将最大平均差异(maximum mean discrepancy, MMD)最小化。另外一些以[Artetxe2018]为代表的的工作使用了随机词典:从一个相似度矩阵以概率1p1-p随机删除元素得到种子词典,而且在之后的普氏分析的每一个迭代都如此做。对于这样的方法,pp越小,每次得到的词典越不同,因此可以逃离局部最优解。该文章的做法是每次迭代都稍微增大一点pp,形成模拟退火的效果:初始p=0.1p=0.1,每当损失值在若干步都不降时,将pp翻倍。[Hoshen2018]则是在做ICP之前先对数据做PCA,以加速训练,增强鲁棒性

无监督方法的局限性

[Søgaard2018]给出了MUSE的三个局限性

  1. MUSE不能保证对所有语言对都能给出好的对齐结果。例如如果一个语言词形态丰富,而且是dependency-marking(这个语言学术语实在找不到翻译了)时,效果就不好
  2. MUSE不能很好对齐来自不同领域的词
  3. MUSE不能很好对齐使用不同算法训练出的词向量

例如,MUSE可以近乎完美地对齐用fasttext在维基上训出的英语-西班牙语词向量,但是不能很好对齐如下几种词向量:1. 英语-爱沙尼亚语 2. 使用医学语料训练出的英语词向量和使用维基训出的西班牙语词向量

此外,对一些比较难的语言对,MUSE有时可以学出可用的映射,但是有时候不行

无监督方法的效果还受其核心成分GAN能力的制约。一方面,如前所述,GAN有模型崩塌现象,另一方面,有时候向量空间之间不存在线性映射关系。最后,[Søgaard2018]指出使用不同算法在不同语言上训出的嵌入基本很难对齐

参考文献

  • [Conneau2018]: Alexis Conneau, Guillaume Lample, Marc’Aurelio Ranzato, Ludovic Denoyer, and Hervé Jégou. 2018. Word translation without parallel data. In Proc. of the 6th International Conference on Learning Representations (ICLR 2018).
  • [Hoshen2018]: Yedid Hoshen and Lior Wolf. 2018. Non-adversarial unsupervised word translation. In Proc. of the Conference on Empirical Methods in Natural Language Processing (EMNLP 2018), pages 469–478.
  • [Xu2018]: Ruochen Xu, Yiming Yang, Naoki Otani, and Yuexin Wu. 2018. Unsupervised cross-lingual transfer of word embedding spaces. In Proc. of the Conference on Empirical Methods in Natural Language Processing (EMNLP 2018), pages 2465–2474
  • [Artetxe2018]: Mikel Artetxe, Gorka Labaka, and Eneko Agirre. 2018b. A robust self-learning method for fully unsupervised cross-lingual mappings of word embeddings. In Proc. of the 56th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers) (ACL 2018), pages 789–798.
  • [Søgaard2018]: Anders Søgaard, Sebastian Ruder, and Ivan Vulić. 2018. On the limitations of unsupervised bilingual dictionary induction. In Proc. of Association for Computational Linguistics (ACL 2018), pages 778–788.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章