LDA是给文本建模的一种方法,属于生成模型。生成模型是指该模型可以随机生成可观测的数据,LDA可以随机生成一篇由N个主题组成的文章。通过对文本的建模,可以对文本进行主题分类,判断相似度等。LDA通过将文本映射到主题空间,即认为一篇文章有若干主题随机组成,从而获得文本间的关系。LDA模型有一个前提:bag of word。意思是认为文档就是一个词的集合,忽略任何语法或者出现顺序关系。
生成一篇文档按照如下步骤:1.选择N,N服从Poisson(ξ)分布,这里N代表文档的长度。
2.选择θ,θ服从Dirichlet(α)分布,这里θ是列向量,代表的是个主题发生的概率,α是dirichlet分布的参数
3.对N个单词中的每一个:
a) 选择主题Zn,Zn服从Multinomial(θ)多项分布。Zn代表当前选择的主题
b) 选择Wn,根据p(Wn | Zn; β):在Zn条件下的多项分布。
上式中β是一个K×V的矩阵,βij = P(Wj = 1 | Zi = 1),也就是说β记录了某个主题条件下生成某个单词的概率。
LDA概率模型
上图代表了LDA概率模型。
计算边缘概率便可得:
其中D代表一个语料库,M代表语料库中文档总数。
参数估计对文本的建模就是要计算α和β两个参数。α和β可以采用极大似然估计。LDA原始paper中选择使用variational inference方法来计算似然函数的下界。这样,分别给定一个α和β的值,就可以计算出一个似然函数的值。极大似然函数的参数估计,就是要找出一对α和β,使得似然函数值最大。这时就用到了EM算法,每次E-STEP输入α和β,计算似然函数,也就是variational inference的过程,M-STEP最大化这个函数,求出α和β。这样不断迭代知道收敛,就求得了最终的α和β值。在variational inference中需要选取Q的分布形式,使得Q容易计算。在LDA原始paper中,作者选取了:
其中γ和Φ为q的参数。这里假设了θ和z相互独立,并丢掉w节点,简化的模型如下:
则:
原始paper的作者在其paper的附录做了推导,计算出γ和Φ迭代公式:
其中
接下来的工作,就是要进行EM迭代,直到α和β收敛。
E-STEP:对每一篇文档,计算参数γ和Φ
M-STEP:最大化Variational Inference中的下界,求出此时的 α和β
LDA主题建模结果 lda主题模型结果
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
LDA模型主题个数可以是12吗 lda主题模型结果
LDA作用 举个例子,有两个句子分别如下: “乔布斯离我们而去了。”&nb
LDA模型主题个数可以是12吗 概率分布 主题模型 生成模型 -
mysql取上个月的月份函数
MySQL 日期类型:日期格式、所占存储空间、日期范围 比较。日期类型 存储空间 日期格式  
mysql取上个月的月份函数 yearmonth mysql MySQL unix 日期时间