1.数学知识背景:
(1)
Γ
\Gamma
Γ函数:
Γ
\Gamma
Γ函数是阶乘在实数集上的推广
Γ
(
x
)
=
∫
0
+
∞
t
x
−
1
e
−
t
d
t
=
(
x
−
1
)
!
\Gamma(x)=\int_{0}^{+\infty} t^{x-1} e^{-t} d t=(x-1) !
Γ(x)=∫0+∞tx−1e−tdt=(x−1)!
Γ
(
x
)
=
(
x
−
1
)
⋅
Γ
(
x
−
1
)
⇒
Γ
(
x
)
Γ
(
x
−
1
)
=
x
−
1
\Gamma(x)=(x-1) \cdot \Gamma(x-1) \Rightarrow \frac{\Gamma(x)}{\Gamma(x-1)}=x-1
Γ(x)=(x−1)⋅Γ(x−1)⇒Γ(x−1)Γ(x)=x−1
(2)Beta分布:
Beta分布概率密度函数:
f
(
x
)
=
{
1
B
(
α
,
β
)
x
α
−
1
(
1
−
x
)
β
−
1
,
x
∈
[
0
,
1
]
0
,
其
他
f(x)=\left\{\begin{array}{ll} \frac{1}{B(\alpha, \beta)} x^{\alpha-1}(1-x)^{\beta-1}, & x \in[0,1] \\ 0, & 其他 \end{array}\right.
f(x)={B(α,β)1xα−1(1−x)β−1,0,x∈[0,1]其他
其中系数B为:
B
(
α
,
β
)
=
∫
0
1
x
α
−
1
(
1
−
x
)
β
−
1
d
x
=
Γ
(
α
)
Γ
(
β
)
Γ
(
α
+
β
)
B(\alpha, \beta)=\int_{0}^{1} x^{\alpha-1}(1-x)^{\beta-1} d x=\frac{\Gamma(\alpha) \Gamma(\beta)}{\Gamma(\alpha+\beta)}
B(α,β)=∫01xα−1(1−x)β−1dx=Γ(α+β)Γ(α)Γ(β)
Beta分布的期望:
E
(
X
)
=
∫
0
1
x
⋅
1
B
(
α
,
β
)
x
α
−
1
(
1
−
x
)
β
−
1
d
x
=
1
B
(
α
,
β
)
∫
0
1
x
(
α
+
1
)
−
1
(
1
−
x
)
β
−
1
d
x
=
B
(
α
+
1
,
β
)
B
(
α
,
β
)
=
Γ
(
α
+
β
)
Γ
(
α
)
Γ
(
β
)
/
Γ
(
α
+
β
+
1
)
Γ
(
α
+
1
)
Γ
(
β
)
=
α
α
+
β
\begin{array}{l} E(X)=\int_{0}^{1} x \cdot \frac{1}{B(\alpha, \beta)} x^{\alpha-1}(1-x)^{\beta-1} d x \\ =\frac{1}{B(\alpha, \beta)} \int_{0}^{1} x^{(\alpha+1)-1}(1-x)^{\beta-1} d x \\ =\frac{B(\alpha+1, \beta)}{B(\alpha, \beta)}=\frac{\Gamma(\alpha+\beta)}{\Gamma(\alpha) \Gamma(\beta)} / \frac{\Gamma(\alpha+\beta+1)}{\Gamma(\alpha+1) \Gamma(\beta)} \\ =\frac{\alpha}{\alpha+\beta} \end{array}
E(X)=∫01x⋅B(α,β)1xα−1(1−x)β−1dx=B(α,β)1∫01x(α+1)−1(1−x)β−1dx=B(α,β)B(α+1,β)=Γ(α)Γ(β)Γ(α+β)/Γ(α+1)Γ(β)Γ(α+β+1)=α+βα
Beta分布图像:
(3)共轭先验分布
由于x为给定样本,
P
(
x
)
\mathrm{P}(\mathrm{x})
P(x)有时被称为证据,紧紧是归一化因子,如果不关心
P
(
θ
∣
x
)
P(\theta | x)
P(θ∣x)的具体值,只考察
θ
\theta
θ取何值时后验概率
P
(
θ
∣
x
)
\mathrm{P}(\theta | \mathrm{x})
P(θ∣x),则可以将分母去掉。
P
(
θ
∣
x
)
=
P
(
x
∣
θ
)
P
(
θ
)
P
(
x
)
∝
P
(
x
∣
θ
)
P
(
θ
)
P(\theta | x)=\frac{P(x | \theta) P(\theta)}{P(x)} \propto P(x | \theta) P(\theta)
P(θ∣x)=P(x)P(x∣θ)P(θ)∝P(x∣θ)P(θ)
在贝叶斯概率理论中,如果后验概率
P
(
θ
∣
x
)
\mathrm{P}(\theta | \mathrm{x})
P(θ∣x)和先验概率
p
(
θ
)
\mathrm{p}(\theta)
p(θ)满足同样的分布律,则先验分布和后验分布叫做共轭分布,同时,先验分布叫做似然函数的共轭先验分布。
(4)共轭先验分布举例
(i)两点分布/二项分布的共轭先验分布是Beta分布
根据似然和先验:
P
(
x
∣
θ
)
=
C
n
k
⋅
θ
k
⋅
(
1
−
θ
)
n
−
k
P
(
θ
∣
α
,
β
)
=
1
B
(
α
,
β
)
θ
α
−
1
(
1
−
θ
)
β
−
1
\begin{array}{c} P(x | \theta)=C_{n}^{k} \cdot \theta^{k} \cdot(1-\theta)^{n-k} \\ P(\theta | \alpha, \beta)=\frac{1}{B(\alpha, \beta)} \theta^{\alpha-1}(1-\theta)^{\beta-1} \end{array}
P(x∣θ)=Cnk⋅θk⋅(1−θ)n−kP(θ∣α,β)=B(α,β)1θα−1(1−θ)β−1
计算后验概率:
P
(
θ
∣
x
)
=
P
(
x
∣
θ
)
⋅
P
(
θ
)
P
(
x
)
∝
P
(
x
∣
θ
)
⋅
P
(
θ
)
=
(
C
n
k
θ
k
(
1
−
θ
)
n
−
k
)
⋅
(
1
B
(
α
,
β
)
θ
α
−
1
(
1
−
θ
)
β
−
1
)
=
C
n
k
B
(
α
,
β
)
θ
(
k
+
α
)
−
1
(
1
−
θ
)
(
n
−
k
+
β
)
−
1
∝
1
B
(
k
+
α
,
n
−
k
+
β
)
θ
(
k
+
α
)
−
1
(
1
−
θ
)
(
n
−
k
+
β
)
−
1
\begin{array}{l} P(\theta | x)=\frac{P(x | \theta) \cdot P(\theta)}{P(x)} \propto P(x | \theta) \cdot P(\theta) \\ =\left(C_{n}^{k} \theta^{k}(1-\theta)^{n-k}\right) \cdot\left(\frac{1}{B(\alpha, \beta)} \theta^{\alpha-1}(1-\theta)^{\beta-1}\right) \\ =\frac{C_{n}^{k}}{B(\alpha, \beta)} \theta^{(k+\alpha)-1}(1-\theta)^{(n-k+\beta)-1} \\ \propto\frac{1}{B(k+\alpha, n-k+\beta)} \theta^{(k+\alpha)-1}(1-\theta)^{(n-k+\beta)-1} \end{array}
P(θ∣x)=P(x)P(x∣θ)⋅P(θ)∝P(x∣θ)⋅P(θ)=(Cnkθk(1−θ)n−k)⋅(B(α,β)1θα−1(1−θ)β−1)=B(α,β)Cnkθ(k+α)−1(1−θ)(n−k+β)−1∝B(k+α,n−k+β)1θ(k+α)−1(1−θ)(n−k+β)−1
后验概率是参数为
(
k
+
α
,
n
−
k
+
β
)
(\mathrm{k}+\alpha, \mathrm{n}-\mathrm{k}+\beta)
(k+α,n−k+β)的Beta分布,即:伯努利分布/二项分布的共轭先验是Beta分布。参数
α
,
β
\alpha, \beta
α,β是决定参数
θ
\theta
θ的参数,即超参数,在后验概率的最终表达式中,参数
α
,
β
\alpha, \beta
α,β和k以及n-k一起作为参数
θ
\theta
θ的指数–后验概率的参数为
(
k
+
α
,
n
−
k
+
β
)
(\mathrm{k}+\alpha, \mathrm{n}-\mathrm{k}+\beta)
(k+α,n−k+β)。
(ii)多项分布的共轭先验分布是Dirichlet分布
多项分布,是二项分布扩展到多维的情况. 多项分布是指单次试验中的随机变量的取值不再是0-1的,而是有多种离散值可能(1,2,3…,k).概率密度函数为:
P
(
x
1
,
x
2
,
…
,
x
k
;
n
,
p
1
,
p
2
,
…
,
p
k
)
=
n
!
x
1
!
…
x
k
!
p
1
x
1
…
p
k
x
k
P\left(x_{1}, x_{2}, \ldots, x_{k} ; n, p_{1}, p_{2}, \ldots, p_{k}\right)=\frac{n !}{x_{1} ! \ldots x_{k} !} p_{1}^{x_{1}} \ldots p_{k}^{x_{k}}
P(x1,x2,…,xk;n,p1,p2,…,pk)=x1!…xk!n!p1x1…pkxk
Dirichlet分布如下:
f
(
p
⃗
∣
α
⃗
)
=
{
1
Δ
(
α
⃗
)
∏
k
=
1
K
p
k
α
k
−
1
,
p
k
∈
[
0
,
1
]
0
,
其
他
f(\vec{p} | \vec{\alpha})=\left\{\begin{array}{l} \frac{1}{\Delta(\vec{\alpha})} \prod_{k=1}^{K} p_{k}^{\alpha_{k}-1}, \quad p_{k} \in[0,1] \\ 0, \quad 其他 \end{array}\right.
f(p∣α)={Δ(α)1∏k=1Kpkαk−1,pk∈[0,1]0,其他
其中,
Δ
(
α
⃗
)
=
∏
k
=
1
K
Γ
(
α
k
)
Γ
(
∑
k
=
1
K
α
k
)
\Delta(\vec{\alpha})=\frac{\prod_{k=1}^{K} \Gamma\left(\alpha_{k}\right)}{\Gamma\left(\sum_{k=1}^{K} \alpha_{k}\right)}
Δ(α)=Γ(∑k=1Kαk)∏k=1KΓ(αk)
Dirichlet分布期望:
f
(
p
⃗
∣
α
⃗
)
=
1
Δ
(
α
⃗
)
∏
k
=
1
K
p
k
α
k
−
1
,
p
∈
[
0
,
1
]
⇒
E
(
p
i
)
=
α
i
∑
k
=
1
K
α
k
f(\vec{p} | \vec{\alpha})=\frac{1}{\Delta(\vec{\alpha})} \prod_{k=1}^{K} p_{k}^{\alpha_{k}-1}, p \in[0,1] \Rightarrow E\left(p_{i}\right)=\frac{\alpha_{i}}{\sum_{k=1}^{K} \alpha_{k}}
f(p∣α)=Δ(α)1k=1∏Kpkαk−1,p∈[0,1]⇒E(pi)=∑k=1Kαkαi
对称Dirichlet分布:
Dir
(
p
⃗
∣
α
,
K
)
=
1
Δ
K
(
α
)
∏
k
=
1
K
p
k
α
−
1
\operatorname{Dir}(\vec{p} | \alpha, K)=\frac{1}{\Delta_{K}(\alpha)} \prod_{k=1}^{K} p_{k}^{\alpha-1}
Dir(p∣α,K)=ΔK(α)1k=1∏Kpkα−1
其中,
Δ
K
(
α
⃗
)
=
Γ
K
(
α
k
)
Γ
(
K
⋅
α
)
\Delta_{K}(\vec{\alpha})=\frac{\Gamma^{K}\left(\alpha_{k}\right)}{\Gamma(K \cdot \alpha)}
ΔK(α)=Γ(K⋅α)ΓK(αk)
对称Dirichlet分布参数分析:
α
=
1
\alpha=1
α=1退化为均匀分布,
α
>
1
\alpha>1
α>1时,
p
1
=
p
2
=
…
=
p
k
\mathrm{p}_{1}=\mathrm{p}_{2}=\ldots=\mathrm{p}_{\mathrm{k}}
p1=p2=…=pk的概率增大,
α
<
1
\alpha<1
α<1时,
p
i
=
1
,
p
非
i
=
0
\mathrm{p}_{\mathrm{i}}=1, \quad \mathrm{p}_{非{i}}=0
pi=1,p非i=0的概率增大。
2.LDA介绍
(1)LDA应用方向:
朴素贝叶斯可以胜任许多文本分类的问题,但是无法解决语料中一词多义和多次一意的问题,是一种词法分析,并非语义分析。如果使用词向量作为文档的特征,一词多义和多
信息提取和搜索:语义分析
文档分类/聚类,文章摘要,社区挖掘
(2)LDA的解释:
共有m篇文章,一共涉及了K个主题;
每篇文章(长度为Nm)都有各自的主题分布,主题分布式多项分布,该多项分布的参数服从Dirichlet分布,该Dirichlet分布的参数为
α
\alpha
α;
每个主题都有各自的词分布,此分布为多项分布,该多项分布的参数服从Dirichlet分布,该Dirichlet分布的参数为
β
\beta
β;
对于某篇文章中的第n个词,首先从该文章中的主题分布中采样一个主题,然后在个主题对应的词分布中采样一个词,不断重复整个随机生成过程,直到m篇文章全部完成上述过程。
字典中共有V个term(不可重复的),这些term出现在具体的文章中,就是word,在具体文章中的word当然是有可能重复的;
语料库中共有m篇文档
d
1
,
d
2
…
d
m
\mathrm{d}_{1}, \mathrm{d}_{2} \ldots \mathrm{d}_{\mathrm{m}}
d1,d2…dm;
对于文档
d
i
\mathrm{d}_{i}
di,由
N
i
N_{i}
Ni个word组成,可重复;
语料库中共有K个主题
T
1
,
T
2
…
T
k
\mathrm{T}_{1}, \mathrm{T}_{2} \dots \mathrm{T}_{\mathrm{k}}
T1,T2…Tk;
α
和
β
\alpha 和 \beta
α和β为先验分布的参数,一般事先给定:如取0.1的对称Dirichlet分布,表示在参数学习结束后,期望每个文档的主题不会十分集中。
θ
\theta
θ是每篇文档的主题分布,对于第i篇文档
d
i
d_i
di的主题分布是
θ
1
=
(
θ
11
,
θ
12
⋯
,
θ
i
K
)
\theta_{1}=\left(\theta_{11}, \theta_{12} \cdots, \theta_{i K}\right)
θ1=(θ11,θ12⋯,θiK),是长度为K的向量;
对于第i篇文章
d
i
d_i
di,在主题分布
θ
i
\theta_i
θi下,可以确定一个具体的主题
Z
1
j
=
K
Z_{1 j}=K
Z1j=K,
k
∈
[
1
,
K
]
\mathrm{k} \in[1, \mathrm{K}]
k∈[1,K];
φ
k
\varphi_{k}
φk表示第k个主题分布的词分布,
k
∈
[
1
,
K
]
\mathrm{k} \in[1, \mathrm{K}]
k∈[1,K],对于第K个主题
T
k
T_{\mathrm{k}}
Tk的词分布
φ
k
=
(
φ
k
1
,
φ
k
2
…
φ
k
v
)
\varphi_{\mathrm{k}}=\left(\varphi_{\mathrm{k} 1}, \varphi_{\mathrm{k} 2} \ldots \varphi_{\mathrm{kv}}\right)
φk=(φk1,φk2…φkv),是长度为v的向量;
由
Z
i
j
Z_{i j}
Zij选择
φ
z
i
j
\varphi_{z i j}
φzij,
(3)LDA推导:
(i)参数的学习
给定一个文档的集合,
W
m
n
\mathrm{W}_{\mathrm{mn}}
Wmn是可以观测到的已知变量,
α
\alpha
α 和
β
\beta
β都是根据经验给定的先验参数,其他的变量
Z
m
n
⋅
θ
,
φ
\mathrm{Z}_{\mathrm{mn}} \cdot \theta, \quad \varphi
Zmn⋅θ,φ都是未知的隐含变量,需要根据观测到的变量来学习估计的,根据LDA的图模型,可以写出所有变量的联合分布:
p
(
w
⃗
m
,
z
⃗
m
,
ϑ
⃗
m
,
Φ
‾
∣
α
⃗
,
β
⃗
)
=
∏
n
=
1
N
m
p
(
w
m
,
n
∣
φ
⃗
z
m
n
)
p
(
z
m
,
n
∣
ϑ
⃗
m
)
⋅
p
(
ϑ
⃗
m
∣
α
⃗
)
⋅
p
(
Φ
‾
∣
β
⃗
)
p\left(\vec{w}_{m}, \vec{z}_{m}, \vec{\vartheta}_{m}, \underline{\Phi} | \vec{\alpha}, \vec{\beta}\right)=\prod_{n=1}^{N_{m}} p\left(w_{m, n} | \vec{\varphi}_{z_{m n}}\right) p\left(z_{m, n} | \vec{\vartheta}_{m}\right) \cdot p\left(\vec{\vartheta}_{m} | \vec{\alpha}\right) \cdot p(\underline{\Phi} | \vec{\beta})
p(wm,zm,ϑm,Φ∣α,β)=∏n=1Nmp(wm,n∣φzmn)p(zm,n∣ϑm)⋅p(ϑm∣α)⋅p(Φ∣β)
(ii)似然概率
一个词
W
m
n
\mathrm{W}_{\mathrm{mn}}
Wmn初始化为一个词t的概率是
p
(
w
m
,
n
=
t
∣
ϑ
⃗
m
,
Φ
‾
)
=
∑
k
=
1
K
p
(
w
m
,
n
=
t
∣
φ
⃗
k
)
p
(
z
m
,
n
=
k
∣
ϑ
⃗
m
)
p\left(w_{m, n}=t | \vec{\vartheta}_{m}, \underline{\Phi}\right)=\sum_{k=1}^{K} p\left(w_{m, n}=t | \vec{\varphi}_{k}\right) p\left(z_{m, n}=k | \vec{\vartheta}_{m}\right)
p(wm,n=t∣ϑm,Φ)=k=1∑Kp(wm,n=t∣φk)p(zm,n=k∣ϑm)
每个文档中出现主题k的概率乘以主题k下出现词t的概率,然后枚举所有主题求和得到整个文档集合的似然函数为:
p
(
W
∣
Θ
‾
,
Φ
‾
)
=
∏
m
=
1
M
p
(
w
⃗
m
∣
ϑ
⃗
m
,
Φ
‾
)
=
∏
m
=
1
M
∏
n
=
1
N
m
p
(
w
m
,
n
∣
ϑ
⃗
m
,
Φ
‾
)
p(\mathcal{W} | \underline{\Theta}, \underline{\Phi})=\prod_{m=1}^{M} p\left(\vec{w}_{m} | \vec{\vartheta}_{m}, \underline{\Phi}\right)=\prod_{m=1}^{M} \prod_{n=1}^{N_{m}} p\left(w_{m, n} | \vec{\vartheta}_{m}, \underline{\Phi}\right)
p(W∣Θ,Φ)=m=1∏Mp(wm∣ϑm,Φ)=m=1∏Mn=1∏Nmp(wm,n∣ϑm,Φ)