人脸识别 - DeepFace、DeepID and FaceNet - 转

匿名 (未验证) 提交于 2019-12-02 23:05:13

一、模型:

DeepFace:在实现时需要使用3D对齐技术,然后将对齐的结果送入一个9层网络进行处理。整个训练过程前两个卷积层采用了共享卷积核,后三个卷积采用不共享卷积核,倒数第二层采用全连接层提取出对应的人脸特征。最后一层是一个softmax层分类。

DeepID:DeepID网络有一代和二代两种,两种网络的区别主要在于损失函数的定义。以DeepID二代为例,其网络结构是8层网络结构。4个卷积层,3个池化层,1个全连接层,全连接得到的是160特征向量。然后在根据160维向量svm或者softmax分类。在第一阶段处理完之后还根据生成的结果训练了用于鉴定图片是不是一类的贝叶斯分类器。并用该分类器对特征向量进行筛选并且可以泛化的。除此之外,该网络的最后一层分别和倒数前两层相连接(为了视野的互补)。

FaceNet:FaceNet是谷歌提出的网络结构,其网络结构灵活性较大可以使22层的Zelier&Fergus的网络,也可以使用现在在物体识别里面效果比较好的inception网络。其主要特点采用三元对之间的距离构建损失函数。


六、模型使用

DeepFace:模型在使用时需要先对齐,提取出对应的特征,但是存在一个弊端,模型训练特征的过程是使用分类器的结果构造损失函数的。也就是说当模型使用的时候特征和分类器是绑定的,而这种分类器分出来的类大小又和输入数据类的大小绑定。针对不同的输入数据需要不同的训练以保证准确度。

DeepID: 模型在使用过程中同样面临和上述模型一样的问题。但是该模型在最后训练了贝叶斯分类器,该分类器在一定程度上解决了泛化的问题。使用时通过贝叶斯分类器进行鉴定。

FaceNet:直接通过模型计算距离,并通过距离进行分类和预测。


From:人脸识别之DeepFace、DeepID以及FaceNet网络的区别

文章来源: https://blog.csdn.net/tony2278/article/details/86349617
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!