点击下方卡片,关注“CVer”公众号
AI/CV重磅干货,第一时间送达
作者:侯云钟 | 已授权转载(源:知乎)
https://zhuanlan.zhihu.com/p/369252839
本文介绍澳洲国立大学(Australian National University) 郑良老师实验室在CVPR 2021的新工作《Visualizing Adapted Knowledge in Domain Transfer》。
一直以来,机器学习的可解释性和可视化仅限于单一模型。在迁移学习等涉及多模型的领域,如何直观理解不同模型之间知识的差异,仍亟待探讨。本文首次提出一套面向不同域迁移模型的可视化方案,并可以利用可视化结果,在不使用源域数据的情况下,继续提高无监督域迁移性能。
题目:Visualizing Adapted Knowledge in Domain Transfer
作者:Yunzhong Hou, Liang Zheng
论文:https://arxiv.org/abs/2104.10602
代码(已开源):
https://github.com/hou-yz/DA_visualization
域迁移是什么?
![](https://i-blog.csdnimg.cn/blog_migrate/bcdf7fddbe7dcee3aae56d9171a99b50.jpeg)
日常中,经常出现训练和应用的场景,图像风格/内容上存在差异。域迁移 (domain adaptation)正是为了解决训练和应用时的图像/场景差距,所提出的一系列工作。其中原始训练的数据集一般称为 源域 (source domain),应用时的数据集一般称为 目标域 (target domain)。
无监督的域迁移(unsupervised domain adaptation, UDA),考虑目标域没有标签的情况。无监督域迁移任务可以利用有标签的源域数据 学习源域模型 (source model),同时利用 有标签的源域数据 和 无标签的目标域数据,学习一个目标域模型 (target model)。
不同域模型间的知识差异
利用任意UDA方法,得到一组源域/目标域模型后,由于这两个模型面向的域有所不同,它们在相同数据下也会得到不同输出。我们将这类输出的差异归因于两个模型间的知识差别 (knowledge difference)。
鉴于迁移学习的目标即是更高的目标域性能,在越强的UDA方法下,两个模型间的知识差异也理应更明显的指向这两个域的差异。但是,时至今日,模型之间的知识差异到底是何面目;不同方法间,知识差异的明显与否又应当如何体现,仍无定论。
![](https://i-blog.csdnimg.cn/blog_migrate/336a42cbff47a0c569e3a2bb2c5b3e2f.jpeg)
利用source-free image translation可视化知识差异
面对模型之间的知识差别,本文提出一套《source-free image translation, SFIT》方法,对其做出可视化。在SFIT方法中,我们不使用源域图像;而是将目标域图像 进行一系列变化,并将原图/变化后图像 送入两个支路:将一张原始图像送入目标域模型,再将一张变换后的图像送给源域模型。
![](https://i-blog.csdnimg.cn/blog_migrate/e53c92d1ef62ca07005f7aa95f8328b9.jpeg)
在利用原始图像/变换后图像 得到两个支路之后,我们固定目标域/源域模型,更新生成器使得这两个支路输出的结果相似。
为了达到相似输出的约束,需要图像 间的不同能够在一定程度上弥补模型 间的知识差距。
如果能满足这一约束,我们也可以认为弥补知识差距的图像对,也可以代表两个模型的知识差距。我们在图2中给出满足“弥补知识差距”的SFIT图像变化结果示例。我们发现,模型间的知识差异,可以成功推动图像风格由目标域迁至源域,即便生成器训练过程中从未见过源域数据。这也说明域迁移前后,模型的知识差异的确包含对源域和目标域图像风格的刻画。
为此,我们将网络流程如图3设置,并利用知识蒸馏(knowledge distillation)和关系保持(relationship preserving)两个损失函数优化生成器网络。
损失函数设计
知识蒸馏由Hinton等人提出,通过将学生模型(student)的优化目标定义为教师模型(teacher)的输出,来将教师模型的知识传递给学生模型。本文中,我们使用这一损失函数,来直接约束两个支路(见图3)的输出相似。
关系保持损失函数由本文提出。在UDA中,一般保持源域网络和目标域网络共享分类层。我们利用关系保持函数,维持特征图在通道维度的分布相似。由此,我们可以帮助约束两个支路的最终输出一致(相似通道维度分布+固定的分类层->相似的分类输出)。
通过特征图 和
的通道维度自相关矩阵(Gram矩阵)
和
,计算归一化Gram矩阵的均方误差,得到关系保持损失函数。
![](https://i-blog.csdnimg.cn/blog_migrate/9913a77257b24ebc1a55a6e2299b3158.jpeg)
文中提出的关系保持损失函数,还和UDA中常用的MMD损失函数,以及图像风格迁移中的图像风格(style)损失函数相关。更多关于这一损失函数的讨论,请见原文。
实验结果
1. 通过SFIT,我们可以大幅缩小两个支路之间的性能差异 (source model vs target model; generated images vs target model)
![](https://i-blog.csdnimg.cn/blog_migrate/de2d341212714ca415ea472140fe455c.jpeg)
2. SFIT生成图片说明模型间知识差距包含对域之间风格差异的描述 (我们的唯一目标即约束两个支路输出一致。在降低性能差距的同时,得到了图像风格迁移的副产品)
![](https://i-blog.csdnimg.cn/blog_migrate/a5e5a33dd389856e1b159a7911f487de.jpeg)
![](https://i-blog.csdnimg.cn/blog_migrate/1c79a4ed6448a3521f1dff180cebbaf5.jpeg)
3. SFIT说明更强的UDA方法可以更好的处理不同域的风格差异 (SFIT在更强的UDA方法下,显示出更明显的风格迁移效果)
![](https://i-blog.csdnimg.cn/blog_migrate/a6b1248bdbae2b0732644fb71ca94419.jpeg)
应用:无源域迁移
无源域迁移(source-free domain adaptation)禁止系统在迁移过程中获取源域数据;而只允许使用训练好的源域模型和无标签的目标域模型,完成域迁移任务。本文提出的SFIT方法,同样适用于无源域迁移任务。在已经得到一个无源域迁移的目标域模型后,可以利用SFIT生成的图片,继续微调(fine tune)目标域模型,以进一步提高性能(见表2、表3,fine-tuning一项可以获得比target model更高的性能)。
总结
域迁移任务面向不同场景,调整模型以达到最优性能。调整前后的源域/目标域模型间,存在知识差异。本文提出的source-free image translation (SFIT)方法,首次将这类知识差距直观展示在研究者面前。并且,生成的可视化结果,还可以帮助其他相关任务,例如无源域迁移和增量学习(incremental learning)等。
CVPR和Transformer资料下载
后台回复:CVPR2021,即可下载CVPR 2021论文和代码开源的论文合集
后台回复:Transformer综述,即可下载最新的两篇Transformer综述PDF
CVer-Transformer交流群成立
扫码添加CVer助手,可申请加入CVer-Transformer 微信交流群,方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、PyTorch和TensorFlow等群。
一定要备注:研究方向+地点+学校/公司+昵称(如Transformer+上海+上交+卡卡),根据格式备注,可更快被通过且邀请进群
▲长按加小助手微信,进交流群▲点击上方卡片,关注CVer公众号
整理不易,请给CVer点赞和在看