【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

之前的软分配的问题:

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

一个图像只可能是一种类型,但是其实有时候一个图像是多个类型,比如上述中间的,既是world news也是science。

这时我们提出可以进行混合检测的LDA。

 

1、LDA:一个文档是从一个主题分布中找N个主题,每个主题中再找字

LDA用的是词袋,也就是每个词出现的次数,跟词在文档中的顺序没有关系。

 

LDA(Latent Dirichlet Allocation)是一种文档主题生成模型,也称为一个三层贝叶斯概率模型,包含词、主题和文档三层结构。所谓生成模型,就是说,我们认为一篇文章的每个词都是通过“以一定概率选择了某个主题,并从这个主题中以一定概率选择某个词语”这样一个过程得到。文档到主题服从多项式分布,主题到词服从多项式分布。

LDA是一种非监督机器学习技术,可以用来识别大规模文档集(document collection)或语料库(corpus)中潜藏的主题信息。它采用了词袋(bag of words)的方法,这种方法将每一篇文档视为一个词频向量,从而将文本信息转化为了易于建模的数字信息。但是词袋方法没有考虑词与词之间的顺序,这简化了问题的复杂性,同时也为模型的改进提供了契机。每一篇文档代表了一些主题所构成的一个概率分布,而每一个主题又代表了很多单词所构成的一个概率分布。

 

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

 

LDA的输入输出:

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

 

2、LDA模型解决方法:Gibbs Sampling

(1)随机分配文档中每个词的主题

迭代的随机硬指派

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

 

(2)基于Ziw随机分配文档的主题分布

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

 

(3)对所有文档重复(1)(2)

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

 

(4)随机分配主题中词的分布

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

 

(5)重复步骤(1)-(4),直到达到最大迭代次数

 

3、Collapsed Gibbs采样LDA举例:

(1)对于doci,有5个单词。分别指定topic为3,2,1,3,1

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

对其他文档也是:

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

(2)当前文档topic词分布、所有文档topic的词分布

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

 

(3)重新指定doci中单词dynamic所属topic

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

 

(4)计算dynamic分配到其他topic的概率

doci中dynamic原来对应的topic2所占比例

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

 

所有文档融合后不同主题topic中dynamic所占的比例:

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

 

可以看出topic1概率最大:

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

 

(5)更新topic中词的个数

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

如此更新后,增加了dynamic在topic1中的比例;也增加了doci中topic1的比例。

【机器学习课程-华盛顿大学】:4 聚类和检索 4.5 LDA隐Dirichlet模型

 

(6)对所有单词,所有文档重复上述步骤