跨語言詞向量筆記1. 序言與分類方法
本文完全來自於Anders Søgaard等人的著作[Søgaard2019]
提出跨語言詞向量的目的是在跨語言應用中表示各語言單詞詞義,並跨語言傳遞學到的知識。跨語言詞向量使得模型可以在多語言上下文中推理詞義,也可以計算不同語言單詞的相似度,有利於跨語信息提取。此外,由於跨語詞向量有助於跨語言傳遞學到的知識,因此當一門語言資源豐富,另一語言資源匱乏時,這種模型尤其重要。
需要注意的是,使用神經機器翻譯(NMT)也可以隱式地學到跨語言詞向量,而本文所提到的模型都是顯式學習跨語言詞向量,學習速度和效率都比NMT要快,代價更低。原書不僅對近五年(2014年-2019年)跨語言詞向量的學習方法做了一個全面的調研,同時還透過它們不同的表象揭示了它們相似的本源
本文所用記號
(本文所用記號與原文稍有不同,原文使用黑正體代表向量,與大多數文章(包括維基詞條)一致。本文繼續使用黑斜體代表向量,與花書保持一致)
-
:個語言中第個語言的詞向量。是該語言的詞彙表,是詞向量維度
-
,是的第個單詞的詞向量,簡記爲。在不造成歧義的情況下,可以寫作。其對應的單詞爲
-
如果考慮單詞的上下文,假設有個上下文單詞,則分別記爲。如果某些詞向量訓練方法區分中心詞詞向量和上下文單詞詞向量,則上下文單詞詞向量分別記爲
-
記源語言爲,目標語言爲,有些模型會訓練一個轉換矩陣,將源語言的詞向量轉換爲目標語言詞向量。這個轉換矩陣記爲。在不引發歧義的情況下,簡寫爲。這種方法一般會使用個詞和它們的翻譯做種子詞,產生一個從到其翻譯的映射。對應的產生多語詞向量的方法稱爲映射法
-
有些模型需要單語中詞與詞的共現矩陣,該矩陣的每一行對應一個單詞(中心詞),每一列對應一個上下文單詞。是與同時出現的次數。該方法通常還要規定一個窗口大小,只有當與的距離不超過時,才說這兩個單詞出現過共現情況
-
在跨語言上下文中,有一個對齊矩陣,每個元素表示語言中第個單詞與語言中第個單詞對齊的次數,每行都做一個歸一化,即矩陣中每行元素的和都爲1
-
一些方法需要對齊的句子,此時記源語言的句子爲,對應的表示爲 ();目標語言的句子爲,對應的表示爲。如果涉及到文檔對齊,則分別爲和。文檔各自的向量表示爲和,有
-
訓練跨語言詞向量的方法都可以看做是最小化同一個目標函數
其中是訓練第個語言單語詞向量的損失函數,是正則項。文獻[Levy2014] [Levy2015]指出大部分訓練單語詞向量方法優化的目標函數都是互相等價的,而本文的一個貢獻是將不同方法的區別統一爲一個正則項。不同方法的另一個區別是優化目標函數的手段不同。由於聯合優化多個非凸優化目標比較難,大部分方法都是在每一步只優化一個損失函數,保持其它的不變。因此有時目標函數會做進一步展開,例如
這裏表示第一步先優化前兩個損失函數,各自依賴於和(此時問題被分解爲兩個單語優化問題,實際上就是在單語語料上使用諸如CBOW、GloVe的方法訓練詞向量,對應原書第二章的內容,本文就不贅述了);第二步固定和不變,再優化
跨語言詞向量建模方法分類
本書大部分內容討論了對有監督跨語言詞向量建模方法做分類時所考慮的兩個維度,分別是監督學習需要的對齊類型,以及對齊結果所編碼的語言之間進行比較的信息。根據以往的文獻,算法細節和模型結構並不重要,重要的是訓練所使用的數據,因此本文提出的分類方法主要基於數據需求,包括兩種:
- 對齊類型,即需要什麼樣的對齊數據。有的方法需要細粒度的、詞級別的信息,例如在各自上下文中,兩個單詞意思是否相同或相似;有的方法只需要對齊句子或者文檔即可
- 比較信息,即方法是需要平行的數據源(不同語言之間的翻譯),還是隻需要相似的文本就可以。對於後者,方法只需要相同主題的文檔,最典型是同一個維基百科詞條的不同語言頁面
特別地,對齊“信號”所寓居的文檔,按照粒度不同可分爲三級
- 詞級別的對齊。大部分方法使用平行的詞對齊數據,這種數據可能是一個雙語/跨語詞典,或者高精度的單詞對齊信息。如果僅使用可比較的非平行語料,則可能要使用其它模態做輔助,例如圖像甚至眼球移動信息。無監督跨語言詞向量方法大部分也會落入到這個類別中,因爲這些方法的目標是從單語語料抽取種子詞對應關係,然後使用其它方法進行推斷,擴展到所有詞表上
- 句級別的對齊。這種方法大多需要一個平行語料。如果要使用可比較的語料,則也需要一些其它模態的信息,例如圖像的題注
- 文檔級別的對齊。文檔級別對齊的平行數據需要若干互譯的文檔,不過這種需求比較少,因爲如果文檔能對齊,通常句子也就能對齊了。一般只需要可比較的文檔級別對齊數據,這些數據可能是主題對齊的(例如維基百科)或者類別對齊的(例如情感分析或者多類別分類數據集)
本書完成之時,還沒有方法僅依靠意義相同的、文檔級別對齊的文本學出跨語言詞向量
參考文獻
[Søgaard2019] Søgaard, A., Vulić, I., Ruder, S., & Faruqui M. (2019). Cross-Lingual Word Embeddings
[Ruder2017] Ruder, S., Vulić, I., & Søgaard, A. (2017). A survey of cross-lingual word embedding models. arXiv preprint arXiv:1706.04902.
[Levy2014] Levy, O., & Goldberg, Y. (2014). Neural word embedding as implicit matrix factorization. In Advances in neural information processing systems, NeurIPS 2014 (pp. 2177-2185).
[Levy2015] Levy, O., Goldberg, Y., & Dagan, I. (2015). Improving distributional similarity with lessons learned from word embeddings. Transactions of the Association for Computational Linguistics (TACL), 3, (pp. 211-225).