1 人脸检测、人脸验证、人脸识别
人脸检测:是否有人脸,有多少人脸? 例子:某些智能手机的相机在拍照时会检测人脸
人脸验证:给出一张人脸和一个身份 ID,系统判断这种人脸是否对应这个身份ID。 例子:人脸解锁
人脸识别:给出一张人脸,系统会取其特征,然后与库中的所有人的人脸特征做对比,判断属于哪一个人。
人脸识别比人脸验证复杂得多,前者是一对多,而后者是一对一。如果人脸验证正确的概率为 99%,那么这已经算非常高了。如果在包含100个人的人脸识别系统中,每个人识别正确的概率为 99%,那么要100个全部识别正确的概率为 0.9 9 100 ≈ 0.366 0.99^{^{100}}\approx0.366 0.99100≈0.366,即 36.6%,这是一个相当低的正确率。
2 单样本学习
3 孪生网络 (Siamese Network)
4 三元组损失函数
5 基于孪生网络的二分类系统实现人脸识别
6 一个节约时间的方法
当人脸检测系统训练完成,在进行人脸识别预测的时候,我们会输入一张新的人脸图片,然后系统会把这张新图片依次和人脸库中每张人脸图片输入孪生网络。无论是通过单元组损失函数,还是通过二分类的方法来实现人脸识别,在每一次识别预测的时候都需要通过孪生网络计算两次特征向量。
我们可以先就算出人脸库中每张人脸的特征向量,然后储存起来。当进行人脸识别预测的时候,这时我们仅仅需要计算新人脸图片的特征向量,然后取出之前计算好的人脸库中每个人的人脸特征,再依次做对比。这样可以节省很多时间。