Transferable Joint Attribute-Identity Deep Learning for Unsupervised Person Re-Identification理解
简介:这篇文章属于跨域无监督行人再识别,不同于大部分文章它使用了属性标注。旨在于能够学习到有属性语义与有区分力的身份特征的表达空间(TJ-AIDL),并能够转移到一个没有看到过的域。
贡献:
- 提出了一个联合属性与身份的异质多任务无监督行人重识别深度模型
- 从有标注的源域图片中同时学习全局的身份信息与局部的属性信息,并通过一个身份推断属性(IIA)空间来最大化学习的有效性
- 提出一个属性一致框架来在无标注的目标域上进行无监督的自适应
之前工作存在的问题:
Re-ID: 依赖手工特征;缺乏有效域适应能力;单独利用身份与属性标注信息忽略了它们的联系与互补性
Re-ID的属性:语义协作表达对身份识别来说没有卷积特征向量有效,因为:属性协助表达通常是低维的,所以区分力不够;在标注数据比较稀疏而且行人图片质量不高时,一次预测出所有属性比较困难。
TJ-AIDL的特殊性:
- 不同于身份标签,属性检测是一个多标签识别问题,因为一个行人照片会同时对应几个标注
- 身份与属性监督对应了不同级别的约束:许多属性都是对应了某一个图片区域而身份标签则对应整张图片,所以两者结合在一起能够学习到一个更加全面的表达空间
方法:
整体的模型框架图如下所示,使用一个多分支的网络结构来进行有监督的异质多任务学习。上面的身份分支来在源域中提取Re-ID的敏感信息;下面的属性分支来从属性标签提取语义信息;后面的身份推断空间IIA使得这两种信息和谐地融合在一起。在测试时,选择训练好的属性分支来提取特征表达进行检索。整个网络的训练分为两步,一是在有标注的源域数据上进行监督训练,二是在无标注的目标域上进行域适应。

一:源域数据上的监督训练
首先介绍第一步,就是在源域数据上进行监督训练,这里的CNN用的是轻量化的MobileNet,身份分支(a)的监督损失如下,是一个常见的交叉熵损失:

下面的属性分支(b)的监督损失其实就是如下的BCELoss,因为属性预测是一个多label的问题。

现在这两者之间是独立的,一般的做法是建立一个多任务联合学习框架在这两个约束下映射到一个共享的特征空间。但是这篇文章提出了一个更加高效的多源信息融合框架,与之前方法的准确率对比如下:

这一框架就是身份推断属性空间(c),简称为IIA.它使用的自动编码机结构,理由如下:(1)自动编码机能够在给定的目标任务下提取输入数据的重要信息并通过一个简洁的特征向量表示出来;(2)这样的一个简洁的特征表达能够简化任务间的信息传递,同时为每个单独任务的学习保留自由的更新空间。
使用身份分支a的特征向量作为IIA的输入与重建输出的真值,首先是一个IIA的均方误差重建损失:

通过上面这个损失我们得到了eIIA,它是重要身份信息的编码,使用它在分支间传递信息。向属性分支的传递也使用的是均方误差:

因为eIIA是使用一个无监督方式得到的,它可能偏离了对应的属性预测,比较难以对齐,所以给eIIA加了属性预测。

与IIA有关的损失就是将这三者加起来:

IIA对身份分支的影响:无影响,因为IIA采用的输入就是身份分支得到的特征表达,所以得到的eIIA不需要对身份分支特征进行约束
IIA对属性分支的影响:加了一个eIIA与属性向量的均方误差约束,所以属性有关的约束变成了:

二:无监督的目标域适应
这里的跨域是基于属性一致性原则。这基于一个观察,也就是训练好的TJ-AIDL模型在两个不同的属性视角有着更小的差异。如下所示:

然后这篇文章就使用这两者之间的差异来显示模型在给定域上是否契合。
因为在测试时使用的是属性分支,所以目标是对属性分支进行适应而不用去管身份分支的更新。更新算法如下:
- 将源域上训练好的TJ-AIDL模型放到无标注的目标域来从属性分支得到属性预测patt,t
- 之后使用得到的软标签patt,t来作为伪标签来更新属性分支和IIA来减小域间的属性差异。直觉上,软标签保留了从源域获得的最具区分力的属性能够防止模型过度漂移。
- 在目标域上进行适应直到模型收敛。
整体算法如下:

Transferable Joint Attribute-Identity Deep Learning for Unsupervised Person Re-Identification理解的更多相关文章
- Deep learning:四十一(Dropout简单理解)
前言 训练神经网络模型时,如果训练样本较少,为了防止模型过拟合,Dropout可以作为一种trikc供选择.Dropout是hintion最近2年提出的,源于其文章Improving neural n ...
- 深度学习阅读列表 Deep Learning Reading List
Reading List List of reading lists and survey papers: Books Deep Learning, Yoshua Bengio, Ian Goodfe ...
- (转)WHY DEEP LEARNING IS SUDDENLY CHANGING YOUR LIFE
Main Menu Fortune.com E-mail Tweet Facebook Linkedin Share icons By Roger Parloff Illustration ...
- Deep Learning(深度学习)学习笔记整理
申明:本文非笔者原创,原文转载自:http://www.sigvc.org/bbs/thread-2187-1-3.html 4.2.初级(浅层)特征表示 既然像素级的特征表示方法没有作用,那怎样的表 ...
- Deep learning的一些教程 (转载)
几个不错的深度学习教程,基本都有视频和演讲稿.附两篇综述文章和一副漫画.还有一些以后补充. Jeff Dean 2013 @ Stanford http://i.stanford.edu/infose ...
- 【转载】Deep Learning(深度学习)学习笔记整理
http://blog.csdn.net/zouxy09/article/details/8775360 一.概述 Artificial Intelligence,也就是人工智能,就像长生不老和星际漫 ...
- Deep Learning(深度学习)学习笔记整理系列之(二)
Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...
- [DEEP LEARNING An MIT Press book in preparation]Deep Learning for AI
动人的DL我们有六个月的时间,积累了一定的经验,实验,也DL有了一些自己的想法和理解.曾经想扩大和加深DL相关方面的一些知识. 然后看到了一个MIT按有关的对出版物DL图书http://www.iro ...
- Deep Learning速成教程
引言 深度学习,即Deep Learning,是一种学习算法(Learning algorithm),亦是人工智能领域的一个重要分支.从快速发展到实际应用,短短几年时间里, ...
随机推荐
- MySQL 的 GRANT和REVOKE 命令
MySQL 的 GRANT和REVOKE 命令 GRANT - 授权 将指定 操作对象 的指定 操作权限 授予指定的 用户; 发出该 GRANT语句的可以是数据库管理员,也可以是该数据库对象的创建者; ...
- 『现学现忘』Git基础 — 12、Git用户签名(补充)
目录 1.修改用户签名 2.取消用户签名 3.用户签名的优先级 4.总结本文用到的Git命令 1.修改用户签名 其实很简单,就是重新执行git config命令,换个用户名和邮箱地址就可以了,新配置的 ...
- 深入了解 TiDB SQL 优化器
分享嘉宾:张建 PingCAP TiDB优化器与执行引擎技术负责人 编辑整理:Druid中国用户组第6次大数据MeetUp 出品平台:DataFunTalk 导读: 本次报告张老师主要从原理上带大家深 ...
- 2003031121-浦娟-python数据分析第四周作业-第二次作业
项目 内容 课程班级博客链接 20级数据班(本) 作业链接 Python第四周作业第二次作业 博客名称 2003031121-浦娟-python数据分析第四周作业-matolotlib的应用 要求 每 ...
- Django学习——分组查询、图书管理系统项目、wsgi, uwsgi, cgi, fastcgi
1 分组查询 # 分组查询 # 查询每一个出版社id,以及图书平均价格(单表) # 原生sql # select publish_id,avg(price) from app01_book group ...
- IIS发布Https和Https的问题
asp.net调试页面的时候遇到一个问题,我喜欢右键点击在浏览器查看页面,打开的页面默认是https的,其实iis会同时生成http和https两种页面,但是我懒得每次去点.问题是页面中测试接口是ht ...
- MySQL深入学习-day1
书名<MySQL是怎样运行的:从根儿上理解MySQL>可自行百度 以下是知识点总结 重新认识Mysql MySQL是一个C/S架构的软件. 在Windows安装后首先注册成服务,然后会在开 ...
- Linux磁盘空间查看及空间满的处理
问题 在部署应用到测试环境的时候,有些文件同步出错,最后定位到测试服务器空间满了. 解决 查看磁盘空间还剩多少空间 df -h 查看根目录下每个目录占用空间大小 du --max-depth=1 -h ...
- Java测试报告
测试题目:ATM机 程序说明:本程序中共包含了两个类,分别为Account类和AccountManager类 Account类代码: public class Account { private St ...
- 前端向后端传递formData类型的二进制文件
// 获取到的文件file类型转换为formData类型 let formData = new FormData(); formData.append("file", file文件 ...