两个分布的特征映射_跨语言分布表示学习方法概述
分布表示(distributed representation)與深度神經網絡(deep neural network)極大地推動了近幾年自然語言處理研究的發展。我們知道,分布表示指的是對于一個客觀描述對象的低維、稠密、連續向量表示。不同于符號表示(symbolic representation),分布表示可以自然地聯結表現形式不同但語義空間相同(或相似)的對象,比如不同模態數據(圖像、文本、語音)以及不同語言的數據等。近年來,很多研究致力于跨語言分布表示學習,即:將不同語言的詞語嵌入至一個統一的向量空間之內,使得語義相似(單語及跨語言)的詞在該向量空間內距離接近,如圖1所示??缯Z言分布表示為不同語言的數據資源之間建立了一座橋梁,為跨語言的遷移學習提供了一種有效的途徑,進而為很多跨語言應用(比如對于資源稀缺語言的文本分類、句法分析,以及機器翻譯等)帶來顯著的推動作用。
Figure 1: 跨語言詞匯分布表示(三維空間下的示意)
本文首先描述典型的跨語言分布表示學習方法,再簡單介紹其應用場景。
1 跨語言分布表示學習
根據學習方式的不同,可以將現有的跨語言分布表示學習分為兩類,分別是:1. 基于線下處理的方法;2. 基于聯合學習的方法。接下來我們對這兩類方法中較為典型的模型進行介紹。
1.1 線下處理方法
線下處理方法的基本思路是先獨立學習各個語言的詞匯分布表示,然后對兩者進行對齊。Mikolov等發現,使用word2vec學習得到的不同語言的分布表示之間存在一定程度上的線性映射關系(類似于同種語言下的word analogy性質)(見圖2), 于是提出“翻譯矩陣”學習的方法來實現跨語言分布表示的映射 (Mikolov et al., 2013)。
Figure 2: 英語與法語詞表示示例(數字、動物)
具體地,給定一個翻譯詞對的集合
(即雙語詞典,其中i為源語言中第i個詞,zi為目標語言中與xi互為翻譯的詞),D中詞對所對應的分布表示矩陣分別記為
以及
作者假設存在一個從源語言到目標語言的線性映射矩陣W,使得平方誤差最小:
再將w應用于整個源語言詞表進行跨語言映射。這種方法也能夠很自然地擴展到多語言(≥ 2)的情形。
另外一種方法是典型關聯分析(CCA)。CCA是一種度量兩個多維變量之間線性相關性的統計分析方法。對于兩個多維變量,CCA尋找兩個映射矩陣,將原始的變量分別映射至新的子空間(一般情況下維度更低),使得兩個變量之間的相關性最大。如果把兩種語言的詞表示看作是兩個多維變量,則可利用CCA對這兩種語言的詞表示矩陣進行變換 (Faruqui and Dyer, 2014)。我們仍然考慮雙語詞典D,并將詞表示矩陣記為
,CCA優化以下目標:
Corr表 示 相 關 系 數 。W與V 則 可 用 于 對 兩 種 語 言 的 詞 表 示 矩 陣 進 行 映 射 。 可見,CCA仍然隱含了線性變換的前提假設。然而,由于語言的復雜性,線性變換對于詞表示向量之間的映射關系刻畫得并不理想,鑒于此,Lu等人提出深度典型關聯分析(Deep CCA),先對原始詞向量進行多層非線性變換,再使用CCA處理 (Lu et al.,2015)。
事實上,一種更為簡單有效的方法是根據詞對齊直接進行跨語言映射。首先,我們從雙語平行數據中統計出詞對齊矩陣(矩陣元素為對齊次數,需要作歸一化處理),再根據該矩陣對源語言詞表示矩陣進行變換,如圖3所示。
Figure 3: 跨語言映射方法
我們發表在ACL 2015的工作中對該方法進行了改進,增加了一步單語傳播的過程,以緩解目標語言中OOV的問題 (Guo et al., 2015)。該方法可解釋性較強,并且在跨語言依存句法分析任務上取得了最好的性能。
1.2 聯合學習方法
聯合學習方法的目標是同時學習多語言的詞語分布表示。Klementiev等人最早提出基于多任務學習(Multi-task Learning)來同時更新不同語言的詞語分布表示矩陣 (Klementiev et al., 2012)。以英文-法文為例,該方法首先從英-法雙語平行數據中根據詞對齊信息獲得雙語詞匯相似度矩陣(對齊頻率)。分布表示的學習仍然依賴單語數據下的神經網絡語言模型,每當計算英語中
的梯度時,都會根據相似度矩陣為相應法語詞賦予梯度(根據相似度進行加權),從而達到聯合學習的目的。該方法可以視為上述跨語言映射方法的聯合學習版本。
Zou等人則借鑒前文所述“翻譯矩陣”的思想,將雙語詞匯相似度矩陣作為跨語言映射矩陣,而以相應的平方誤差損失作為單語分布表示學習目標的正則項 (Zou et al.,2013)。另一個比較獨特的思路是使用跨語言AutoEncoder (Chandar A P et al., 2014),也稱相關性網絡(Correlational Neural Network)。該方法將AutoEncoder的重構思想應用于雙語平行數據之間的語義重構,基本思路是將一種語言的句子表示(bag-of-words)作為輸入,期望重構出另一種語言的句子表示。對應的AutoEncoder權值矩陣則為所學到的跨語言分布表示。
受跨語言AutoEncoder所啟發,我們還可以通過最小化雙語平行數據中句對表示之間的距離,來學習跨語言分布表示。在詞分布表示的基礎之上通過語義組合(semantic composition)得到句子表示的方法有很多,為了保證分布表示學習的效率,一般使用較為簡單的語義組合模型。 Hermann與Blunsom提出雙語組合語義向量模型(BiCVM),考慮了兩種基本的語義組合方式,分別是ADD模型:
與BI模型:
(考慮Bigram信息)。
Figure 4: 雙語組合向量模型
注意到,雙語平行數據對于很多語言對而言都是非常有限的,因此,Gouws等人進一步提出Bilbowa模型 (Gouws et al., 2015),將單語分布表示學習的優化目標與雙語平行約束進行融合,使得模型能夠同時利用大規模單語數據以及有限的雙語數據。
總體而言,基于句子表示對齊的方法粒度較粗,所得到的跨語言表示在詞級別的語義對齊上表現得并不是很理想。實際上我們完全可以先進行雙語詞對齊,再利用詞對齊信息來改進跨語言詞表示的學習過程。我們發表在AAAI 2016的工作中對word2vec中的skip-gram模型進行了擴展并提出multilingual skip-gram模型 (Guo et al.,2016),基本思想是根據詞對齊獲取跨語言上下文,進而在skip-gram模型中引入對跨語言上下文的預測,如圖5所示。該模型能夠自然地擴展至多于兩種語言的情形,而且充分利用了單語數據以及雙語數據。
Figure 5: 跨語言skip-gram模型
另一方面,考慮到skip-gram模型與矩陣分解模型的緊密聯系 (Levy and Goldberg,2014),我們也可以通過對多語言“詞–上下文”共現矩陣進行分解來獲得跨語言分布表示,Shi等人采取了這種做法 (Shi et al., 2015)。
線下處理與聯合學習的方法各有優劣。從資源依賴的角度,線下處理方法使用的是雙語詞典,而聯合學習方法依賴雙語平行數據。雙語詞典既可以從平行數據中通過自動詞對齊來獲得,也可以從一些在線詞典資源中獲取,比如PanLex1,Wikitionary2等;相對而言,對于大部分語言而言,高質量的雙語平行數據較難獲取。因此,線下處理方法的可擴展性更強。然而也應該注意到,“翻譯矩陣”及CCA等線下處理方法對于跨語言映射的線性變換假設不盡合理,這在很大程度上制約了其分布表示學習的質量。聯合學習方法則通常不對跨語言分布表示之間的映射關系進行約束,因此更為自由。
2 應用
跨語言數據是一種重要的知識來源,尤其是對于資源稀缺語言而言??缯Z言分布表示正好為不同語言之間的知識遷移提供了一座橋梁,使得資源稀缺語言的自然語言處理任務能夠充分利用跨語言的標注資源。這種跨語言遷移學習的基本思路是在源語言端構建一個基于分布表示的模型,并使用源語言的特征分布表示進行訓練;然后將所得到的模型直接應用于目標語言數據?;诳缯Z言分布表示的“模型遷移”方法已經被成功應用于文本分類、句法分析、情感分析等任務中。以句法分析為例,使用前文所述的多語言skip-gram模型與跨語言映射的方法相對于“去詞匯化特征”模型遷移的結果取得了最高+6.9/+8.9%的LAS提升:
Figure 6: 跨語言依存句法分析上的結果
3 總結與展望
從目前的研究現狀來看,不同的跨語言分布表示學習方法在不同自然語言處理任務上的表現各有優劣。比如Bilingual autoencoder模型在跨語言文本分類上表現較好,而對于句法分析則幾乎沒有幫助。對于情感分析等任務而言,或許情感極性的對齊比詞義對齊更為重要。因此,未來的一個研究方向是學習任務相關的跨語言分布表示。另外,目前大部分表現較好的模型仍然嚴重依賴雙語平行資源,而大部分真正的資源稀缺語言的雙語數據難以獲取。因此,如何充分利用單語數據以及代價相對較低的小規模詞典資源來學習高質量的跨語言分布表示,也是一個很有趣的研究思路。
References
Sarath Chandar A P, Stanislas Lauly, Hugo Larochelle, Mitesh Khapra, Balaraman Ravindran, Vikas C Raykar,and Amrita Saha. 2014. An autoencoder approach to learning bilingual word representations. In NIPS
Manaal Faruqui and Chris Dyer. 2014. Improving vector space word representations using multilingual correlation. In EACL
Stephan Gouws, Yoshua Bengio, and Greg Corrado. 2015. Bilbowa: Fast bilingual distributed representations without word alignments. In ICML
Jiang Guo, Wanxiang Che, David Yarowsky, Haifeng Wang, and Ting Liu. 2015. Cross-lingual dependency parsing based on distributed representations. In ACL-IJCNLP
Jiang Guo, Wanxiang Che, David Yarowsky, Haifeng Wang, and Ting Liu. 2016. A representation learning framework for multi-source transfer parsing. In AAAI
Alexandre Klementiev, Ivan Titov, and Binod Bhattarai. 2012. Inducing crosslingual distributed representations of words. In COLING
Omer Levy and Yoav Goldberg. 2014. Neural word embedding as implicit matrix factorization. In NIPS Ang Lu, Weiran Wang, Mohit Bansal, Kevin Gimpel, and Karen Livescu. 2015. Deep multilingual correlation for improved word embeddings. In NAACL
Tomas Mikolov, Quoc V Le, and Ilya Sutskever. 2013. Exploiting similarities among languages for machine translation. arXiv.
Tianze Shi, Zhiyuan Liu, Yang Liu, and Maosong Sun. 2015. Learning cross-lingual word embeddings via matrix co-factorization. In ACL-IJCNLP
Will Y. Zou, Richard Socher, Daniel Cer, and Christopher D. Manning. 2013. Bilingual word embeddings for phrase-based machine translation. In EMNLP
注:
總結
以上是生活随笔為你收集整理的两个分布的特征映射_跨语言分布表示学习方法概述的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java对象深克隆_JAVA中对象的克隆
- 下一篇: 两台邮件服务器共用一个公网地址,两个不同