小象學(xué)院自然語(yǔ)言項(xiàng)目實(shí)戰(zhàn)
1. word2vec
在自然語(yǔ)言中,詞是最基本的單元。為了讓計(jì)算機(jī)理解并處理自然語(yǔ)言,我們首先就要對(duì)詞進(jìn)行編碼。由于自然語(yǔ)言中詞的數(shù)量是有限的,那就可以對(duì)每個(gè)詞指定一個(gè)唯一序號(hào),比如:英文單詞word的序號(hào)可以是1156。而為了方便計(jì)算,通常會(huì)將序號(hào)轉(zhuǎn)換成統(tǒng)一的向量。簡(jiǎn)單做法是對(duì)單詞序號(hào)進(jìn)行one-hot編碼,每個(gè)單詞都對(duì)應(yīng)一個(gè)長(zhǎng)度為N(單詞總數(shù))的向量(一維數(shù)組),向量中只有該單詞序號(hào)對(duì)應(yīng)位置的元素值為1,其它都為0。
雖然使用one-hot編碼構(gòu)造詞向量十分容易,但并不是一個(gè)較好的方法。主要原因是無法很好地表示詞的語(yǔ)義,比如蘋果和橘子是相似單詞(都是水果),但one-hot向量就無法體現(xiàn)這種相似關(guān)系。
為了解決上述問題,Google的Mikolov等人于2013年發(fā)表了兩篇與word2vec相關(guān)的原始論文[1][2]。word2vec將詞表示成一個(gè)定長(zhǎng)的向量,并通過上下文學(xué)習(xí)詞的語(yǔ)義信息,使得這些向量能表達(dá)詞特征、詞之間關(guān)系等語(yǔ)義信息。word2vec包含兩個(gè)模型:跳字模型(Skip-gram)[1] 和連續(xù)詞袋模型(continuous bag of words,CB
?
標(biāo)簽: