無(wú)監(jiān)督學(xué)習(xí)-詞嵌入|深度學(xué)習(xí)(李宏毅)(七)

一坦康、概述

詞嵌入(Word Embedding)是將自然語(yǔ)言表示的單詞轉(zhuǎn)換為計(jì)算機(jī)能夠理解的向量或矩陣形式的技術(shù)丐黄。在Word Embedding之前,常用的方法有one-hot、n-gram斜棚、co-occurrence matrix糕篇,但是他們都有各自的缺點(diǎn)啄育。Word Embedding是一種無(wú)監(jiān)督的方法。

Word Embedding

Word Embedding的主要任務(wù)是輸入收集到的詞匯拌消,然后獲得它的向量表示挑豌,其大概過(guò)程如下:

Word Embedding

Word Embedding不能使用AutoEncoder來(lái)做是因?yàn)闊o(wú)法為AutoEncoder的輸入找到一個(gè)包含可以學(xué)習(xí)的信息的表示。比如使用獨(dú)熱編碼作為AutoEncoder的輸入墩崩,由于獨(dú)熱編碼的每一維度之間是相互獨(dú)立的氓英,且獨(dú)熱編碼包含的信息量極少,因此AutoEncoder學(xué)不到一些有用的信息鹦筹。

Word Embedding主要通過(guò)訓(xùn)練數(shù)據(jù)的上下文來(lái)學(xué)習(xí)文本的信息铝阐。Word Embedding假設(shè)不同的詞如果處在同樣的上下文位置的話(huà),這兩個(gè)詞就會(huì)具有一定的相似性铐拐。

詞的上下文

二徘键、詞嵌入的方法

  1. Count based

Count based的方法的主要思想是認(rèn)為如果兩個(gè)詞w_{i}w_{j}頻繁地同時(shí)出現(xiàn)练对,則其詞向量V(w_{i})V(w_{j})會(huì)比較接近。

這種方法的典型模型是GloVe模型吹害,這里不做重點(diǎn)介紹螟凭。

  1. Prediction based
  • 使用的網(wǎng)絡(luò)結(jié)構(gòu)

在多層神經(jīng)網(wǎng)絡(luò)中輸入當(dāng)前詞w_{i-1}的獨(dú)熱編碼向量并輸出每個(gè)維度表示w_{i}為每個(gè)詞的概率的向量,然后取第一個(gè)隱藏層的輸入作為詞的編碼向量它呀,其過(guò)程如下圖所示:

網(wǎng)絡(luò)結(jié)構(gòu)

將獲得的詞的編碼向量進(jìn)行可視化以后可以看到類(lèi)似的詞會(huì)出現(xiàn)在比較接近的地方:

可視化
  • 為什么第一個(gè)隱藏層的輸入可以作為詞的編碼

在下面的訓(xùn)練文本中輸入兩個(gè)人名網(wǎng)絡(luò)會(huì)預(yù)測(cè)到相同的輸出“宣誓就職”螺男,為了使得神經(jīng)網(wǎng)絡(luò)輸出去同樣的結(jié)果,神經(jīng)網(wǎng)絡(luò)就需要將兩個(gè)人名經(jīng)過(guò)權(quán)重的處理映射到接近的詞向量纵穿,然后將這個(gè)詞向量作為神經(jīng)網(wǎng)絡(luò)的輸入下隧。

訓(xùn)練文本
  • 共享參數(shù)——使用多個(gè)詞預(yù)測(cè)下一個(gè)詞

在實(shí)際應(yīng)用中使用一個(gè)詞來(lái)預(yù)測(cè)下一次個(gè)往往是比較困難的,一個(gè)詞后面可能出現(xiàn)的詞的可能結(jié)果有千千萬(wàn)萬(wàn)種政恍,因此通常將多個(gè)詞同時(shí)作為網(wǎng)絡(luò)的輸入汪拥,通常需要輸入至少10個(gè)詞才會(huì)訓(xùn)練出效果比較好的模型。

以輸入兩個(gè)詞為例篙耗,假設(shè)輸入的兩個(gè)詞向量為x_{i-2}x_{i-1}迫筑,其長(zhǎng)度均為|V|,第一個(gè)隱藏層的輸入為z=W_{1}x_{i-2}+W_{2}x_{i-1}宗弯,z的長(zhǎng)度為|Z|脯燃,則兩個(gè)權(quán)重矩陣的形狀為|Z|\times|V|

在實(shí)際過(guò)程中需要使得W_{1}W_{2}相等蒙保,即W_{1}=W_{2}=W辕棚,則z=W(x_{i-2}+x_{i-1}),這就是共享參數(shù)邓厕。對(duì)于為什么需要共享參數(shù)有以下兩點(diǎn)解釋?zhuān)?br> ①參數(shù)共享可以保證同樣的詞出現(xiàn)在不同位置時(shí)不會(huì)使得編碼的結(jié)果不同逝嚎;
②表示詞的獨(dú)熱編碼往往維數(shù)很高,共享參數(shù)可以降低參數(shù)的數(shù)量详恼。

輸入多個(gè)詞的網(wǎng)絡(luò)結(jié)構(gòu)如下圖所示补君,其中相同顏色的權(quán)重表示共享的參數(shù):

網(wǎng)絡(luò)結(jié)構(gòu)

在訓(xùn)練時(shí)為了保證參數(shù)共享,將采用下種方式進(jìn)行參數(shù)更新:

參數(shù)更新

以下為一個(gè)舉例昧互,預(yù)測(cè)下一個(gè)詞時(shí)使用的是前兩個(gè)詞挽铁,然后將輸出與預(yù)測(cè)的詞的獨(dú)熱編碼的交叉熵作為損失函數(shù),通過(guò)最小化損失來(lái)訓(xùn)練模型:

舉例
  • 其他變種

Continuous bag of word (CBOW) model

CBOW

Skip-gram

Skip-gram
  • 可視化

從訓(xùn)練得到的模型中獲得詞的編碼向量以后進(jìn)行可視化可以看到一些規(guī)律敞掘,比如國(guó)家和首都之間有一定的聯(lián)系:

國(guó)家與首都

動(dòng)詞的三種時(shí)態(tài)之間有一定的規(guī)律:

動(dòng)詞時(shí)態(tài)

一類(lèi)動(dòng)物的詞向量與某一特定品種的該類(lèi)動(dòng)物的詞向量的差叽掘,以及一類(lèi)職業(yè)的詞向量與某一特定的該類(lèi)職業(yè)的詞向量的差會(huì)落在各自的位置:

類(lèi)與實(shí)例

根據(jù)上述特性可以來(lái)回答類(lèi)比的問(wèn)題。比如我們知道V(Rome)?V(Italy)≈V(Berlin)?V(Germany)玖雁,就可以回答以下問(wèn)題:

解決類(lèi)比問(wèn)題

使V(w)=V(Berlin)-V(Rome) +V(Italy)更扁,然后尋找與V(w)最接近的詞向量對(duì)應(yīng)的詞,大概率會(huì)找到答案“Germany”。

三疯潭、一些其他應(yīng)用

  1. 多語(yǔ)種的Embedding

如果分別訓(xùn)練英文的材料和中文的材料赊堪,那么分別得到的結(jié)果就不會(huì)有任何聯(lián)系面殖,比如“apple”和“蘋(píng)果”的詞向量之間就不會(huì)有聯(lián)系竖哩。這是因?yàn)樵~嵌入的方法只根據(jù)詞的上下文來(lái)建立詞的編碼,如果不將中文和英文的資料放到一起訓(xùn)練就不會(huì)使相同意義的中英文詞匯的詞向量產(chǎn)生任何聯(lián)系脊僚。但是如果我們?cè)谥杏⑽姆謩e訓(xùn)練出的詞向量的基礎(chǔ)上繼續(xù)訓(xùn)練一個(gè)模型相叁,使得中英文相同意義的詞映射到同一個(gè)位置,就可以得到以下結(jié)果辽幌,這樣的模型可以用來(lái)進(jìn)行類(lèi)似翻譯這樣的工作:

多語(yǔ)種嵌入
  1. 對(duì)圖像的Embedding

首先可以對(duì)各種類(lèi)別的詞進(jìn)行詞嵌入獲得詞的編碼向量增淹,然后可以訓(xùn)練一個(gè)模型使得該模型的輸入是圖片,輸出一個(gè)和該圖片類(lèi)別的詞向量同樣維度的向量并且使得輸出散落在類(lèi)別的詞向量周?chē)谄蟆Mㄟ^(guò)這樣一種方式就可能實(shí)現(xiàn)當(dāng)這個(gè)模型輸入一張沒(méi)有訓(xùn)練過(guò)的類(lèi)別的圖片時(shí)可以將該圖片的編碼向量映射到正確的類(lèi)別的詞向量周?chē)侨螅瑥亩鉀Q傳統(tǒng)的分類(lèi)方法只能夠識(shí)別訓(xùn)練過(guò)的類(lèi)別的圖片的局限性。下圖是上述過(guò)程的一個(gè)舉例加酵,在這里訓(xùn)練了車(chē)輛拳喻、馬和狗的圖片,當(dāng)貓的圖片輸入到模型中時(shí)可以將其映射到“cat”的詞向量周?chē)?/p>

對(duì)圖像的Embedding
  1. 對(duì)詞序列的Embedding

詞序列可以指文檔或一段話(huà)猪腕,可以將不定長(zhǎng)的詞向量映射到定長(zhǎng)的編碼向量冗澈,這個(gè)編碼向量就代表了這個(gè)序列的語(yǔ)義,這種Embedding的方法可以解決Bag-of-word+AutuEncoder方法的局限性陋葡。Bag-of-word+AutuEncoder方法的過(guò)程如下圖所示:

Bag-of-word+AutuEncoder

Bag-of-word+AutuEncoder的局限性在于Bag-of-word忽略了詞序列中詞的順序所包含的信息亚亲。舉例來(lái)說(shuō)下面兩句話(huà)雖然包含同樣的詞卻是完全不同的意思,一句是positive的腐缤,另一句是negative的:

Bag-of-word+AutuEncoder的局限性

參考資料

ref:自然語(yǔ)言處理(NLP)之Word Embedding
ref:GloVe模型

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末捌归,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子岭粤,更是在濱河造成了極大的恐慌惜索,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件绍在,死亡現(xiàn)場(chǎng)離奇詭異门扇,居然都是意外死亡偿渡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)魄揉,“玉大人,你說(shuō)我怎么就攤上這事∶角” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 153,340評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵胜茧,是天一觀(guān)的道長(zhǎng)。 經(jīng)常有香客問(wèn)我嬉愧,道長(zhǎng)卵迂,這世上最難降的妖魔是什么偿衰? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,449評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮胆萧,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己推励,他們只是感情好稿黄,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,445評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著跌造,像睡著了一般杆怕。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上壳贪,一...
    開(kāi)封第一講書(shū)人閱讀 49,166評(píng)論 1 284
  • 那天陵珍,我揣著相機(jī)與錄音,去河邊找鬼违施。 笑死互纯,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的磕蒲。 我是一名探鬼主播留潦,決...
    沈念sama閱讀 38,442評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼辣往!你這毒婦竟也來(lái)了兔院?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,105評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤排吴,失蹤者是張志新(化名)和其女友劉穎秆乳,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,601評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡屹堰,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,066評(píng)論 2 325
  • 正文 我和宋清朗相戀三年肛冶,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片扯键。...
    茶點(diǎn)故事閱讀 38,161評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡睦袖,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出荣刑,到底是詐尸還是另有隱情馅笙,我是刑警寧澤,帶...
    沈念sama閱讀 33,792評(píng)論 4 323
  • 正文 年R本政府宣布厉亏,位于F島的核電站董习,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏爱只。R本人自食惡果不足惜皿淋,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,351評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望恬试。 院中可真熱鬧窝趣,春花似錦、人聲如沸训柴。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,352評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)幻馁。三九已至洗鸵,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間宣赔,已是汗流浹背预麸。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,584評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留儒将,地道東北人吏祸。 一個(gè)月前我還...
    沈念sama閱讀 45,618評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像钩蚊,于是被迫代替她去往敵國(guó)和親贡翘。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,916評(píng)論 2 344