傳統(tǒng)表達:one-hot
將每個詞表示為一個長長的向量。詞袋:所有詞的不重復(fù)構(gòu)成。
這樣做的缺陷:忽略了句子詞頻信息;面臨高維困境(文本維度隨著詞數(shù)變化而變化);忽略了詞語上下文關(guān)聯(lián)浆西。
基本概念
詞嵌入(Word embedding)是一種詞的類型表示,是將詞匯映射到實數(shù)向量的方法總稱顽腾。
用低維向量表示一個是的相似意義的詞向量距離相近近零,同時又能避免維度過高的問題。
核心思想:根據(jù)詞語的上下文來計算詞向量崔泵,一個詞的語義是由它周圍的詞決定的秒赤。
CBOW:連續(xù)詞袋模型:
詞向量生成過程:
輸入層:context word的one-hot;
輸出層:目標(biāo)值為center word的one-hot憎瘸;
所有輸入one-hot共享權(quán)重矩陣W(v*N)入篮;
N代表隱層神經(jīng)元個數(shù),自定義幌甘;v代表one-hot編碼維度潮售。
網(wǎng)絡(luò)訓(xùn)練后所得的權(quán)重矩陣W(v*N)即為詞向量。
可以看到锅风,訓(xùn)練后的權(quán)重矩陣W的每一行酥诽,即對應(yīng)我們訓(xùn)練輸入及輸出詞的詞向量。另皱埠,詞向量不是一般的模型訓(xùn)練任務(wù)肮帐,二十為了完成任務(wù)產(chǎn)生的附屬品。
隱層到輸出層:隱層神經(jīng)元會將接受到的(v-1)個word編碼取平均,然后繼續(xù)往后傳輸训枢。
Skip-gram
它的做法托修,將一個詞所在上下文中的詞作為輸出,而那個詞本身作為輸入恒界,但其核心思想還是一樣的睦刃。
word->vector,最后我們得到的結(jié)果是十酣,每個詞都會有一個實屬向量涩拙。