知识图谱入门知识(五)【转】秒懂词向量Word2Vec的本质
博文: 秒懂詞向量Word2Vec的本質(zhì)
什么是Word2Vec?
詞性標(biāo)注:是動(dòng)詞還是名詞,樣本(x,y)中,x是詞語,y是它們的詞性
f(x)->y
中的f(神經(jīng)網(wǎng)絡(luò)、SVM)只接受數(shù)值型輸入,而NLP里的詞語,必須轉(zhuǎn)換為數(shù)值型形式
語言模型: 把 x 看做一個(gè)句子里的一個(gè)詞語,y 是這個(gè)詞語的上下文詞語,那么這里的 f,便是 NLP 中經(jīng)常出現(xiàn)的『語言模型』(language model),這個(gè)模型的目的,就是判斷 (x,y) 這個(gè)樣本,是否符合自然語言的法則,更通俗點(diǎn)說就是:詞語x和詞語y放在一起,是不是人話。
而Word2Vec就是集結(jié)了上面兩個(gè)特征,既要將詞語向量化,又能很好的保證上下文信息。 這里的f則是上面兩個(gè)的集合。 但是我們的結(jié)果不是為了得到它是什么詞性,它們符不符合語法,而是得到這之間的中間產(chǎn)物——模型參數(shù),并用這些來得到輸入x的向量化表示!
Skip-gram 和 CBOW 模型
上面我們提到了語言模型
- 如果是用一個(gè)詞語作為輸入,來預(yù)測它周圍的上下文,那這個(gè)模型叫做『Skip-gram 模型』
- 而如果是拿一個(gè)詞語的上下文作為輸入,來預(yù)測這個(gè)詞語本身,則是 『CBOW 模型』
但是作為輸入的詞語該怎么表示呢? 肯定不是Word2Vec,而是one-hot encoder。
這個(gè)詞向量的維度(與隱含層節(jié)點(diǎn)數(shù)一致)一般情況下要遠(yuǎn)遠(yuǎn)小于詞語總數(shù) V 的大小,所以 Word2vec 本質(zhì)上是一種降維操作——把詞語從 one-hot encoder 形式的表示降維到 Word2vec 形式的表示。
再具體的內(nèi)容請看原博文,寫的很細(xì)
總結(jié)
以上是生活随笔為你收集整理的知识图谱入门知识(五)【转】秒懂词向量Word2Vec的本质的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python修改mac地址_python
- 下一篇: java 类的高级特性_java程序-类