Joint Noise-Tolerant Learning and Meta Camera Shift Adaptation for Unsupervised Person Re-ID

本文主要是介绍Joint Noise-Tolerant Learning and Meta Camera Shift Adaptation for Unsupervised Person Re-ID,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

方法概述

联合噪声容忍学习和元相机转换适应。
1,我们提出了一种动态对称损失(dynamic and symmetric loss(DSCE)),增强了模型对与噪音伪标签的鲁棒性,进而提高模型性能。
2, 我们提出了一种camera-aware的元学习算法(MetaCam)用来适应相机的转换,该算法可以提高模型应对相机变化的鲁棒性
3,文章引入了一个关于DSCE和MetaCam的统一框架,综合提高了模型的鲁棒性。

文章目录

  • 方法概述
  • 内容概要
    • 工作概述
    • 成果概述
  • 方法详解
    • 方法框架
    • 算法描述
    • 具体实现
  • 实验结果
  • 总体评价
  • 引用格式

内容概要

论文名称简称会议/期刊出版年份baselinebackbone数据集
Joint Noise-Tolerant Learning and Meta Camera Shift Adaptation for Unsupervised Person Re-Identification.MetaCamCVPR2021-ResNet-50 [12]DukeMTMC-ReID, Mar- ket1501, and MSMT17

在线链接: https://openaccess.thecvf.com/content/CVPR2021/html/Yang_Joint_Noise-Tolerant_Learning_and_Meta_Camera_Shift_Adaptation_for_Unsupervised_CVPR_2021_paper.html
源码链接: https://github.com/FlyingRoastDuck/MetaCam_DSCE

工作概述

1,we propose a Dynamic and Symmetric Cross-Entropy loss (DSCE) to deal with noisy samples and a camera-aware meta-learning algo- rithm (MetaCam) to adapt camera shift.
2,DSCE can allevi- ate the negative effects ofnoisy samples and accommodate the change ofclusters after each clustering step.
3,MetaCam simulates cross-camera constraint by splitting the training data into meta-train and meta-test based on camera IDs.

成果概述

Extensive experiments on three re-ID benchmarks show the effectiveness and the complementary ofthe proposed DSCE and MetaCam. Our method outperforms the state-of-the-art methods on both fully unsupervised re-ID and unsupervised domain adaptive re-ID.

方法详解

方法框架

在这里插入图片描述

在这里插入图片描述

算法描述

在这里插入图片描述

具体实现

1,图二是总体框架。 由挖掘伪标签和 元优化两个阶段组成。 第一阶段,提取特征然后使用DBSCAN进行聚类打伪标签, 第二阶段,使用伪标签训练模型。 过程中,维护了一个内存表,用来保存所有样本的特征,并在训练过程中进行更新。

2, 训练的时候,数据集根据相机标签被划分为了 元训练集+元测试集 两个部分,具体的训练采用的是文章提出的MeataCam算法。另外,文章还提出了动态对称交叉熵损失用于稳定噪音标签。

3, 使用了雅卡尔距离来生成伪标签.

4, 受到【17】的启发,提出动态交叉熵损失,维护内存表 ,直接平均内存特征(公式1)
在这里插入图片描述

5, 【9】 提出了判断损失函数是否对噪音样本是有鲁棒性的公式 (公式2),含义是各个类别的分类损失之和是一个常量。
在这里插入图片描述

6,受到【36】启发,文章提出了动态对称交叉熵损失(DSCE)(公式3),和36不同的是,我们采用了softmax 标准化来避免除0。 最终的损失函数如公式4所示。
在这里插入图片描述在这里插入图片描述

7,内存表的更新根据公式5进行更新。 加权求和更新。
在这里插入图片描述

8 MetaCam 主要是用来优化模型对相机变化的鲁棒性,由Meta-sets preparation \ meta-train、 meta-test 和 meta-update 四个步骤组成。
9, Meta-sets preparation: 随机选个Nmtr个相机的样本作为元训练集,剩下的作为元测试集
10,Meta-train:损失函数如公式6所示。 模型参数的更新如公式7所示。
在这里插入图片描述
在这里插入图片描述

11,meta-test:损失函数如公式8所示。
在这里插入图片描述

12,mete-update:元损失如公式9所示。
在这里插入图片描述

实验结果

在这里插入图片描述

总体评价

1,在2021CVPR的论文中,该论文的性能并不算突出,但是还是碾压了一批2020CVPR的论文。
2,考虑两个问题,关于噪音标签和相机差异的鲁棒性,是非常值得去考虑和思考的。
3,这里又用到了雅卡尔距离来生成伪标签。但是文中并没有给出公式。
4,框架图很赞,美观大气,表达内容清晰,和文字内容呼应得很好。
5,算法部分加入了注释,结构清晰,可读性更强。
6,图3的聚类效果,对方法的有效性具有强说服力。

在这里插入图片描述

小样本学习与智能前沿(下方↓公众号)后台回复“MetaCam",即可获得论文电子资源。
在这里插入图片描述

引用格式

@inproceedings{DBLP:conf/cvpr/YangZLCLLS21,
author = {Fengxiang Yang and
Zhun Zhong and
Zhiming Luo and
Yuanzheng Cai and
Yaojin Lin and
Shaozi Li and
Nicu Sebe},
title = {Joint Noise-Tolerant Learning and Meta Camera Shift Adaptation for
Unsupervised Person Re-Identification},
booktitle = {{CVPR}},
pages = {4855–4864},
publisher = {Computer Vision Foundation / {IEEE}},
year = {2021}
}

这篇关于Joint Noise-Tolerant Learning and Meta Camera Shift Adaptation for Unsupervised Person Re-ID的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/348718

相关文章

4-4.Andorid Camera 之简化编码模板(获取摄像头 ID、选择最优预览尺寸)

一、Camera 简化思路 在 Camera 的开发中,其实我们通常只关注打开相机、图像预览和关闭相机,其他的步骤我们不应该花费太多的精力 为此,应该提供一个工具类,它有处理相机的一些基本工具方法,包括获取摄像头 ID、选择最优预览尺寸以及打印相机参数信息 二、Camera 工具类 CameraIdResult.java public class CameraIdResult {

简单的Q-learning|小明的一维世界(3)

简单的Q-learning|小明的一维世界(1) 简单的Q-learning|小明的一维世界(2) 一维的加速度世界 这个世界,小明只能控制自己的加速度,并且只能对加速度进行如下三种操作:增加1、减少1、或者不变。所以行动空间为: { u 1 = − 1 , u 2 = 0 , u 3 = 1 } \{u_1=-1, u_2=0, u_3=1\} {u1​=−1,u2​=0,u3​=1}

简单的Q-learning|小明的一维世界(2)

上篇介绍了小明的一维世界模型 、Q-learning的状态空间、行动空间、奖励函数、Q-table、Q table更新公式、以及从Q值导出策略的公式等。最后给出最简单的一维位置世界的Q-learning例子,从给出其状态空间、行动空间、以及稠密与稀疏两种奖励函数的设置方式。下面将继续深入,GO! 一维的速度世界 这个世界,小明只能控制自己的速度,并且只能对速度进行如下三种操作:增加1、减

集群环境下为雪花算法生成全局唯一机器ID策略

雪花算法是生成数据id非常好的一种方式,机器id是雪花算法不可分割的一部分。但是对于集群应用,让不同的机器自动产生不同的机器id传统做法就是针对每一个机器进行单独配置,但这样做不利于集群水平扩展,且操作过程非常复杂,所以每一个机器在集群环境下是一个头疼的问题。现在借助spring+redis,给出一种策略,支持随意水平扩展,肥肠好用。 大致策略分为4步: 1.对机器ip进行hash,对某一个(大于

在实现回显功能模块的时候,把ID设置成全局变量了

在hsapprove.jsp中: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><script type="text/javascript">function edittodayhs(hsid){//alert(hsid);//

PL/SQL工具创建Oracle数据库表,实现id字段的自动递增

通过PL/SQL工具,创建Oracle数据库表,如何实现字段ID自动递增; Oracle的自增需要依靠序列和触发器共同实现 比如:先创建一个表 create table test (id int primary key, name varchar2(10)); 创建一个序列 create sequence test_seq increment by 1 start with 1  min

分布式项目中使用雪花算法提前获取对象主键ID

hello,大家好,我是灰小猿! 在做分布式项目开发进行数据表结构设计时,有时候为了提高查询性能,在进行数据库表设计时,会使用自增ID来代替UUID作为数据的主键ID,但是这样就会有一个问题,数据的自增ID应该如何获取到下一个ID并且插入到库中呢? 如果你使用的是mybatisPlus,可以使用自带的自增注解加在id字段上即可,这样在数据入库时就可以自动给数据赋值自增的主键ID, 但是对于不

013.Python爬虫系列_re正则解析

我 的 个 人 主 页:👉👉 失心疯的个人主页 👈👈 入 门 教 程 推 荐 :👉👉 Python零基础入门教程合集 👈👈 虚 拟 环 境 搭 建 :👉👉 Python项目虚拟环境(超详细讲解) 👈👈 PyQt5 系 列 教 程:👉👉 Python GUI(PyQt5)文章合集 👈👈 Oracle数据库教程:👉👉 Oracle数据库文章合集 👈👈 优

Vue3+vite中使用import.meta.glob

前言:         在vue2中支持require导入模块或文件但是在vue3中已经不支持require导入了,为此vite提供了一个全新的方法import.meta.glob方法来支持批量导入文件  import.meta.glob 匹配到的文件默认是懒加载的,通过动态导入实现,并会在构建时分离为独立的 chunk。如果你倾向于直接引入所有的模块(例如依赖于这些模块中的副作用首先被应用

《长得太长也是错?——后端 Long 型 ID 精度丢失的“奇妙”修复之旅》

引言 在前后端分离的时代,我们的生活充满了无数的机遇与挑战——包括那些突然冒出来的让人抓狂的 Bug。今天我们要聊的,就是一个让无数开发者哭笑不得的经典问题:后端 Long 类型 ID 过长导致前端精度丢失。说到这个问题,那可真是“万恶之源”啊,谁让 JavaScript 只能安全地处理 Number.MAX_SAFE_INTEGER(也就是 9007199254740991)以内的数值呢?