1. 程式人生 > >[未完] 深度學習 之 詞向量(Word Embedding)篇 :word2vec

[未完] 深度學習 之 詞向量(Word Embedding)篇 :word2vec

歡迎參觀 一> 個人小站

一. 詞向量表示形式

在使用神經網路模型進行文字分類或者機器翻譯時,前提工作是要對整理好的文字資料進行詞向量化 (Word Embedding) ,既使用向量形式代表詞。

1.1 One-hot representation

表示形式:向量維度的大小為資料中詞彙表的大小,每個單詞對應的位置置為1。例如 { I love china }love 的詞向量為 [ 0, 1, 0 ] 。該表達形式最為簡單,缺點是當詞彙表特別大時,所佔儲存空間也特別大。

1.2 Dristributed representation

表示形式:以稠密的低維向量表示每個詞。

二. 語言模型 ( Language Model )

如何判斷一個句子是否流暢?例如 我在學習 而不是 我玩學習 ,語言模型可以解決這個問題。

2.1 統計語言模型

2.1.1 背景

給定一段文字序列,符號表達形式為:

s=w1w2w3...wm

wi通常是已經分好詞的“詞語”,稱為統計基元。那麼這段文字的概率為:

P(S)=p(w1)p(w1|w2)p(w3|w1w2)...p(wm|
w1...wm1)=i=1mp(wi|w1w2...wi1)

為方便計算,每個詞只考慮與它前 n 個詞有關,這便是語言模型中經典的 n 元文法 (N-gram) 模型,一般 n3 。求文字的概率公式變為:

P(S)=i=1mp(wi|win+1i1)

為了保證 i=1 時有意義,同時保證句子內所有詞語的概率和為 1 ,即 sp(s)=1 ,在文字首尾兩端增加兩個標誌:<BOS>w1w2......wm<

EOS> ,那麼 w0<BOS>wm+1<EOS>

例如文字 <BOS>Adogwasrunninginaroom ,其基於 2 元文法的文字概率為: