机器学习笔记之狄利克雷过程——基于标量参数作用的推导过程
引言回顾:狄利克雷过程——基本介绍狄利克雷过程——定义小插曲:狄利克雷分布的简单性质
关于标量参数作用的推导过程
引言
上一节以高斯混合模型为引,简单介绍了狄利克雷过程(
Dirichlet Process,DP
\text{Dirichlet Process,DP}
Dirichlet Process,DP)。本节将通过公式推导描述标量参数
α
\alpha
α的作用。
回顾:狄利克雷过程——基本介绍
狄利克雷过程本质上是分布的分布。基于给定的样本集合
X
=
{
x
(
i
)
}
i
=
1
N
\mathcal X= \{x^{(i)}\}_{i=1}^N
X={x(i)}i=1N,我们针对每个样本
x
(
i
)
(
i
=
1
,
2
,
⋯
,
N
)
x^{(i)}(i=1,2,\cdots,N)
x(i)(i=1,2,⋯,N)构建一个对应参数
θ
(
i
)
(
i
=
1
,
2
,
⋯
,
N
)
\theta^{(i)}(i=1,2,\cdots,N)
θ(i)(i=1,2,⋯,N)。对应的参数集合
θ
\theta
θ为:
θ
=
{
θ
(
i
)
}
i
=
1
N
\theta = \{\theta^{(i)}\}_{i=1}^N
θ={θ(i)}i=1N 关于狄利克雷过程,它的表达形式表示如下:
G
∼
DP
[
α
,
H
(
θ
)
]
\mathcal G \sim \text{DP}[\alpha,\mathcal H(\theta)]
G∼DP[α,H(θ)] 其中
G
\mathcal G
G是狄利克雷过程产生的样本结果,本身是一个离散分布(
Discrete Distribution
\text{Discrete Distribution}
Discrete Distribution);
H
(
θ
)
\mathcal H(\theta)
H(θ)表示关于参数集合
θ
\theta
θ的概率分布;
α
\alpha
α则是一个调整分布结果
G
\mathcal G
G离散程度的标量参数,且
α
>
0
\alpha > 0
α>0。
关于标量参数
α
\alpha
α:
当
α
=
0
\alpha = 0
α=0时,此时的离散分布
G
\mathcal G
G极度离散,无论如何随机采样,只能映射唯一的离散结果;当
α
=
∞
\alpha = \infty
α=∞时,此时离散分布
G
\mathcal G
G在采样过程中,可能存在无穷多种离散结果提供选择,并且每种选择均存在对应的概率值。此时的
G
=
H
(
θ
)
\mathcal G = \mathcal H(\theta)
G=H(θ)。
下面会用公式推导的方式对上述两种情况进行描述。
狄利克雷过程——定义
根据上面的描述,如果分布
G
\mathcal G
G是一个优秀的离散分布,那么从分布
G
\mathcal G
G中产生的样本
θ
(
i
)
,
θ
(
j
)
(
i
,
j
∈
{
1
,
2
,
⋯
,
N
}
;
i
≠
j
)
\theta^{(i)},\theta^{(j)}(i,j \in \{1,2,\cdots,N\};i \neq j)
θ(i),θ(j)(i,j∈{1,2,⋯,N};i=j)必然存在
θ
(
i
)
=
θ
(
j
)
\theta^{(i)} = \theta^{(j)}
θ(i)=θ(j)的情况发生。 也就是说,
θ
(
i
)
=
θ
(
j
)
\theta^{(i)} = \theta^{(j)}
θ(i)=θ(j)意味着
x
(
i
)
,
x
(
j
)
x^{(i)},x^{(j)}
x(i),x(j)均指向了同一聚类信息。
此时,将不同结果的
θ
(
i
)
\theta^{(i)}
θ(i)收集起来,其结果数量必然
<
N
θ \theta θ结果相同对应的样本子集 X θ \mathcal X_{\theta} Xθ自然就聚类在一起,实现聚类数量 K < N \mathcal K < N K 重新观察狄利克雷过程 DP ( α , H ) \text{DP}(\alpha,\mathcal H) DP(α,H),关于 θ \theta θ的概率分布 H ( θ ) \mathcal H(\theta) H(θ)被称作基本测度( Base Measure \text{Base Measure} Base Measure)。从采样的角度观察狄利克雷过程与高斯混合模型,观察它们之间的区别: 作为区分,将 ϕ \phi ϕ作为高斯混合模型概率密度函数的参数。 { G ∼ DP ( α , H ) x ( j ) ∼ P ( X ; ϕ ) \begin{cases} \mathcal G \sim \text{DP}(\alpha,\mathcal H) \\ x^{(j)} \sim \mathcal P(\mathcal X;\phi) \end{cases} {G∼DP(α,H)x(j)∼P(X;ϕ) 能够发现: 从高斯混合模型中采样得到的结果是一个样本空间中的样本点; 从狄利克雷过程中采样得到的结果是一个完整分布,是一个随机离散型概率测度( Random Discrete Probability Measure \text{Random Discrete Probability Measure} Random Discrete Probability Measure)。 假设 G ( i ) \mathcal G^{(i)} G(i)是从 DP ( α , H ) \text{DP}(\alpha,\mathcal H) DP(α,H)中采样得到的一个样本,那么离散分布 G ( i ) \mathcal G^{(i)} G(i)表示为如下形式: 这里假设 G ( i ) \mathcal G^{(i)} G(i)是一个一维的分布 G ( i ) = ( g 1 ( i ) , g 2 ( i ) , ⋯ , g K ( i ) ) ∑ k = 1 K g k ( i ) = 1 \mathcal G^{(i)} = \left(g_1^{(i)},g_2^{(i)},\cdots,g_{\mathcal K}^{(i)}\right) \quad \sum_{k=1}^{\mathcal K} g_k^{(i)} = 1 G(i)=(g1(i),g2(i),⋯,gK(i))k=1∑Kgk(i)=1 其中 g k ( i ) ( k ∈ { 1 , 2 , ⋯ , K } ) g_k^{(i)}(k \in \{1,2,\cdots,\mathcal K\}) gk(i)(k∈{1,2,⋯,K})表示编号 k k k离散结果的权重/概率信息。即便 α \alpha α取值相同( α s a m e \alpha_{same} αsame),对应产生的随机离散分布 G ( i ) , G ( j ) ( i ≠ j ; G ( i ) , G ( j ) ∼ DP ( α s a m e , H ) ) \mathcal G^{(i)},\mathcal G^{(j)}(i \neq j;\mathcal G^{(i)},\mathcal G^{(j)}\sim \text{DP}(\alpha_{same},\mathcal H)) G(i),G(j)(i=j;G(i),G(j)∼DP(αsame,H))也不相同,它们可能很相似。 因而采样结果 G ( i ) \mathcal G^{(i)} G(i)也被称作‘随机测度’ ( Random Measure ) (\text{Random Measure}) (Random Measure) 如果一维的随机离散分布 G ( i ) \mathcal G^{(i)} G(i)表示如下: 观察该图像: 图像中的竖线表示离散分布 G ( i ) \mathcal G^{(i)} G(i)内对应的 K \mathcal K K个离散结果的权重/概率信息。竖线越长,选择该离散结果的概率越大; 最上面的弧线表示 H ( θ ) \mathcal H(\theta) H(θ)的概率分布,而 G ( i ) \mathcal G^{(i)} G(i)仅仅是基于 H ( θ ) \mathcal H(\theta) H(θ),给定 α \alpha α条件下的一个随机离散测度样本。 将该随机离散分布结果划分成 D \mathcal D D个区域: { a 1 , a 2 , ⋯ , a D } \{a_1,a_2,\cdots,a_{\mathcal D}\} {a1,a2,⋯,aD},每个区域内包含若干个权重结果。将这些权重结果的和作为该区域的权重信息。记作 G ( i ) ( a d ) \mathcal G^{(i)}(a_d) G(i)(ad): G ( i ) ( a d ) = ∑ g k ( i ) ∈ a d g k ( i ) \mathcal G^{(i)}(a_d) = \sum_{g_k^{(i)} \in a_d} g_k^{(i)} G(i)(ad)=gk(i)∈ad∑gk(i) 至此,将 G ( i ) \mathcal G^{(i)} G(i)中的 K \mathcal K K个权重结果划分为 D \mathcal D D个区域,并得到 D \mathcal D D个区域的权重信息: G ( i ) ( a 1 ) , G ( i ) ( a 2 ) , ⋯ , G ( i ) ( a D ) ∑ d = 1 D G ( i ) ( a d ) = 1 \mathcal G^{(i)}(a_1),\mathcal G^{(i)}(a_2),\cdots,\mathcal G^{(i)}(a_{\mathcal D}) \quad \sum_{d=1}^{\mathcal D} \mathcal G^{(i)}(a_d) = 1 G(i)(a1),G(i)(a2),⋯,G(i)(aD)d=1∑DG(i)(ad)=1 虽然被划分成了 D \mathcal D D个区域,但每个区域的权重信息 G ( i ) ( a d ) ( d ∈ { 1 , 2 , ⋯ , D } ) \mathcal G^{(i)}(a_d)(d \in \{1,2,\cdots,\mathcal D\}) G(i)(ad)(d∈{1,2,⋯,D})依然是一个随机变量,并且 G ( i ) ( a 1 ) , G ( i ) ( a 2 ) , ⋯ , G ( i ) ( a D ) \mathcal G^{(i)}(a_1),\mathcal G^{(i)}(a_2),\cdots,\mathcal G^{(i)}(a_{\mathcal D}) G(i)(a1),G(i)(a2),⋯,G(i)(aD)同样是一个离散的概率分布。那么该分布需要服从的概率性质是 狄利克雷分布( Dirichlet Distribution \text{Dirichlet Distribution} Dirichlet Distribution) [ G ( i ) ( a 1 ) , G ( i ) ( a 2 ) , ⋯ , G ( i ) ( a D ) ] ∼ Dir [ α H ( a 1 ) , α H ( a 2 ) , ⋯ , α H ( a D ) ] [\mathcal G^{(i)}(a_1),\mathcal G^{(i)}(a_2),\cdots,\mathcal G^{(i)}(a_{\mathcal D})] \sim \text{Dir} \left[\alpha \mathcal H(a_1),\alpha \mathcal H(a_2),\cdots,\alpha \mathcal H(a_{\mathcal D})\right] [G(i)(a1),G(i)(a2),⋯,G(i)(aD)]∼Dir[αH(a1),αH(a2),⋯,αH(aD)] 其中 H ( a j ) ( j ∈ { 1 , 2 , ⋯ , D } ) \mathcal H(a_j)(j \in \{1,2,\cdots,\mathcal D\}) H(aj)(j∈{1,2,⋯,D})表示被划分的 a j a_j aj区域中的基本测度; α \alpha α与 H ( a j ) \mathcal H(a_j) H(aj)的乘积 α H ( a j ) \alpha\mathcal H(a_j) αH(aj)(标量)表示狄利克雷分布在 a j a_j aj区域中的参数信息。 小插曲:狄利克雷分布的简单性质 假设随机变量集合 X \mathcal X X包含 p p p个随机变量: X ∈ R p \mathcal X \in \mathbb R^p X∈Rp,并且概率分布 P ( X ) = P ( x 1 , x 2 , ⋯ , x p ) \mathcal P(\mathcal X) = \mathcal P(x_1,x_2,\cdots,x_p) P(X)=P(x1,x2,⋯,xp)服从狄利克雷分布: P ( x 1 , x 2 , ⋯ , x p ) ∼ Dir ( α 1 , α 2 , ⋯ , α p ) \mathcal P(x_1,x_2,\cdots,x_p) \sim \text{Dir}(\alpha_1,\alpha_2,\cdots,\alpha_p) P(x1,x2,⋯,xp)∼Dir(α1,α2,⋯,αp) 其中 α i ( i = 1 , 2 , ⋯ , p ) \alpha_i(i=1,2,\cdots,p) αi(i=1,2,⋯,p)表示各随机变量 x i ( i = 1 , 2 , ⋯ , p ) x_i(i=1,2,\cdots,p) xi(i=1,2,⋯,p)对应的参数。关于随机变量 x i x_i xi的期望结果 E [ x i ] \mathbb E[x_i] E[xi]与方差结果 Var [ x i ] \text{Var}[x_i] Var[xi]分别表示为: { E [ x i ] = α i ∑ k = 1 p α k Var [ x i ] = α i ⋅ ( ∑ k = 1 p α k − α i ) ( ∑ k = 1 p α k ) 2 ⋅ ( 1 + ∑ k = 1 p α k ) \begin{cases} \begin{aligned} \mathbb E[x_i] & = \frac{\alpha_i}{\sum_{k=1}^p \alpha_k} \\ \text{Var}[x_i] & = \frac{\alpha_i \cdot \left(\sum_{k=1}^p \alpha_k - \alpha_i\right)}{\left(\sum_{k=1}^p \alpha_k\right)^2 \cdot \left(1 + \sum_{k=1}^p \alpha_k\right)} \end{aligned} \end{cases} ⎩ ⎨ ⎧E[xi]Var[xi]=∑k=1pαkαi=(∑k=1pαk)2⋅(1+∑k=1pαk)αi⋅(∑k=1pαk−αi) 关于标量参数作用的推导过程 终上,简单总结狄利克雷过程的定义: 某一随机离散测度样本 G ( i ) \mathcal G^{(i)} G(i)服从标量参数 α \alpha α、基本测度分布为 H \mathcal H H的狄利克雷分布: G ( i ) ∼ DP ( α , H ) \mathcal G^{(i)} \sim \text{DP}(\alpha,\mathcal H) G(i)∼DP(α,H)假设将该分布样本 G ( i ) = [ g 1 ( i ) , g 2 ( i ) , ⋯ , g K ( i ) ] T \mathcal G^{(i)} = [g_1^{(i)},g_2^{(i)},\cdots,g_{\mathcal K}^{(i)}]^T G(i)=[g1(i),g2(i),⋯,gK(i)]T划分成 D \mathcal D D个区域 ( a 1 , a 2 , ⋯ , a D ) (a_1,a_2,\cdots,a_{\mathcal D}) (a1,a2,⋯,aD),并将每个区域中的权重信息求和,从而构成的新的分布: [ g 1 ( i ) , g 2 ( i ) , ⋯ , g K ( i ) ] T ⏟ Old Distribution ⇒ [ G ( i ) ( a 1 ) , G ( i ) ( a 2 ) , ⋯ , G ( i ) ( a D ) ] T ⏟ New Distribution \underbrace{[g_1^{(i)},g_2^{(i)},\cdots,g_{\mathcal K}^{(i)}]^T}_{\text{Old Distribution}} \Rightarrow \underbrace{[\mathcal G^{(i)}(a_1),\mathcal G^{(i)}(a_2),\cdots,\mathcal G^{(i)}(a_{\mathcal D})]^T}_{\text{New Distribution}} Old Distribution [g1(i),g2(i),⋯,gK(i)]T⇒New Distribution [G(i)(a1),G(i)(a2),⋯,G(i)(aD)]T这个新分布服从对应参数为 α ⋅ H ( a d ) \alpha \cdot \mathcal H(a_d) α⋅H(ad)的狄利克雷分布: [ G ( i ) ( a 1 ) , G ( i ) ( a 2 ) , ⋯ , G ( i ) ( a D ) ] ∼ Dir [ α H ( a 1 ) , α H ( a 2 ) , ⋯ , α H ( a D ) ] [\mathcal G^{(i)}(a_1),\mathcal G^{(i)}(a_2),\cdots,\mathcal G^{(i)}(a_{\mathcal D})] \sim \text{Dir} \left[\alpha \mathcal H(a_1),\alpha \mathcal H(a_2),\cdots,\alpha \mathcal H(a_{\mathcal D})\right] [G(i)(a1),G(i)(a2),⋯,G(i)(aD)]∼Dir[αH(a1),αH(a2),⋯,αH(aD)] 此时的随机变量是 G ( i ) ( a d ) ( d = 1 , 2 , ⋯ , D ) \mathcal G^{(i)}(a_d)(d=1,2,\cdots,\mathcal D) G(i)(ad)(d=1,2,⋯,D),计算该随机变量的期望和方差结果: 其中 α \alpha α是标量,并且不含 d d d,可将其提到 ∑ d = 1 D \sum_{d=1}^{\mathcal D} ∑d=1D前面.并且 ∑ d = 1 D H ( a d ) = 1 \sum_{d=1}^{\mathcal D} \mathcal H(a_d) = 1 ∑d=1DH(ad)=1是已知项。 E [ G ( i ) ( a d ) ] = α H ( a d ) ∑ d = 1 D α H ( a d ) = α H ( a d ) α ∑ d = 1 D H ( a d ) = H ( a d ) \begin{aligned} \mathbb E[\mathcal G^{(i)}(a_d)] & = \frac{\alpha \mathcal H(a_d)}{\sum_{d=1}^{\mathcal D} \alpha \mathcal H(a_d)} \\ & = \frac{\alpha \mathcal H(a_d)}{\alpha \sum_{d=1}^{\mathcal D} \mathcal H(a_d)} \\ & = \mathcal H(a_d) \end{aligned} E[G(i)(ad)]=∑d=1DαH(ad)αH(ad)=α∑d=1DH(ad)αH(ad)=H(ad) 可以发现,分布样本 G ( i ) \mathcal G^{(i)} G(i)在 a d a_d ad划分区域中的期望结果就是区域 a d a_d ad的基本测度;并且这个期望结果 E [ G ( i ) ( a d ) ] \mathbb E[\mathcal G^{(i)}(a_d)] E[G(i)(ad)]与标量参数 α \alpha α无关。 仅需要将‘基本测度’ H \mathcal H H看成一个概率密度函数(输出的是概率结果), H ( a d ) = H [ ∑ g k ( i ) ∈ a d g k ( i ) ] \mathcal H(a_d) = \mathcal H \left[\sum_{g_k^{(i)} \in a_d} g_k^{(i)}\right] H(ad)=H[∑gk(i)∈adgk(i)]. 继续观察它的方差结果 Var [ G ( i ) ( a d ) ] \text{Var}\left[\mathcal G^{(i)}(a_d)\right] Var[G(i)(ad)]: 套公式~ Var [ G ( i ) ( a d ) ] = α H ( a d ) ⋅ [ α ⋅ ∑ d = 1 D H ( a d ) − α H ( a d ) ] [ α ⋅ ∑ d = 1 D H ( a d ) ] 2 ⋅ [ α ⋅ ∑ d = 1 D H ( a d ) + 1 ] = α H ( a d ) ⋅ [ α − α H ( a d ) ] α 2 ⋅ ( α + 1 ) = H ( a d ) [ 1 − H ( a d ) ] α + 1 \begin{aligned} \text{Var}\left[\mathcal G^{(i)}(a_d)\right] & = \frac{\alpha \mathcal H(a_d) \cdot \left[\alpha \cdot \sum_{d=1}^{\mathcal D} \mathcal H(a_d) - \alpha \mathcal H(a_d)\right]}{\left[\alpha \cdot \sum_{d=1}^{\mathcal D} \mathcal H(a_d)\right]^2 \cdot \left[\alpha \cdot \sum_{d=1}^{\mathcal D} \mathcal H(a_d) + 1 \right]} \\ & = \frac{\alpha \mathcal H(a_d) \cdot \left[\alpha - \alpha \mathcal H(a_d)\right]}{\alpha^2 \cdot \left(\alpha + 1 \right)} \\ & = \frac{\mathcal H(a_d) [1 - \mathcal H(a_d)]}{\alpha + 1} \end{aligned} Var[G(i)(ad)]=[α⋅∑d=1DH(ad)]2⋅[α⋅∑d=1DH(ad)+1]αH(ad)⋅[α⋅∑d=1DH(ad)−αH(ad)]=α2⋅(α+1)αH(ad)⋅[α−αH(ad)]=α+1H(ad)[1−H(ad)] 首先观察当 标量参数 α → ∞ \alpha \to \infty α→∞ 的情况下,此时无论是哪个区域 a d ( d = 1 , 2 , ⋯ , D ) a_d(d=1,2,\cdots,\mathcal D) ad(d=1,2,⋯,D),它对应 G ( i ) ( a d ) \mathcal G^{(i)}(a_d) G(i)(ad)的方差结果均为 0 0 0,这意味着任意区域下下的随机测度 G ( i ) ( a d ) \mathcal G^{(i)}(a_d) G(i)(ad)均不存在方差噪声。它精准地等于 a d a_d ad区域的基本测度 H ( a d ) \mathcal H(a_d) H(ad): 即没有方差噪声地、精确地指向了期望的位置。 Var [ G ( i ) ( a d ) ] = 0 ⇔ G ( i ) ( a d ) = H ( a d ) \text{Var} \left[\mathcal G^{(i)}(a_d)\right] = 0 \Leftrightarrow \mathcal G^{(i)}(a_d) = \mathcal H(a_d) Var[G(i)(ad)]=0⇔G(i)(ad)=H(ad) 相反,当 标量参数 α = 0 \alpha = 0 α=0 的情况下, Var [ G ( i ) ( a d ) ] = H ( a d ) [ 1 − H ( a d ) ] \text{Var} \left[\mathcal G^{(i)}(a_d)\right] = \mathcal H(a_d) [1 - \mathcal H(a_d)] Var[G(i)(ad)]=H(ad)[1−H(ad)]。此时该方差是伯努利分布的方差结果。这意味着随机测度 G ( i ) ( a d ) \mathcal G^{(i)}(a_d) G(i)(ad)服从伯努利分布。 而伯努利分布就是最简单的离散分布描述。当 α = 0 \alpha = 0 α=0时,关于随机测度 G ( i ) \mathcal G^{(i)} G(i)内部某个权重 g k ( i ) g_k^{(i)} gk(i)与某一区域 a d a_d ad之间只有两种描述情况: g k ( i ) g_k^{(i)} gk(i)属于 a d a_d ad区域中的权重信息; g k ( i ) g_k^{(i)} gk(i)不属于 a d a_d ad区域中的权重信息; 下一节将从随机测度 G ( i ) \mathcal G^{(i)} G(i)生成过程的角度观察标量参数与分布离散程度的关系 相关参考: 徐亦达机器学习:Dirichlet-Process-part 2 参考文章
发表评论