当前位置:文档之家› GMM_EM_混合高斯模型及其求解应用

GMM_EM_混合高斯模型及其求解应用

• 引入Z后
p( xi | zik 1; ) N ( xi | k , k )
• 从而得到
p ( xi | Z i ; ) N ( xi | k , k )
k 1 K zik
注意:这里zik只有0和1的选择
GMM参数学习
• 在简化问题中,我们实际的观察变量是{X,Z},根 据一下两个公式
Nk 1 ln N ( X | k , k ) k ( xi k ) k,可以得到
1 k Nk
Nk
x
i 1 i
Nk
i
1 k Nk
(x
i 1
k
)( xi k )T
GMM参数学习
• 在zik已知的情况下,我们求出了高斯函数的数值 解:
k 1
K
L K k 1 0 k 1
L i 1 k
zik N
i 1 k 1
N
K
zik
N
0
k
z
i 1
N
ik
N

Nk N
GMM参数学习
• 引入隐变量Z后,我们得到了最大化目标函数的 N K 结果
ln p(X, Z; )
1 k Nk 1 k Nk
z
i 1 N i 1
N
ik i
x
z
ik
( xi k )( xi k )T
其中
N k zik
i 1 N
GMM参数学习
L ln p (X, Z; ) ( k 1)
k 1
K

z
i 1 k 1
N
K
ik
{ln k ln N ( xi | k , k )} ( k 1)
f ( I xy ,t ) xy ,k ,t N ( I xy ,t , xy ,k ,t , xy ,k ,t ),
k 1 K

k 1
K
xy , k ,t
1
Ixy,t 表示t时刻图像I中的xy位置的像素特征。
模型主要步骤:
1,模型初始化; 2,背景描述; 3,前景判决; 4,模型更新。
Nk N
N k E ( zik )
GMM参数学习
• 算法流程
GMM参数学习
• GMM,K=2
原始数据 K-meams初始化 迭代过程
迭代过程
迭代过程
迭代结果
高斯混合模型(GMM)
• GMM的表达式
• GMM参数计算
• GMM应用举例
GMM应用:背景建模
• 背景模型:对图像中的场景进行建模,从而进行 运动检测。
GMM应用:背景建模
• 前景判决(2/2)
M xy ,t 1 arg min{mxy , k ,t 1 ( I xy ,t 1 ) 0}
k
前景判决:
if M xy ,t 1 B, 前景 else 背景
GMM应用:背景建模
• 模型更新(1/2)更新模型,使其适应场景的变化
更新所有高斯模型的权重,并重新归一化:
GMM应用:背景建模
• 模型初始化(1/3)
xy ,k ,t
I xy ,t 0
k 1 k 1
0 k K
GMM应用:背景建模
• 模型初始化(2/3)
2 xy , k ,t var
k 1, 2,..., K
GMM应用:背景建模
• 模型初始化(3/3)
xy ,k ,t
• 为了最大化上式,由于zik已知,我们可以把上式 按观察到的(x,z) 分为K组,即按照所属的高斯函 数进行分组
ln p(X, Z; )
iC1
(ln
iCK
1
ln N ( xi | 1 , 1 )) (ln 2 ln N ( xi | 2 , 2 ))
iC2
n 1 k 1 K
N
K
=
z
n 1 k 1
N
ik
{ln k ln N ( xi | k , k )}
• 后者的ln直接作用于正态分布,使正态分布由乘 的e指数形式变为加的简单形式
GMM参数学习
ln p(X, Z; )
z
i 1 k 1
N
K
ik
{ln k ln N ( xi | k , k )}
xy,k ,t 1 (1 ) xy,k ,t mxy,k,t 1
N ( I xy ,t 1; xy , M xy ,t 1 ,t , xy ,M xy ,t 1 ,t ) xy , M xy ,t 1 ,t 1 (1 ) xy , M xy ,t 1 ,t I xy ,t 1
2 2 2 xy , M xy ,t 1 ,t (1 ) xy , M xy ,t 1 ,t ( I xy ,t xy , M xy ,t 1 ,t )
GMM应用:背景建模
• 模型更新(2/2)
(1)更新前k-1个模型的权重:
xy,i,t 1 (1 Winit )( xy,i,t 1
i 1 i 1 k 1 N N K
• 可以看出目标函数是和的对数,优化问题麻烦, 简化的问题:某混合高斯分布一共有K个分布, 对于每一个观察到的x,如果我们同时还知道它 是属于K中哪一个分布的,则可以直接求解出各 个高斯分布的参数。 • 因此引入隐变量Z,用于表示样本{x}输入哪一个 高斯分布
E ( zik | ) =
k N( xi | k , k )
E-step
N( x | ,
j 1 j i j
K
1 N k E (zik) ( xi k )( xi k )T N k i 1
j
)
M-step
k
E(z
i 1
N
N
ik
)
N
i 1
现在的问题转化为如何求解E{zik}?
k
E(z
i 1
N
ik
)
N
N i 1
Nk N
N k E ( zik )
E{zik}
EM算法
GMM参数学习
GMM参数学习
E ( zik | ) z zik p ( zik | xn , ) = z zik p ( zik | xi , )
Zik只有 0、1取值
p ( zik 1| ) p ( xi | zik 1, ) = p ( xi | ) =
k N( xi | k , k )
N( x | ,
j 1 j i j
K
j
)
公式展开
GMM参数学习
• 小结
1 N k E ( zik ) xi N k i 1
GMM参数学习
• 比较原问题和简化问题
ln( p( X ; )) ln p( xi ; ) ln( k N ( xi ; k , k ))
i 1 i 1 k 1
zik
N
N
K
ln p (X, Z; ) ln{ kzik N ( xi | k , k ) }
高斯混合模型(GMM)
• 公式表达:
参数空间:
高斯混合模型(GMM)
• GMM的表达式
• GMM参数计算
• GMM应用举例
GMM参数学习
*注意:对于观察集{x}中的各个观察值x ,这里认为相互之间独立。 i
GMM参数学习
• 对目标函数取对数:
ln( p( X ; )) ln p( xi ; ) ln( k N ( xi ; k , k ))
N
(z ) ( x )( x ) E
ik
k
E(z
i 1
ik
)
N
N i 1
Nk N
N k E ( zik )
GMM参数学习
• 进一步解释
1 N k E ( zik ) xi N k i 1 1 N k E (zik) ( xi k )( xi k )T N k i 1
高斯混合模型(GMM)
高斯混合模型(GMM)
• GMM的表
• GMM参数计算
• GMM应用举例
高斯混合模型(GMM)
• GMM的表达
• GMM参数计算
• GMM应用举例
高斯模型
• 是一种参数化模型,用高斯密度函数估计目标的 分布
• 单高斯(Single Gaussian Model)
• 高斯混合模型(Gaussian mixture model)
z
i 1 k 1
ik
{ln k ln N ( xi | k , k )}
1 Nk
N
1 k Nk 1 k Nk
N
zik xi
i 1 N
N
z
i 1
ik
( xi k )( xi k )
T
k
z
i 1
N
ik
N
i 1
N k N
N k zik
GMM参数学习
• 定义Zi={zi1,…, ziK}, zik表示xi是否属于第k个高斯 函数,zik只有两个取值0、1,即zik=1表示xi属于 第k个高斯函数, zik=0表示xi不属于第k个高斯函 数。 • 那么,有:
z
k 1
K
ik
1
K
p( Z i ) kzik
k 1
GMM参数学习
ik
N
相关主题