迁移学习(TSRP)《Improving Pseudo Labels With Intra-Class Similarity for Unsupervised Domain Adaptation》
论文信息
论文标题:Improving Pseudo Labels With Intra-Class Similarity for Unsupervised Domain Adaptation
论文作者:Jie Wang, Xiaoli Zhang
论文来源:
论文地址:download
论文代码:download
视屏讲解:click
1 介绍
问题:
- 首先,伪标签主要是通过源域和目标域之间的良好对齐获得的,而伪标签的准确性对性能的影响没有深入研究。通常在源域上训练分类器生成伪标签时,在每次优化迭代中都可能出现一些错误的伪标签,如 Figure1 所示。由于错误的累积,不正确的伪标签会极大地影响最终的性能;
- 其次,大多数方法主要集中在挖掘源域以提高目标域伪标签的准确性,目标域样本之间的内在关系似乎还没有被探索;
为了解决上述两个问题,在本文中,提出挖掘目标域类内相似性来修复目标域中的伪标签(TSRP),以提高伪标签的准确性。 TSRP 的核心思想是使用目标相似性通过生成树 [22] 来选择具有高置信度的伪标签(UTSP)。 然后,使用选择的高置信度伪标记样本和源数据来训练强分类器。 强分类器用于纠正部分错误标记的具有低置信度伪标签的目标样本。 我们称之为伪标签的补救过程。 通常,我们的方法可以集成到任何通过使用在源域上训练的分类器生成目标域的伪标签的方法。
2 相关工作
在 [37] 中,Saito 等人。 使用三个非对称分类器来提高伪标签的准确性,其中两个分类器用于选择置信伪标签,第三个旨在学习目标域的判别数据表示。 [18]通过结构化预测探索目标域的结构信息,并结合最近的类原型和结构化预测来提升伪标签的准确性。 [38]将目标域中同一簇的样本视为一个整体而不是个体。 它通过类质心匹配为目标集群分配伪标签。 [39]提出了一种从易到难的策略,将目标样本分为三类,即简单样本、困难样本和不正确的简单样本。 它倾向于为简单的样本生成伪标签,并尽量避免困难的样本。 从易到难的策略可能偏向于简单的类。 为了解决这个问题,[40] 中提出了一种置信度感知的伪标签选择策略。 它根据伪标签的概率独立地从每个类中选择样本。 在 [39, 40] 中,他们使用目标样本到源样本中心的距离作为选择标准来选择高度置信度的伪标签。 在 [18, 38] 中,他们迭代地生成可信的伪标签。 但是,他们没有考虑如何纠正错误生成的伪标签。 与上述方法不同,在本文中,我们建议通过探索目标域中的类内相似性来纠正错误生成的伪标签。
3 方法
整体框架:
整体算法:
UTSP 如下:
UTSP 图解如下:
公式:
$\hat{\mathbf{y}}_{l, \text { remedy }}^{T}=f_{\text {strong }}\left(\mathbf{Z}_{l}^{T}\right) \quad\quad\quad(1)$
$S_{i, j}^{k}=\left\{\begin{array}{ll}0, & i=j \\\frac{\left\langle\mathbf{z}_{i}^{T k}, \mathbf{z}_{j}^{T k}\right\rangle}{\left\|\mathbf{z}_{i}^{T i}\right\|\left\|\mathbf{z}_{j}^{T k k}\right\|}, & \text { otherwise }\end{array}, \forall k=1,2, \ldots, C_{y}\right. \quad\quad\quad(2)$
$S_{\text {rank }}^{k}=\left\{S_{\operatorname{rank}(1)}^{k}, S_{\operatorname{rank}(2)}^{k}, \ldots, S_{\operatorname{rank}\left(n_{p}\right)}^{k}\right\} \quad\quad\quad(3)$
$\delta=S_{\left.\operatorname{rank}\left(\mid \rho n_{p}\right\rfloor\right)}^{k} \quad\quad\quad(4)$
$M_{i j}^{k}=\left\{\begin{array}{ll}1, & S_{i, j}^{k} \geq \delta \\0, & \text { otherwise }\end{array}\right. \quad\quad\quad(5)$
$D_{i i}^{k}=\sum\limits _{j} M_{i j}^{k} \quad\quad\quad(6)$
$m=\arg \underset{i}{\text{max}} D_{i i}^{k} \quad\quad\quad(7)$
Note:为防止类不平衡问题,将某类 $i$ 样本数少于 $3$ 的全部视为高置信度样本;
4 实验
Performance
消融实验
5 总结
论文:
标签生成策略:硬标签[19、35、17] 和 软标签[36]
伪标签产生负面影响:[18]
迁移学习(TSRP)《Improving Pseudo Labels With Intra-Class Similarity for Unsupervised Domain Adaptation》的更多相关文章
- 迁移学习(IIMT)——《Improve Unsupervised Domain Adaptation with Mixup Training》
论文信息 论文标题:Improve Unsupervised Domain Adaptation with Mixup Training论文作者:Shen Yan, Huan Song, Nanxia ...
- 中文NER的那些事儿2. 多任务,对抗迁移学习详解&代码实现
第一章我们简单了解了NER任务和基线模型Bert-Bilstm-CRF基线模型详解&代码实现,这一章按解决问题的方法来划分,我们聊聊多任务学习,和对抗迁移学习是如何优化实体识别中边界模糊,垂直 ...
- 【深度学习系列】迁移学习Transfer Learning
在前面的文章中,我们通常是拿到一个任务,譬如图像分类.识别等,搜集好数据后就开始直接用模型进行训练,但是现实情况中,由于设备的局限性.时间的紧迫性等导致我们无法从头开始训练,迭代一两百万次来收敛模型, ...
- 迁移学习(DANN)《Domain-Adversarial Training of Neural Networks》
论文信息 论文标题:Domain-Adversarial Training of Neural Networks论文作者:Yaroslav Ganin, Evgeniya Ustinova, Hana ...
- 迁移学习(JDDA) 《Joint domain alignment and discriminative feature learning for unsupervised deep domain adaptation》
论文信息 论文标题:Joint domain alignment and discriminative feature learning for unsupervised deep domain ad ...
- Gluon炼丹(Kaggle 120种狗分类,迁移学习加双模型融合)
这是在kaggle上的一个练习比赛,使用的是ImageNet数据集的子集. 注意,mxnet版本要高于0.12.1b2017112. 下载数据集. train.zip test.zip labels ...
- TensorFlow迁移学习的识别花试验
最近学习了TensorFlow,发现一个模型叫vgg16,然后搭建环境跑了一下,觉得十分神奇,而且准确率十分的高.又上了一节选修课,关于人工智能,老师让做一个关于人工智能的试验,于是觉得vgg16很不 ...
- 第二十四节,TensorFlow下slim库函数的使用以及使用VGG网络进行预训练、迁移学习(附代码)
在介绍这一节之前,需要你对slim模型库有一些基本了解,具体可以参考第二十二节,TensorFlow中的图片分类模型库slim的使用.数据集处理,这一节我们会详细介绍slim模型库下面的一些函数的使用 ...
- 图像识别 | AI在医学上的应用 | 深度学习 | 迁移学习
参考:登上<Cell>封面的AI医疗影像诊断系统:机器之心专访UCSD张康教授 Identifying Medical Diagnoses and Treatable Diseases b ...
- 『MXNet』第九弹_分类器以及迁移学习DEMO
解压文件命令: with zipfile.ZipFile('../data/kaggle_cifar10/' + fin, 'r') as zin: zin.extractall('../data/k ...
随机推荐
- Abp Abp.AspNetZeroCore 2.0.0 2.1.1 Path
纯手工修改,移除校验代码可调试. 将文件复制到 %userprofile%\.nuget\packages\abp.aspnetzerocore 目录中 替换对应的文件 Abp.AspNetZeroC ...
- Linux 同步分发脚本
shell 内容 #!/bin/bash #1. 判断参数个数 if [ $# -lt 1 ] then echo Not Enough Arguement! exit; fi 尚硅谷大数据技术之 H ...
- vs2019 debug 出现: printf is ambiguous
在vs中写c++代码时,莫名其妙出现:printf is ambiguous 的错误. 第一步,有设置std namespace 删除后再输入 using namespace std; 第二步.删除u ...
- seleniumUI自动化学习记录
2019.2.9 尝试了一个启动浏览器并打开指定网址的程序: 这里首先要注意的就是浏览器的版本和selenium jar包的版本必须符合才行,不然会报错 2019.9.16 必须要下载相应的chrom ...
- 第8章 使用标记帮助工具构建表单(ASP.NET Core in Action, 2nd Edition)
本章包括 使用Tag Helpers轻松构建表单 使用锚标记帮助程序生成URL 使用Tag Helpers为Razor添加功能 在第7章中,您了解了Razor模板以及如何使用它们为应用程序生成视图.通 ...
- python3GUI--200行代码写一个上课点名程序(附源码)
@ 目录 一.准备工作 1.Tkinter 2.PIL 二.预览 1.启动 2.开始点名-顺序点名 3.开始点名-随机点名 4.手动加载人名单 5.开始点名-顺序点名-Pyqt5版本 6.人名单格式 ...
- LocalDateTime接收前端String格式
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime createTime; 实体类属性添加注解,前 ...
- visio任意图形填充
开发工具->操作->修剪->按住Shift键点击填充图形所有边 同时选中后->组合->开发工具->操作->连接 回到开始选项卡选择填充颜色 中途不要点击其他, ...
- 字节过滤流 缓冲流-->BufferedInputStream用法
1创建字节输入节点流FileInputStream fis = new FileInputStream("文件读取的路径");2创建字节输入过滤流,包装一个字节输入节点流Buffe ...
- NOIP2013普及组
T1]记数问题 试计算在区间1 到n 的所有整数中,数字x(0 ≤ x ≤ 9)共出现了多少次?例如,在1到11 中,即在1.2.3.4.5.6.7.8.9.10.11中,数字1 出现了4 次. 其实 ...