主題建模(理論理解)


在優秀的詞嵌入方法出現之前,潛在語義分析模型(LSA)和文檔主題生成模型(LDA)都是解決自然語言問題的好方法。LSA模型和LDA模型有相同矩陣形式的詞袋表示輸入。不過,LSA模型專注於降維,而LDA模型專注於解決主題建模問題。

 

在自然語言理解任務中,我們可以通過一系列的層次來提取含義——從單詞、句子、段落,再到文檔。在文檔層面,理解文本最有效的方式之一就是分析其主題。在文檔集合中學習、識別和提取這些主題的過程被稱為主題建模。

 

概述

所有主題模型都基於相同的基本假設:

  • 每個文檔包含多個主題;
  • 每個主題包含多個單詞。

換句話說,主題模型圍繞着以下觀點構建:實際上,文檔的語義由一些我們所忽視的隱變量或「潛」變量管理。因此,主題建模的目標就是揭示這些潛在變量——也就是主題,正是它們塑造了我們文檔和語料庫的含義。這篇博文將繼續深入不同種類的主題模型,試圖建立起讀者對不同主題模型如何揭示這些潛在主題的認知。

 

LSA:

  首先,我們用m個文檔和n個詞作為模型的輸入。這樣我們就能構建一個以文檔為行、以詞為列的m*n矩陣。我們可以使用計數或TF-IDF得分。然而,用TF-IDF得分比計數更好,因為大部分情況下高頻並不意味着更好的分類.

  該模型的挑戰是矩陣很稀疏(或維數很高),同時有噪聲(包括許多高頻詞)。因此,使用分解 SVD 來降維。

  SVD,即奇異值分解,是線性代數中的一種技術。該技術將任意矩陣 M 分解為三個獨立矩陣的乘積:A=U*S*V,其中 S 是矩陣 M 奇異值的對角矩陣。很大程度上,截斷 SVD 的降維方式是:選擇奇異值中最大的 t 個數,且只保留矩陣 U 和 V 的前 t 列。在這種情況下,t 是一個超參數,我們可以根據想要查找的主題數量進行選擇和調整。

  

 

 

   SVD 的思想在於找到最有價值的信息並使用低維的t來表達這一信息。 

 

LDA:

  LDA模型,屬於無監督學習,而主題模型是其個中典型。它建立的假設在於每份文檔都使用多個主題混合生成,同樣每個主題也是由多個單詞混合生成。

 

  我不打算深入講解狄利克雷分布,不過,我們可以對其做一個簡短的概述:即,將狄利克雷視為「分布的分布」。本質上,它回答了這樣一個問題:「給定某種分布,我看到的實際概率分布可能是什么樣子?」

  

  考慮比較主題混合概率分布的相關例子。假設我們正在查看的語料庫有着來自 3 個完全不同主題領域的文檔。如果我們想對其進行建模,我們想要的分布類型將有着這樣的特征:它在其中一個主題上有着極高的權重,而在其他的主題上權重不大。如果我們有 3 個主題,那么我們看到的一些具體概率分布可能會是:

 

  • 混合 X:90% 主題 A,5% 主題 B,5% 主題 C
  • 混合 Y:5% 主題 A,90% 主題 B,5% 主題 C
  • 混合 Z:5% 主題 A,5% 主題 B,90% 主題 C

  

  如果從這個狄利克雷分布中繪制一個隨機概率分布,並對單個主題上的較大權重進行參數化,我們可能會得到一個與混合 X、Y 或 Z 非常相似的分布。我們不太可能會抽樣得到這樣一個分布:33%的主題 A,33%的主題 B 和 33%的主題 C。

  

  

 

 

  根據狄利克雷分布 Dir(α),我們繪制一個隨機樣本來表示特定文檔的主題分布或主題混合。這個主題分布記為θ。我們可以基於分布從θ選擇一個特定的主題 Z。

 

  接下來,從另一個狄利克雷分布 Dir(𝛽),我們選擇一個隨機樣本來表示主題 Z 的單詞分布。這個單詞分布記為φ。從φ中,我們選擇單詞 w。

 

  然而,"a","with","can"這樣的單詞對主題建模問題沒有幫助。這樣的單詞存在於各個文檔,並且在類別之間概率大致相同。因此,想要得到更好的效果,消除停用詞是關鍵一步。

  

  

參考:https://www.sohu.com/a/234584362_129720

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM