Multi-shot Pedestrian Re-identification via Sequential Decision Making
Multi-shot Pedestrian Re-identification via Sequential Decision Making
2019-07-31 20:33:37
Code: https://github.com/TuSimple/rl-multishot-reid
1. Background and Motivation:
本文引入 DRL 到 person re-ID 任务,通过序列决策来完成难易样本的识别问题。主要动机如下图所示:

2. The Proposed Method:
2.1 Image-level feature extraction:
作者对图像特征提取,采用了多个组合损失函数的形式,即:classification loss, pairwise verification loss, and triplet verification loss。用了两种经典的骨干网络,即:Inception-BN 和 AlexNet。作者将一个序列中所有图像的 feature 进行聚合,得到 l2-normalized features,即:

并且根据 l (*, *) 进行 identities 的排序,即:

2.2 Sequence Level Feature Aggregation :
作者将该问题看做是 Markov Decision Processes (MDP), 表达为 (S, A, T, R)。 在每一个步骤中,agent 将会从两个输入序列中得到一个选择的图像对,来观察 state,然后选择一个动作,接下来该 agent 将会得到一个奖励 r。在此之后,如果序列没有结束,该智能体将会接收下一个 image pair,然后得到一个新的 state。

Actions and Transitions:
首先随机的从两个序列中,选择两个图像,构成 image pair。然后将该样本对输入到 agent 中,agent 会输出三个动作:same, different, and unsure。前两个动作将会停止当前的 episode,然后即可输出当前的结果。作者认为当智能体收集到了足够的信息,并且足够自信来进行决策的时候,就可以及时停止以避免不必要的计算代价。如果智能体选择的 action 是 unsure,那么我们将会选择其他的 image pair 来进行判别。
Rewards:我们定义如下的奖励情况:
如果 agent 给定的结果和 gt 一致,那么给定 +1 的奖励;
如果 at 与 gt 不同,奖励将是 -1;要么当 t = $t_{max}$ 时,at 仍然是 unsure 的时候;
当 t < $t_{max}$,$a_t$ 是 unsure 的时候,奖励是 $r_p$ ;
这里的 rp 可能是 + 也可能是 -,具体看情况:If rp is negative, it will be penalized for requesting more pairs; on the other hand, if rp is positive, we encourage the agent to gather more pairs, and stop gathering when it has collected $t_{max}$ pairs to avoid a penalty of -1. 这个值,将会极大地影响最终 agent 的行为。
States and Deep Q-learning:
我们使用 deep Q-learning 来找到最优的策略。对于每一个 state and action $(s_t, a_t)$, $Q(s_t, a_t)$ 代表了当前状态和动作下的折扣的累积奖励。在训练阶段,我们可以迭代的更新 Q-function:

在时刻 t,状态 st 由如下的三个部分构成:
1). the first part is the observation $o_t$,即图像的特征;
2). the second part is a weighted average of the difference between historical image features of two sequences; 权重计算方法如下:

3). we also augment the image features with hand-crafted features for better discrimination.
3. Experimental Results:


==
Multi-shot Pedestrian Re-identification via Sequential Decision Making的更多相关文章
- Parallel Gradient Boosting Decision Trees
本文转载自:链接 Highlights Three different methods for parallel gradient boosting decision trees. My algori ...
- ICCV 2017论文分析(文本分析)标题词频分析 这算不算大数据 第一步:数据清洗(删除作者和无用的页码)
IEEE International Conference on Computer Vision, ICCV 2017, Venice, Italy, October 22-29, 2017. IEE ...
- ICLR 2013 International Conference on Learning Representations深度学习论文papers
ICLR 2013 International Conference on Learning Representations May 02 - 04, 2013, Scottsdale, Arizon ...
- metasploit-post模块信息
Name Disclosure Date Rank Description ---- ...
- Andrew Ng机器学习公开课笔记–Reinforcement Learning and Control
网易公开课,第16课 notes,12 前面的supervised learning,对于一个指定的x可以明确告诉你,正确的y是什么 但某些sequential decision making问题,比 ...
- Learning Structured Representation for Text Classification via Reinforcement Learning 学习笔记
Representation learning : 表征学习,端到端的学习 pre-specified 预先指定的 demonstrate 论证;证明,证实;显示,展示;演示,说明 attempt ...
- David Silver强化学习Lecture1:强化学习简介
课件:Lecture 1: Introduction to Reinforcement Learning 视频:David Silver深度强化学习第1课 - 简介 (中文字幕) 强化学习的特征 作为 ...
- (转)Applications of Reinforcement Learning in Real World
Applications of Reinforcement Learning in Real World 2018-08-05 18:58:04 This blog is copied from: h ...
- 论文笔记之:SeqGAN: Sequence generative adversarial nets with policy gradient
SeqGAN: Sequence generative adversarial nets with policy gradient AAAI-2017 Introduction : 产生序列模拟数 ...
随机推荐
- 如何自行给指定的SAP OData服务添加自定义日志记录功能
有的时候,SAP标准的OData实现或者相关的工具没有提供我们想记录的日志功能,此时可以利用SAP系统强大的扩展特性,进行自定义日志功能的二次开发. 以SAP CRM Fiori应用"My ...
- ABAP和Java里的单例模式攻击
面向对象编程世界里的单例模式(Singleton)可能是设计模式里最简单的一种,大多数开发人员都觉得可以很容易掌握它的用法.单例模式保证一个类仅有一个实例,并提供一个访问它的全局访问点. 然而在某些场 ...
- 源码解析-url状态检测神器ping-url
前言 ping-url是我最近开源的一个小工具,这篇文章也是专门写它设计理念的科普文. 为什么会做这个ping-url开源工具呢? 起因是:本小哥在某天接到一个特殊的需求,要用前端的方式判断任意一个u ...
- 【OGG】OGG的单向复制配置-支持DDL(二)
[OGG]OGG的单向复制配置-支持DDL(二) 一.1 BLOG文档结构图 一.2 前言部分 一.2.1 导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的 ...
- 构建nodejs环境
总想留下点东西,不负年华! 00.download releasehttps://nodejs.org/dist/ //all release example https://nodejs. ...
- 爬虫之scrapy框架的crawlspider
一,介绍 CrawlSpider其实是Spider的一个子类,除了继承到Spider的特性和功能外,还派生除了其自己独有的更加强大的特性和功能.其中最显著的功能就是”LinkExtractors链接提 ...
- 什么影响了mysql的性能-存储引擎层
5.6版本以前默认是MyISam存储引擎,5.6版本之后默认支持的Innodb存储引擎,这两种也是最常用的. 存储引擎层 MyISAM 5.5之前版本默认存储引擎 存储引擎表由MYD和MYI组成 特性 ...
- Django创建管理员账号
python manage.py createsuperuser 创建一个管理员账号 输入账号:admin 输入邮箱:123456789@qq.com 输入密码:test123456 二次确认 pyt ...
- 面向切面编程AOP——加锁、cache、logging、trace、同步等这些较通用的操作,如果都写一个类,则每个用到这些功能的类使用多继承非常难看,AOP就是解决这个问题的,python AOP就是装饰器
面向切面编程(AOP)是一种编程思想,与OOP并不矛盾,只是它们的关注点相同.面向对象的目的在于抽象和管理,而面向切面的目的在于解耦和复用. 举两个大家都接触过的AOP的例子: 1)java中myba ...
- kafka题目
1. Kafka的用途有哪些?使用场景如何?2. Kafka中的ISR.AR又代表什么?ISR的伸缩又指什么3. Kafka中的HW.LEO.LSO.LW等分别代表什么?4. Kafka中是怎么体现消 ...