我对LDA的一点理解

LDA这个东西真的是。。。。看过的人都不想再看第二遍。。。各种分布,数学不好的人真的是跪了。

一开始看LDA觉得很疑惑,觉得不是LDA不是用来产生主题的吗,一直在讲什么生成模型,我要你生成模型干嘛,你可真像个弱智。然后后面又回顾了一下EM算法,

EM算法样例:

3个硬币,正面概率为π,p,q,先掷A硬币,如果是正面就接着掷B,如果是反面就掷C,最终得到结果1,0,1,1这样,求估计π,p,q参数

1,0,1,1这样的就是观测数据,但是实际上中间是有着隐藏变量:A的值,所以根据这些进行算法求导

LDA:

对于每篇文章,默认为是词袋(单词间顺序毫无关系),那么对于每个单词可以考虑是先从主题集合中选出一个主题,在从主题对应的单词集合中选出一个单词,这样子完成

文档的书写,那么现在文档是已经有了,那么我把这个当作观测数据,也就是逆序推导,已经知道文章,求解文章构建时候的参数,用来做EM算法。

先介绍一下PLSA:


公式就这个,然后用EM算法迭代计算P(z|d)和P(w|z),z表示主题topic,d表示文档doc,w表示word

然后LDA:

LDA跟PLSA的不同之处在于贝叶斯学派的人认为参数虽然是未知,但是不是固定的,是符合某种分布的(Dirichlet分布,分布之上的分布),比如说

对于一篇文章,假设有三个主题,z1,z2,z3,之前的PLSA就认为概率为0.5,0.3,0.2这样子固定的,但是LDA认为这样子是符合某种分布的,但是不是固定的,

比如说0.2的概率是(0.5,0.2,0.3),0.3的概率(0.1,0.1,0.8)这样子,所以LDA相比PLSA加了一个先验分布

LDA里面有两个参数,α,β,第一个是确定主题分布的概率,第二个是确定单词分布的概率


α和β是自己取得,也可以根据数据集进行EM算法来训练得到。

然后根据这个公式,有两种方法:

①变分EM算法,是作者在原论文提出来的,然后可以得到P(W|Z),P(Z|D)

②Gibbs sampling ,采样,然后得到P(W|Z),P(Z|D)。

注意下面是LDA最终得到的结果:



不是能够直接得到主题是什么,只是说可以得到潜在的主题分类!!!!!

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页