詞嵌入現(xiàn)在已經(jīng)成為任何基于深度學(xué)習(xí)的自然語(yǔ)言處理系統(tǒng)的標(biāo)配組件。然而,Glockner等最近的工作(arXiv:1805.02266)表明,當(dāng)前重度依賴無(wú)監(jiān)督詞嵌入的模型,難以學(xué)習(xí)詞對(duì)之間的隱含關(guān)系。而詞對(duì)之間的隱含關(guān)系,對(duì)問(wèn)答(QA)、自然語(yǔ)言推理(NLI)之類的跨句推理至關(guān)重要。
例如,在NLI任務(wù)中,給定一個(gè)假設(shè)“打高爾夫球過(guò)于昂貴”(golf is prohibitively expensive),要推斷出猜想“過(guò)去打高爾夫球很便宜”(golf is a cheap pastime),需要了解“昂貴”(expensive)和“便宜”(cheap)是反義詞。而現(xiàn)有的基于詞嵌入的模型很難學(xué)習(xí)這種關(guān)系。
有鑒于此,華盛頓大學(xué)的Mandar Joshi、Eunsol Choi、Daniel S. Weld和Facebook AI研究院的Omer Levy、Luke Zettlemoyer最近提出了詞對(duì)嵌入(pair2vec)技術(shù),可以改善現(xiàn)有模型在跨句推理上的表現(xiàn)。
詞對(duì)嵌入表示
直覺(jué)
詞對(duì)嵌入的直覺(jué)很簡(jiǎn)單,正如上下文隱含了單詞的語(yǔ)義(詞嵌入),上下文也為詞對(duì)之間的關(guān)系提供了強(qiáng)力線索。
詞對(duì)(斜體)及其上下文(取自維基百科)
不過(guò),總體上來(lái)說(shuō),詞對(duì)一起出現(xiàn)在同一上下文的頻率不高。為了緩解這一稀疏性問(wèn)題,pair2vec學(xué)習(xí)兩個(gè)復(fù)合表示函數(shù)R(x, y)和C(c),分別編碼詞對(duì)和上下文。
表示
R(x,y)是一個(gè)簡(jiǎn)單的4層感知器,輸入為兩個(gè)詞向量,以及這兩個(gè)詞向量的分素乘積:
其中,x和y為經(jīng)過(guò)歸一化的基于共享查詢矩陣Ea的嵌入:
C(n)基于查詢矩陣Ec嵌入每個(gè)token ci,然后將嵌入序列傳入一個(gè)單層的雙向LSTM,再使用注意力池化加以聚合:
上面所有的參數(shù),包括Ea和Ec,都是可訓(xùn)練的。
目標(biāo)
一方面,優(yōu)化目標(biāo)需要使在數(shù)據(jù)中觀測(cè)到的一同出現(xiàn)的(x, y, c)對(duì)應(yīng)的R(x, y)和C(c)相似(內(nèi)積較大);另一方面,又需要使詞對(duì)和其他上下文不相似。當(dāng)然,計(jì)算所有其他上下文和詞對(duì)的相似性的算力負(fù)擔(dān)太大了,因此,論文作者采用了負(fù)采樣技術(shù),轉(zhuǎn)而比較隨機(jī)采樣的一些上下文。
上式中的CN為隨機(jī)取樣的上下文。
這種做法其實(shí)和詞嵌入一脈相承。詞嵌入同樣面臨計(jì)算所有上下文(softmax)過(guò)于復(fù)雜的問(wèn)題。因此,word2vec、skip-gram等詞嵌入技術(shù)使用了層次softmax(使用二叉樹(shù)結(jié)構(gòu)保存所有詞,從而大大縮減計(jì)算量)。后來(lái)Mikolov等提出,負(fù)采樣可以作為層次softmax的替代方案。相比層次softmax,負(fù)采樣更簡(jiǎn)單。
不過(guò),還記得我們之前提到的詞對(duì)稀疏性問(wèn)題嗎?這種直接借鑒詞嵌入負(fù)采樣的方案,也會(huì)受此影響。所以論文作者改進(jìn)了負(fù)采樣技術(shù),不僅對(duì)上下文c進(jìn)行負(fù)采樣,還對(duì)詞對(duì)中的單詞x和y分別進(jìn)行負(fù)采樣。這一三元負(fù)采樣目標(biāo),完整地捕捉了x、y、c之間的交互關(guān)系:
論文作者證明(見(jiàn)論文附錄A.2),目標(biāo)收斂于:
上式中,P表示分素互信息(PMI),分母Zx,y,c為邊緣概率乘積的線性混合:
另外,負(fù)采樣時(shí),除了從均勻分布中取樣外,還額外從最相似(根據(jù)余弦相似度)的100個(gè)單詞中均勻取樣。這一類型取樣(typed sampling)方法可以鼓勵(lì)模型學(xué)習(xí)具體實(shí)例間的關(guān)系。比如,使用California(加州)作為Oregon(俄勒岡州)的負(fù)樣本有助于學(xué)習(xí)“X is located in Y”(X位于Y)這樣的模式適用詞對(duì)(Portland, Oregon)(波特蘭是俄勒岡州的城市),但不適用詞對(duì)(Portland, California)。
pair2vec加入推理模型
在將pair2vec加入現(xiàn)存跨句推理模型時(shí),論文作者并沒(méi)有用pair2vec直接替換傳入編碼器的詞嵌入,而是通過(guò)復(fù)用跨句注意力權(quán)重,將預(yù)訓(xùn)練的詞對(duì)表示插入模型的注意力層。
上圖展示了跨句注意力模型的典型架構(gòu)(左半部分)和pair2vec是如何加入這一架構(gòu)的(右半部分)。簡(jiǎn)單解釋一下,給定兩個(gè)序列a和b,對(duì)序列a中的單詞ai,模型基于雙向LSTM編碼ai,同時(shí)基于序列b的雙向LSTM狀態(tài)創(chuàng)建相對(duì)于ai的注意力加權(quán)表示(圖中加粗的箭頭表示語(yǔ)義對(duì)齊)。在此基礎(chǔ)上,加上注意力加權(quán)的詞對(duì)表示ri(ai, b)。
試驗(yàn)
數(shù)據(jù)
論文作者使用了2018年1月的維基百科數(shù)據(jù),其中包含九千六百萬(wàn)句子?;谠~頻限制詞匯量至十萬(wàn)(預(yù)處理階段移除)。在經(jīng)過(guò)預(yù)處理的語(yǔ)料庫(kù)上,論文作者考慮了窗口大小5以內(nèi)的所有詞對(duì),并基于詞對(duì)概率(閾值為5 × 10-7)降采樣實(shí)例。降采樣可以壓縮數(shù)據(jù)集大小以加速訓(xùn)練,word2vec等詞嵌入也采用降采樣。上下文從詞對(duì)左邊的一個(gè)單詞開(kāi)始,到詞對(duì)右邊的一個(gè)單詞為止。另外,論文作者用X和Y替換了上下文中的詞對(duì)。
超參數(shù)
詞對(duì)和上下文均使用基于FastText初始化的300維詞嵌入。上下文表示使用的單層雙向LSTM的隱藏層尺寸為100. 每個(gè)詞對(duì)-上下文元組使用2個(gè)上下文負(fù)樣本和3個(gè)增強(qiáng)負(fù)樣本。
預(yù)訓(xùn)練使用隨機(jī)梯度下降,初始學(xué)習(xí)率為0.01,如果損失在30萬(wàn)步后沒(méi)有下降,那么將學(xué)習(xí)率縮小至原學(xué)習(xí)率的10%。batch大小為600。預(yù)訓(xùn)練了12個(gè)epoch(在Titan X GPU上,預(yù)訓(xùn)練需要一周)。
任務(wù)模型均使用AllenNLP的實(shí)現(xiàn),超參數(shù)取默認(rèn)值。在插入pair2vec前后沒(méi)有改動(dòng)任何設(shè)置。預(yù)訓(xùn)練的詞對(duì)嵌入使用0.15的dropout.
問(wèn)答任務(wù)
在SQuAD 2.0上的試驗(yàn)表明,pair2vec提升了2.72 F1. 對(duì)抗SQuAD數(shù)據(jù)集上的試驗(yàn)說(shuō)明pair2vec同時(shí)加強(qiáng)了模型的概括性(F1分別提升7.14和6.11)。
均使用ELMo詞嵌入
自然語(yǔ)言推理
在MultiNLI數(shù)據(jù)集上,加入pair2vec后,ESIM + ELMo的表現(xiàn)提升了1.3.
Glockner等提出了一個(gè)領(lǐng)域外NLI測(cè)試集( arXiv:1805.02266),說(shuō)明除了使用WordNet特征的KIM外,多個(gè)NLI模型在比SNLI更簡(jiǎn)單的新測(cè)試集上的表現(xiàn)反而要差不少,說(shuō)明這些模型的概括性有問(wèn)題。而加入pair2vec后的ESIM + ELMo模型達(dá)到了當(dāng)前最先進(jìn)水平,刷新了記錄。
順便提下,KIM的做法是現(xiàn)有研究中最接近pair2vec的。KIM同樣在ESIM模型中加入了詞對(duì)向量,但是它的詞對(duì)向量是基于WordNet手工編碼得到的。而pair2vec使用的是無(wú)監(jiān)督學(xué)習(xí),因此可以反映WordNet中不存在的關(guān)系(例如個(gè)人-職業(yè)),以及WordNet中沒(méi)有直接聯(lián)系的詞對(duì)(例如,bronze(青銅)與statue(塑像))。
詞類比
為了揭示pair2vec加入的額外信息是什么,pair2vec能夠更好地捕捉哪類聯(lián)系,論文作者在詞類比數(shù)據(jù)集上進(jìn)行了試驗(yàn)。
詞類比任務(wù)是指,給定詞對(duì)(a, b)和單詞x,預(yù)測(cè)滿足a : b :: x : y的單詞y。論文作者使用的是BATS數(shù)據(jù)集,該數(shù)據(jù)集包括四種關(guān)系:
百科語(yǔ)義(encyclopedic semantics),例如Einstein-physicist(愛(ài)因斯坦-物理學(xué)家)這樣的個(gè)人-職業(yè)關(guān)系。
詞典語(yǔ)義(lexicographic semantics),例如cheap-expensive(廉價(jià)-昂貴)這樣的反義詞。
派生形態(tài)(derivational morphology),例如oblige(動(dòng)詞,迫使)與obligation(名詞,義務(wù))。
屈折形態(tài)(inflectional morphology),例如bird-birds(鳥(niǎo)的單數(shù)形式和復(fù)數(shù)形式)。
每種關(guān)系各包含10個(gè)子類別。
之前我們說(shuō)過(guò),詞類比任務(wù)是要預(yù)測(cè)滿足a : b :: x : y的單詞y,而相關(guān)詞嵌入的差很大程度上能夠反映相似關(guān)系,例如,queen(后) - king(王) ≈ woman(女) - man(男)很大程度上意味著queen : king :: woman : man。所以,詞類比問(wèn)題可以通過(guò)優(yōu)化cos(b - a + x, y)求解(cos表示余弦相似度,a、b、x、y為詞嵌入)。這一方法一般稱為3CosAdd法。
論文作者在3CosAdd中加入了pair2vec,得到α·cos(ra,b, rx,y) + (1-α)·cos(b - a + x, y)。其中r表示pair2vec嵌入,α為線性插值系數(shù),α=0時(shí)等價(jià)于原3CosAdd法,α=1等價(jià)于pair2vec。
下圖顯示了在FastText中插入pair2vec的結(jié)果,黃線表示派生形態(tài),棕線表示詞典語(yǔ)義,綠線表示屈折形態(tài),藍(lán)線表示百科語(yǔ)義。
我們可以看到,在所有四個(gè)類別上,在3CosAdd上增加pair2vec都取得了顯著的提升,其中百科語(yǔ)義(356%)和詞典語(yǔ)義(51%)提升尤為突出。
下表顯示了提升最明顯的10個(gè)子類別,α*為最優(yōu)插值參數(shù)。
從上表我們可以看到,在FastText嵌入提供的信號(hào)十分有限的關(guān)系上,提升尤為顯著。論文作者還觀察到,某些情形下pair2vec和FastText存在協(xié)同效應(yīng),比如,noun+less關(guān)系中,3CosAdd原本評(píng)分為4.8,pair2vec自身評(píng)分為0,但3CosAdd加上pair2vec后,評(píng)分為16。
填槽
為了進(jìn)一步探索pair2vec如何編碼補(bǔ)充信息,論文作者嘗試了填槽(slot filling)任務(wù):給定Hearst式的上下文模式c、單詞x,預(yù)測(cè)取自整個(gè)詞匯表的單詞y。候選單詞y的排序基于訓(xùn)練目標(biāo)R(x,y)·C(c)的評(píng)分函數(shù),采用固定的關(guān)系樣本,并手工定義上下文模式和一小組候選詞x。
下表顯示了評(píng)分最高的三個(gè)y單詞。
斜體表示正確匹配
上表說(shuō)明,pair2vec可以捕捉詞對(duì)和上下文間的三邊關(guān)系,而不僅僅是單個(gè)單詞和上下文之間的雙邊關(guān)系(詞嵌入)。這一巨大差別使pair2vec可以為詞嵌入補(bǔ)充額外信息。
消融測(cè)試
為了驗(yàn)證pair2vec各組件的有效性,論文作者也在SQuAD 2.0的訓(xùn)練集上做了消融測(cè)試。消融測(cè)試表明,增強(qiáng)采樣和使用較深的復(fù)合函數(shù)效果顯著。
結(jié)語(yǔ)
pair2vec基于復(fù)合函數(shù)表示,有效緩解了詞對(duì)的稀疏性問(wèn)題?;跓o(wú)監(jiān)督學(xué)習(xí)預(yù)訓(xùn)練的pair2vec,能夠?yàn)樵~嵌入補(bǔ)充信息,從而提升跨句推理模型的表現(xiàn)。
-
編碼器
+關(guān)注
關(guān)注
45文章
3654瀏覽量
134865 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5510瀏覽量
121334 -
自然語(yǔ)言處理
+關(guān)注
關(guān)注
1文章
619瀏覽量
13599
原文標(biāo)題:pair2vec 基于復(fù)合詞對(duì)嵌入加強(qiáng)跨句推理模型
文章出處:【微信號(hào):jqr_AI,微信公眾號(hào):論智】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論