Learning a Similarity Metric Discriminatively, with Application to Face Verification
@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\), 其分别代表数据和标签, 根据此数据集进行配对,
\]
若对应的\(y_i=y_j\)则称该对为genuine(真实的), 否则为impostor(虚假的), 记为\(Y_{ij}\)(1:genuine, 0:impostor).
一个很自然的想法就是真实的对之间的距离应该小(就是最小化类内距离), 虚假对的数据间的距离大(即最大化类间距离).
不过在做这个工作之前, 我们需要通过一个映射\(G_W\)将\(x\)映射到一个低维的空间中去, 用现在的话讲, 这是一个提特征的过程, 并将上面的最大最小化的思想套用到这些特征\(G_W(x)\)上去. 用
\]
来表示一对数据之间的"能量" (实际上就是特征的距离).
如何最大最小呢? 最小化下面的式子:
\]
文1
L_I(E_W):= 2Q \exp(-\frac{2.77}{Q}E_W),
\]
其中\(Q\)为一常数, 表\(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\), 便用
\]
来表示\(x\)与第\(i\)类的样本关系为genuine的可能性.
\]
没理解错应该是这个意思.
Learning a Similarity Metric Discriminatively, with Application to Face Verification的更多相关文章
- 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 ...
- 发布iOS应用时,Xcode报错:Application failed codesign verification.
如下图,在发布应用时,因为codesign问题卡住了.尝试修改Target中的code sign setting,没有效果. 接着,在Developer Center删除所有证书,甚至包括Apps I ...
- 深度学习框架Caffe —— Deep learning in Practice
因工作交接需要, 要将caffe使用方法及整体结构描述清楚. 鉴于也有同学问过我相关内容, 决定在本文中写个简单的tutorial, 方便大家参考. 本文简单的讲几个事情: Caffe能做什么? 为什 ...
- Caffe —— Deep learning in Practice
因工作交接须要. 要将caffe用法及总体结构描写叙述清楚. 鉴于也有同学问过我相关内容, 决定在本文中写个简单的tutorial, 方便大家參考. 本文简单的讲几个事情: Caffe能做什么? 为什 ...
- 贾扬清分享_深度学习框架caffe
Caffe是一个清晰而高效的深度学习框架,其作者是博士毕业于UC Berkeley的 贾扬清,目前在Google工作.本文是根据机器学习研究会组织的online分享的交流内容,简单的整理了一下. 目录 ...
- Siamese Network理解
提起siamese network一般都会引用这两篇文章: <Learning a similarity metric discriminatively, with application to ...
- 基于2-channel network的图片相似度判别
一.相关理论 本篇博文主要讲解2015年CVPR的一篇关于图像相似度计算的文章:<Learning to Compare Image Patches via Convolutional Neur ...
- face recognition[angular/consine-margin-based][L2-Softmax]
本文来自<L2-constrained Softmax Loss for Discriminative Face Verification>,时间线为2017年6月. 近些年,人脸验证的性 ...
- 转-------CNN图像相似度匹配 2-channel network
基于2-channel network的图片相似度判别 原文地址:http://blog.csdn.net/hjimce/article/details/50098483 作者:hjimce 一.相 ...
随机推荐
- adjective
形容词用来描述名词或代词:副词用来描述剩下的(动词.形容词.副词和整句).adverb: to word. Adjectives are used almost exclusively to modi ...
- vue开发多页面应用 - hash模式和history模式
我们知道vue可以快速开发web单页应用,而且官方为我们提供了自己的应用脚手架vue-cli,我们只需要下载脚手架,安装依赖后就可以启动vue应用雏形. 这得益与webpack的依赖追踪,各种资源后缀 ...
- 【STM32】晶振,主时钟,外设频率介绍
首先,我用的是STM32F407,下方所有图片都是出自这芯片的文档,如果型号和我不同,需要找到对应的芯片说明文档,也许会有出入 先看一张时钟图 这里会着重说明高速的部分,低速(不管内部还是外部)只给R ...
- 最新的Android Sdk 使用Ant多渠道批量打包
实例工程.所需的文件都在最后的附件中. 今天花费了几个小时,参考网上的资料,期间遇到了好几个问题, 终于实现了使用Ant批量多渠道打包,现在,梳理一下思路,总结使用Ant批量多渠道打包的方法:1 ...
- 如何将List集合中相同属性的对象合并
在实际的业务处理中,我们经常会碰到需要合并同一个集合内相同属性对象的情况,比如,同一个用户短时间内下的订单,我们需要将各个订单的金额合并成一个总金额.那么用lambda表达式和HashMap怎么分别处 ...
- 【编程思想】【设计模式】【行为模式Behavioral】访问者模式Visitor
Python版 https://github.com/faif/python-patterns/blob/master/behavioral/visitor.py #!/usr/bin/env pyt ...
- spring-boot aop 增删改操作日志 实现
1.注解接口:import com.github.wxiaoqi.security.common.constant.Constants; import java.lang.annotation.*; ...
- @Order注解使用
注解@Order或者接口Ordered的作用是定义Spring IOC容器中Bean的执行顺序的优先级,而不是定义Bean的加载顺序,Bean的加载顺序不受@Order或Ordered接口的影响: @ ...
- java 9+版本中,接口的内容总结
java 9+版本中,接口的内容可以有: 1.成员变量其实是常量,格式: [public] [static] [final] 数据类型 常量名称=数据值: 注意: 常量必须进行赋值,而且一旦赋值不 ...
- Springboot集成velocity
1.加入maven包 <parent> <groupId>org.springframework.boot</groupId> <artifactId> ...