詞向量-LRWE模型-更好地識別反義詞同義詞

    上一節,咱們介紹利用文本和知識庫融合訓練詞向量的方法,如何更好的融合這些結構化知識呢?使得訓練獲得的詞向量更具備泛化能力,能有效識別同義詞反義詞,又能學習到上下文信息還有不一樣級別的語義信息。html

    基於上述目標,咱們嘗試基於CBOW模型,將知識庫中抽取的知識融合共同訓練,提出LRWE模型。模型的結構圖以下:git

    下面詳細介紹該模型的思想和求解方法。github

1. LWE模型web

    在Word2vec的CBOW模型中,經過上下文的詞預測目標詞,目標是讓目標詞在其給定上下文出現的機率最大,因此詞向量訓練的結果是與其上下文的詞相關聯的。然而 CBOW模型只考慮了詞語的局部上下文信息,沒法很好的表達同義詞和反義詞等信息。例以下面的幾個case:函數

    爲了解決上述問題,本文將同義詞和反義詞等詞彙信息之外部知識的形式,做爲詞向量訓練中的監督數據,讓訓練獲得的詞向量能學習到同義、反義等詞彙信息,從而能更好地區分同義詞和反義詞。學習

1.1 模型思想優化

   記 𝑤𝑖 的同義詞和反義詞集合爲( 𝑤𝑖 , 𝑆𝑌𝑁𝑤𝑖 , 𝐴𝑁𝑇𝑤𝑖 ),其中 SYN 表示同義詞集合,ANT 表示反義詞集合,咱們的目標是已知目標詞對應的同義詞集合和反義詞集合,預測目標詞,使得目標詞和它的同義詞距離儘量相近,與反義詞距離儘量遠。 spa

   例如「The cat sat on the mat.」,已知sat有同義詞seated,反義詞stand,來預測目標詞爲sat。設計

   該模型稱爲詞彙信息模型,模型結構圖以下:3d

   對於一個詞語,咱們根據它的同義詞和反義詞預測目標詞,最大化詞語和它的同義詞同時出現的機率, 並下降詞語和它反義詞同時出現的機率。根據這個目標,定義如下的目標函數: 

    咱們目標是在基於上下文的CBOW語言模型訓練過程當中,加入同義詞反義詞信息做爲監督,使得訓練所得詞向量能學習到同義和反義知識。基於該想法,咱們提出基於詞彙信息的詞向量模型(Lexical Information Word Embedding,LWE),目標函數爲

    模型的結構圖以下:

    須要注意的是,CBOW模型和詞彙信息模型共用同一份詞向量,這是爲了經過共享表示來得到彼此的知識信息,使得詞向量在訓練的時候,能綜合利用上下文信息和同義詞反義詞信息,從而獲得更高質量的詞向量。 

1.2 模型求解

    從模型結構圖中能夠看出,LWE能夠當作兩個CBOW模型的疊加,所以優化求解方法和CBOW模型同樣,本文采用的是Negative Sampling進行優化。

    使用 Negative Sampling 的方法,目標詞視爲正樣本,經過負採樣的其它詞稱 爲負樣本,而在咱們的模型之中,對於詞語的同義詞集合來講,目標詞是正樣本,在同義詞集合以外的詞語都爲負樣本,記𝑤𝑖的同義詞集合爲 𝑆𝑌𝑁𝑤𝑖,對於𝑢∈ 𝑆𝑌𝑁𝑤𝑖則有負樣本集合爲𝑁𝐸𝐺𝑢 = |𝑉| −𝑆𝑌𝑁𝑤𝑖,記指示函數

其中正樣本標籤爲 1,負樣本標籤爲 0。則對於樣本 (𝑢, 𝑤𝑖 ),訓練目標函數(3-1)中 

反義詞同理,因此對於整個詞表 V 來講,總體的目標函數是: 

1.3 參數更新

    要最大化目標函數(3-6),咱們使用隨機梯度上升法。用隨機梯度上升方法求解時,須要分別求目標函數關於 eu 和 θw 的導數,爲了方便推導,記 

從上式可看出同義詞和反義詞的目標函數除了定義域不一樣,其函數表達式是同樣的,所以只需對函數 Ψ 進行求導。 函數 Ψ 對 𝜃𝑤求導,可得: 

因此 𝜃𝑤 的更新公式爲: 

2. RWE模型

    詞語之間具備不少複雜的語義關係,例如上下位關係,「music」是「mp3」 的上位詞,「bird」是「animal」的下位詞,這裏「animal」的下位詞除了「bird」 外,還有有「fish」、「insect」等,具備相同上位詞 「fish」、「insect」 和「bird」,某種意義上應該是類似或者說相關的,但 Word2vec 只利用大規模語料中的詞語共現信息進行訓練,所得的詞向量只能學習到文本上下文信息,就沒法學習到這種詞語間的關係,因此其它複雜的語義關係也很難表達充分。 

    而知識圖譜中含有實體詞語豐富的關係信息,因此,本文提出基於關係信息的詞向量模型,將語言模型和知識表示學習模型進行共同訓練,在訓練語言模型的時候,加入從知識圖譜抽取的多種關係知識, 使得詞向量訓練過程不只僅根據上下文詞語共現的信息,還學習到對應的關係知識,從而提高詞向量的質量。 

2.1 模型思想

    知識圖譜中的知識,通常以三元組 (h, 𝑟, 𝑡) 的形式進行組織,根據CBOW的訓練過程,咱們能夠構造樣本 (h, 𝑟, 𝑤𝑖),其中 𝑟 表示 𝑤𝑖 關聯的多種不一樣的關係, 例如(animal, _hyponymy, bird)。 

    在提取三元組數據後,須要對詞語的關係創建表示,如TransE 模型,即是最方便有效的表示方法。基本思想是對於三元組 (h, 𝑟, 𝑡),若三元組是事實信息,則有 𝒉 + 𝒓 ≈ 𝒕,即 𝒉 + 𝒓 對應向量應與 𝒕 更相近。

    該模型稱爲關係信息模型,模型結構圖以下,模型的輸入層是目標詞 𝑤𝑖 的對應的三元組集合(h, 𝑟, 𝑤𝑖 ),投影層作了恆等投影,輸出層是在字典中預測目標詞。 

    對一個詞語 𝑤𝑖,利用知識圖譜中的關係三元組這種有監督的數據,咱們但願能讓詞語學習到豐富的關係語義信息,根據這個目標,定義如下的目標函數: 

    那麼在基於上下文的 CBOW 語言模型訓練過程當中,加入豐富的關係信息做爲監督,使得訓練所得詞向量能學習詞與詞之間的複雜語義關係。基於該想法,咱們提出基於 關係信息的詞向量模型(Relational Information Word Embedding,RWE),目標函數爲: 

    模型結構圖以下:兩個模型共享同一套詞向量,同時本文爲三元組中的關係設置分配新的向量空間,也就是說關係向量和詞向量獨立表示,緣由是爲了不與詞向量產生衝突。

2.2 求解方法

    一樣,咱們採用Negative Sampling進行優化。化簡過程和1.2類似,這裏給出總體的目標函數

2.3 參數更新

    一樣,採用隨機梯度上升方法進行更新。求解時,須要分別求目標函數關於 eh+r 和 θw 的導數,爲了方便推導,記

函數 Ψ 對 θu 求導,可得:

θu 的更新公式爲:

 3. LRWE模型

    前兩節介紹了兩個模型,分別是基於詞彙信息的詞向量模型和基於關係信息的詞向量模型,兩模型分別適合特定情景下的問題。 本文嘗試將兩個模型進行聯合,讓詞向量在訓練的時候,既能學習到同義詞反義詞等詞彙信息,又能學習到複雜的關係語義信息,基於該目標,獲得聯合模型LRWE。

    聯合的詞向量模型目標函數以下:

    模型的結構圖以下:

3.1 模型特色

  • 經過共享詞向量,同時學習多種信息
  • 不一樣模塊具備獨立的參數,保持任務差別性
  • 從新分配關係向量空間,避免衝突

3.2 模型的理論比較

    從參數個數角度,LWE 是在 CBOW 基礎上使用詞彙信息進行監督,共享一份詞向量,同時須要多一份輔助參數向量,故參數個數爲 2|𝑒| × |𝑉| + |𝑒| × |𝑉| = 3|𝑒| × |𝑉|; 同理,基於關係信息的詞向量模型 RWE,與 CBOW 共享一份詞向量,以及擁有獨立的輔助參數向量,此外還有一份關係向量,故參數個數爲3|𝑒| × |𝑉| + |𝑒| × |𝑅|; 聯合的詞向量模型 LRWE 是上述兩模型的聯合,故參數個數爲 4|𝑒| × |𝑉| + |𝑒| × |𝑅|。

model

參數個數

CBOW

2|𝑒| × |𝑉|

LWE

3|𝑒| × |𝑉|

RWE

3|𝑒|×|𝑉|+|𝑒|×|𝑅|

LRWE

4|𝑒|×|𝑉|+|𝑒|×|𝑅|

    從時間複雜度角度,CBOW 模型經過掃描語料的每個詞,取該詞及其上下文做爲一個樣本,所以接下來對比模型時,只分析訓練一個樣本的時間複雜度。

    CBOW 模型只有輸出層 Softmax 預測須要大量的計算,其訓練的複雜度爲 𝛰(|𝑒| × |𝑉|),若是採用 Hierarchical Softmax 對輸出層的 Softmax 作優化,能夠加速到𝛰(|𝑒| × 𝑙𝑜𝑔|𝑉|),而採用Negative Sampling,可進一步將複雜度優化到𝛰(|𝑒|)。而 LWE 和 RWE 能夠認爲是兩個CBOW模型的疊加,時間複雜度爲𝛰(2|𝑒|) ,雖然相比 CBOW 模型較複雜,但在線性時間內能學習到更多的語義信息,使得詞向量表達更充分。 

 4. 實驗結果

    這一節咱們設計實現一系列實驗任務,來驗證和評估本文所提出模型的合理性和有效性,實驗包括語義相關性、反義詞同義詞識別等天然語言處理任務,並給出實驗結果與分析。

4.1 訓練語料

    文本語料來自維基百科前十億字節enwiki9,同義詞和反義詞語料是從WordNet中抽取,三元組語料從Freebase中抽取。具體條目以下:

4.2 實驗任務及結果

   (1)wordsim任務

    該任務主要評估詞向量的語義類似性和語義相關性,數據集包括Wordsim353(2002) ,MEN3000(2012) ,SIMLEX999(2014), 評估方法是皮爾遜相關係數。實驗結果以下

    (2)反義詞同義詞識別任務

    該任務由Roth[1]等人提出,包含600個形容詞詞對,700個名詞詞對,800個動詞詞對,其中同義詞詞對和反義詞詞對各佔一半。評估方法是平均精確率(Average Precision,AP)    

    此外,咱們還在單詞類比推理,同義詞檢測,文本分類等任務上進行實驗,下面是經PCA降維後的部分詞向量,如圖:

    總體來講,LWE模型能更好的識別同義詞和反義詞,RWE模型能學習到必定的關係信息,但受限於freebase數據,由於本文主要訓練的是詞向量,在freebase中的覆蓋率相對較少,相關的三元組的關係類型很少。

    所以有興趣的同窗能夠嘗試LWE模型,加入同義詞和反義詞信息,使得訓練所得的詞向量能更好識別反義詞和同義詞。

本文地址:http://www.cnblogs.com/chenbjin/p/7106139.html

github: https://github.com/chenbjin/LRCWE

參考:

[1] Roth M, Walde S S I. Combining Word Patterns and Discourse Markers for Paradigmatic Relation Classification. ACL 2014.

[2] Liu Q, Jiang H, Wei S, et al. Learning Semantic Word Embeddings based on Ordinal Knowledge Constraints. ACL 2015.

[3] Nguyen K A, Walde S S I, Vu N T. Integrating Distributional Lexical Contrast into Word Embeddings for Antonym-Synonym Distinction. ACL 2016.

相關文章
相關標籤/搜索