吴恩达卷积神经网络4:人脸识别

4.1What is face recognition?

1、人脸验证,判断是否与模板一直,是一对一的问题

2、人脸识别,一对多的问题

所以人脸识别对于正确率的要求更高。

吴恩达卷积神经网络4:人脸识别

4.2One-shot learning

人脸识别模型只能通过仅仅一张照片来学习,然后就要对比输入给出输出了。

吴恩达卷积神经网络4:人脸识别

在人脸识别系统中,一般数据库中我们都只有一张某个人的照片,如果用一张照片来训练模型,效果很差,所以要解决这个问题需要引入相似函数

吴恩达卷积神经网络4:人脸识别

One-shot learning只需要学习函数d(img1, img2)。

4.3、Siamese network

一张图片经过CNN处理之后会输出全连接层FC,把两张图片的的结果计算范数来表示他们的相似程度

吴恩达卷积神经网络4:人脸识别

吴恩达卷积神经网络4:人脸识别

吴恩达卷积神经网络4:人脸识别

而后我们的目标就很明显了,如果这两张图片表示的是同一个人,那么最后两个向量的距离计算的结果就一定要小;如果两个图片表示的不是同一个人,那么最后的结果当然要大得多。

接下来我们要研究的就是,如果利用函数来实现这个网络了。

4.4、Triplet Loss

对于定义合适的损失函数,这里引入三元损失函数,通过三张图片,样本,正例,反例。从而通过计算样本与正例的距离和样本与反例的距离

吴恩达卷积神经网络4:人脸识别

吴恩达卷积神经网络4:人脸识别

为了确保网络对于所有的编码,不会总输出0或者都设成互相相等的

吴恩达卷积神经网络4:人脸识别

  • 损失函数如下:

吴恩达卷积神经网络4:人脸识别

吴恩达卷积神经网络4:人脸识别

如果样本与正例距离远小于样本与反例距离,那么损失是0,反之损失就是他们之间的差值。

  • 选择A,P,N:

最好不要用随机,而是用人为的方式挑选,更不像的正例和很像的反例,然后这样神经网络会学习的更好

4.5Face verification and binary classification

不同于上一节的处理方法,人脸识别问题抽象为一个二分类的问题。

吴恩达卷积神经网络4:人脸识别

吴恩达卷积神经网络4:人脸识别

PS:

  1. 两张图片所经过的神经网络相同,两组参数是绑定的,这样的效果会不错。
  2. 可以预计算数据库中数据的向量,而不是现计算,这样既可以省时间又可以省资源。而且又因为不用存储原始图像,所以每个员工所占的空间也不多。

4.6What is neural style transfer?

吴恩达卷积神经网络4:人脸识别

4.7What are deep ConvNets learning?

从第一层的隐藏单元开始,假设遍历了训练集,找出该层**函数输出最大的9块图像区域;然后再找出该层的其他单元(不同的滤波器通道)**函数输出最大的9块图像区域。其中每个3*3区域表示一个运算单元。

吴恩达卷积神经网络4:人脸识别

可以看到第一层检测的是边缘或者颜色的信息,随着层数的增加,检测的纹理更加复杂。

吴恩达卷积神经网络4:人脸识别

4.8Cost function

吴恩达卷积神经网络4:人脸识别

代价函数有两部分构成,一部分内容代价函数:关于内容图片和生成图片的函数,用来度量生成图片G的内容与内容图片C的内容有多相似;第二部分风格代价函数:关于S和G的函数,用来度量S和G的风格的相似度最后用两个超参数来确定内容代价和风格代价两者之间的权重。

吴恩达卷积神经网络4:人脸识别

吴恩达卷积神经网络4:人脸识别吴恩达卷积神经网络4:人脸识别

4.9Content cost function

吴恩达卷积神经网络4:人脸识别

吴恩达卷积神经网络4:人脸识别

注意:隐藏层l如果太小,生成的图片和内容图片在像素会很接近如果层数比较深,就会考虑内容图片里是否有狗,然后就确保生成图片里有一个狗。所以在实际中,l在网络中既不会选得太浅,也不会选得太深。

4.10Style cost function

吴恩达卷积神经网络4:人脸识别

吴恩达卷积神经网络4:人脸识别

4.11、1D and 3D generalizations of models

吴恩达卷积神经网络4:人脸识别

吴恩达卷积神经网络4:人脸识别

应用:医疗检查(CT)、电影中检测动作以及人物行为等。