Note:[ wechat:Y466551 | 可加勿骚扰,付费咨询 ]

论文信息

论文标题:Black-box Source-free Domain Adaptation via Two-stage Knowledge Distillation
论文作者:Shuai Wang, Daoan Zhang, Zipei Yan, Shitong Shao, Rui Li
论文来源:2023 aRxiv
论文地址:download
论文代码:download
视屏讲解:click

1 介绍

  动机:无源域自适应的目标是仅使用预先训练过的源模型和目标数据来适应深度神经网络。然而,访问源模型仍然存在泄漏源数据的潜在问题。在本文中,研究了一个具有挑战性但实际的问题:黑盒无源域自适应,其中只有源模型和目标数据的输出可用;

  方法简介:提出了一种简单而有效的两阶段知识蒸馏方法。在第一阶段,用源模型以知识蒸馏的方式对源模型生成的软伪标签从头开始训练目标模型。在第二阶段,初始化另一个模型作为新的学生模型,以避免噪声伪标记引起的误差积累;

2 相关

  SFDA 存在的问题:

    • 可以使用生成模型[10,11]来恢复源数据,可能会引发潜在的数据安全问题;
    • 通常会调整源模型的参数,所以目标模型必须使用和源模型相同的方法网络架构作为模型,这对于低源目标用户,即一些社区医院是不现实的;

3 方法

模型框架

  

  对比:

    • UDA:    源数据(√)、源模型(√)
    • SFDA:  源数据(×)、源模型(√)
    • BSFDA:源数据(×)、源模型(×)  

  注意:BSFDA 是通过源域数据预训练好源模型,然后可以通过 API 的形式输入数据到云端源模型(Black-box)得到输出;

3.1 源模型训练

  源域数据训练源模型,交叉熵损失:

    $\mathcal{L}_{s}=-\mathbb{E}_{\left(x_{s}, y_{s}\right) \in \mathcal{D}_{s}} y_{s} \log f_{s}\left(x_{s}\right)$

  注意:在此之后,就无法访问源模型和源数据,只能利用源模型的输出;

3.2 两阶段知识蒸馏

  对于目标域数据 $x_t$,可以使用带有开放 API 的黑盒源模型 $f_s$ 得到软伪标签 $\hat{y}_{t}=f_{s}\left(x_{t}\right)$。

  训练目标模型的一个简单策略是使用具有交叉熵损失的伪标签 $\hat{y}_{t}$ 的自训练,但是使用这种伪标签存在的问题:

    • 由于源域和目标域之间的分布位移,伪标签不可避免地成为噪声;
    • 伪标签被冻结,因为在源训练后无法更新源模型;

  在第一阶段,使用软伪标签而不是硬标签从头开始训练目标模型 $f_t$ ,目的是从源域获取更多的帮助知识;

  在第二阶段,另一个模型被随机初始化,以避免错误积累。然后,使用弱数据增强下的伪标签来指导强增强图像的学习;

第一阶段

  在这个阶段,使用知识蒸馏[12]从源模型中精确提取知识:

    $\mathcal{L}_{1}=D_{\mathrm{KL}}\left(\hat{y}_{t} \| f_{t}\left(x_{t}\right)\right)$

  使用软标签的好处:

    • 软标签可以提供来自源模型的知识[12];
    • 对于域外数据,软伪标签比硬伪标签工作得更好;

  方法具有一定的效果,但模型 $f_t$ 是在有噪声和固定标签 $f_t$ 的目标域上进行训练的,这对目标域是次优的。因此,利用第二阶段来增强训练的模型 $f_t$ 依赖于知识蒸馏之间的两个图像。

第二阶段

  使用预训练模型初始化另外一个模型 $f_{t^{\prime}}$,对目标域数据分别进行 弱、强数据增广  $\mathcal{T}\left(x_{t}\right)$、$\mathcal{T}^{\prime}\left(x_{t}\right)$。将弱增强图像 $\mathcal{T}\left(x_{t}\right)$ 输入 $f_{t}$,得到伪标签 $\hat{y}_{t}^{\prime}=f_{t}\left(\mathcal{T}\left(x_{t}\right)\right)$。之后,使用 $\hat{y}_{t}^{\prime}$ 来指导输入强增广数据 $\mathcal{T}^{\prime}\left(x_{t}\right)$ 的模型 $f_{t^{\prime}}$ ,因为弱增广数据通常会产生更可靠的伪标签。

    $\mathcal{L}_{2}=D_{\mathrm{KL}}\left(\hat{y}_{t}^{\prime} \| f_{t^{\prime}}\left(\mathcal{T}^{\prime}\left(x_{t}\right)\right)\right)$

  最后,得到了用于评估的目标模型 $f_{t^{\prime}}$。 

3 实验

分类结果

  

  数据集太小了,baseline太少,不做评价;

论文解读(BSFDA)《Black-box Source-free Domain Adaptation via Two-stage Knowledge Distillation》的更多相关文章

  1. 论文解读(JKnet)《Representation Learning on Graphs with Jumping Knowledge Networks》

    论文信息 论文标题:Representation Learning on Graphs with Jumping Knowledge Networks论文作者:Keyulu Xu, Chengtao ...

  2. 论文解读(PCL)《Probabilistic Contrastive Learning for Domain Adaptation》

    论文信息 论文标题:Probabilistic Contrastive Learning for Domain Adaptation论文作者:Junjie Li, Yixin Zhang, Zilei ...

  3. 迁移学习《Asymmetric Tri-training for Unsupervised Domain Adaptation》

    论文信息 论文标题:Asymmetric Tri-training for Unsupervised Domain Adaptation论文作者:Kuniaki Saito, Y. Ushiku, T ...

  4. 论文解读(CDCL)《Cross-domain Contrastive Learning for Unsupervised Domain Adaptation》

    论文信息 论文标题:Cross-domain Contrastive Learning for Unsupervised Domain Adaptation论文作者:Rui Wang, Zuxuan ...

  5. 论文解读(CDTrans)《CDTrans: Cross-domain Transformer for Unsupervised Domain Adaptation》

    论文信息 论文标题:CDTrans: Cross-domain Transformer for Unsupervised Domain Adaptation论文作者:Tongkun Xu, Weihu ...

  6. 论文解读(CAN)《Contrastive Adaptation Network for Unsupervised Domain Adaptation》

    论文信息 论文标题:Contrastive Adaptation Network for Unsupervised Domain Adaptation论文作者:Guoliang Kang, Lu Ji ...

  7. 论文解读(ToAlign)《ToAlign: Task-oriented Alignment for Unsupervised Domain Adaptation》

    论文信息 论文标题:ToAlign: Task-oriented Alignment for Unsupervised Domain Adaptation论文作者:Guoqiang Wei, Cuil ...

  8. 【论文笔记】Domain Adaptation via Transfer Component Analysis

    论文题目:<Domain Adaptation via Transfer Component Analysis> 论文作者:Sinno Jialin Pan, Ivor W. Tsang, ...

  9. CVPR2019 | Mask Scoring R-CNN 论文解读

    Mask Scoring R-CNN CVPR2019 | Mask Scoring R-CNN 论文解读 作者 | 文永亮 研究方向 | 目标检测.GAN 推荐理由: 本文解读的是一篇发表于CVPR ...

  10. AAAI2019 | 基于区域分解集成的目标检测 论文解读

    Object Detection based on Region Decomposition and Assembly AAAI2019 | 基于区域分解集成的目标检测 论文解读 作者 | 文永亮 学 ...

随机推荐

  1. drf——Request源码分析、序列化组件、序列化类的使用(字段类和参数)、反序列化校验和保存

    1.Request类源码分析 # APIView+Response写个接口 # 总结: 1.新的request有个data属性,以后只要是在请求body体中的数据,无论什么编码格式,无论什么请求方式 ...

  2. es mysql 适用场景对比

    es mysql 适用场景对比 问题一 全文检索毫无疑问直接上es,那么除了这种场景,什么时候该选es?为啥mysql不行? 对枚举字段的搜索 mysql创建索引的原则是对于那些区别度高字段建立索引, ...

  3. K8S | 核心原理分析

    目录 一.背景 二.持续集成 三.K8S架构 1.核心组件 2.分层结构 3.核心能力 3.1 发现与负载 3.2 调度 3.3 自动伸缩 四.应用案例 1.服务部署 2.交互流程 五.参考源码 整体 ...

  4. 爆肝万字带你超级详细全面了解Linux命令大全

    前言 作者主页:CSDN丨博客园 学习交流:在下周周ovoの社区 对这篇万字博客目录总结如下: 关机命令.重启命令,创建用户.删除用户.修改密码.切换用户.切换到超级用户.禁用/解锁用户账户.修改信息 ...

  5. 逍遥自在学C语言 | 指针和数组的关联

    前言 指针和数组之间存在着紧密的关系.在本文中,我们将探讨指针和数组的关系.指针算术和数组遍历.多维数组与指针以及指针数组和数组指针. 一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 ...

  6. 曲线艺术编程 coding curves 第十二章 超级椭圆与超级方程(Superellipses and Superformulas)

    第十三章 超级椭圆与超级方程(Superellipses and Superformulas) 原作:Keith Peters https://www.bit-101.com/blog/2022/11 ...

  7. git推送时被拒绝,发现class文件被人上传到仓库的解决办法

    写好的代码commit之后,想要推送到远端,结果发现有同事提交了class文件 这时候我们需要执行以下指令 git stash git pull git stash pop 原理:先把commit的东 ...

  8. 手撕HashMap(二)

    这里再补充几个手撕HashMap的方法 1.remove() remove 方法参数值应该是键值对的键的值,当传入键值对的键的时候,remove 方法会删除对应的键值对 需要利用我们自己先前创建的 h ...

  9. .NET周报 【6月第4期 2023-06-25】

    国内文章 如何在long-running task中调用async方法 https://www.cnblogs.com/eventhorizon/p/17497359.html long-runnin ...

  10. 你一定要用这个API管理工具,看完你就知道为什么了

    以下是经常发生在程序员之间的对话: 小张:你知道为什么程序员不喜欢写文档? 小王:因为代码就是最好的文档啊!谁还需要写那些冗长的说明呢? 小张:那你知道为什么程序员也不喜欢别人不写文档吗? 小王:当然 ...