参考文献:《Finding scientific topics》
这个文章讲了LDA的原理,它谈到几点
1. 测试了variational Bayes,expectation propagation,Gibbs sampling三种imference的方法,gibbs sampling收敛速度最快,并且gibbs可以同时开几个MC链,方便并行化处理
2.TM的评测和参数选择
Perplexity is a standard measure of performance or statistical models of natural language and is defined as exp{ -logP(w_test |/phi) /n_test)
其中w_test表示测试集合中的词,n_test表示测试集合的词语数量,perplexity越小越好
有时候也用P(w|T)直接度量,可用于选择合适的T,在作者的corpus中,测试了100~1000,实验结果是300效果最好
/alpha,/beta的选择对效果有影响,通常说,大的beta会使得整个database的T变小,因为大的beta弱化了P(w|z)后验概率中的稀疏性(这句我没看明白=。=)
LDA的用法
1. 探索数据集合的结构,比如跟某个预设的分类体系比较,可以看出预设类别之间的关系(因为TM结果全部出自词共现)
2.比较每个topic在数据集不同子集内的diff(如把全集按照时间划分,可以看出每个topic的在不同时期流行程度)
3.计算出每个topic的对应词汇,在上一篇BTM的文章里也提到,直观的观察词汇可以有助于我们判断TM效果好坏,以及做一些其他事情
4.Tagging: gibbs sampling方法在每次sampling时给每个word赋值对应类别zi, 对多次samling的zi做统计,可以获得每个文档d中对应某个类别t的关键词。(可以用这些关键词来做索引?)