吴恩达深度学习笔记五:卷积神经网络 人脸识别和风格迁移部分

2023-11-10

1、人脸识别

人脸验证(Face Verification):输入图片和模板图片是否为同一人,一对一问题。
人脸识别(Face Recognition):输入图片,检测是否为多个模板图片中的一个,一对多问题。

一般来说,人脸验证由于范围较小难度较小,而人脸识别需要进行一对多的比对难度较大准确率也较低。

One-Shot Learning: 由于人脸数据库的容量 K 并不固定,如果使用以前的分类方法,在全连接层后面进行softmax分类的话,一旦容量 K 变动,那么需要重新修改和训练模型,代价太大。因此需要一种方法通过卷积模型定义一个编码方式之后可以只进行一次训练,即可以获取输入图片的输入结果,对输入结果进行比较得出识别结果。

现在一般使用 相似函数(similarity function) 来比较两个图片的编码结果:其差异 d 小于某个阀值时认为相同,否则认为不同。

d(img1,img2)τd(img1,img2)>τ d ( i m g 1 , i m g 2 ) ≤ τ → 相 同 d ( i m g 1 , i m g 2 ) > τ → 不 同

Siamese Network: 确定比较方法之后,可以对编码结果进行直接比较。我们知道卷积过程实际上是提取图片特征的过程,全连接层可以看做图片特征的某种编码结果,因此直接使用 全连接的神经元参数 计算,而再不进行softmax等分类。网络结果如下。

这里写图片描述

得到图片 x(1)x(2) x ( 1 ) 和 x ( 2 ) 的 编码(卷积)结果 f(x(1))f(x(1)) f ( x ( 1 ) ) 和 f ( x ( 1 ) ) 后,其相似函数可以表述为编码结果差值的范数

d(x(1),x(2))=||f(x(1))f(x(2))||2 d ( x ( 1 ) , x ( 2 ) ) = | | f ( x ( 1 ) ) − f ( x ( 2 ) ) | | 2

显示为同一个人时 d 值应该很小,不同是 d 应该较大。

Triplet Loss(三重损失函数): 如果任选一张和其他图片进行比较,显然不相同的比例很大,此时模型错误认为不相同的代价太小,不利于模型的训练。因此一次训练引入三张图片:靶(Anchor)、正例图片(Positive)和反例图片(Negative)。
这里写图片描述

因为人脸相同时相似函数 差值d 小,不同时 差值d 大,因此:

d(A,P)d(A,N)=||f(A)f(P)||2||f(A)f(N)||20 d ( A , P ) − d ( A , N ) = | | f ( A ) − f ( P ) | | 2 − | | f ( A ) − f ( N ) | | 2 ≤ 0

然而上式当两个都为0时总成立,这不是我们希望看到的,引入边界(Margin)量:, α α ,有:
||f(A)f(P)||2||f(A)f(N)||2+α0 | | f ( A ) − f ( P ) | | 2 − | | f ( A ) − f ( N ) | | 2 + α ≤ 0

也就是说当人脸不相同时 上式 >=0 , 可以将其作为惩罚因子,Triplet (有三个对象)损失函数为(max函数表示取其中最大值):

L(A,P,N)=max(||f(A)f(P)||2||f(A)f(N)||2+α,0) L ( A , P , N ) = m a x ( | | f ( A ) − f ( P ) | | 2 − | | f ( A ) − f ( N ) | | 2 + α , 0 )

扩展得到 m 个样本的代价函数(cost function):

J=i=1mL(Ai,Pi,Ni) J = ∑ i = 1 m L ( A i , P i , N i )

然后即可以通过梯度下降训练神经网络。另外为了提高准确性需要给模型增加难度,例如不随机选取A,P,N三张图片,选择(A,P)相差较远(如换发型),而(A,N)相差较近的图片。

人脸验证(Verification)可以作为二分类问题处理, 将两张图片输入同一个模型得到全连接层,然后对两个子全连接层进行计算得到二分类结果:相同或是不同。

这里写图片描述

2、神经风格迁移

神经风格迁移(Neural style transfer)的过程很好的体现了卷积网络的工作原理。在卷积得到的第一层特征图(Feature Map)中遍历找到使激活函数值最大(特征最明显?)的9x9块图像区域如下, 其主要提取了一些形状和颜色特征

这里写图片描述

下面是有浅层到深层的变化:

这里写图片描述

放大第五层可以发现,越深的层其检测出的特征越全代表性越强:

这里写图片描述

神经风格迁移生成的图片其内容分别来自内容图和风格图:

这里写图片描述

使用类似人脸识别Triplet Loss的思想,将内容代价函数(Content cost function)和风格代价函数(Style cost function)两个组合作为训练的依据, α,β α , β 是调整权重的超参数:

J(G)=αJcontent(C,G)+βJstyle(S,G) J ( G ) = α ⋅ J c o n t e n t ( C , G ) + β ⋅ J s t y l e ( S , G )

由前面的卷积过程解释可以看出, 每一层的输出 al a l 都是原始数据的特征编码,同人脸识别一样,比较两个图片的编码 al a l 可以得到其差异。并且由于随着 l l 的加深 al a l 越能更全面具体的反映原图,因此,为了能够减少加入风格迁移引起的差异,一般使用中间层数的 l l , 内容代价函数为:

Jcontent(C,G)=12a[l](C)a[l](G)2 J c o n t e n t ( C , G ) = 1 2 ‖ a [ l ] ( C ) − a [ l ] ( G ) ‖ 2

卷积神经网络的一个重要特征是参数共享,也就是说一次卷积时按一次特定的规则对整个图片提取特征,不同的通道是不同方式提取特征的结果,如果一个特征在多个通道中出现且值较大,其所代表的风格(形状(扭曲)和颜色等)也就越明显。反过来,风格明显的区域卷积之后不同通道 al a l 中的对应的激活值都比较大,因此可以是以乘积来表示两个通道间的特征相关性,获取图片的风格矩阵

G[l]kk'=i=1n[l]Hj=1n[l]Wa[l]ijka[l]ijk G [ l ] k k ′ = ∑ i = 1 n H [ l ] ∑ j = 1 n W [ l ] a i j k [ l ] ⋅ a i j k ′ [ l ]

风格代价函数计算风格图(S)和生成图(G)的风格矩阵间的差异:

J[l]style(S,G)=12n[l]Hn[l]Wn[l]Ck=1n[l]Ck'=1n[l]CG[l][S]kk'G[l][G]kk'2 J s t y l e [ l ] ( S , G ) = 1 2 n H [ l ] n W [ l ] n C [ l ] ∑ k = 1 n C [ l ] ∑ k ′ = 1 n C [ l ] ‖ G k k ′ [ l ] [ S ] − G k k ′ [ l ] [ G ] ‖ 2

可能是由于不同通道间提取到的特征的相似度较低,可以使用多层的风格矩阵相加如下, λ λ 是权重超参:

Jstyle(S,G)=λ[l]J[l]style(S,G) J s t y l e ( S , G ) = ∑ λ [ l ] ⋅ J s t y l e [ l ] ( S , G )

3、多维卷积

主要在于大小(维度)的变化, 输入时什么维度,滤波器也是什么维度,通道数保持一致,滤波器个数随意。

二维:

这里写图片描述

一维:

这里写图片描述

三维:

这里写图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

吴恩达深度学习笔记五:卷积神经网络 人脸识别和风格迁移部分 的相关文章

  • 澳鹏干货解答!“关于机器学习的十大常见问题”

    探索机器学习的常见问题 了解机器学习和人工智能的基本概念 原理 发展趋势 用途 方法和所需的数据要求从而发掘潜在的商机 什么是机器学习 机器学习即教授机器如何学习的过程 为机器提供指导 帮助它们自己开发逻辑 访问您希望它们访问的数据 机器学
  • LLama Factory 实操记录(一)

    1 api端口参数说明 src api h help 显示帮助信息并退出 model name or path MODEL NAME OR PATH 模型权重的路径或标识符 来自 huggingface co models 或 models
  • 详解数据科学自动化与机器学习自动化

    过去十年里 人工智能 AI 构建自动化发展迅速并取得了多项成就 在关于AI未来的讨论中 您可能会经常听到人们交替使用数据科学自动化与机器学习自动化这两个术语 事实上 这些术语有着不同的定义 如今的自动化机器学习 即 AutoML 特指模型构
  • 详解数据科学自动化与机器学习自动化

    过去十年里 人工智能 AI 构建自动化发展迅速并取得了多项成就 在关于AI未来的讨论中 您可能会经常听到人们交替使用数据科学自动化与机器学习自动化这两个术语 事实上 这些术语有着不同的定义 如今的自动化机器学习 即 AutoML 特指模型构
  • 使用pytorch构建图卷积网络预测化学分子性质

    在本文中 我们将通过化学的视角探索图卷积网络 我们将尝试将网络的特征与自然科学中的传统模型进行比较 并思考为什么它的工作效果要比传统的方法好 图和图神经网络 化学或物理中的模型通常是一个连续函数 例如y f x x x x 其中x x x
  • 【深度学习】从huggingface上加载数据集到本地并保存为csv文件

    场景 想从huggingface上下载yelp数据集 并以csv格式保存到本地 方法 1 git clone 首先通过git在线下载数据集的相关配置文件 git代理配置参考 链接 终端上执行如下命令 1 git clone https hu
  • 卷积神经网络:专门用于图像和语音处理的深度学习模型

    随着人工智能技术的发展和应用 深度学习模型在图像和语音处理领域中扮演着越来越重要的角色 其中 卷积神经网络 Convolutional Neural Network 简称CNN 是一种专门用于图像和语音处理的深度学习模型 本文将介绍卷积神经
  • 时间序列平稳性相关检验方法

    理解平稳性 一般来说 平稳时间序列是指随着时间的推移具有相当稳定的统计特性的时间序列 特别是在均值和方差方面 平稳性可能是一个比较模糊的概念 将序列排除为不平稳可能比说序列是平稳的更容易 通常不平稳序列有几个特征 平均值随时间推移发生变化
  • 图神经网络与智能教育:创新教育技术的未来

    导言 图神经网络 GNNs 和智能教育技术的结合为教育领域注入新活力 本文深入研究二者的结合可能性 涉及各自侧重 当前研究动态 技术运用 实际场景 未来展望 并提供相关链接 1 图神经网络与智能教育的结合方向 1 1 图神经网络在教育技术中
  • 探索人工智能:深度学习、人工智能安全和人工智能编程(文末送书)

    文章目录 学习AI要看的第一本书 人工智能应当以人为本 史蒂芬 卢奇 Stephen Lucci 萨尔汗 M 穆萨 Sarhan M Musa 丹尼 科佩克 Danny Kopec 已故 通晓六点 明白人工智能是怎么回事 基本概念和历史
  • 山西电力市场日前价格预测【2024-01-09】

    日前价格预测 预测说明 如上图所示 预测明日 2024 01 09 山西电力市场全天平均日前电价为314 92元 MWh 其中 最高日前电价为593 66元 MWh 预计出现在18 15 最低日前电价为54 95元 MWh 预计出现在13
  • 自动驾驶轨迹预测

    目录 神经网络轨迹预测综述 比较新的轨迹预测网络 Uber LaneRCNN 5 Google VectorNet 6 Huawei HOME 7 Waymo TNT 8 Aptive Covernet 9 NEC R2P2 10 商汤 T
  • 概述:利用大模型 (LLMs) 解决信息抽取任务

    论文标题 Large Language Models for Generative Information Extraction A Survey 论文链接 https arxiv org pdf 2312 17617 pdf 论文主要探讨
  • 用通俗易懂的方式讲解:如何用大语言模型构建一个知识问答系统

    传统搜索系统基于关键字匹配 在面向 游戏攻略 技术图谱 知识库等业务场景时 缺少对用户问题理解和答案二次处理能力 本文探索使用大语言模型 Large Language Model LLM 通过其对自然语言理解和生成的能力 揣摩用户意图 并对
  • 【毕业设计选题】复杂背景下的无人机(UVA)夜间目标检测系统 python 人工智能 深度学习

    前言 大四是整个大学期间最忙碌的时光 一边要忙着备考或实习为毕业后面临的就业升学做准备 一边要为毕业设计耗费大量精力 近几年各个学校要求的毕设项目越来越难 有不少课题是研究生级别难度的 对本科同学来说是充满挑战 为帮助大家顺利通过和节省时间
  • 毕业设计:基于卷积神经网络的图像分类系统 python人工智能

    目录 前言 设计思路 一 课题背景与意义 二 算法理论原理 2 1 卷积神经网络 2 2 SVM算法 三 检测的实现 最后 前言 大四是整个大学期间最忙碌的时光 一边要忙着备考或实习为毕业后面临的就业升学做准备 一边要为毕业设计耗费大量精力
  • 如何快速申请GPT账号?

    详情点击链接 如何快速申请GPT账号 一OpenAI 1 最新大模型GPT 4 Turbo 2 最新发布的高级数据分析 AI画图 图像识别 文档API 3 GPT Store 4 从0到1创建自己的GPT应用 5 模型Gemini以及大模型
  • 机器学习算法实战案例:LSTM实现多变量多步负荷预测

    文章目录 1 数据处理 1 1 数据集简介 1 2 数据集处理 2 模型训练与预测 2
  • AI在广告中的应用——预测性定位和调整

    营销人员的工作就是在恰当的时间将适合的产品呈现在消费者面前 从而增加他们购买的可能性 随着时间的推移 营销人员能够深入挖掘越来越精准的客户细分市场 他们不仅具备了实现上述目标的能力 而且这种能力还在呈指数级提升 在AI技术帮助下 现在的营销
  • 史上最全自动驾驶岗位介绍

    作者 自动驾驶转型者 编辑 汽车人 原文链接 https zhuanlan zhihu com p 353480028 点击下方 卡片 关注 自动驾驶之心 公众号 ADAS巨卷干货 即可获取 点击进入 自动驾驶之心 求职交流 技术交流群 本

随机推荐

  • maven 打包时后缀加时间

    规范的包名对开发及运维人员的记录及备份是有益的 如何在maven 打包时后缀加时间 在原有打包plugin后面加如下代码
  • 数据结构:面试题目-专项练习-栈-习题练习

    1 下列关于栈叙述正确的是 正确答案 D 你的答案 D 正确 算法就是程序 设计算法时只需要考虑数据结构的设计 设计算法时只需要考虑结果的可靠性 以上三种说法都不对 解析 A 程序是数据结构 算法 错 B C 设计一个算法时 考虑的因素很多
  • 迅为i.MX6ULL开发板Platform设备驱动运行测试

    文章目录 1 编译驱动和设备程序 2 编译应用测试程序 3 运行测试 1 编译驱动和设备程序 和前面章节中驱动测试程序一样需要一个Makefile文件 只是将obj m的值改为led device o led driver o Makefi
  • vue项目初始化出现tar ENOENT: no such file or directory错误的解决办法。

    在npm install时 出现了tar ENOENT no such file or directory报错 原因 node的版本问题 解决办法 全局环境下更新node版本 或者使用公司内部包装过后的的 node 按照顺序运行下面的语句
  • 认识磁盘阵列柜性能

    一个 SCSI 硬盘的平均故障间隔时间 MTBF Mean Time Between Failure 都在数万 小时以上 在正常使用情况下 要坏掉一个硬盘已经很不容易了 在同一系统内 两个磁 盘驱动器同时坏掉的机率 更是微乎其微 但是 如果
  • Python中 ddt 数据驱动的小细节

    文章目录 前言 一 什么是DDT 二 安装ddt 三 基本原理和用法 总结 前言 记录ddt用法的一些小细节 一 什么是DDT DDT是 Data Driven Tests 的缩写 数据驱动测试 既然是测试 那么就要与单元测试框架一起使用
  • IDEA 4种解决控制台中文乱码问题

    前言 IntelliJ IDEA 如果不进行配置的话 运行程序时控制台中文乱码问题会非常严重 严重影响我们对信息的获取和程序的跟踪 我总结以下 4 点用于解决控制台中文乱码问题 希望有助于大家 注意 下面根据我日常工作的经验总结 排序的先后
  • 什么是吉布斯采样(Gibbs Sampling)

    目录 1 蒙特卡洛方法 1 1 蒙特卡洛方法的作用 1 2 非均匀分布采样 1 3 分布p x 不好采样怎么办 2 什么是吉布斯采样 2 1 马尔可夫链 2 1 1 什么是马尔可夫链呢 2 1 2 为什么我们要引入马尔可夫链 2 1 3 对
  • 快速学会git版本管理——创建分支和合并分支

    首先创建分支 git创建分支只需要使用switch 命令 git switch c 分支名 创建分支并切换到该分支 大家看后面的括号里已经变成了dev 说明我们切换成功了 然后想要合并分支就在 创建的分支中 进行提交修改的内容 还是通过 a
  • 5G QoS控制原理专题详解-QoS控制原理(2)

    相关文章会在公众号同步更新 最近工作忙 更新完公众号后 经常容易忘记再CSDN上再发 公众号上的文章更新的能快一些 各位同学有兴趣可以关注一下 公众号 5G通信大家学 持续更新的相关5G内容都是直接根据3GPP整理 保证更新内容的准确性 避
  • OOM(内存溢出)造成原因及解决方案

    一 概念 内存溢出 Out Of Memory 简称OOM 是指应用系统中存在无法回收的内存或使用的内存过多 最终使得程序运行要用到的内存大于能提供的最大内存 二 造成原因 2 1 内存泄漏 由于长期保持某些资源的引用 垃圾回收器无法回收它
  • first season seventh episode,The entire city is blacked out!(全城大停电,Chandler有好事???)

    Scene Central Perk Rachel is introducing Phoebe who is playing her guitar for the crowd Rachel Everybody Shh shhh Uhhh C
  • 【Java项目】多文件传输

    1 前言 为了实现一个C S框架应用 客户端向服务器请求资源 采用传统的BIO模式传输 问题 但当客户端数量增加 传输效率下降 尤其是多个客户端请求1G文件时 传输大概有十多分钟 问题分析 客户端所需要的资源都是通过服务器单独发送 当请求增
  • Angular6项目构建

    Angular6项目构建 安装Nodejs长期支持版本 LTS 设置npm淘宝代理 npm config set registry https registry npm taobao org npm install g angular cl
  • linux 使用chomd给文件授权 报错 -bash: chomd: 未找到命令

    1 简介 chmod是一个Linux Unix命令 用于更改文件或目录的权限 2 解决方案 以下是一些常见的解决方案 输入命令时检查有无拼写错误 确认您是否具有执行该命令所需的权限 检查您的系统是否已安装此命令 您可以尝试使用whereis
  • 忘记iPhone锁屏密码?三种方法帮你顺利解决!

    不论是苹果手机用户还是安卓手机用户 如果开机的锁屏密码忘记的话 应该是比较麻烦的一件事情 iPhone用户如果连续尝试6次密码都不对的话 iPhone将会自动锁死 也就变成了我们常说的 砖机 不过在iPhone锁死之前 我们还有三种方法可以
  • 在WindowsXP系统下搭建PPPoE服务器总结

    对与路由器的测试中遇到一个问题就是PPPoE的测试 具体如下 一 组网图如下 二 要确保WindowsXP系统的服务中Workstation Telephony Remote Access Connection Manager Routin
  • 已获万赞,最新Android通用流行框架大全

    前言 2021全年从开头到结尾似乎就没多少好消息 这里我说的是整个互联网行业 并没有单单挑出某个公司或者某个细分领域 而对于广大Android开发者来说 找工作似乎也变得越来越难了 2021年1月 我在51job搜索了一下北京地区的Andr
  • 基于STM32 的IIC 模拟主机编写

    最近在学习STM32 的IIC IO 模拟主机方式 好像失败了 include myiic h include delay h MCU VERSION DATA 作者 other Function IIC
  • 吴恩达深度学习笔记五:卷积神经网络 人脸识别和风格迁移部分

    1 人脸识别 人脸验证 Face Verification 输入图片和模板图片是否为同一人 一对一问题 人脸识别 Face Recognition 输入图片 检测是否为多个模板图片中的一个 一对多问题 一般来说 人脸验证由于范围较小难度较小