機器學習 潛在語義分析LSA和PLSA

2021-09-08 13:17:56 字數 1003 閱讀 6128

3. plsa(基於概率的lsa)

在自然語言處理nlp領域中,詞袋模型(bag of words,bow)是經典的模型之一。它考慮所有的詞彙都裝在乙個袋子中,任何一篇文件中的單詞都可以用袋子中的詞彙來描述。如果有10萬個詞彙,那麼每篇文件都可以表示為乙個10萬維的向量。得到文件向量之後,我們通過可以通過描述向量之間的差異來尋找文件之間的關聯。

但是詞袋模型有幾個明顯的缺點:

稀疏性(sparseness):對於大詞袋,尤其是包含了生僻字的詞袋,文件稀疏性不可避免。

一詞多義:一詞多義是一種常見的現象,但是bow模型只統計單詞出現的次數,而忽略了他們之間的區別;

多詞一義:在不同或相同文件中,可能存在多種單詞存在同乙個意思。

為了解決同義詞以及文件稀疏性的問題,在bow模型中引入「主題」的概念,提出了latent semantic analysis (lsa)模型。我們在寫文章時,首先想到的是文章的主題,然後才根據主題選擇合適的單詞來表達自己的觀點。

lsa也稱為lsi(latent semantic index)。在pca降維中,我們利用svd做矩陣分解,將樣本降到低緯度的空間。在lsa中,我們同樣也應用svd來解決相似的問題,將文件從稀疏的n維空間對映到乙個低維(k維)的向量空間,我們稱之為隱含語義空間(latent semantic space).

ps:如對svd演算法有不理解的地方,可以參考【機器學習演算法推導】奇異值分解svd與主成分分析pca

lsa的演算法流程如下:

對於乙個正常人來說,我們是如何構思一篇文章的呢?一般來說我們會先確定我們要寫的主題,比如說我正在寫的這篇文章是機器學習相關的,可能會涉及到計算機,概率論,機器學習方面的術語,假設線性代數佔20%,概率論主題佔30%,機器學習主題佔50%。而在概率論中,可能會聯想到期望,方差,概率等詞彙,線性代數可能會聯想到矩陣,特徵值等詞彙,機器學習方面可能會出現模型,權重,空間等詞彙。

我們可以很自然地認為,一篇文章(doc)是由幾個主題(topic)組成的,並且不同的主題由該主題下頻率較高的一些詞彙(word)進行描述。

我們定義:

潛在語義分析LSA

lsa和傳統向量空間模型 vector space model 一樣使用向量來表示詞 terms 和文件 documents 並通過向量間的關係 如夾角 來判斷詞及文件間的關係 不同的是,lsa 將詞和文件對映到潛在語義空間,從而去除了原始向量空間中的一些 噪音 提高了資訊檢索的精確度。1 一詞多義...

潛在語義分析 LSA

潛在語義分析 latent semantic analysis,lsa 是一種無監督學習方法,主要用於文字的話題分析,其特點是通過矩陣分解發現文字與單詞之間的基於話題的語義關係。潛在語義分析由deerwester 1990年提出,最初應用於文字資訊檢索,所以也被稱為潛在語義索引 latent sem...

統計學習方法讀書筆記(十七) 潛在語義分析

全部筆記的彙總貼 統計學習方法讀書筆記彙總貼 潛在語義分析 clatent semantic analysis,lsa 是一種無監督學習方法,主要用於文字的話題分析,其特點是通過矩陣分解發現文字與單詞之間的基於話題的語義關係。向量空間模型的基本想法是,給定乙個文字,用乙個向量表示該文字的 語義 向量...