論文記錄筆記NLP(五):Glove

這篇筆記主要是結合,各種學習資源,整理而成的查找筆記,整理的不好,還望指出錯誤,主要是用於查找與記錄。

Glove:基於全局共現信息的詞表示

--Glove,在word2vec基礎上的一種改進方法

摘要:

最近學習單詞的向量空間表示(vector space representations of words)的方法已成功地使用向量算法(vector arithmetic)捕獲細粒度的語義(fine-grained semantic)和句法規則(syntactic regularities ),但這些規則的起源仍然是不透明的(opaque)。 我們分析並明確了(explicit)在單詞向量中出現這種規則性所需的模型屬性(model properties)。結果是一個新的全局logbilinear迴歸模型,它結合了文獻中兩個主要模型族的優點:全局矩陣分解(global matrix factorization)和局部上下文窗口方法(local context window methods)。 我們的模型通過僅訓練單詞 - 單詞共生矩陣(cooccurrence matrix)中的非零元素而不是整個稀疏矩陣(entire sparse matrix)或大型語料庫(a large corpus)中的各個上下文窗口來有效地利用(leverages)統計(statistical )信息。該模型產生一個具有有意義子結構(meaningful substructure)的向量空間,其最近一個單詞類比任務(word analogy task)的性能爲75%。 它在相似性任務(similarity tasks)和命名實體識別(named entity recognition)方面也優於相關模型。

1. 簡介

  語言的語義向量空間模型(Semantic vector space models)用實值向量表示每個單詞。 這些向量可以用作各種應用中的特徵,例如信息檢索(information retrieval)(Manning等,2008),文檔分類(document classification)(Sebastiani,2002),問題回答(question answering)(Tellex等,2003),命名實體識別(named entity recognition)(Turian) et al,2010)和解析(Socher et al,2013)

大多數單詞向量方法(Most word vector methods)依賴於單詞向量(pairs of word vectors)對之間的距離或角度(angle ),作爲評估這樣一組單詞表示的內在質量(intrinsic quality)的主要方法。 最近,Mikolov等人。 (2013c)引入了一種基於單詞類比(word analogies)的新評估方案(evaluation scheme),通過檢查單詞向量之間的標量距離( scalar distance),而不是它們各種不同的差異,探討(probes)單詞向量空間的更精細結構(the finer structure),例如,類比“國王是女王,男人是女人”應該在向量空間中由向量方程式王 - 女王=男人 - 女人編碼(be encoded in)。 該評估方案(This evaluation scheme)傾向於(favors )產生意義維度(dimensions of meaning)的模型,從而捕獲(thereby capturing)分佈式表示的多聚類(multi-clustering)思想(Bengio,2009).

學習單詞向量(learning word vectors)的兩個主要模型族(model families)是:**1)全局矩陣分解方法(global matrix factorization),如潛在語義分析( latent semantic analysis–LSA)(Deerwester等,1990)和2)**局部上下文窗口方法(local context window methods),如skip-gram模型 Mikolov等(2013c)。 目前,兩類模型方法(both families)都有明顯的缺點( significant drawbacks)。 雖然像LSA這樣的方法有效地利用(efficiently leverage)了統計信息,但它們對類比任務(word analogy task)這個詞的表現相對較差(relatively poorly),表明了次優的向量空間結構( sub-optimal vector space structure)。 像skip-gram這樣的方法在類比任務(word analogy task)上可能做得更好,但是它們很難利用( poorly utilize)語料庫的統計數據(the statistics of the corpus),因爲它們在單獨的本地上下文窗口(local context windows)而不是在全局共現計數(global co-occurrence counts)上進行訓練。

在這項工作中,我們分析了產生線性方向意義(linear directions of meaning)所必需的模型屬性(model properties necessary),並認爲(argue that)全局對數雙線性迴歸模型(global log-bilinear regression models)適合這樣做(are appropriate for doing so)。 我們提出了一種特定的加權最小二乘模型(specific weighted least squares model),該模型訓練全局詞 - 詞共現計數(global word-word co-occurrence counts),從而有效地利用統計數據(makes efficient use of statistics)。 該模型產生一個具有有意義子結構的單詞向量空間(a word vector space with meaningful substructure),其最先進的性能(state-of-the-art)是對單詞類比數據集的75%準確性所證明(as evidenced by)。 我們還證明了(demonstrate )我們的方法在幾個單詞相似性任務上(word similarity tasks)以及通用的命名實體識別(common named entity recognition-NER)基準上優於(outperform)其他當前方法(other current methods).

我們在 http://nlp.stanford.edu/projects/glove/ 上提供了模型的源代碼以及訓練過的單詞向量.

2. 相關工作

矩陣分解方法(Matrix Factorization Methods)。 用於生成低維字表示(generating low-dimensional word representations)的矩陣分解方法可以追溯到LSA。 這些方法利用低秩近似(utilize low-rank approximations)來分解(decompose )捕獲關於語料庫的統計信息(statistical information about a corpus)的大矩陣。 由這些矩陣捕獲的特定類型的信息因應用而異。在LSA中,矩陣是“術語 - 文檔”類型,即,行對應於單詞或術語,並且列對應於語料庫中的不同文檔。 相反(In contrast),例如,語言的超空間模擬(the Hyperspace Analogue to Language)(HAL)(Lund和Burgess,1996)利用“術語 - 術語”類型的矩陣,即行和列對應於單詞,而條目對應於單詞的次數 給定的單詞出現在另一個給定單詞的上下文中。

HAL相關方法的一個主要問題是最頻繁的單詞對相似性度量的貢獻不成比例(the most frequent words contribute a disproportionate amount to the similarity measure):例如,the和and,他們的語義相關性相對較少(semantic relatedness),但the與or共同出現的次數很多。 存在許多解決(addresses)HAL的這種缺點的技術,例如COALS方法(Rohde等人,2006),其中共生矩陣( co-occurrence matrix)首先通過基於熵或相關的歸一化來變換(entropy or correlation-based normalization)。這種類型的變換的優點在於,對於可能跨越8或9個數量級的合理大小的語料庫的(which for a reasonably sized corpus might span 8 or 9 orders of magnitude)原始共現計數(raw co-occurrence counts)被壓縮,以便在更小的間隔中(a smaller interval)更均勻地分佈。 各種新模型也採用這種方法(pursue this approach),包括一項研究(Bullinaria和Levy,2007),表明積極的逐點互信息(PPMI)是一個很好的轉變。 最近,Hellinger PCA(HPCA)形式的平方根類型轉換(Lebret和Collobert,2014)已被建議作爲學習單詞表示( learning word representations)的有效方式。

基於淺窗的方法(Shallow Window-Based Methods)。 另一種方法是學習有助於在本地上下文窗口中進行預測的單詞表示。 例如,Bengio等人。 (2003)引入了一個模型,學習單詞矢量表示作爲語言建模的簡單神經網絡體系結構的一部分。 Collobert和Weston(2008)將矢量訓練一詞與下游訓練目標分離,這爲Collobert等人鋪平了道路(paved the way)。 (2011)使用單詞的完整(full context of a word)上下文來學習單詞表示,而不僅僅是前面的上下文,就像語言模型一樣。

最近,用於學習有用的單詞表示的完整神經網絡結構(full neural network structure)的重要性已經受到質疑(called into question)。 Mikolov等人的skip-gram和連續詞袋(CBOW)模型。 (2013a)提出了一種基於兩個詞向量之間的內積的簡單單層架構。 Mnih和Kavukcuoglu(2013)也提出了密切相關的矢量對數 - 雙線性模型,vLBL和ivLBL,以及Levy等。 (2014)提出了基於PPMI度量的顯式單詞嵌入。

在skip-gram和ivLBL模型中,目標是在給定單詞本身的情況下預測單詞的上下文,而CBOW和vLBL模型中的目標是在給定其上下文的情況下預測單詞。 通過對單詞類比任務(analogy task)的評估,這些模型展示了(demonstrated)將語言模式(linguistic patterns )學習爲單詞向量之間的線性關係的能力。

與矩陣分解方法不同,基於淺窗口的方法的缺點在於它們不直接對語料庫的共現統計進行操作(they do not operate directly on the co-occurrence statistics of the corpus)。 相反,這些模型掃描整個語料庫(corpus)中的上下文窗口,這無法利用數據中的大量重複的信息(which fails to take advantage of the vast amount of repetition in the data)。

3.  GloVe 模型

 語料庫中(corpus)單詞出現的統計數據是所有無監督學習單詞表示方法的主要信息來源(primary source),雖然現在存在許多這樣的方法,如何從這些統計數據產生(meaning)含義,以及生成的單詞向量如何表示該(meaning)含義。 在本節中,我們對這個問題有所瞭解(we shed some light on this question)。 我們使用我們的見解(insights )構建一個新的單詞表示模型(a new model for word representation),我們稱之爲GloVe,用於全局向量,因爲全局語料庫統計數據是由模型直接捕獲的(the global corpus statistics)。

首先,我們建立一些符號(notation)。 將字 - 詞共同出現次數(word-word co-occurrence counts)的矩陣表示爲X,其條目表示word j 出現在單詞i的上下文中的次數。 設是任何單詞出現在單詞i的上下文中的次數。 最後,讓是單詞j出現的概率.

 

我們從一個簡單的例子開始,展示瞭如何直接從共現概率(occurrence probabilities)中提取意義的某些方面。 考慮兩個表示感興趣的特定方面的詞i和j; 具體而言(for concreteness),假設我們對熱力學階段(thermodynamic phase)的概念感興趣,我們可以採用i = ice和j = steam。 可以通過研究它們的共現概率(cooccurrence probabilities)與各種探測詞(probe words)k的比率(the ratio of their)來檢驗(examined)這些詞的關係。 對於與ice而不是steam相關的單詞k,比如說k = solid,我們預計比率會很大。類似地(Similarly),對於與steam而非ice相關的單詞k,比如k = gas,該比率應該很小。 對於像ice或fashion這樣的詞語k,無論是ice與steam,還是兩者都不相關,這個比例應該接近1。 表1顯示了這些概率及其與大型語料庫的比率(ratios),數字證實了這些期望。 與原始概率相比(raw probabilities),該比率能夠更好地(is better able to)區分(distinguish)相關詞(solid 和 gas)與不相關詞(ice和fashion),並且還能夠更好地區分(discriminate)兩個相關詞。

上述論點表明(The above argument suggests that),單詞向量學習的適當起點(appropriate starting point)應該是共現概率的比率( ratios of co-occurrence probabilities)而不是概率本身(probabilities themselves)。 注意到比率取決於三個單詞i,j和k,最通用的模型採用的形式,

其中是單詞向量,是單獨的上下文單詞向量,其作用將在4.2節中討論。在該等式中,右側(right-hand side)是從語料庫(corpus)中提取的,並且F可以取決於一些尚未指定(as-of-yet unspecified)的參數。 F的可能性很大(The number of possibilities for F is vast),但通過強制執行一些需求(desiderata ),我們可以選擇一個獨特的選擇。 首先,我們希望F對在字向量空間中呈現比率​的信息進行編碼。 由於向量空間本質上是線性結構(inherently linear structures),因此最自然的方法是使用向量差異(vector differences)。有了這個目標,我們可以將我們的考慮限制在僅依賴於兩個目標詞的差異(the difference of the two target words),修改Eqn的那些函數F. (1)到,

接下來,我們注意到公式(2)中的F的參數是向量,而右側(right-hand side)是標量(scalar)。 雖然F可以被認爲是由例如神經網絡參數化的複雜函數(complicated function parameterized),但是這樣做會混淆(obfuscate)我們試圖捕獲的線性結構。 爲了避免這個問題,我們可以先拿參數的點積(dot product),

這可以防止F以不希望(undesirable )的方式混合矢量尺寸。 接下來,請注意(note that),對於單詞共現矩陣,單詞和上下文單詞之間的區別是任意的,我們可以自由地交換這兩個角色。爲了這樣做的一致性(To do so consistently),我們不僅要交換,同時也要交換。我們的最終模型在這種重新標記下(relabeling)應該是不變的(invariant),但是Eqn(3)不是。 但是,對稱性(symmetry)可以分兩步恢復(restored)。首先,我們要求F是羣之間的同態(homomorphism).

 

其中,由Eqn(3),解決了,

公式(4)的解是F=exp,也就是

接下來,我們注意到公式(6)如果不是右側的,則表現出交換對稱性(exhibit the exchange symmetry)。 然而,該項與k無關,因此它可以被吸收到的偏置中。 最後,爲添加額外的偏差可以恢復對稱性(restores the symmetry),

公式(7)是對公式(1)的極大簡化。 但它實際上是不明確的(it is actually ill-defined),因爲只要參數(argument)爲零,對數(logarithm)就會發散(diverges)。該問題的一個解決方案(resolution )是在對數中包括加性偏移(additive shift),它保持了X的稀疏性(sparsity of X),同時避免了分歧(divergences)。將共生矩陣( co-occurrence matrix )的對數分解(factorizing the log)的想法與LSA密切相關,我們將使用得到的模型作爲我們實驗中的基線(baseline)。 這種模式的一個主要缺點(A main drawback)是,它平等地權衡所有共現(it weighs all co-occurrences equally),甚至是那些很少或從未發生的共現。 這種罕見的共現是嘈雜(noisy)的,並且信息比較頻繁的信息少 - 但即使只有零條目(zero entries)佔X中數據的75-95%,這取決於詞彙量(vocabulary size)和語料庫(corpus)。

我們提出了一種新的加權最小二乘迴歸模型(weighted least squares regression model)來解決這些問題(addresses these problems)。 將公式(7)作爲最小二乘問題(least squares problem)並將加權函數引入到成本函數中給出了模型

其中V是詞彙量的大小(the size of the vocabulary)。 加權函數應遵循以下屬性(The weighting
function should obey the following properties):

  • 。如果被視爲連續的函數,f應該隨着而趨於0,並且有趨於無窮。
  • f(x)應該是非遞減的,以便罕見(rare)的共現(co-occurrences)不會超重(overweighted)。
  • 對於較大的x值,f(x)應該相對較小,因此頻繁的(frequent)共現不會超重(overweighted)。

當然,大量函數滿足(satisfy )這些屬性,但我們發現可以很好地工作的一類函數可以參數化爲,

The performance of the model depends weakly on the cutoff,我們所有的實驗都設定 我們發現比使用的線性版本提供了適度的改進(modest improvement)。雖然我們僅提供選擇3/4值的經驗動機(empirical motivation),但有趣的是,發現類似的分數功率縮放(fractional power scaling)以提供最佳性能(best performance)。(Mikolov等,2013a)。

3.1 與其他模式的關係

   由於所有的無監督的方法學習單詞向量是最終基於語料庫的出現統計數據,因此模型之間應具有共性,然而,某些模型仍然在這方面有點不透明,特別是最近skip-gram和ivLBL基於窗口的方法。因此,在本節展示這些模型與我們提出的模型中,定義在Eqn。(8)。

 

-------------未完,待完善

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章