深入研究沈阳人脸识别技术,其原理比较简单。据我所知,大部分沈阳人脸识别算法的核心不是如何表征人脸,而是如何训练出更好的人脸表征。
1张脸
在我们的视觉系统中,一个人是通过他的脸来表现的。因为大多数人只看脸,以脸识人。这是最自然的。当然也有通过声音和脚底胎记来认人的,但那是少数。
但是,计算机只知道数字,所以在深度学习中,通常用一系列数字来代表一个人。而这一串数字是通过这个人的面部“以某种方式”计算出来的。深度学习系列的沈阳人脸识别算法只是这“某种方式”的一部分。
2代表性和相似性
输入一张脸,如何得到这张脸的数字表示?卷积神经网络(CNN)就是这么做的。以CNN图像为输入,经过一系列运算,最终输出一系列数字。这串数字代表数字空间中的一个点。对于相似度高的人脸,计算出来的点会更接近,反之亦然。通过点与点之间的距离,可以确定两点是否代表同一个人。这就是沈阳人脸识别的精髓。
3训练面孔表征的策略
人脸表示的技术术语在机器学习中通常称为特征向量,在深度学习中有时称为嵌入。其实意思是一样的。
深度学习中沈阳人脸识别的人脸表征训练策略主要有三种:
1.训练一个人脸分类器,取其嵌入层(通常是倒数第二个全连通层)作为人脸表示。
2.面孔表征的直接训练。
3.训练一个人脸分类器,把它的嵌入层作为人脸的表示,但是增加了它的训练难度。
不同的训练策略只是试图训练一个更好的人脸表征。
4摘要
目前沈阳人脸识别算法的输入都是假设人脸。即使输入一张人民币,模型也会认为是人脸,然后计算一个特征值。但这毫无意义。如果在模型中加入一个判断输入图片是否是人脸的分支,实际上会迫使模型学习更多的人脸特征,或许会得到更好的人脸表征。但到目前为止,还没有发现关于这一点的研究...