论文笔记 - Cross-Domain Gradient Discrepancy Minimization for Unsupervised Domain Adaptation
摘要
这篇文章在 MCD_DA 后阅读很有联系感。
作者指出,MCD 虽然关注于减小两个分类器的差异,但不能保证分类器的准确性。也就是说,该错还是错,两个一起错。分类器即使差异很小,也可能把目标样本都识别为一个错误的样本。
文章提出 cross-domain gradient discrepancy minimization (CGDA)方法, 最小化来自源域和目标域的梯度差异 。因为梯度对目标域的语义信息提供了线索。(感觉是重要性的意思)
介绍
之前的 bi - classifier 没有考虑到分类的准确性。为了解决这一问题,作者注意到源域和目标域上的 梯度差异和准确性相关联 假设有一个精确的分类器,源域和目标域将生成 相似的梯度 去更新。
作者希望两个域不仅最终的模型上很接近,优化的路径也能够相似。
- 为了解决 bi - classifier 的问题,采用最小化源域和目标域梯度差异的方法
- 为了计算目标样本的梯度,采用基于聚类的方法获得更可靠的伪标签。然后基于伪标签的自监督学习来微调模型
方法
首先说明一下 bi - classifier 的方法步骤。
- 训练 G , F1 , F2 ,最小化 $L_{cls}$ ,保证源域的准确率
- 固定 G , 训练 F1 , F2 ,最大化 $L_{dis}$
- 固定 F1 , F2 , 训练 G ,最小化 $L_{dis}$
MGDA 方法
- 源域和目标域上的梯度计算
$L_{ce}$ - 标准交叉熵损失
$L_{ce}^W$ - 带权的交叉熵损失(ps:由于 伪标签 可能不正确,使用这个方法减小影响)
-
最小化梯度差异,作者使用了 余弦相似度
目标样本的自我监督学习
加权聚类策略 获得可靠的伪标签。主要就是公式
d - 可以是任意的度量距离,作者用的是余弦相似度
通过在 bi-classfier 的 step 1 中补充 self-supervised 学习,改进了目标样本的可辨别性。也就是现在的 step 1 走两个优化,一个是源域的 supervised ,一个是目标域的 self-supervised。既让源域分类正确,也改进了目标域的分类,一来使伪标签更可靠,二来为以后的对齐也有一定帮助。
总体目标和优化过程
目标 - 讲烂了,就是解决以前 bi - classifer 的问题,减少梯度差异
优化过程:
- step 1 : 优化变为
ps: 前者还是以前的 源域分类 损失,后者是新加的 目标域分类 损失,具体公式上面都有讲
- step 2 : 没变,依然是用 $l_1$ 距离度量两个分类器输出的概率差异
- step 3 : 加入了梯度约束
框架图如下:
理论分析
首先,在域自适应中,对于目标域上预期误差的上界,是有公式的。
$\frac{1}{2}d_{H▲H}(S,T)$ 度量两个域的差异 ; λ 是 $argmin_{h∈H} RS(h) +RT (h)$ ;是理想联合误差
从公式的层面来说,作者所做的事情是 减少 d ,最小化 λ
实验
数据集
DomainNet 、VisDA - 2017 、ImageCLEF
实验细节
- 权重 = 0.1 , image size 224 x 224 x 3
网络结构
- 生成器 G :在 DomainNet 和 ImageCLEF 上预训练的 ResNet-50 ; 或者 在 VisDA - 2017 上预训练的 ResNet-101
- 原始的 FC 层 替换为 256 units 的 bottleneck 和 一个 3 层的 FC,作为 F1 和 F2
- hidden units = 1000
- 每个 FC 前有 dropout layer ,后有 BN layer
超参数
- SGD m = 0.9 , weight decay = $5e^{-4}$
- classifier lr = $1e^{-3}$ for DomainNet and ImageCLEF , $3e^{-4}$ for VisDA-2017
- batch size = 32 , α = 0.1 β = 0.01
- don't use data augmentation
模型分析
从 特征可视化
,收敛速度
,超参数的敏感性
,消融学习
,条件梯度差异
,几个方面分析模型
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?