Latent Dirichlet Allocation(LDA)主题模型理论

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概率模型
Latent <wbr>Dirichlet <wbr>Allocation(LDA)主题模型理论
上图代表了LDA概率模型。
Latent <wbr>Dirichlet <wbr>Allocation(LDA)主题模型理论
计算边缘概率便可得:
Latent <wbr>Dirichlet <wbr>Allocation(LDA)主题模型理论
其中D代表一个语料库,M代表语料库中文档总数。
参数估计
对文本的建模就是要计算α和β两个参数。α和β可以采用极大似然估计。LDA原始paper中选择使用variational inference方法来计算似然函数的下界。这样,分别给定一个α和β的值,就可以计算出一个似然函数的值。极大似然函数的参数估计,就是要找出一对α和β,使得似然函数值最大。这时就用到了EM算法,每次E-STEP输入α和β,计算似然函数,也就是variational inference的过程,M-STEP最大化这个函数,求出α和β。这样不断迭代知道收敛,就求得了最终的α和β值。在variational inference中需要选取Q的分布形式,使得Q容易计算。在LDA原始paper中,作者选取了:
Latent <wbr>Dirichlet <wbr>Allocation(LDA)主题模型理论
其中γ和Φ为q的参数。这里假设了θ和z相互独立,并丢掉w节点,简化的模型如下:
Latent <wbr>Dirichlet <wbr>Allocation(LDA)主题模型理论
则:
Latent <wbr>Dirichlet <wbr>Allocation(LDA)主题模型理论
原始paper的作者在其paper的附录做了推导,计算出γ和Φ迭代公式:
Latent <wbr>Dirichlet <wbr>Allocation(LDA)主题模型理论
其中
Latent <wbr>Dirichlet <wbr>Allocation(LDA)主题模型理论
接下来的工作,就是要进行EM迭代,直到α和β收敛。
E-STEP:对每一篇文档,计算参数γ和Φ
M-STEP:最大化Variational Inference中的下界,求出此时的 α和β


原文地址:http://blog.sina.com.cn/s/blog_8eee7fb60101cztv.html


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值