LDA是文本集合的生成概率模型。假设每个文本由话题的一个多项分布表示,每个话题由单词的一个多项分布表示,特别假设文本的话题分布的先验分布是狄利克雷分布,话题的单词分布的先验分布也是狄利克雷分布。LDA能更好解决过拟合现象。
LDA模型是含有隐变量的概率图模型。
①多项分布
多项分布是一种多元离散随机变量的概率分布。
②狄利克雷分布
狄利克雷分布是一种多元连续随机变量的概率分布,是贝塔分布的扩展。在贝叶斯学习中,狄利克雷分布常作为多项分布的先验分布使用。
③二项分布和贝塔分布
二项分布是多项分布的特殊情况,贝塔分布是狄利克雷分布的特殊情况。
共轭先验
狄利克雷分布属于指数分布族
狄利克雷分布是多项分布的共轭先验。
贝叶斯学习中尝试用共轭分布。如果后验分布与先验分布属于同类,则先验分布与后验分布称为共轭分布。
LDA是文本集合的生成概率模型。模型假设话题由单词的多项分布表示,文本由话题的多项分布表示,单词分布和话题分布的先验分布都是狄利克雷分布。
LDA模型表示文本集合的自动生成过程,首先,基于单词分布的先验分布生成多个单词分布,及决定多个话题内容,之后,基于话题分布的先验分布生成多个话题分布,即决定多个文本内容;基于话题分布生成话题序列,基于单词分布生成单词。文本的单词序列是观测变量,文本的话题序列是隐变量,文本的话题分布和话题的单词分布也是隐变量。
利用LDA进行话题分析,就是对给定的文本集合,学习到每个文本的话题分布,以及每个话题的单词分布。
相同点是两者都假设话题是单词的多项分布,文本时话题的多项分布。
不同点是LDA使用狄利克雷分布作为先验分布,而PLSA不适用先验分布(或者假设先验分布是均匀分布)两者对文本生成过程有不同假设;学习过程LDA基于贝叶斯学习,PLSA基于极大似然估计。LDA优点是,使用先验概率分布,可以防止学习过程中产生的过拟合。
给定单词集合W,文本集合D,话题集合Z,狄利克雷分布的超参数 α 和 β \alpha 和\beta α和β
(1)生成话题的单词分布
随机生成K个话题的单词分布。过程如下,按照狄利克雷分布 D i r ( β ) Dir(\beta) Dir(β)随机生成一个参数向量 ψ k , ψ k − D i r ( β ) {\psi}_k,{\psi}_k-Dir(\beta) ψk,ψk−Dir(β)作为话题zk的单词分布p(w|zk)
(2)生成文本的话题分布
随机生成M个文本的话题分布。过程如下,按照迪利克雷分布 D i r ( α ) Dir(\alpha) Dir(α)随机生成一个参数向量 θ m , θ m − D i r ( α ) {\theta}_m,{\theta}_m-Dir(\alpha) θm,θm−Dir(α),作为文本wm的话题分布p(z|wm)
(3)生成文本的单词序列
随机生成M个文本的Nm个单词。文本wm的单词wmn生成过程如下
(3-1)首先按照多项分布 M u l t ( θ m ) Mult({\theta}_m) Mult(θm)随机生成一个话题 z m n , z m n − M u l t ( θ m ) z_{mn},z_{mn}-Mult({\theta}_m) zmn,zmn−Mult(θm)
(3-2)然后按照多项分布 M u l t ( ψ m n ) Mult({\psi}_{mn}) Mult(ψmn)随机生成一个单词 w m n , w m n − M u l t ( ψ z m n ) w_{mn},w_{mn}-Mult({\psi}_{z_{mn}}) wmn,wmn−Mult(ψzmn)
p ( w , z , θ , ψ ∣ α , β ) = ∏ k = 1 K p ( ψ k ∣ β ) ∏ m = 1 M p ( θ m ∣ α ) ∏ n = 1 N m p ( z m n ∣ θ m ) p ( w m n ∣ z m n , ψ ) p(w,z,\theta,\psi|\alpha,\beta)=\prod_{k=1}^K{p({\psi}_k|\beta})\prod_{m=1}^Mp({\theta}_m|\alpha)\prod_{n=1}^{N_m}p(z_{mn}|{\theta}_m)p(w_{mn}|z_{mn},\psi) p(w,z,θ,ψ∣α,β)=k=1∏Kp(ψk∣β)m=1∏Mp(θm∣α)n=1∏Nmp(zmn∣θm)p(wmn∣zmn,ψ)
优点是实现简单,缺点是迭代次数较多。
即要对联合概率分布 p ( w , z , θ , ψ ∣ α , β ) p(w,z,\theta,\psi|\alpha,\beta) p(w,z,θ,ψ∣α,β)进行估计,其中第一项为观测变量,其他都为隐变量。
为了估计多元随机变量x的联合分布p(x),吉布斯抽样法选择x的一个分量,固定其他分量,按照其条件概率分布进行随机抽样,依次循环对每一个分量执行这个操作,得到联合分布p(x)的一个随机样本,重复这个过程,在燃烧期之后,得到联合概率分布p(x)的样本集合。
LDA模型的学习通常采用收缩的吉布斯抽样方法。基本思想是,通过对隐变量 θ 和 ψ \theta和\psi θ和ψ积分,得到边缘概率分布 p ( w , z ∣ α , β ) p(w,z|\alpha,\beta) p(w,z∣α,β),其中w是可观测变量,z是不可观测变量;对后验概率分布 p ( z ∣ w , α , β ) p(z|w,\alpha,\beta) p(z∣w,α,β)进行吉布斯抽样,得到分布p的样本集合;再利用这个集合对参数 θ 和 ψ \theta和\psi θ和ψ进行估计,最终得到DA模型的所有估计参数。
MCMC通过随机抽样的方法近似的计算模型的后验概率,变分推理通过解析的方法计算模型的后验概率的近似值。
输入:给定文本集合D
输出:变分参数 γ , η \gamma,\eta γ,η,模型参数 α , β \alpha,\beta α,β
交替迭代E步和M步,直到收敛。
(1)E步
固定模型参数 α , β \alpha,\beta α,β,通过关于变分参数 γ , η \gamma,\eta γ,η的证据下界的最大化,估计变分参数 γ , η \gamma,\eta γ,η
(2)M步
固定变分参数 γ , η \gamma,\eta γ,η,通过关于模型参数 α , β \alpha,\beta α,β的证据下界最大化,估计模型参数 α , β \alpha,\beta α,β
根据变分参数,可以估计模型参数。