Word2Vec和LDA的區別與聯繫
Word2vec是目前最常用的詞嵌入模型之一。是一種淺層的神經網路模型,他有2種網路結構,分別是CBOW(continues bag of words)和 skip-gram。Word2vec 其實是對」上下文-單詞「矩陣進行學習,其中上下文由周圍的幾個單片語成,由此得到的詞向量表示 更多的融入了上下文共現的特徵。 也就是說,如果2個詞所對應的Word2vec向量相似度較高,那麼他們很可能經常在相同的上下文中出現。
LDA(Latent Dirichlet Allocation 隱狄利克雷模型)是主題模型(Topic Models)的一種計算方法。LDA是利用文檔中單詞的共現關係來對單詞按主題聚類,也可以理解為『文檔-單詞「矩陣進行分解,得到」文檔-主題「和」主題-單詞「兩個概率分布。
Word2Vec和LDA的區別:
1、Word2vec是詞聚類,屬於詞嵌入模型,LDA是主題詞聚類,屬於主題模型。主題模型和詞嵌入模型最大的不同在於其模型本身,主題模型是一種基於概率圖模型的生成式模型,其似然函數可以寫成若干個條件概率連乘的形式,其中包含需要推測隱含變數(即主題);詞嵌入模型一般表達為神經網路的形式,似然函數定義在網路輸出之上。需要通過學習網路的權重以得到單詞的稠密向量表示。
2、詞向量所體現的是語義(semantic)和語法(syntactic)這些 low-level的資訊。而LDA的主題詞表現的是更 high-level的文章主題(topic)這一層的資訊。比如:
1)計算詞的相似度。同樣在電子產品這個主題下,「蘋果」是更接近於「三星」還是「小米」?
2)詞的類比關係:vector(小米)- vector(蘋果)+ vector(喬布斯)近似於 vector(雷軍)。
3)計算文章的相似度。這個LDA也能做但是效果不好。而用詞向量,即使在文章topic接近的情況下,計算出的相似度也能體現相同、相似、相關的區別。 反過來說,想用詞向量的聚類去得到topic這一級別的資訊也是很難的。很有可能,「蘋果」和「小米」被聚到了一類,而「喬布斯」和「雷軍」則聚到另一類。
Word2Vec和LDA的聯繫:
1、在方法模型上,他們兩者是不同的,但是產生的結果從語義上來說,都是相當於近義詞的聚類,只不過LDA是基於隱含主題的,WORD2VEC是基於詞的上下文的,或者說LDA關注doc和word的共現,而word2vec真正關注的是word和context的共現。
2、主題模型通過一定的結構調整可以基於」上下文-單詞「矩陣進行主題推理。同樣的,詞嵌入方法也可以根據」文檔-單詞「矩陣學習出詞的隱含向量表示。
3、加入LDA的結果作為word embeddings的輸入,可以增強文章分類效果。
參考:
//blog.csdn.net/qq_29678299/article/details/88727380
//www.voidcn.com/article/p-sczvqzls-tq.html
//www.zhihu.com/question/40309730