1. 程式人生 > >【論文閱讀】Topical Word Embeddings

【論文閱讀】Topical Word Embeddings

《Topical Word Embeddings》

Liu Y, Liu Z, Chua T S, et al. 2015.

Abstract

大多數詞嵌入模型通常使用單個向量來表示每個單詞,因此這些模型無法區分同音異義和的一詞多義的情況。為了增強判別性,我們採用潛在的主題模型為文字語料庫中的每個詞分配主題,並基於詞和主題來學習主題詞嵌入(TWE),這樣我們可以靈活地獲得情景詞嵌入,來衡量情景中單詞相似性。我們還可以構建文件的向量表示,這比一些廣泛使用的文件模型(如潛在主題模型)更具有表現力。在實驗中,我們評估TWE模型的兩個任務:情景單詞相似性和文字分類。實驗結果表明,我們的模型比典型的詞嵌入(包括基於上下文的詞相似度的多種原型版本)表現更好,同時也優於文字分類的潛在主題模型和其他代表性文件模型。

本文的原始碼可以從https://github.com/largelymfs/topical_word_embeddings 獲取。

Introduction

詞嵌入(word embedding),也被稱為詞表示( word representation),在基於語料庫的上下文構建連續詞向量中起著越來越重要的作用。詞嵌入既能捕捉單詞的語義資訊,又能捕捉單詞的相似性,因此廣泛應用於各種IR和NLP任務中。

大多數詞嵌入方法都是假定用每個詞能夠用單個向量代表,但是無法解決一詞多義和同音異議的問題。多原型向量空間模型(Reisinger and Mooney 2010)是將一個單詞的上下文分成不同的群(groups),然後為每個群生成不同的原型向量。遵循這個想法, (Huang et al. 2012

) 提出了基於神經語言模型(Bengio et al. 2003)的多原型詞嵌入。

儘管這些模型是有用的,但是多原型詞嵌入面臨以下幾個挑戰:(1)這些模型孤立地為每個詞生成多原型向量,忽略了詞之間複雜的相關性和它們的上下文。(2)在多原型設定中,一個單詞的上下文被分成沒有重疊的簇,而實際上,一個詞的幾個意義可能是相互關聯的,它們之間沒有明確的語義邊界。

在本文中,我們提出了一個更加靈活更加強大的多原型單詞嵌入框架——主題詞嵌入(TWE),其中主題詞是指以特定主題為背景的詞。TWE的基本思想是,允許每個詞在不同的主題下有不同的嵌入向量。例如,“蘋果”這個詞在食物主題下表示一個水果,而在IT主題下代表一個IT公司。

我們使用LDA(Blei, Ng, and Jordan 2003)來獲取單詞主題,執行collapsed Gibbs sampling (Griffiths and Steyvers 2004)來迭代地為每個單詞令牌分配潛在的主題。這樣,給定一個單詞序列 D={w1,...,wM} ,在使用LDA收斂後,每個單詞 wi 被分配給一個特定的主題 zi ,形成一個單詞-主題對 wi,zi ,用來學習主題詞嵌入。我們設計了三種TWE模型來學習主題詞向量,如圖1所示,其中,視窗大小是1, wi1 wi+1 wi 的上下文單詞。

Figure1

TWE-1. 我們將每個主題視為一個偽詞(pseudo word),分別學習主題向量和詞向量。然後根據向量 wi zi 構建主題詞向量 wi,zi
TWE-2. 我們將每個單詞詞-主題對 wi,zi 視為一個偽詞(pseudo word),並直接學習到主題詞向量。
TWE-3. 我們分別為每個詞和每個主題保留不同的嵌入向量,通過連線相應的單詞和主題向量來建立每個單詞-主題對的向量。

對於這三個TWE模型,TWE-1沒有考慮一個單詞與其指定的學習主題之間的直接關聯。TWE-2通過把單詞-主題對視為一個偽詞來考慮單詞-主題對之間的內在聯絡,但是它存在稀疏性問題,因為出現的每個單詞都被嚴格的區分為不同的主題。與之相比,TWE-3則在鑑別單詞和稀疏性之間進行了平衡。但是在TWE-3的學習過程中,主題嵌入會影響對應的單詞嵌入,這可能會導致同一主題中的單詞不易辨別。

為了實現TWE模型,我們擴充套件了最先進的詞嵌入模型Skip-Gram(Mikolov et al. 2013)。可以使用TWE模型來計算給定上下文的單詞詞嵌入,並且可以用詞嵌入來表示一個從所有單詞的單詞-主題嵌入聚合得到的文件。

我們在兩個任務上測試我們的模型——情景詞相似度和文字分類。實驗結果表明我們的模型在情景詞的相似度上由於傳統的和其他多元型詞語嵌入模型,同時在文字分類上也超過了廣泛使用的基於主題或基於嵌入向量的文字模型。

主要貢獻:

  • 將主題融入到基本的詞嵌入表示中,並允許由此產生的主題詞嵌入在不同語境下獲得一個詞的不同含義。
  • 與分別為每個詞建立多原型單詞嵌入的模型相比,我們的模型通過利用主題模型來充分利用所有單詞和它們的上下文,以此來學習主題詞嵌入。

Our Models

Skip-Gram

Skip-Gram是一個眾所周知的學習單詞向量的框架(Mikolov et al. 2013),如圖1(A)所示。Skip-Gram目標是預測滑動視窗中給定目標單詞的上下文單詞。在這個框架中,每個單詞對應一個獨特的向量。目標詞的向量用來作為預測上下文單詞的目標向量。
給定序列 D={w1,...,wM} ,Skip-Gram的目標是最大化平均對數概率:

L(D)=1Mi=1Mkck,c0logPr(wi+c|wi)(1)
這裡的 k 是目標單詞的上下文大小。Skip-Gram使用softmax函式計算 Pr(wc|wi)
Pr(wc|wi)=exp(wCwi)wiWexp(wCwi)(2)
這裡 wi wC 分別是目標單詞 wi 和上下文單詞 wC 的向量表示, W 是單詞詞彙表。為了使模型更有效地學習,我們使用分層softmax和負取樣技術( Mikolov et al. 2013)。

通過Skip-Gram學習到的詞向量可以用於計算詞的相似度。單詞 wi wj 之間的相似度可以用它們之間的向量內積來度量 S(wi,wj)=wiwj 。在之前的工作中,單詞的相似度通常被用來作為評估詞向量方法的表現(Mikolov et al. 2013; Baroni, Dinu, and Kruszewski 2014)。

正如在Introduction部分所說,我們希望通過引入潛在的主題模型來增強詞嵌入的表示能力,在LDA的作用下,根據概率表示 Pr(zi|wi,d)Pr(zi|wi)Pr(zi|d) ,我們為每個單詞 wi 分配一個潛在的主題 ziT 。然後我們提出三種TWE模型。

TWE-1

TWE-1目標是分別同時學習到單詞和主題的向量表示。對於每個目標詞以及它的主題 wi,zi ,TWE-1的目標是最大化平均似然概率:

L(D)=1Mi=1Mkck,c0logPr(wi+c|wi)+logPr(wi+c|zi)(3)
相比於只利用目標詞 wi 來預測上下文的Skip-Gram,TWE-1還使用了目標詞的主題 zi 。TWE-1的基本方法是將每個主題視為一個偽詞,該偽詞出現在所有分配了這個主題的單詞的位置上。因此主題的向量將代表這個主題下單詞的整體語義。在TWE-1中,我們通過連線 w z 的向量來獲得單詞 w 在主題 z 下的主題詞嵌入,例如 wz=wz ,其中 是連線運算, wz 的長度是