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 : 产生序列模拟数 ...
随机推荐
- Solr字段类型
一.一般属性 1.name fieldType的名称.该值用于字段定义中的类型属性,强烈建议名称仅包含字母数字和下划线,不能以数字开头[非强制]. 2.class 用于存储和索引此类型数据的类名.可以 ...
- Jenkins+Docker+Git+Harbor流水线打包
Jenkins+Docker+Git+Harbor流水线打包 环境: CentOS Linux release 7.6.1810 (Core) 192.168.247.214 Jenkins+dock ...
- 什么影响了mysql的性能-硬件资源及系统方面优化
随着数据量的增大,数据库的性能问题也是个值得关注的问题,很多公司对mysql性能方面没有太过重视,导致服务浪费过多资源.mysql服务性能差从而直接影响用户体验,这里我们简单的先来聊聊什么影响了mys ...
- 升级openssh漏洞
升级openssl和openssh 最近接收到客户的漏洞提醒,openssl和openssh的漏洞,解决办法就只有升级. 升级前环境 ~]# ssh -V OpenSSH_5.3p1, OpenSSL ...
- 实验3 SQL注入原理-万能密码注入
实验目的 (1)理解[万能密码]的原理 (2)学习[万能密码]的使用 实验原理 一.访问目标网站 1.选择一个存在漏洞的论坛 http://192.168.1.3:8009 进入 2.输入用户名[ad ...
- spring cloud (一) 服务注册中心 Eueka
1 pom.xml 添加依赖包 <dependency> <groupId>org.springframework.cloud</groupId> <arti ...
- Python3和Python2 异常处理except的不同
最近准备做个微信公众号的项目,但是微信平台的开发者文档介绍的是web.py,虽然有支持python3的版本.但是在介绍页面的还是python2的代码. python2.x的时候: try: raise ...
- .Net Core控制台生成exe能独立运行
.Net Core控制台生成exe能独立运行,依赖文件都单独生成在一个publish文件夹里 方式一:强烈推荐,能独立运行,依赖DLL也会生成出来,支持无安装环境也能到处运行 按win+R输入cmd在 ...
- 《BUG创造队》第三次作业:团队项目原型设计与开发
项目 内容 这个作业属于哪个课程 2016级软件工程 这个作业的要求在哪里 实验六 团队作业3:团队项目原型设计与开发 团队名称 BUG创造队 作业学习目标 ①掌握软件原型开发技术:②学会使用软件原型 ...
- 1、Python简介与Python安装
一.Python简介: Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python的创始人为吉多·范罗苏姆(Guido van Rossum)少数几个不秃头的语言创始 ...