概率潛在語義分析(probabilistic latent semantic analysis,PLSA)是一種利用概率生成模型對文本集合進行話題分析的無監督學習方法。
跟潛在語義分析相似,而其特點是基於概率模型,用隱變量表示話題;整個模型表示文本生成話題,話題生成單詞,從而得到單詞-文本共現數據的過程。
概率潛在語義分析模型有生成模型,以及等價的共現模型。
假定n個文本的集合,文本中所有單詞的集合
;設定K個話題,他們為集合
,多項概率分布P(d)表示生成文本d的概率,多項條件概率分布P(z|d)表示文本d生成話題z的概率,多項條件概率分布P(w|z)表示話題z生成單詞w 的概率。
生成模型
生成模式通過以下步驟生成文本-單詞共現數據:
(1)依據概率分布P(d),從文本集合中隨機選取一個文本d,共生成N個文本;針對每個文本,執行下一步操作,
(2)在文本d給定條件下,依據條件概率分布P(z|d),從話題集合中隨機選取一個話題z,共生成L個話題,
(3)在話題z給定條件下,依據概率分布P(w|z),從單詞集合中隨機選取一個單詞w。
生成模型屬於概率有向圖模型,可以用以下的圖表示,
圖1-1 概率潛在語義分析的生成模型
從數據生成過程可推出文本-單詞共現數據T的生成概率為所有單詞-文本對(w,d)的生成概率乘積,
而每個單詞-文本對(w,d)的生成概率由以下公式決定:
共現模型
同樣,文本-單詞共現數據T的生成概率為所有單詞-文本對(w,d)的生成概率乘積:
但每個單詞-文本對(w,d)的生成概率由以下公式決定:
共現模型假設在話題z給定的條件下,單詞w與文本d是條件獨立的,即
圖1-2 概率潛在語義模型的共現模型
雖然生成模型與共現模型在概率公式的意義上是等價的,但擁有不同的性質。生成模型刻畫文本-單詞共現數據生成的過程,且單詞變量w與文本變量d是不對稱的,而共現模型描述文本-單詞共現數據的擁有過模式,單詞變量w與文本變量d是對稱的。
生成模型的EM算法
概率潛在語義分析模型是含有隱變量的模型,其學習通常使用EM算法。
目標是估計概率潛在語義分析生成模型的參數和
,使用極大似然估計,在其對數似然函數是:
其中P(d)與需要估計的參數無關,將其舍去也不影響結果,那么代求問題也將變為舍去無關項后對數似然函數的極大問題,
然而,z 是隱變量,無法觀測到,則這個公式的最大化,需要再做一個變化,同時乘上和除以P(z|d,w)
那么上式log的右邊就變成了關於z的函數的期望,式子成為
再根據Jensen不等式,有
這樣再已知P(z|d,w)的條件下,可以求到的下界,其中
再將與要估計的參數的無關項舍去,問題就變成了
該函數也即為EM算法E步驟中的Q函數,完全數據的對數似然函數對不完全數據的條件分布的期望,設
在Q函數中P(z|d,w)可以根據貝葉斯公式計算
到此,完成了EM算法的E步,接下來是M步,最大化,求出新的參數
和
,而這參數變量滿足約束條件
和
,引入拉格朗日乘子,定義拉格朗日函數
對其分別對求偏導數,並令其為0,得到方程組
解方程組得到M步的參數估計公式:
M步求最大化,即最大化Q函數以估計我們所需的參數。然后根據新的參數求p(z|d,w),再寫出新的下界函數,再最大化…反復迭代直至收斂。這就是將EM算法應用到PLSA的求解中。