机器学习笔记之狄利克雷过程——基于标量参数作用的推导过程
- 引言
- 回顾:狄利克雷过程——基本介绍
- 狄利克雷过程——定义
- 小插曲:狄利克雷分布的简单性质
- 关于标量参数作用的推导过程
引言
上一节以高斯混合模型为引,简单介绍了狄利克雷过程( 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
<N
<N,
θ
\theta
θ结果相同对应的样本子集
X
θ
\mathcal X_{\theta}
Xθ自然就聚类在一起,实现聚类数量
K
<
N
\mathcal K < N
K<N的情况。
关于高斯混合模型的示例,详见
狄利克雷过程——基本介绍
重新观察狄利克雷过程
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