Deep Learning Face Representation by Joint Identification-Verification

DeepID2

1、四个问题

  1. 要解决什么问题?

    • 人脸识别。
    • 主要挑战是,设计一套方法能够有效地减少类内差异,并增大类间差异。
  2. 用了什么方法解决?
    • 使用face identification(人脸分类)和face verification(人脸验证)信号进行监督学习。训练了一个CNN用于次任务。
  3. 效果如何?
    • 老论文了,就看个思路。
    • 最后在LFW上达到了99.15%的人脸验证准确率。
  4. 还存在什么问题?
    • 由于是较早的论文,网络结构设计以及训练上有一定局限性。

2、论文概述

2.1、网络结构

  • 网络结构很简单,类似于LeNet。卷积层+池化层组合,经过四层后,将卷积层展开为全连接层,用来输出特征向量。

2.2、Identification和verification

  • 首先是人脸分类(face identification)信号,主要用于将人脸划分为nnn个类(人)。
  • 人脸分类需要在上面的网络之后加上一个有nnn个输出的softmax层,用来输出预测的每个类的概率值。
  • 公式如下:

  • 然后是人脸验证(face verification)信号,提取得到的特征向量对于类内来说距离更小,对于类间来说距离更大。
  • 直接把上面网络的输出作为特征向量,使用L1/L2范数计算特征之差,使用L2范数作损失函数的效果会更好。实质上,使用L2范数衡量的是特征向量之间的欧式距离。
  • 公式如下:

  • 关于公式的几个看法:

    • yij=1y_{ij}=1yij​=1意味着样本是同类,这时我们需要让同类之间的特征向量差值尽可能小,所以就最小化两个特征向量的L2范数。
    • yij=−1y_{ij}=-1yij​=−1意味着是不同类,这时候我们想让不同类之间的特征向量的距离比同类之间的特征向量的距离大,但不能是无穷大,所以又加入了一个常数mmm,防止让欧式距离趋近于无穷大。考虑到人脸任务中,两张脸有些地方是会有一定的相似性,但并意味着我们完全不需要此类信息,比如:这两个人脸的鼻子都很大,并不意味着就可以丢掉鼻子大小这个信息,也许有的人鼻子大小差异又会比较大。
  • 如果考虑的是余弦相似度函数,公式如下图所示:

  • 公式说明:

    • d=fi⋅fj12(yij−δ(wd+b))d = \frac{f_i \cdot f_j} {\frac{1}{2} (y_{ij} - \delta(wd+b))}d=21​(yij​−δ(wd+b))fi​⋅fj​​是特征向量之间的余弦相似度。
    • δ\deltaδ是sigmoid函数。
    • yijy_{ij}yij​是label。

2.3、训练流程

2.4、算法流程

  1. 使用SDM算法抽取人脸上的21个标记,然后根据得到的标记对人脸进行对齐。通过变化位置、尺度、颜色通道,得到200个face patch,对每个face patch,使用该patch及其水平反转的图像进行特征学习。所以,一共需要200个深度卷积神经网络。
  2. 作者将论文中的深度卷积神经网络框架称为DeepID2。接着,作者使用200个DeepID2来学习上一步得到的patch,每个DeepID2都会将输入图像转换成一个160维的特征向量。
  3. 对每张图像而言,经过200个DeepID2学习到的特征数目为200*160,特征数目太大了。所以论文中使用前向后向贪心算法来选取一些有效且互补的DeepID2向量,以节约时间。注意,特征选择在每个DeepID2向量间进行,也就是一个DeepID2输出的向量,要么全被选中,要么全不被选中。
  4. 选中25个向量后,每张图像的维度是25*160=4000维。仍然太大,因而使用PCA进行降维,降维后大约有180维。
  5. 最后使用联合贝叶斯模型用来进行人脸验证。

3、参考资料

  1. https://blog.csdn.net/tsb831211/article/details/52760766
  2. https://blog.csdn.net/stdcoutzyx/article/details/41497545

论文笔记:DeepID2相关推荐

  1. ORB-SLAM3 论文笔记

    ORB-SLAM3 论文笔记 这篇博客 ORB-SLAM3系统 相机模型的抽象(Camera Model) 重定位的问题 图片矫正的问题 视觉惯性SLAM的工作原理 相关公式 IMU初始化 跟踪和建图 ...

  2. 【论文笔记】 LSTM-BASED DEEP LEARNING MODELS FOR NONFACTOID ANSWER SELECTION

    一.简介 这篇论文由IBM Watson发表在2016 ICLR,目前引用量92.这篇论文的研究主题是answer selection,作者在这篇论文基础上[Applying Deep Learnin ...

  3. 最新图神经网络论文笔记汇总(附pdf下载)

    点击上方,选择星标或置顶,不定期资源大放送! 阅读大概需要15分钟 Follow小博主,每天更新前沿干货 [导读]近年来,图神经网络变得非常火热,每年顶会在该领域内都会出现大量的研究论文,本文为大家提 ...

  4. [论文笔记] Fast Quality Driven Selection of Composite Web Services (ECOWS, 2006)

    Time: 4.0 hours Jae-Ho Jang, Dong-Hoon Shin, Kyong-Ho Lee, "Fast Quality Driven Selection of Co ...

  5. 论文笔记之:Action-Decision Networks for Visual Tracking with Deep Reinforcement Learning

    论文笔记之:Action-Decision Networks for Visual Tracking with Deep Reinforcement Learning  2017-06-06  21: ...

  6. 光流 速度_[论文笔记] FlowNet 光流估计

    [论文笔记] FlowNet: Learning Optical Flow with Convolutional Networks 说在前面 个人心得: 1. CNN的光流估计主要是速度上快,之后的v ...

  7. 论文笔记 《Maxout Networks》 《Network In Network》

    原文出处:http://zhangliliang.com/2014/09/22/paper-note-maxout-and-nin/ 论文笔记 <Maxout Networks> & ...

  8. 论文笔记:HKMF-T: Recover From Blackouts in TaggedTime Series With Hankel Matrix Factorization

    论文笔记:Hankel Matrix Factorization for Tagged Time Series to Recover Missing Values during Blackouts_U ...

  9. 论文笔记 A Spatial-Temporal Decomposition Based Deep Neural Network for TimeSeries Forecasting

    0 abstract 空间时间序列预测问题出现在广泛的应用中,如环境和交通问题.由于存在特定的空间.短期和长期模式,以及维度的诅咒,这些问题具有挑战性. 在本文中,我们提出了一个用于大规模空间时间序列 ...

  10. 论文笔记:Autoregressive Tensor Factorizationfor Spatio-temporal Predictions

    0 摘要 张量因子tensor factorization分解方法在时空数据分析领域很受欢迎,因为它们能够处理多种类型的时空数据,处理缺失值,并提供计算效率高的参数估计程序. 然而,现有的张量因子分解 ...

最新文章

  1. vuefullcalendar怎么判断切换上下月_六种区分对联上下联的方法
  2. python给函数设置超时时间_在 Linux/Mac 下为Python函数添加超时时间
  3. 大数据实训记录(一)
  4. 高程数据处理_珠峰长高了吗?新高程怎么算出来的?揭秘
  5. “.中国”域名!小米有新网址了:纯汉字 输网址更方便了
  6. linux内核版本2 3 20,redhat9装配RTLINUX-3.2,内核版本为Kernel-2.4.23
  7. build shop
  8. 程序员如何转型项目经理?
  9. 翻译:包含列的索引:通往SQL Server索引级别5的阶梯
  10. Microsoft Office 2019 正式版 安装记录
  11. 全网最全讲解最详细的PS教程(第一期:基础教程1.0)
  12. Pillow EPS 矢量图转 JPG
  13. B站新规下的视频码率压制方案
  14. python播放背景音乐_Python帮你打包下载所有抖音背景音乐
  15. qgis二次开发环境
  16. 如何理解同震、震后、震间的含义
  17. css选择器(选择div内所有p元素)
  18. matlab 地形模拟程序,MATLAB模拟小球自由落体运动
  19. 人生值得一看-观念,关键在观念 !
  20. win8右下角网络图标不见了_笔记本连接wifi的图标不见了怎么办_win8右下角wifi图标不见了的解决方法...

热门文章

  1. 计算机控制实验教程,新)《计算机控制技术》实验教程.doc
  2. java接收的文件转换成临时文件_Android中怎样使用createTempFile实现将字节数据创建到临时文件并转换成FileOutputStream和FileInputStream...
  3. 之全能忙内_临沧大名山茶:喝过诸多忙肺茶,但你不知道什么是“隔年香”
  4. MySQL关于事务控制、视图、存储过程和函数
  5. 【Linux】14.ubuntu忘记root密码、用户密码输入次数过多锁住的问题
  6. 机器视觉:Caffe Python接口多进程提取特征
  7. java多线程系列(四)---ReentrantLock的使用
  8. JVM 的 工作原理,层次结构 以及 GC工作原理
  9. 分析chrome中的network面板
  10. UISegmentedControl的所有操作总结