Chopra S, Hadsell R, Lecun Y, et al. Learning a similarity metric discriminatively, with application to face verification[C]. computer vision and pattern recognition, 2005: 539-546.

Hadsell R, Chopra S, Lecun Y, et al. Dimensionality Reduction by Learning an Invariant Mapping[C]. computer vision and pattern recognition, 2006: 1735-1742.

@article{chopra2005learning,

title={Learning a similarity metric discriminatively, with application to face verification},

author={Chopra, Sumit and Hadsell, Raia and Lecun, Yann},

volume={1},

pages={539--546},

year={2005}}

@article{hadsell2006dimensionality,

title={Dimensionality Reduction by Learning an Invariant Mapping},

author={Hadsell, Raia and Chopra, Sumit and Lecun, Yann},

volume={2},

pages={1735--1742},

year={2006}}

这俩篇论文介绍了一种contrastive loss (最近很火, 但是感觉虽然核心思想是一致的, 现在的contrastive loss在此基础上更进了一步), 实际上就是最大化类间距离, 最小化类内距离.

主要内容

genuine 和 impostor

首先, 给定数据集\(\mathcal{D}=\{(x_i,y_i)\}_{i=1}^N\), 其分别代表数据和标签, 根据此数据集进行配对,

\[X_{ij}=(x_i, x_j),
\]

若对应的\(y_i=y_j\)则称该对为genuine(真实的), 否则为impostor(虚假的), 记为\(Y_{ij}\)(1:genuine, 0:impostor).

一个很自然的想法就是真实的对之间的距离应该小(就是最小化类内距离), 虚假对的数据间的距离大(即最大化类间距离).

不过在做这个工作之前, 我们需要通过一个映射\(G_W\)将\(x\)映射到一个低维的空间中去, 用现在的话讲, 这是一个提特征的过程, 并将上面的最大最小化的思想套用到这些特征\(G_W(x)\)上去. 用

\[E_W(X_{ij}) := \|G_W(x_i)-G_W(x_j)\|
\]

来表示一对数据之间的"能量" (实际上就是特征的距离).

如何最大最小呢? 最小化下面的式子:

\[\mathcal{L}(W)=\sum_{i,j} Y_{ij}L_G(E_W(X_{ij}))+(1-Y_{ij})L_{I}(E_W(X_{ij})).
\]

文1

\[L_G(E_W):= \frac{2}{Q}(E_W)^2 \\
L_I(E_W):= 2Q \exp(-\frac{2.77}{Q}E_W),
\]

其中\(Q\)为一常数, 表\(E_W\)的上界, 不是很理解为什么要这么构造.

文2

\[L_G(E_W):= \frac{1}{2}(E_W)^2 \\
L_I(E_W):=\frac{1}{2} \{\max (0, m-E_W)\}^2,
\]

其中\(m\)是认为给定的一个margin.

注: 文1中并没有注明去何种范数, 但有这么一句话:

Second, we must emphasize that using the square norm instead of the L1 norm for the energy would not be appropriate.

照这个说法, 那就应该用\(L_1\), 可第二篇是显示使用\(L_2\)的, 难道就因为第二篇是应用在数据降维中的缘故?

实际上, \(G_W\)就是一个压缩映射, 文二用此来进行数据降维, 而文一在此基础上进行分类. 按照现在的做法, 就应该是利用\(G_W\)作为一个特征提取器, 然后再其后加一个分类器用于分类, 文1是假设每一个个体(类)服从一个多维的正态分布, 这个正态分布用这个类中的数据(经过映射后的特征)来估计. 假设每个类的概率密度函数为\(\phi_i\), 便用

\[\frac{\phi_i(x)}{\phi_i(x)+c_i},
\]

来表示\(x\)与第\(i\)类的样本关系为genuine的可能性.

\[c_i = \mathrm{mean} \{\phi_i(x):x\in\mathcal{D}, y\not = i\}.
\]

没理解错应该是这个意思.

Learning a Similarity Metric Discriminatively, with Application to Face Verification的更多相关文章

  1. Learning string similarity measures for gene/protein name dictionary look-up using logistic regression

    Yoshimasa Tsuruoka1,*, John McNaught1,2, Jun’ichi Tsujii1,2,3 and Sophia Ananiadou1,2 1 School of Co ...

  2. 发布iOS应用时,Xcode报错:Application failed codesign verification.

    如下图,在发布应用时,因为codesign问题卡住了.尝试修改Target中的code sign setting,没有效果. 接着,在Developer Center删除所有证书,甚至包括Apps I ...

  3. 深度学习框架Caffe —— Deep learning in Practice

    因工作交接需要, 要将caffe使用方法及整体结构描述清楚. 鉴于也有同学问过我相关内容, 决定在本文中写个简单的tutorial, 方便大家参考. 本文简单的讲几个事情: Caffe能做什么? 为什 ...

  4. Caffe —— Deep learning in Practice

    因工作交接须要. 要将caffe用法及总体结构描写叙述清楚. 鉴于也有同学问过我相关内容, 决定在本文中写个简单的tutorial, 方便大家參考. 本文简单的讲几个事情: Caffe能做什么? 为什 ...

  5. 贾扬清分享_深度学习框架caffe

    Caffe是一个清晰而高效的深度学习框架,其作者是博士毕业于UC Berkeley的 贾扬清,目前在Google工作.本文是根据机器学习研究会组织的online分享的交流内容,简单的整理了一下. 目录 ...

  6. Siamese Network理解

    提起siamese network一般都会引用这两篇文章: <Learning a similarity metric discriminatively, with application to ...

  7. 基于2-channel network的图片相似度判别

    一.相关理论 本篇博文主要讲解2015年CVPR的一篇关于图像相似度计算的文章:<Learning to Compare Image Patches via Convolutional Neur ...

  8. face recognition[angular/consine-margin-based][L2-Softmax]

    本文来自<L2-constrained Softmax Loss for Discriminative Face Verification>,时间线为2017年6月. 近些年,人脸验证的性 ...

  9. 转-------CNN图像相似度匹配 2-channel network

    基于2-channel  network的图片相似度判别 原文地址:http://blog.csdn.net/hjimce/article/details/50098483 作者:hjimce 一.相 ...

随机推荐

  1. 商业爬虫学习笔记day1

    day1 一. HTTP 1.介绍: https://www.cnblogs.com/vamei/archive/2013/05/11/3069788.html http://blog.csdn.ne ...

  2. RAC中常见的高级用法-过滤

    filter      过滤信号,使用它可以获取满足条件的信号. - (void)filter { //只有当我们文本框内容长度大于5才想要获取文本框的内容 [[_passWord.rac_textS ...

  3. HTML样式 背景

    当浏览器读到一个样式表,就会按照这个格式表来对文档进行格式化.有以下三种方式来插入样式表: 1.外部样式表 当样式需要用到很多页面的时候,外部样式是理想的选择.使用外部样式表,就可以听过更改一个文件来 ...

  4. Handler与多线程

    1.Handler介绍 在Android开发中,我们常会使用单独的线程来完成某些操作,比如用一个线程来完成从网络上下的图片,然后显示在一个ImageView上,在多线程操作时,Android中必须保证 ...

  5. GCD的补充

    1-1 关于GCD中的创建和释放     在iOS6.0之前,在GCD中每当使用带creat单词的函数创建对象之后,都应该对其进行一次release操作.           在iOS6.0之后,GC ...

  6. Linux:sqlplus

    [oracle@hb shell_test]$ cat echo_time #!/bin/sh 一.最简单的调用sqlplus sqlplus -S "sys/unimas as sysdb ...

  7. 【Linux】【Services】【Project】Haproxy Keepalived Postfix实现邮件网关Cluster

    1. 简介: 1.1. 背景:公司使用exchange服务器作为邮件服务器,但是使用Postfix作为邮件网关实现病毒检测,内容过滤,反垃圾邮件等功能.原来的架构非常简单,只有两台机器,一个负责进公司 ...

  8. windows下安装linux虚拟机(wsl2),并安装docker。

    一.windows terminal(重要工具,但也可以不装) 这是微软官方推荐的终端工具,类似mac的iterm2,可同时开启多个终端,最开始默认有power shall,cmd,可下载gsudo集 ...

  9. Python绘制面积图

    一.Python绘制面积图对应代码如下图所示 import matplotlib.pyplot as plt from pylab import mpl mpl.rcParams['font.sans ...

  10. 手把手教你提交Jar包到Maven公共仓库 | 萌新写开源02

    在上一篇文章中,我介绍了自己的SpringBoot Starter项目,可以让我们使用注解的方式轻松地获取操作日志,并推送到指定数据源. 之前,我的项目开源在Github上,大家想要用我的项目,还得把 ...