吴恩达Coursera深度学习课程 deeplearning.ai (4-4) 人脸识别和神经风格转换--课程笔记

本文是吴恩达Coursera深度学习课程的笔记,主要涵盖人脸识别和神经风格转换。在人脸识别部分,介绍了One-Shot学习、Siamese网络、Triplet损失及其在面部验证中的应用。神经风格转换部分讲解了内容与风格融合,通过内容代价函数和风格损失函数生成新图像的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Part 1:人脸识别

4.1 什么是人脸识别?

  • 人脸验证: 输入图片,验证是不是 A
  • 人脸识别: 有一个库,输入图片,验证是不是库里的一员

人脸识别难度更大,要求准确率更高,因为1%的人脸验证错误在人脸识别中会被放大很多倍。

4.2 One-Shot 学习

对于人脸识别系统,通常我们数据库里仅存储着每个人的一张照片,我们需要用这一张照片来实现该人的识别,这个问题就是one shot 问题。

人脸识别系统需要识别出是否是库中K个人之一,或者不在库中。

对于one shot learning 问题:只有单个样本,不足以训练一个稳健的卷积神经网络来进行不同人的识别过程。而且,在有新的样本成员加入的时候,往往还需要对网络进行重新训练。所以我们不能以传统的方法来实现识别系统。

Similarity 函数:图片两两对比差异
  • d(img1, img2):两幅图片之间的差异度
  • 输入:两幅图片
  • 输出:两者之间的差异度
  • 如果 < 0.5 (阈值可调),则输出“same”;
  • 如果 > 0.5(阈值可调),则输出“different”

image

将输入的人脸图片与数据库中所拥有的图片成对输入Similarity函数,两两对比,则可解决one shot problem。如果有新的人加入团队,则只需将其图片添加至数据库即可。

4.3 Siamese 网络

Siamese 可以实现上文的Similarity 函数

利用同样的卷积神经网络训练两种不同的图片x1, x2分别得到一个多维向量f(x1)和f(x2), 然后比较这两个向量的距离

||f(x1)f(x2)||22 | | f ( x 1 ) − f ( x 2 ) | | 2 2

image

训练目标:训练神经网络满足相近图片距离小,相远图片距离远

image

4.4 Triplet 损失

如何通过学习神经网络的参数,得到优质的人脸图片的编码?方法之一就是定义 Triplet 损失函数,并在其之上运用梯度下降。

选取三张图片

  • Anchor (A): 目标图片;
  • Positive(P):与Anchor 属于同一个人的图片;
  • Negative(N):与Anchor不属于同一个人的图片。

目标:同一个人的图片差距小,不同人的图片差距大

L(A,P,N)=max(||f(A)f(P)||||f(A)f(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值