NLP ——Doc2vec

Cater Chen發表於2020-09-30

NLP ——Doc2vec

  • 即使利用word2vec對詞向量進行平均處理,我們仍然忽略了單詞之間的排列順序對情感分析的影響。即上述的word2vec只是基於詞的維度進行”語義分析”的,而並不具有上下文的”語義分析”能力。在一個句子或者文件的訓練過程中,段落 ID 保持不變,共享著同一個段落向量。

  • 在word2vec的基礎上新增一個段落向量。訓練單詞向量W時,也訓練段落向量D,並且在訓練結束時,它包含了段落的向量化表示。雖然單詞向量表示單詞的概念,但段落向量旨在表示段落的概念。

  • PV-DM
    在這裡插入圖片描述
    訓練過程中新增了paragraph id,即訓練語料中每個句子都有一個唯一的id。paragraph id和普通的word一樣,也是先對映成一個向量,即paragraph vector。paragraph vector與word vector的維數雖一樣,但是來自於兩個不同的向量空間。在之後的計算裡,paragraph vector和word vector累加或者連線起來,作為輸出層softmax的輸入。在一個句子或者文件的訓練過程中,paragraph id保持不變,共享著同一個paragraph vector,相當於每次在預測單詞的概率時,都利用了整個句子的語義。
    在預測階段,給待預測的句子新分配一個paragraph id,詞向量和輸出層softmax的引數保持訓練階段得到的引數不變,重新利用梯度下降訓練待預測的句子。待收斂後,即得到待預測句子的paragraph vector。

  • PV-DBOW
    在這裡插入圖片描述
    區別點為:在sentence2vec裡,輸入都是paragraph vector,輸出是該paragraph中隨機抽樣的詞。

該演算法實際上更快(與word2vec相反)並且消耗更少的記憶體,因為不需要儲存詞向量。

在論文中,作者建議使用兩種演算法的組合,儘管PV-DM模型是優越的,並且通常會自己達到最優的結果。

doc2vec模型的使用方式:對於訓練,它需要一組文件。 為每個單詞生成詞向量W,併為每個文件生成段落向量D. 該模型還訓練softmax隱藏層的權重。 在推理階段,可以呈現新段落,並且固定所有權重以計算段落向量。

相關文章