概率潜在语义分析(Probabilistic Latent Semantic Analysis,PLSA)是一种利用概率生成模型对文本集合进行话题分析的无监督学习方法。模型最大特点是用隐变量表示话题。整个模型表示文本生成话题,话题生成单词。假设每个文本由一个话题分布决定,每个话题由一个单词分布决定。
直观上,语义相近的单词和语义相近的文本会被聚到相同的“软类别”,话题表示的就是这样的“软类别”。图中三个框框各自表示一个话题。
1、生成模型
生成模型中,单词变量与文本变量是观测变量,话题变量是隐变量。也就是说模型生成的是单词-话题-文本三元组三元组的集合,但观测到的是单词-文本二元组的集合。观测数据表示为单词-文本矩阵的形式,的行表示单词,列表示文本,元素表示单词-文本对出现的次数。
从数据生成过程可以推出,文本-单词共现数据出现的概率为:
表示出现的次数,每个单词-文本对生成的概率如下:
最后一个等号基于在话题给定条件下单词与文本条件独立的假设:
2、共现模型
与生成模型一样,文本-单词共现数据出现的概率为:
每个单词-文本对生成的概率如下:
共现模型同样假设在话题给定条件下单词与文本条件独立:
其直观图示如下:
容易验证生成模型和共现模型是等价的。但两者性质不同,生成模型中单词变量和文本变量是不对称的,而共现模型中单词变量和文本变量是对称的。因此两个模型的学习算法形式也有所不同。
3、PLSA参数估计的EM算法
设单词集合为,文本集合为,话题集合为,给定单词-文本共现数据,,,目标是估计PLSA生成模型的参数。使用极大似然估计,对数似然函数为:
接下来通过EM算法迭代学习模型的参数即可,最终得到和。