近期做人脸注册,发现直接用NICP的结果进行PCA时会有比较大的噪声, 想试试用PPCA, 并看能否在此基础上把 pose 也当作隐变量加入.
(一般这种具有复杂的公式而且还是看别人博客的笔记我是不愿意放在CSDN可是我的印象笔记突然不能登录了)
推公式的部分基础知识
高斯分布相乘
PPCA
详细的话先看
数据降维 找其中的第六章
PRML读书笔记:Probabilistic PCA
观测样本
x
x
x由如下规则生成:
x
=
W
z
+
μ
+
ε
x=Wz+\mu+\varepsilon
x=Wz+μ+ε, 其中z是隐变量, 其余三个都是待求的参数, 分别为 基, 均值, 噪声方差(假设噪声服从0均值高斯).
对于PPCA 这种
μ
\mu
μ其实可以先算出来就是数据x的均值.
上面的生成模型, 可以认为给定z后x服从高斯分布
(** 注意此时的PPCA 隐变量就只是控制系数, 其实可以尝试加上 pose , 比如 s, R, t **)
求 p ( x ) p(x) p(x)
回到标准的PPCA
后面在用 EM 算法的时候需要用到后验概率 p(z|x) (用其期望和方差, 毕竟p(z|x)其实也是高斯分布, 所以不要采样?)
根据贝叶斯公式, p(z|x) 要想求出的话需要知道
p
(
x
)
,
p
(
z
)
,
p
(
x
∣
z
)
p(x), p(z), p(x|z)
p(x),p(z),p(x∣z), 很明显第一个比较难求. 不过可以知道其是两个高斯分布的边缘分布,因此
p
(
x
)
p(x)
p(x) 本身也是高斯分布
具体其均值和方差求解如下
这里方差之所以那么简单是因为假设了变量之间的独立性. (认为C有问题, 似乎不是这个结果,多了最后一项, 原因是忽略了这个公式
)
(加pose 的话必须先把这个公式给推过去)
记
EM
需要最大化的是这个 (完全数据似然在后验概率下的期望)
这一步主要是先要把高斯模型带进去, 根据ln 变成求和然后每个元素求期望可得.
E 步就是求出里面关于后验的期望(假设模型参数已知), M 步就最大化上面那个期望.
E 步
这里期望就用到了上面后验概率的高斯分布模型. (这里我一开始总是无法理解
E
p
(
z
∣
x
)
[
z
]
E_{p(z|x)}[z]
Ep(z∣x)[z] 为什么就是
p
(
z
∣
x
)
p(z|x)
p(z∣x)的期望, 但仔细一想这不就是定义吗?)
补充一些复杂的求解
如果把pose加进去,有几个期望比较难求,但是找到了一些可能有帮助的参考资料。
二次型期望
证明
二次型协方差计算
协方差求解