论文信息
论文标题:Cross-domain Contrastive Learning for Unsupervised Domain Adaptation
论文作者:Rui Wang, Zuxuan Wu, Zejia Weng, Jingjing Chen, Guo-Jun Qi, Yu-Gang Jiang
论文来源:aRxiv 2022
论文地址:download
论文代码:download
1 Introduction
无监督域自适应(UDA)的目的是将从一个完全标记的源域学习到的知识转移到一个不同的未标记的目标域。 大多数现有的 UDA 方法通过最小化域间的特征距离来学习域不变的特征表示。
UDA 研究方向:
-
- discrepancy-based methods:最小化不同域之间的差异;
- adversarial-based methods:为域鉴别器设计一个对抗性优化目标,并通过对抗性学习获得域不变表示;
- domain-adaptive dictionary learning;
- multi-modality representation learning;
- feature disentanglement;
我们的目标是通过对比自监督学习来调整源域和目标域之间的特征分布。
2 方法
A. Contrastive Learning with InfoNCENT-Xent loss
$\mathcal{L}=-\sum\limits _{\boldsymbol{v}^{+} \in V^{+}} \log \frac{\exp \left(\boldsymbol{u}^{\top} \boldsymbol{v}^{+} / \boldsymbol{\tau}\right)}{\exp \left(\boldsymbol{u}^{\top} \boldsymbol{v}^{+} / \boldsymbol{\tau}\right)+\sum\limits_{\boldsymbol{v}^{-} \in V^{-}} \exp \left(\boldsymbol{u}^{\top} \boldsymbol{v}^{-} / \boldsymbol{\tau}\right)} \quad\quad\quad(1)$B. Cross-domain Contrastive Learning
考虑目标域样本$\boldsymbol{x}_{t}^{i}$ 的 $\ell_{2}\text{-normalized}$ 特征 $\boldsymbol{z}_{t}^{i}$ 作为锚,它的正样本为同一类的源域样本,其特征表示为 $\boldsymbol{z}_{s}^{p}$,那么跨域对比损失:
$\mathcal{L}_{C D C}^{t, i}=-\frac{1}{\left|P_{s}\left(\hat{y}_{t}^{i}\right)\right|} \sum\limits _{p \in P_{s}\left(\hat{y}_{t}^{i}\right)} \log \frac{\exp \left(\boldsymbol{z}_{t}^{i^{\top}} \boldsymbol{z}_{s}^{p} / \tau\right)}{\sum\limits_{j \in I_{s}} \exp \left(\boldsymbol{z}_{t}^{i^{\top}} \boldsymbol{z}_{s}^{j} / \tau\right)} \quad\quad\quad(2)$
其中,$I_{S}$ 代表一个 mini-batch 中的源域样本集合,$P_{s}\left(\hat{y}_{t}^{i}\right)=\left\{k \mid y_{s}^{k}=\hat{y}_{t}^{i}\right\}$ 代表源域和目标域样本 $x_{t}^{i}$ 有相同标签;
同理也可以使用源域样本作为锚,公式类似上面,交叉域对比损失如下:$\mathcal{L}_{C D C}=\sum\limits _{i=1}^{N_{s}} \mathcal{L}_{C D C}^{s, i}+\sum\limits_{i=1}^{N_{t}} \mathcal{L}_{C D C}^{t, i} \quad\quad\quad(3)$
最后,结合跨域对比损失与在源域上强制执行的标准跨熵损失 $\mathcal{L}_{C E}$,我们得到了最终的训练目标函数:$\underset{\boldsymbol{\theta}}{\operatorname{minimize}} \quad \mathcal{L}_{C E}\left(\boldsymbol{\theta} ; D_{s}\right)+\lambda \mathcal{L}_{C D C}\left(\boldsymbol{\theta} ; D_{s}, D_{t}\right) \quad\quad\quad(4)$
C. Pseudo Labels for the Target Domain
在训练过程中,没有来自目标域的真实标签,因此利用 k-means 聚类产生伪标签。由于 K-means 对初始化很敏感,因此使用随机生成的集群不能保证与预定义类别相关的相关语义。为缓解这个问题,将簇的数量设置为类 $M$ 的数量,并使用来自源域的类原型作为初始簇。
初始化集群中心与类原型的好处是双重的: (i) 源原型可以被视为目标原型的近似,因为使用的特性是高级和包含语义信息(ii)CDCL 的对齐相同类别的样本,这种近似将更准确的训练的继续。更正式地说,首先计算每个类别中源样本的质心作为相应的类原型,并将第 $m$ 类的初始簇中心 $O_{t}^{m}$ 定义为:$O_{t}^{m} \leftarrow O_{s}^{m}=\mathbb{E}_{i \sim D_{s}\;, \; y_{s}^{i}=m} z_{s}^{i} \quad\quad\quad(5)$
即:源域同一类的嵌入平均作为初始质心。D. Source Data-free UDA
Source data-free setting:提供了在源域上训练的模型,但由于数据安全的问题,源域数据是不能用的。形式上,目标是学习一个模型 $f_{t}: X_{t} \rightarrow Y_{t}$ 并使用目标域无标签数据 $D_{t}$ 和源域上的预训练模型 $f_{s}: X_{s} \rightarrow Y_{s}$ 去预测 $\left\{y_{t}^{i}\right\}_{i=1}^{N_{t}}$。Note:预训练模型 $f_{s}$ 是上文提到的通过交叉熵优化得到的。
许多标准的 UDA 设置,假设在源域和目标域上共享相同的特征编码器,然而由于特征编码器不能同时在源域和目标域上训练,所以 Source Data-free UDA 无法实现。本文的 CDCL 在缺少源域数据的情况下面临的挑战是 :(1) form positive and negative pairs and (2) to compute source class prototypes。
本文通过用训练模型 $
标签:domain,right,CDCL,Contrastive,源域,mathcal,quad,boldsymbol,left From: https://www.cnblogs.com/BlairGrowing/p/16934291.html