@大碗 和 @笨猫猪 提到的清华2006年那个系统的完成人是我同实验室的直系师兄。这个系统09年以后一直是我负责改进。还参加了最新的frvt2012。此外题主说的那篇paper我上周组会刚讲过。因此自认为有点发言权。
先给出观点,如果数据没有注水的话,这个绝对是突破性的成果。lfw上超过人脸意味着在人脸识别80%的应用环境下机器的性能可以超过人脸。而06年的结果只意味着在身份证比对、小型办公场所签到等极少应用下机器的性能超过人脸。
1.2006年全面超过人脸时的条件是实验室内部拍摄条件、正面姿态、正面光照。这种条件下的人脸识别错误率的进展大约是每3年下降10倍。FRVT2012中期结果中最好的单位(不出意外应该是日本的NEC公司)的错误率已经达到了我们06年系统的1%左右。而我手上的系统相比06年大约提升了十几倍,目前在中期结果中排名6-7名。
2.lfw数据库直接是从雅虎网上抓的照片。难度在业界属于顶尖。该库09年公布后至今没有难度更大的静态照片库出现。难度相当但数据量更大的库倒是有两三个。我们06年的系统跑lfw也就70+的水平。而我们实验室的最高水平(也是国内除face++外的最高水平)大约是92左右。大概相当于2012年底的state-of-the-art。
3.2014年的三个逆天结果,deepface的97.25%、face++的97.27%、gaussianface的98.52%,前两者都用了deep learning。第一个训练数据400万。第二个算法细节不明,但deeplearning向来吃样本,想来训练库也是百万量级。唯有gaussianface的训练库仅2万余。
4.arxiv和CVPR等顶会完全不矛盾。先发上来只是为了不让别人抢先。估计未来的顶刊顶会上很快会出现这个结果。
5.算法细节太过技术,难以在这里深入浅出,就不多介绍了。只提一篇paper。Blei的latent dirichlet allocation,2003年的jmlr,引用量近万。本文对人脸的贡献方式大概相当于lda对文档分类的贡献方式,懂行的人自然知道这句话的分量。当然lda珠玉在前,deep learning风头正劲,所以真正的历史地位,本文自然不可能赶上lda。但一篇正常pami的水准肯定是有的。
=============================5月21日更新================================
居然上了知乎日报好激动~那就再说一下我对GaussianFace的理解了。只说我认为最有突破性的地方吧。具体推导过程一来论文中有,二来比较复杂,三来我自己还没重复实验不确保细节理解都正确,这里就从略了。
1.解决的问题是模式认证问题,就是说输入两个向量和(可以是人脸照片或别的),输出相似度表示这两个向量属于同一类的概率。(人脸识别中就是两张照片是同一个人的概率)。训练集有一堆向量,有些属于同一类,有些不属于同一类。目标就是根据训练集来猜这个函数.
2.GaussianFace以前成功的算法分两类:metric learning和bayesian framework。它们都是假设这个函数具有一个参数的形式。然后利用训练集估计出一个最好的。
2.1 metric learning中是显式的,比如是二次型的形式,就是中间的那个矩阵。
2.2 bayesian framework是隐式的,认为训练、测试样本都有同一个随机model生成,代表这个model的各种参数,由训练集根据最大似然/最大后验/beyesian方法估计得到。然后在给定model的情况下推导的最优表达式。
3.这两类问题都有一个硬伤:训练集样本和测试集样本分布情况不同(比如拍摄条件不同、人种不同等等)时,由训练集估计的对测试集不适用,这样这些训练集就用不上了,只会添乱。
4.GaussianFace声称的牛逼之处在于,用他们的算法,训练集只需少量和测试集分布一致的样本+大量其他样本,算法就能从这些其他样本中获益。
5.他们的关键在于,不认为具有参数形式,而是认为它是一个随机函数。
6.一个函数,在不严谨的说法下,可以看成一个无穷维的向量。
7.一个有限维随机向量可以假设符合多维正态分布-即gaussian分布。类似的,一个无穷维向量,或一个函数,可以假设服从无穷维正态分布-即gaussian过程。
8.决定gaussian分布的参数为均值和协方差矩阵。同样,决定gaussian过程的参数为均值函数和协方差函数。文章中假设,因此参数只剩协方差函数。
9.通过训练集估计的算法是个优化过程,定性的说,就是尽量同时让1.那个和测试集分布一致的少量训练集的出现概率尽可能高。2.其他训练集对这个训练集提供的信息尽可能多。整个优化过程相当麻烦,我也不确保细节都理解正确。总之这个是可以估计出结果的。
10.有了,就有了明确的先验分布,接着就用普通Bayesian方法,给定测试样本时可以将不相关的变量都积分消除,得到最终的相似度。这一步用了些近似处理,细节不表。
11.GaussianFace相比与之前算法最大的区别在于,认为相似度函数是随机的而非确定的。这样从模型上认可了不同样本可能具有不同的相似度函数。因此从原理上克服了第3点提到的问题。
12.缺点在于,的估计只能通过kernel的形式,空间复杂度为样本数的平方,这个限定了在一般实验室中,训练样本数只能限制在量级。
— 完 —
本文作者:梁亦聪
【知乎日报】
你都看到这啦,快来点我嘛 Σ(▼□▼メ)
此问题还有 11 个回答,查看全部。
延伸阅读:
LBP (Local Binary Pattern) 是目前流行的模式识别、人脸识别算法吗?
比较好的开源人脸识别软件有哪些?