关于LDA主题模型的一些数学知识笔记

前言

要理解LDA,需要先了解以下知识:

  • 一个函数:gamma函数
  • 四个分布:二项分布、多项分布、beta分布、Dirichlet分布
  • 一个概念和一个理念:共轭先验和贝叶斯框架
  • 两个模型:pLSA、LDA
  • 一个采样:Gibbs采样
    LDA模型生成一篇文档的方法如下:
  • 从狄利克雷分布 α \alpha α 中取样生成文档 i 的主题分布 θ ( i ) \theta(i) θ(i)
  • 从主题的多项式分布 θ ( i ) \theta(i) θ(i)中取样生成文档i第 j 个词的主题 z i , j z_{i,j} zi,j
  • 从狄利克雷分布 β \beta β中取样生成主题 z i , j z_{i,j} zi,j对应的词语分布 Φ z ( i , j ) \varPhi_{z(i,j)} Φz(i,j)
  • 从词语的多项式分布 Φ z ( i , j ) \varPhi_{z(i,j)} Φz(i,j)中采样最终生成词语 w i , j w_{i,j} wi,j
    -在这里插入图片描述

二项分布

是重复n次的伯努利试验(一个有两种结果的简单试验,概率分别为p,q)得到的一个离散型的随机概率分布,其各中结果的概率取值对应以下二项式的展开项:

( p + q ) n = p n + . . . + ( i n ) q i p n − i + . . . . + q n (p+q)^{n}=p^{n}+...+\dbinom{i}{n}q^{i}p^{n-i}+....+q^{n} (p+q)n=pn+...+(ni)qipni+....+qn
其中p+q=1;且上式第 i 项表示概率p对应的结果出现i次,概率q对应的结果出现n-i次

多项分布

是二项分布在多维上的扩展,事件的结果不在是两种,可能有k中,每种结果出现的概率为 p 1 , p 2 , . . . , p k p_1,p_2,...,p_k p1,p2,...,pk ∑ 1 ≤ i ≤ k p i = 1 \sum_{1\le i\le k} p_{i}=1 1ikpi=1,先重复该事件n次得到 一个离散型的随机概率分布,其各种结果的概率值对应以下多项式的展开项:

( p 1 + p 2 + . . . + p k ) n = [ ( p 1 + p 2 + . . + p k − 1 ) + p k ] n = ( p 1 + p 2 + . . + p k − 1 ) n + . . . + ( i n ) p k i ( p 1 + p 2 + . . + p k − 1 ) n − i + . . . + p k n (p_1+p_2+...+p_k)^n=[(p_1+p_2+..+p_{k-1})+p_k]^n=(p_1+p_2+..+p_{k-1})^n+...+\dbinom{i}{n}p_k^{i}(p_1+p_2+..+p_{k-1})^{n-i}+...+p_k^n (p1+p2+...+pk)n=[(p1+p2+..+pk1)+pk]n=(p1+p2+..+pk1)n+...+(ni)pki(p1+p2+..+pk1)ni+...+pkn

按前一步方法以二项式的形式继续展开,每项的连乘积约分后得到每种结果的概率,以下是 p 1 , p 2 , . . . p k 概 率 对 应 结 果 出 现 次 数 为 m 1 , m 2 , . . . m k p_1,p_2,...p_k概率对应结果出现次数为m_1,m_2,...m_k p1,p2,...pkm1,m2,...mk( ∑ 1 ≤ i ≤ k m i = n \sum_{1\le i\le k} m_{i}=n 1ikmi=n)的概率:

P ( m 1 , m 2 , . . . m k ) = n ! m 1 ! m 2 ! . . m k ! p 1 m 1 p 2 m 2 . . . p k m k P(m_1,m_2,...m_k)=\frac{n!}{m_1!m_2!..m_k!}p_1^{m_1}p_2^{m_2}...p_k^{m_k} P(m1,m2,...mk)=m1!m2!..mk!n!p1m1p2m2...pkmk

先验分布

简言之,就是关于某未知参数θ,通过先验信息(在实验之前对所要估计的未知参数θ所了解的信息,通常称为先验信息.)得到的一个关于θ的分布形式用P(θ)来表示,此分布p(θ)称为未知参数θ的先验分布.(即在实验前通过已知信息知道的分布)

后验分布

似然估计

似然估计用来描述在已知随机变量输出结果时,估计未知参数的可能取值;似然函数是以函数的形式表示估计未知参数可能的取值;例如,对于“一枚硬币上抛十次”这种事件,我们可以问这枚硬币正反面对称的“似然”程度是多少。给定输出x时,关于未知参数θ的似然函数L(θ|x)(在数值上)等于给定参数θ后变量X的概率:

L(θ|x)=P(X=x|θ)

后验分布

在抽样之前,人们对未知参数θ有个了解,即先验分布P(θ);抽样后得到样本相关信息可用来估计未知参数θ的可能取值,即似然函数L(θ|X=x);由于样本中包含未知参数θ的信息,可以修正抽样之前的关于未知参数θ的先验分布P(θ) 得到后验分布P(θ|X),后验分布综合运用了先验分布P(θ)和样本信息P(X|θ)。

共轭分布

在贝叶斯概率理论中,若后验概率P(θ|X)和先验概率P(θ)属于同类分布(形式相同,参数不同),则先验分布和后验分布被叫做共轭分布,同时,先验分布叫做似然函数的共轭先验分布。
共轭分布总是针对分布中的某个参数θ而言

Beta分布

参考这篇文章
Beta分布是二项分布的共轭先验分布,具体表示一组定义在(0,1)区间的连续概率分布,其概率密度函数如下( α 和 β 为 参 数 \alpha和\beta为参数 αβ):

f ( x , α , β ) = x α − 1 ( 1 − x ) β − 1 ∫ 0 1 u α − 1 ( 1 − u ) β − 1 d u = Γ ( α + β ) Γ ( α ) Γ ( β ) x α − 1 ( 1 − x ) β − 1 = 1 B ( α , β ) x α − 1 ( 1 − x ) β − 1 f(x,\alpha,\beta)=\frac{x^{\alpha-1}(1-x)^{\beta-1}}{\int_{0}^{1}u^{\alpha-1}(1-u)^{\beta-1}du}=\frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha)\Gamma(\beta)}x^{\alpha-1}(1-x)^{\beta-1}=\frac1{B(\alpha,\beta)}x^{\alpha-1}(1-x)^{\beta-1} f(x,α,β)=01uα1(1u)β1duxα1(1x)β1=Γ(α)Γ(β)Γ(α+β)xα1(1x)β1=B(α,β)1xα1(1x)β1

其中 Γ ( x ) 为 G a m m a 函 数 ( 表 示 阶 乘 数 列 在 实 数 集 上 的 扩 展 ) \Gamma(x)为Gamma函数(表示阶乘数列在实数集上的扩展) Γ(x)Gamma

Γ ( x ) = ∫ 0 + ∞ t x − 1 e − t d t \Gamma(x)=\int_{0}^{+\infty}t^{x-1}e^{-t}dt Γ(x)=0+tx1etdt

Dirichlet分布

是多元的Beta分布,是Beta分布在高维上的扩展,我的理解是:Beta分布和Dirichlet分布的关系类似于二项分布和多项分布的关系;那么,Dirichlet分布就是多项分布的共轭先验分布。
理解案例:Dirichlet分布可以看做是某个概率分布之上的概率分布。如何理解这句话,我们可以先举个例子:假设我们有一个骰子,其有六面,分别为{1,2,3,4,5,6}。现在我们做了10000次投掷的实验,得到的实验结果是六面分别出现了{2000,2000,2000,2000,1000,1000}次,如果用每一面出现的次数与试验总数的比值估计这个面出现的概率,则我们得到六面出现的概率,分别为{0.2,0.2,0.2,0.2,0.1,0.1}。现在,我们还不满足,我们想要做10000次试验,每次试验中我们都投掷骰子10000次。我们想知道,骰子六面出现概率为{0.2,0.2,0.2,0.2,0.1,0.1}的概率是多少(说不定下次试验统计得到的概率为{0.1, 0.1, 0.2, 0.2, 0.2, 0.2}这样了)。这样我们就在思考骰子六面出现概率分布这样的分布之上的分布。而这样一个分布就是Dirichlet分布。[案例参考自deropty]
Dirichlet分布的概率密度函数如下( α i 为 参 数 \alpha_i为参数 αi):

f ( x 1 , x 2 , . . . , x k ; α 1 , α 2 , . . . , α k ) = 1 B ( α ) ∏ i = 1 k x i α i − 1 ( 其 中 α = ( α 1 , α 2 , . . , α k ) ) f(x_1,x_2,...,x_k;\alpha_1,\alpha_2,...,\alpha_k)=\frac{1}{B(\alpha)}\prod_{{i=1}}^{{k}}x_i^{\alpha_i-1} (其中\alpha=(\alpha_1,\alpha_2,..,\alpha_k)) f(x1,x2,...,xk;α1,α2,...,αk)=B(α)1i=1kxiαi1(α=(α1,α2,..,αk))

其中

B ( α ) = ∏ i = 1 k Γ ( α i ) Γ ( ∑ i = 1 k α i ) , ∑ i = 1 k x i = 1 B(\alpha)=\frac{\prod_{i=1}^k\Gamma(\alpha^i)}{\Gamma(\sum_{{i=1}}^{{k}}\alpha^i)},\sum_{i=1}^kx_i=1 B(α)=Γ(i=1kαi)i=1kΓ(αi)i=1kxi=1

按照贝叶斯推理的逻辑:

1. 我 们 要 猜 测 参 数 p → = ( p 1 , p 2 , p 3 ) , 其 先 验 分 布 为 D i r ( p → ∣ k → ) 1. 我们要猜测参数\overrightarrow{p}=(p_1,p_2,p_3),其先验分布为Dir(\overrightarrow{p}|\overrightarrow{k}) 1.p =(p1,p2,p3)Dir(p k )
2. 数 据 Y i 落 到 三 个 区 间 [ 0 , p 1 ) , [ p 1 , p 2 ] , ( p 3 , 1 ] 的 个 数 分 别 为 m 1 , m 2 , m 3 , 所 以 m → = ( m 1 , m 2 , m 3 ) 服 从 多 项 分 布 M u l t ( m → ∣ p → ) 2. 数据Y_i落到三个区间[0,p_1),[p_1,p_2],(p_3,1] 的个数分别为m_1,m_2,m_3,所以\overrightarrow{m}=(m_1,m_2,m_3)服从多项分布Mult(\overrightarrow{m}|\overrightarrow{p}) 2.Yi[0,p1)[p1,p2](p3,1]m1,m2,m3m =(m1,m2,m3)Mult(m p );
3. 在 给 定 了 来 自 数 据 提 供 的 知 识 m → 后 , p → 的 后 验 分 布 变 为 D i r ( p → ∣ k → + m → ) 3. 在给定了来自数据提供的知识\overrightarrow{m}后,\overrightarrow{p}的后验分布变为Dir(\overrightarrow{p}|\overrightarrow{k}+\overrightarrow{m}) 3.m p Dir(p k +m )

上述贝叶斯分析过程的直观表述为:

D i r ( p → ∣ k → ) + M u l i t C o u n t ( m → ) = D i r ( p → ∣ k → + m → ) Dir(\overrightarrow{p}|\overrightarrow{k})+MulitCount(\overrightarrow{m})=Dir(\overrightarrow{p}|\overrightarrow{k}+\overrightarrow{m}) Dir(p k )+MulitCount(m )=Dir(p k +m )

其中:

D i r ( p → ∣ α → ) = Γ ( ∑ k = 1 K α k ) ∏ k = 1 K Γ ( α k ) ∏ k = 1 K p k α k − 1 Dir(\overrightarrow{p}|\overrightarrow{\alpha})=\frac{\Gamma(\sum_{k=1}^K\alpha_k)}{\prod_{k=1}^K \Gamma(\alpha_k)}\prod_{k=1}^Kp_k^{\alpha_k-1} Dir(p α )=k=1KΓ(αk)Γ(k=1Kαk)k=1Kpkαk1

M u l i t C o u n t ( n → ∣ p → , N ) = ( N n → ) ∏ k = 1 K p k n k MulitCount(\overrightarrow{n}|\overrightarrow{p},N)=\dbinom{N}{\overrightarrow{n}}\prod_{k=1}^Kp_k^{n_k} MulitCount(n p ,N)=(n N)k=1Kpknk

其思考问题的固定模型:

先 验 概 率 π ( θ ) + 样 本 信 息 χ    ⟹    后 验 分 布 π ( θ ∣ x ) 先验概率\pi(\theta) +样本信息\chi\implies后验分布\pi(\theta|x) π(θ)+χπ(θx)

上 述 思 考 模 式 意 味 着 , 新 观 察 到 的 样 本 信 息 将 修 正 人 们 以 前 对 事 物 的 认 知 。 换 言 之 , 在 得 到 新 的 样 本 信 息 之 前 , 人 们 对 的 认 知 是 先 验 分 布 π ( θ ) , 在 得 到 新 的 样 本 信 息 后 , 人 们 对 的 认 知 为 π ( θ ∣ x ) 。 上述思考模式意味着,新观察到的样本信息将修正人们以前对事物的认知。换言之,在得到新的样本信息之前,人们对的认知是先验分布\pi(\theta),在得到新的样本信息后,人们对的认知为\pi(\theta|x)。 π(θ)π(θx)

  • 频率派系: 频率派把需要推断的参数θ看做是固定的未知常数,即概率虽然是未知的,但最起码是确定的一个值,同时,样本X 是随机的,所以频率派重点研究样本空间,大部分的概率计算都是针对样本X 的分布;
  • 贝叶斯派系: 贝叶斯派的观点则截然相反,他们认为待估计的参数 θ \theta θ是随机变量,且服从一定的分布,而样本X 是固定的,由于样本是固定的,所以他们重点研究的是参数的分布。
    具体的LDA模型解析可以参考【参考资料1】

参考资料

  1. LDA的数学知识+模型解析:https://blog.csdn.net/v_july_v/article/details/41209515
  2. Beta分布解析:https://blog.csdn.net/a358463121/article/details/52562940

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值