论文笔记
Bayesian Face Revisited: A Joint Formulation
摘要
一种对贝叶斯人脸识别方法的改进。
问题
人脸识别问题主要分为人脸确认(verification)和人脸识别(identification),前者是确认两张脸是否食欲同一个人,后者用于确定人脸的身份。本论文主要处理verification问题。
问题描述:
- 假设1:两张脸属于同一个人
- 假设2:两张脸不属于同一个人
基于最大后验,通过对数似然比判断
两个前提
每张脸都由两个高斯隐变量表示:
- 固有身份变量
- 其他因素导致的变化
朴素公式
假设两张脸的联合分布为高斯的,即
其中ΣI,ΣEΣI,ΣE分别是同一个人和不同人的协方差矩阵。
这种方法直接从统计数据中直接训练得到协方差矩阵。有两个因素可能会限制效果:
1. 我们假设人脸特征为d维的特征,而我们需要从更高的维度空间(2d)中计算出协方差矩阵,由于训练缺乏足够多的独立的训练数据,所以我们得到的可能是一种不可靠的统计结果。
2. 由于数据集中训练样本不完全独立,因此∑E有可能不是(blockwise)块对角线矩阵。而上面的公式中要求x1,x2必须相互独立。
联合公式
人脸由两个高斯变量的和表征:
这里xx代表人脸,代表固有身份,ϵϵ代表脸部变化(光照,姿态,表情等)。
隐变量μμ,ϵϵ服从高斯分布N(0,Sμ),N(0,Sϵ)N(0,Sμ),N(0,Sϵ)
有了以上先验知识,{x1,x2}{x1,x2}的联合分布为一个零均值的高斯分布,两张脸的协方差为
在HIHI假设下,本征变量μ1,μ2μ1,μ2是相同的,而且ϵ1,ϵ2ϵ1,ϵ2是相互独立的,因此分布P(x1,x2|HI)P(x1,x2|HI)可以通过下式得到:
在HEHE假设下,μ,ϵμ,ϵ都是独立的,因此分布P(x1,x2|HE)P(x1,x2|HE)可以通过下式得到:
通过简单的推导,可以得到对数似然比的闭式解
其中
这个对数似然比形式有三个有趣的性质:
1. 矩阵A和G都是负半定矩阵
2. 如果A=G负的对数似然比将会退化成马氏距离
3. 特征在经过任何的满秩的线性变化之后,这个对数似然比矩阵都是不变的
训练模型
可以使用LDA(线性判别分析)来得到协方差矩阵,不过为了更高的准确度,我们使用一个类似EM算法来求解
E步(Expectation)
对每一个有m张图像的物体,隐变量h=[μ;ϵ1;…;ϵm]h=[μ;ϵ1;…;ϵm] 和观测值x=[x1;…;xm]x=[x1;…;xm] 之间的关系为
隐变量服从分布
其中Σh=diag(Sμ,Sϵ,…,Sϵ)Σh=diag(Sμ,Sϵ,…,Sϵ).
由此我们可以得到
其中
由观测xx我们可以得到隐变量hh的期望:
直接计算上式的代价是很高的,空间复杂度是计算复杂度分别为O(m2d2),O(d3m3)O(m2d2),O(d3m3),不过利用结构特点,可以将空间复杂度和时间复杂度降低到O(d2),O(d3+md2)O(d2),O(d3+md2).
M步(maximization)
在这一步,更新参数{Sμ,Sϵ}{Sμ,Sϵ}的值:
其中μ,ϵμ,ϵ是E步中计算得的隐变量的均值
初始化
在本实现中,SμSμ和SϵSϵ初始化为随机的正定矩阵。例如,可以从一些随机数据中得到的协方差矩阵作为初始值。