4.Source Data absent Unsupervised Domain Adaptation through Hypothesis Transfer and Labeling Transfer \quad\quad 这篇文章是上一篇文章同一个作者写的进化版。作者在这篇文章中提出了一种新的标签转移策略,利用预测的置信度,强制标签信息从“容易”的标签(即更容易预测的标签,也就是准确率高的标签)转变为“难”的标签(也就是相对来说准确率较低的标签),甚至允许源模型是一个看不到源数据的黑盒。实验表明作者的这个方法性能优于或者等于三个无监督领域适应场景,甚至优于半监督领域场景。
\quad\quad 这篇论文从以下几个方面扩展了作者的早期工作SHOT:在假设转移框架中,作者提出了另一个自监督目标来预测相对旋转,这有助于学习目标域中有意义的表示。作者还提出了一种叫做标记转移的新策略,它只需要目标域预测的预测标签。此外,它还可以与假设转移框架相结合,得到更好的适应结果。同时,作者还增加了更多UDA场景的数据集来扩充实验评估,甚至把算法更深入地推向了半监督领域。最后,作者提供了一个更详细的模型分析来评估他提出的方法,包括训练稳定性,参数敏感性和定性研究。
$\quad\quad$1.算法方法 \quad\quad 作者计划解决UDA的问题仅仅使用一个预训练的源模型,而不需要使用到源域数据。特别的,先考虑一个K-way的视觉分类任务。对于一个UDA任务,我们有 n S n_S nS?个从源域 D S D_S DS?中获得的打了标签的样本 { x s i , y s i } i = 1 n s \left\{x_{s}^{i}, y_{s}^{i}\right\}_{i=1}^{n_{s}} {xsi?,ysi?}i=1ns??,其中 x s i ∈ X s , y s i ∈ Y s x_{s}^{i} \in \mathcal{X}_{s}, y_{s}^{i} \in \mathcal{Y}_{s} xsi?∈Xs?,ysi?∈Ys?,以及 n t n_t nt?个来自目标域的无标签样本 { x t i } i = 1 n t \left\{x_{t}^{i}\right\}_{i=1}^{n_{t}} {xti?}i=1nt??,其中 x t i ∈ X t x_{t}^{i} \in \mathcal{X}_{t} xti?∈Xt?。DA的目标是预测目标域中的标签 { y t i } i = 1 n t \left\{y_{t}^{i}\right\}_{i=1}^{n t} {yti?}i=1nt? ,其中y t i ∈ Y t y_{t}^{i} \in \mathcal{Y}_{t} yti?∈Yt? ,源任务X s → Y s \mathcal{X}_{s} \rightarrow \mathcal{Y}_{s} Xs?→Ys? 假定与目标任务X t → Y t \mathcal{X}_{t} \rightarrow \mathcal{Y}_{t} Xt?→Yt?相同。这里SHOT旨在学习一个目标方程 f t f_t ft?: X t → Y t \mathcal{X}_{t} \rightarrow \mathcal{Y}_{t} Xt?→Yt?,然后仅用 { x t i } i = 1 n t \left\{x_{t}^{i}\right\}_{i=1}^{n_{t}} {xti?}i=1nt??和源方程 f s f_s fs?: X s → Y s \mathcal{X}_{s} \rightarrow \mathcal{Y}_{s} Xs?→Ys? 来推断{ y t i } i = 1 n t \left\{y_{t}^{i}\right\}_{i=1}^{n_{t}} {yti?}i=1nt??。
\quad\quad 作者通过以下几步解决上述没有源数据的UDA问题。首先,作者训练出由特征编码模块和预测模块组成的分类模块从源数据中进行训练,然后在不访问源域数据的前提下推广至目标域。然后,作者提出了一种新的框架,源假设转移(SHOT),采用自监督和半监督学习来学习目标特征编码模块,同时固定源假设。最后,使用目标域的假设,作者使用了一个半监督学习算法来强制标记信息从自信标记的目标样本传播到低置信度的剩余目标样本。将这种标签转移策略应用于SHOT中,可以得到SHOT++。同样地,将标签转移策略应用于“仅源模型”也会产生“仅源模型的++”,它甚至可以处理黑盒源模型。
$\quad\quad$1.1源模型生成 \quad\quad 考虑构建一个深度神经网络然后学习源模型 f s : X s → Y s f_{s}: \mathcal{X}_{s} \rightarrow \mathcal{Y}_{s} fs?:Xs?→Ys?通过最小化下面的标准交叉熵损失:
L s r c ( f s ;
X s , Y s ) = ? E ( x s , y s ) ∈ X s × Y s ∑ k = 1 K q k log ? δ k ( f s ( x s ) ) \mathcal{L}_{s r c}\left(f_{s} ;
\mathcal{X}_{s}, \mathcal{Y}_{s}\right)=-\mathbb{E}_{\left(x_{s}, y_{s}\right) \in \mathcal{X}_{s} \times \mathcal{Y}_{s} \sum_{k=1}^{K} q_{k} \log \delta_{k}\left(f_{s}\left(x_{s}\right)\right)} Lsrc?(fs?;
Xs?,Ys?)=?E(xs?,ys?)∈Xs?×Ys?∑k=1K?qk?logδk?(fs?(xs?))?
\quad\quad 其中 δ k ( a ) = exp ? ( a k ) ∑ i exp ? ( a i ) \delta_{k}(a)=\frac{\exp \left(a_{k}\right)}{\sum_{i} \exp \left(a_{i}\right)} δk?(a)=∑i?exp(ai?)exp(ak?)?表示一个k维向量a的softmax输出的第k个元素,其中 q k q_k qk?对正确类是1,其余是0.为了进一步增加源模型的判别性并帮助下面的目标数据对齐,作者提出采用标签平滑方法,鼓励样本集中于紧密分布的簇中,有了标签平滑方法,目标方程变成了公式1:
L s r c l s ( f s ;
X s , Y s ) = ? E ( x s , y s ) ∈ X s × Y s ∑ k = 1 K q k l s log ? δ k ( f s ( x s ) ) L_{s r c}^{l_{s}}\left(f_{s} ;
\mathcal{X}_{s}, \mathcal{Y}_{s}\right)=-\mathbb{E}_{\left(x_{s}, y_{s}\right) \in \mathcal{X}_{s} \times \mathcal{Y}_{s}} \sum_{k=1}^{K} q_{k}^{l_{s}} \log \delta_{k}\left(f_{s}\left(x_{s}\right)\right) Lsrcls??(fs?;
Xs?,Ys?)=?E(xs?,ys?)∈Xs?×Ys??k=1∑K?qkls??logδk?(fs?(xs?))
\quad\quad 这里 q k l s = ( 1 ? α ) q k + α / K q_{k}^{l_{s}}=(1-\alpha) q_{k}+\alpha / K qkls??=(1?α)qk?+α/K是平滑后的标签, α \alpha α是平滑参数,经验上设为0.1.
$\quad\quad$1.2信息最大化的源假设迁移 \quad\quad 源模型通过上图中的深度神经网络进行参数化,包括两个模块:特征编码模块 g s : X s → R d g_{s}: \mathcal{X}_{s} \rightarrow \mathbb{R}^{d} gs?:Xs?→Rd ,和分类器模块R d → R K \mathbb{R}^{d} \rightarrow \mathbb{R}^{K} Rd→RK,即 f s ( x ) = h s ( g s ( x ) ) f_{s}(x)=h_{s}\left(g_{s}(x)\right) fs?(x)=hs?(gs?(x))。这里d是输入特征的维数。之前的UDA方法通过匹配特征空间 R d \mathbb{R}^{d} Rd的数据分布来对齐不同域(使用MMD或者域对抗对齐)。然鹅,这两种策略都假设源和目标域共享同样的特征编码器,并需要在适应中接触源域数据。
\quad\quad 作者提出了一个源假设转移SHOT框架,通过学习域特定特征加码模块但固定源分类器模块。具体地,SHOT对不同域特定特征学习模块使用相同分类器模块,即 h t h_t ht? = h S h_S hS?。旨在学习最优目标特征学习模块 g t : X t → R d g_{t}: \mathcal{X}_{t} \rightarrow \mathbb{R}^{d} gt?:Xt?→Rd,以使输出目标特征可以很好的匹配源特征分布,并且可以通过源假设直接被准确分类。值得注意的是SHOT很少使用源数据,只用一次来生成源假设。
\quad\quad 作者希望学习最优的目标编码器 g t g_t gt?以使得目标数据分布 p ( g t ( x t ) ) p\left(g_{t}\left(x_{t}\right)\right) p(gt?(xt?))能匹配源数据分布 p ( g s ( x s ) ) p\left(g_{s}\left(x_{s}\right)\right) p(gs?(xs?))。然而,因为不可能估计 p ( g s ( x s ) ) p\left(g_{s}\left(x_{s}\right)\right) p(gs?(xs?))的分布,特征级别的对齐不好使。如果从另一个角度看待问题:如果域差异被减少,无标签的目标数据应该会有什么样的输出?作者认为理想的目标输出应该与两个域共享的特征相似。由于我们通过监督学习损失来训练源特征编码模块 g s g_s gs?和分类器模块 h S h_S hS?,每个源特征的输出与一个独热编码相似。因此,作者期望每个目标特征的输出也类似于一个独热编码。这种输出对齐要求是特征对准的必要条件。
\quad\quad 因此,作者调整了信息最大化IM损失,来让目标输出单独确定并且全局不同。作者选择最小化 L e n t L_{ent} Lent?和 L d i v L_{div} Ldiv?一起构成IM损失:
L im( f t ;
X t ) = L ent( f t ;
X t ) + β L div( f t ;
X t ) L ent( f t ;
X t ) = ? E x t ∈ X t ∑ k = 1 K δ k ( f t ( x t ) ) log ? δ k ( f t ( x t ) ) L div( f t ;
X t ) = ∑ k = 1 K p ^ k log ? p ^ k = D K L ( p ^ , 1 K 1 K ) ? log ? K \begin{aligned} &\mathcal{L}_{\text {im }}\left(f_{t} ;
\mathcal{X}_{t}\right)=\mathcal{L}_{\text {ent }}\left(f_{t} ;
\mathcal{X}_{t}\right)+\beta \mathcal{L}_{\text {div }}\left(f_{t} ;
\mathcal{X}_{t}\right) \\ &L_{\text {ent }}\left(f_{t} ;
\mathcal{X}_{t}\right)=-\mathbb{E}_{x_{t} \in \mathcal{X}_{t}} \sum_{k=1}^{K} \delta_{k}\left(f_{t}\left(x_{t}\right)\right) \log \delta_{k}\left(f_{t}\left(x_{t}\right)\right) \\ &L_{\text {div }}\left(f_{t} ;
\mathcal{X}_{t}\right)=\sum_{k=1}^{K} \hat{p}_{k} \log \hat{p}_{k}=D_{K L}\left(\hat{p}, \frac{1}{K} 1_{K}\right)-\log K \end{aligned} ?Lim ?(ft?;
Xt?)=Lent ?(ft?;
Xt?)+βLdiv ?(ft?;
Xt?)Lent ?(ft?;
Xt?)=?Ext?∈Xt??k=1∑K?δk?(ft?(xt?))logδk?(ft?(xt?))Ldiv ?(ft?;
Xt?)=k=1∑K?p^?k?logp^?k?=DKL?(p^?,K1?1K?)?logK?
\quad\quad 其中, f t f_t ft?(x)=h t h_t ht?( g t g_t gt?(x)) 是每个目标样本的k维输出, 1 K 1_K 1K?是一个全为1的k维向量。p ^ = E x t ∈ X t [ δ ( f t ( k ) ( x t ) ) ] \hat{p}=\mathbb{E}_{x_{t} \in \mathcal{X}_{t}}\left[\delta\left(f_{t}^{(k)}\left(x_{t}\right)\right)\right] p^?=Ext?∈Xt??[δ(ft(k)?(xt?))]是整个目标域的平均输入嵌入。IM相比之前的UDA工作中广泛使用的条件熵最小化更好,因为IM可以规避所有未标记数据,通过公平的多样性促进目标 L d i v L_{div} Ldiv?具有相同的独热编码。为方便起见,作者用信息最大化损失表示SHOT为SHOT-IM。
$\quad\quad$1.3使用自监督伪标签的源假设转移加强 \quad\quad 作者认为有害的影响源自于不准确的网络输出。比如,来自第二个类的一个样本[0.4,0.3,0.1,0.1,0.1]可能会被迫输出为[1.0,0.0,0.0,0.0,0.0]。为了减轻这种影响,作者尝试在未标记的目标域中学习结构感知和语义表示。具体来说,作者建立了两个新的自监督目标,从损失函数的角度利用自监督,设计了一种自监督伪标记策略。与以往的伪标签不同的是,由于域转移,由源假设生成的伪标签仍然有噪声。作者提出的自监督算法考虑到了目标域的结构,并且有能力提供准确的伪标签。
\quad\quad 首先对目标域的每个类得到质心,类似于带权重的k-means簇,公式如下:
c k ( 0 ) = ∑ x t ∈ X t δ k ( f ^ t ( x t ) ) g ^ t ( x t ) ∑ x t ∈ X t δ k ( f ^ k ( x t ) ) c_{k}^{(0)}=\frac{\sum_{x_{t} \in \mathcal{X}_{t}} \delta_{k}\left(\hat{f}_{t}\left(x_{t}\right)\right) \hat{g}_{t}\left(x_{t}\right)}{\sum_{x_{t} \in \mathcal{X}_{t}} \delta_{k}\left(\hat{f}_{k}\left(x_{t}\right)\right)} ck(0)?=∑xt?∈Xt??δk?(f^?k?(xt?))∑xt?∈Xt??δk?(f^?t?(xt?))g^?t?(xt?)?
\quad\quad 其中, δ k ( ? ) \delta_k(·) δk?(?)表示softmax输出中的第k个元素, f ^ t = g ^ t ° h t \hat{f}_{t}=\hat{g}_{t} \circ h_{t} f^?t?=g^?t?°ht?表示之前学到的目标假设。这些质心可以更可靠地区分目标域内不同类别的分布。然后作者通过最近质心分类器得到伪标签:
y ^ t = argmin ? k D f ( g ^ t ( x t ) , c k ( 0 ) ) \hat{y}_{t}=\operatorname{argmin}_{k} D_{f}\left(\hat{g}_{t}\left(x_{t}\right), c_{k}^{(0)}\right) y^?t?=argmink?Df?(g^?t?(xt?),ck(0)?)
\quad\quad 其中 D f D_f Df?(a,b)衡量a和b之间的cos距离。最后,作者基于新的伪标签计算目标质心:
c k ( 1 ) = ∑ x t ∈ X t 1 ( y ^ k = k ) g ^ t ( x t ) ∑ x t ∈ X t 1 ( y ^ t = k ) y ^ t = arg ? min ? k D f ( g ^ t ( x ) , c k ( 1 ) ) \begin{aligned} &c_{k}^{(1)}=\frac{\sum_{x_{t} \in \mathcal{X}_{t}} 1\left(\hat{y}_{k}=k\right) \hat{g}_{t}\left(x_{t}\right)}{\sum_{x_{t} \in \mathcal{X}_{t}} 1\left(\hat{y}_{t}=k\right)} \\ &\hat{y}_{t}=\arg \min _{k} D_{f}\left(\hat{g}_{t}(x), c_{k}^{(1)}\right) \end{aligned} ?ck(1)?=∑xt?∈Xt??1(y^?t?=k)∑xt?∈Xt??1(y^?k?=k)g^?t?(xt?)?y^?t?=argkmin?Df?(g^?t?(x),ck(1)?)?
\quad\quad 作者将 y t ^ \hat{y_t} yt?^?记作自监督伪标签,因为他们是以一种自监督方式得到质心生成的。事实上,这种解决伪标签的方式来源于最小质心偏移,通过优化类内散度最小化损失来交替更新质心和伪标签。实验验证更新一次就可以给出足够好的伪标签。自监督伪标记的交叉熵损失如下:
L s s l 1 ( f t ;
X t , Y ^ t ) = ? γ 1 E ( x , y ^ t ) ∈ X t × Y ^ t ∑ k = 1 K 1 [ k = y ^ t ] log ? δ k ( f t ( x ) ) \mathcal{L}_{s s l}^{1}\left(f_{t} ;
\mathcal{X}_{t}, \hat{\mathcal{Y}}_{t}\right)=-\gamma_{1} \mathbb{E}_{\left(x, \hat{y}_{t}\right) \in \mathcal{X}_{t} \times \hat{\mathcal{Y}}_{t}} \sum_{k=1}^{K} \mathbb{1}_{\left[k=\hat{y}_{t}\right]} \log \delta_{k}\left(f_{t}(x)\right) Lssl1?(ft?;
Xt?,Y^?t?)=?γ1?E(x,y^?t?)∈Xt?×Y^?t??k=1∑K?1[k=y^?t?]?logδk?(ft?(x))
\quad\quad 其中 γ 1 \gamma_{1} γ1?>0是一个正则化参数,用于 L s s l 1 \mathcal{L}_{s s l}^{1} Lssl1?和主任务之间的权衡。
\quad\quad 此外,作者还研究了在未标记的目标域中特异性的图像自监督。RotNet中的旋转预测旨在识别四种不同的二维旋转(即0?,90?、180?,180?和270?)中的一种,应用于它得到的输入图像,这是一个在自监督学习领域简单有效的方式。最近的几项研究也证实了,以上方法对于学习有意义的语义表示非常有效,这对域适应问题也很有用。然而,绝对旋转预测对某些分类任务很敏感。比如说,在一个数字识别任务中,很难分辨数字‘6’和数字‘9’,因为数字‘6’有可能是由数字‘9’旋转180°生成的,也有可能就是数字‘6’旋转了0°生成的。为了解决这一困境,作者提出了一种新的自监督学习任务,通过预测每个图像对的相对旋转。如下图所示,相对旋转预测器由 R 2 d → { 1 , 2 , 3 , 4 } \mathbb{R}^{2 d} \rightarrow\{1,2,3,4\} R2d→{1,2,3,4}表示,它将一个图像对的连接特征作为输入,并将它们映射到四种不同的旋转角度。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5ah4rGV2-1656066484890)(C:\Users\86133\AppData\Roaming\Typora\typora-user-images\image-20220620195411383.png)]
\quad\quad 对于目标域 x i ∈ X t x_{i} \in \mathcal{X}_{t} xi?∈Xt?中的图像,我们首先随机从[1,2,3,4]中选择一个数字 z i z_i zi?,分别代表着角度[0°,90°,180°,270°]。接着通过将图像 x t x_t xt?旋转对应的角度 z i z_i zi?,我们获得了旋转过后的图像 x i z i = Rot ? ( x i , z i ) x_{i}^{z_{i}}=\operatorname{Rot}\left(x_{i}, z_{i}\right) xizi??=Rot(xi?,zi?)。最后,由 h c h_c hc?预测的第k个相对旋转角度得到的分数由以下公式得到:
δ k ( h c ( [ g t ( x i ) , g t ( x i z i ) ] ) ) \delta_{k}\left(h_{c}\left(\left[g_{t}\left(x_{i}\right), g_{t}\left(x_{i}^{z_{i}}\right)\right]\right)\right) δk?(hc?([gt?(xi?),gt?(xizi??)]))
\quad\quad 其中, δ k ( ? ) \delta_{k}(·) δk?(?)表示softmax输出向量中的第k个元素,[·,·]表示特征级连接函数。因此,作者将自监督旋转预测的损失定义为:
L s s l 2 ( g t , h c ;
X t , Z t ) = ? γ 2 E ( x i , z ^ i ) ∈ X t × Z t ∑ k = 1 4 1 [ k = z i ] log ? δ k ( h c ( [ g t ( x i ) , g t ( x i z i ) ] ) ) \mathcal{L}_{s s l}^{2}\left(g_{t}, h_{c} ;
\mathcal{X}_{t}, \mathcal{Z}_{t}\right)=-\gamma_{2} \mathbb{E}_{\left(x_{i}, \hat{z}_{i}\right) \in \mathcal{X}_{t} \times \mathcal{Z}_{t}} \sum_{k=1}^{4} \mathbb{1}_{\left[k=z_{i}\right]} \log \delta_{k}\left(h_{c}\left(\left[g_{t}\left(x_{i}\right), g_{t}\left(x_{i}^{z_{i}}\right)\right]\right)\right) Lssl2?(gt?,hc?;
Xt?,Zt?)=?γ2?E(xi?,z^i?)∈Xt?×Zt??k=1∑4?1[k=zi?]?logδk?(hc?([gt?(xi?),gt?(xizi??)]))
\quad\quad 其中 γ 2 \gamma_{2} γ2?>0是一个正则化参数,用于 L s s l 2 \mathcal{L}_{s s l}^{2} Lssl2?和主任务之间的权衡。
上图中提供了一个完整的假设转移框架的例子。综上所述,给定源模型 f s = g s ° h s {f}_{s}=g_{s} \circ h_{s} fs?=gs?°hs?和伪标签 y ^ t \hat{y}_t y^?t?,并且随机生成旋转标签 Z t Z_t Zt?,SHOT算法冻结了源假设,并且用以下完整的优化目标学习特征编码模型 g t g_t gt?:
KaTeX parse error: Can't use function '$' in math mode at position 195: …{X}_{t}\right)-$?\gamma_{1} \mat…
$\quad\quad$1.4使用半监督学习的标签转移 \quad\quad 然后,我们通过等式中的SHOT获得了目标域内所有样本的预测,我们可以通过熵函数 H ( p ) = ∑ i p i log ? p i \mathbb{H}(p)=\sum_{i} p_{i} \log p_{i} H(p)=∑i?pi?logpi?来测量这些预测的证据分数 ,其中p为概率预测向量。观察置信度分数的分布,我们发现总是存在一些可能不准确的自信(熵较高的)预测。幸运的是,我们可以利用来自高自信预测的可靠标记信息来提高这些不那么自信的预测的准确性。为此,我们提出了一种分两步法的方法来强制信息传播从低熵预测到高熵预测。在第一步中,我们根据置信度得分将目标域划分成为两个部分。并将这两个分割分别视为一个标记子集和一个未标记子集。在第二步中,我们使用半监督学习算法来学习未标记数据集的增强预测。关于第二种半监督学习算法的选择,我们简单地采用一种流行,并且表现良好的算法MixMatch。这个算法将一致性正则化,最小化熵,和MixUp正则化统一到了一个框架里面。接下来,关键部分在于如何将目标域分割成两个部分。利用平均熵,我们首先利用以下式子计算得到标志子集在整个目标域中的比例:
a = ∑ i 1 ( ξ i < ∑ j ξ j n t ) n t a=\frac{\sum_{i} \mathbb{1}\left(\xi_{i}<\frac{\sum_{j} \xi_{j}}{n_{t}}\right)}{n_{t}} a=nt?∑i?1(ξi?
t k = ? a ∑ i 1 ( y ˉ i = k ) ? , k ∈ [ 1 , ? ? , K ] t_{k}=\left\lfloor a \sum_{i} \mathbb{1}\left(\bar{y}_{i}=k\right)\right\rfloor, k \in[1, \cdots, K] tk?=?ai∑?1(yˉ?i?=k)?,k∈[1,?,K]
\quad\quad 并且 y ˉ i ∈ [ 1 , K ] n t \bar{y}_{i} \in[1, K]^{n_{t}} yˉ?i?∈[1,K]nt?是等式中用SHOT预测的标签。通过这种方法,我们得到了有标签的分割,样本剩下的部分就是没有标签的分割。作者在上图中称这种策略未标签转移,因为在这个阶段我们只需要得到标签信息,特征编码模块 g t g_t gt?是由之前学到的等式初始化的。此外,分类模块 h t h_t ht?是从头开始初始化的,并且之后不再被冻结。到目前为止,作者设计了一个两阶段的方法,称作SHOT++。其中第一个阶段是SHOT中的等式,第二个阶段是上图中提出的标签转移策略。
$\quad\quad$1.5扩展到多源域自适应 \quad\quad 作者还提供了一个扩展的SHOT方法:多源域适应方法MADA。与普通的UDA任务(即一个源一个目标)不同,多源MSDA任务有多个源。为了简单起见,作者将每对源-目标对运行SHOT和SHOT-IM,然后将每对得到的概率值相加。最后,通过argmax操作得到了目标域内样本的预测。在标记转移方面,将目标域分成两部分,并学习独立的部分预测分数。
$\quad\quad$1.6扩展到部分集的域自适应 \quad\quad 作者还提供了一个扩展的SHOT方法,用于部分域适应问题。PDA与普通UDA的不同之处在于,PDA的目标标签空间是源标签空间的一个子集。对于等式中促进多样性的 L d i v L_{div} Ldiv?,它鼓励目标域拥有统一的标签分布。虽然闭集UDA的解决方式似乎合理,但它不适用于PDA。在现实中,目标域只包含源域中所有类的一些类,使得标签分布比较稀疏。因此,我们通过让β=0来放弃PDA的第二项 L d i v L_{div} Ldiv?。此外,在自监督伪标记策略中,通常需要在目标域内获得K个质心。然而,对于PDA任务,有一些微小的质心应该被认为是空的,就像在k-means聚类中一样。因此,SHOT丢弃了等式中数值小于Tc的小质心用于PDA的问题。
$\quad\quad$1.7到半监督域自适应的扩展 \quad\quad 作者进一步扩展了所提出的半监督域自适应(SSDA)的SHOT方法。SSDA与UDA的不同之处在于,在目标域中存在一些有标记的数据。因此,作者在等式中采用了监督训练损失用于标记的目标数据和等式中的完全丢失为未标记的目标数据。此外,在计算目标特定的中心点时,作者也考虑了已标记的目标数据。在标记转移方面,作者将未标记的目标域分成两部分,然后将已标记的数据添加到已标记的分割中。
$\quad\quad$1.8网络架构 \quad\quad 这里作者讨论了神经网络模型参数化特征编码模块和假设的一些结构选择。首先,回顾一下等式中交叉熵损失的期望网络输出,如果 y s y_s ys?=k,那么最大化 f s ( k ) ( x s ) = f_{s}^{(k)}\left(x_{s}\right)= fs(k)?(xs?)= exp ? ( w k ? g s ( x s ) ) ∑ i exp ? ( w i ? g s ( x s ) ) \frac{\exp \left(w_{k}^{\top} g_{s}\left(x_{s}\right)\right)}{\sum_{i} \exp \left(w_{i}^{\top} g_{s}\left(x_{s}\right)\right)} ∑i?exp(wi??gs?(xs?))exp(wk??gs?(xs?))?意味着最小化 g s ( x s ) g_s(x_s) gs?(xs?)和 w k w_k wk?的距离,其中 w k w_k wk?代表最后FC层中的第k个权值向量。理想情况下,来自第k类的所有样本都应该在 w k w_k wk?附近嵌入一个特征。如果给未标记的目标样本正确的伪标签,那么通过等式中的伪标记项,源特征嵌入与目标特征嵌入相似就很容易理解。其背后的直觉与之前的研究也非常相似,其中一个简化的MMD被用于多模态域混淆。由于权值范数在softmax的输出的内部距离上很重要,所以作者采用权值归一化(WN)来保持在FC分类器层中每个权值向量的范数相同。此外,如之前的研究所示,批处理归一化(BN)可以减少内部数据集的偏移,因为不同的域具有相同的均值(零)和方差。基于这些考虑,作者形成了SHOT和SHOT++的框架,如前图所示。
$\quad\quad$2.代码复现:
$\quad\quad$2.1网络参数: \quad\quad 网络架构:对于数字识别任务,使用经典的LeNet-5网络或LeNet的一个变体网络。对于目标识别任务,使用预先训练过的ResNet-50或ResNet-101模型作为骨干模块。接下来使用一个瓶颈层(256个单元)和一个FC分类层替换了原来的FC层。在瓶颈层内的FC层后放置一个BN层,在最后一层FC层中使用一个权值归一化层。
\quad\quad 网络超参数:通过反向传播对整个网络进行训练,对于网络中新添加的层,学习率是网络主干层的10倍。具体来说,训练时采用动量为0.9的小批量SGD优化器,权重衰减为 1 e ? 3 1e^{-3} 1e?3,学习率为 1 e ? 2 1e^{-2} 1e?2.作者还进一步采用了 η = η 0 ? ( 1 + 10 ? p ) ? 0.75 \eta=\eta_{0} \cdot(1+10 \cdot p)^{-0.75} η=η0??(1+10?p)?0.75公式来变换学习率,其中p随着训练的过程从0变为1。此外,所有任务的batch size大小均为64。对于所有数据集,都设置 γ 1 = 0.3 , γ 2 = 0.6 \gamma_{1}=0.3, \gamma_{2}=0.6 γ1?=0.3,γ2?=0.6。
\quad\quad 对于没有训练验证分割的数据集,我们在源数据集中随机指定一个0.9/0.1的分割,并基于验证集生成最优的源假设。Digits、Office、Office-Home、VisDA-C和Office-Caltech数据集的的epoch分别设置为30、100、50、10和100。在将模型调整到目标领域中时,epoch数被设置为15。在第二步训练中,作者采用了与训练SHOT相同的学习设置,并在MixMatch中使用了默认参数α=0.75。
$\quad\quad$2.2实验结果: \quad\quad (因为时间有限,只在Office数据集上测试了性能)
参考文献:
Method
A ? W \mathrm{A} \Rightarrow \mathrm{W} A?W
D ? W \mathrm{D} \Rightarrow \mathrm{W} D?W
W ? D \mathrm{W} \Rightarrow \mathrm{D} W?D
A ? D \mathrm{A} \Rightarrow \mathrm{D} A?D
D ? A \mathrm{D} \Rightarrow \mathrm{A} D?A
W ? A \mathrm{W} \Rightarrow \mathrm{A} W?A
A V G \mathrm{AVG} AVG
Source only
76.9
95.3
98.7
80.8
60.3
63.6
79.3
SHOT
90.1
98.4
99.9
94.0
74.7
74.3
88.6
SHOT++
98.7
98.7
98.0
94.3
86.0
86.0
89.2
[1] B. Chidlovskii, S. Clinchant, and G. Csurka, Domain adaptation in the absence of source domain data, in ACM SIGKDD Conference on Knowledge Discovery and Data Mining, 2016, pp 451–460.
[2] A. R. Nelakurthi, R. Maciejewski, and J. He, “Source free domain adaptation using an off-the-shelf classififier,” in IEEE International Conference on Big Data. IEEE, 2018, pp. 140–145.
[3] M. Chen, H. Xue, and D. Cai, “Domain adaptation for semantic segmentation with maximum squares loss,” in International Conferenceon Computer Vision, 2019, pp. 2090–2099.
[4] T.-H. Vu, H. Jain, M. Bucher, M. Cord, and P. Perez, “Advent: ′Adversarial entropy minimization for domain adaptation in semantic segmentation,” in IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2019, pp. 2517–2526.
[5] J. Liang, R. He, Z. Sun, and T. Tan, “Distant supervised centroid shift: A simple and effificient approach to visual domain adaptation,” in IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2019, pp. 2975–2984.
[6] J. Liang, D. Hu, and J. Feng, “Do we really need to access the source data? source hypothesis transfer for unsupervised domain adaptation,”in International Conference on Machine Learning. PMLR, 2020, pp.6028–6039.
[7] J. Liang, D. Hu, Y. Wang, R. He, and J. Feng, “Source data-absentunsupervised domain adaptation through hypothesis transferand labeling transfer,” IEEE Transactions on Pattern Analysis and Machine Intelligence, 2021.
[8] S. Tang, Y. Shi, Z. Ma, J. Li, J. Lyu, Q. Li, and J. Zhang, “Model adaptation through hypothesis transfer with gradual knowledge distillation,” inIEEE/RSJ International Conference on Intelligent Robots and Systems.IEEE, 2021, pp. 5679–5685.
[9] W. Chen, L. Lin, S. Yang, D. Xie, S. Pu, Y. Zhuang, and W. Ren, “Selfsupervised noisy label learning for source-free unsupervised domain adaptation,” arXiv preprint arXiv:2102.11614, 2021.
【机器学习|无源域适应(SFDA)方向的领域探究和论文复现(第二部分)】[10] S. Yang, Y. Wang, J. van de Weijer, L. Herranz, and S. Jui, “Generalized source-free domain adaptation,” in International Conference on**Computer Vision, 2021, pp. 8978–8987.
[11]S. Tang, Y. Yang, Z. Ma, N. Hendrich, F. Zeng, S. S. Ge, C. Zhang,and J. Zhang, “Nearest neighborhood-based deep clustering for source data-absent unsupervised domain adaptation,” arXiv preprint arXiv:2107.12585, 2021.
[12] S. Yang, Y. Wang, J. van de Weijer, L. Herranz, and S. Jui, “Exploiting the intrinsic neighborhood structure for source-free domain adaptation,”in Advances in Neural Information Processing Systems, 2021.
[13] J. N. Kundu, N. Venkat, R. V. Babu et al., “Universal source-free domain adaptation,” in IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2020, pp. 4544–4553.
[14]G. Yang, H. Tang, Z. Zhong, M. Ding, L. Shao, N. Sebe, and E. Ricci,“Transformer-based source-free domain adaptation,” arXiv preprint arXiv:2105.14138, 2021.
[15] Y. Iwasawa and Y. Matsuo, “Test-time classififier adjustment module for model-agnostic domain generalization,” in Advances in Neural Information Processing Systems, vol. 34, 2021.
[16] Y. Kim, S. Hong, D. Cho, H. Park, and P. Panda, “Domain adaptation without source data,” arXiv preprint arXiv:2007.01524, 2020.
[17] S. Yang, Y. Wang, J. van de Weijer, L. Herranz, and S. Jui, “Unsupervised domain adaptation without source data by casting a bait,” arXiv preprint arXiv:2010.12427, 2020.
[18] J. Dong, Z. Fang, A. Liu, G. Sun, and T. Liu, “Confifident anchor-induced multi-source free domain adaptation,” in Advances in Neural Information Processing Systems, 2021.
[19] J. Huang, D. Guan, A. Xiao, and S. Lu, “Model adaptation: Historical contrastive learning for unsupervised domain adaptation without source data,” in Advances in Neural Information Processing Systems, 2021.
[20] Y. Du, H. Yang, M. Chen, J. Jiang, H. Luo, and C. Wang, “Generation,augmentation, and alignment: A pseudo-source domain based method for source-free domain adaptation,” arXiv preprint arXiv:2109.04015,2021.
[21] H. Zhang, Y. Zhang, K. Jia, and L. Zhang, “Unsupervised domain adaptation of black-box source models,” arXiv preprint arXiv:2101.02839,2021.
[22] M. Bateson, H. Kervadec, J. Dolz, H. Lombaert, and I. B. Ayed, “Source relaxed domain adaptation for image segmentation,
” in International Conference on Medical Image Computing and Computer-Assisted Intervention, 2020, pp. 490–499.
[23] D. Wang, E. Shelhamer, S. Liu, B. Olshausen, and T. Darrell, “TENT:Fully test-time adaptation by entropy minimization,” in International Conference on Learning Representations, 2021.
[24] F. You, J. Li, and Z. Zhao, “Test-time batch statistics calibration for covariate shift,” arXiv preprint arXiv:2110.04065, 2021.
[25] J. Hong, Y.-d. Zhang, and W. Chen, “Source-free unsupervised domain adaptation for cross-modality abdominal multi-organ segmentation,”arXiv preprint arXiv:2111.12221, 2021.
[26] Y. Wang, J. Liang, and Z. Zhang, “Give me your trained model: Domain adaptive semantic segmentation without source data,
” arXiv preprint arXiv:2106.11653, 2021.
[27] Y. Liu, W. Zhang, and J. Wang, “Source-free domain adaptation for semantic segmentation,” in IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2021, pp. 1215–1224.
[28] J. Hong, Y.-d. Zhang, and W. Chen, “Source-free unsupervised domain adaptation for cross-modality abdominal multi-organ segmentation,”arXiv preprint arXiv:2111.12221, 2021.
[29] X. Li, W. Chen, D. Xie, S. Yang, P. Yuan, S. Pu, and Y. Zhuang, “A free lunch for unsupervised domain adaptive object detection without source data,” in AAAI Conference on Artifificial Intelligence, vol. 35, no. 10,2021, pp. 8474–8481.
[30] L. Xiong, M. Ye, D. Zhang, Y. Gan, X. Li, and Y. Zhu, “Source data-free domain adaptation of object detector through domain-specifific perturbation,” International Journal of Intelligent Systems, 2021.
推荐阅读
- opencv|【opencv】error: (-215:Assertion failed) ssize.empty() in function ‘cv::resize‘报错原因
- 聚类|无源域适应(SFDA)方向的领域探究和论文复现(第一部分)
- 深度学习|深度学习-视频行为识别(论文阅读——双流网络(Two-stream convolutional networks for action recognition in videos))
- 深度学习之医学图像分割论文|[深度学习论文笔记]使用多模态MR成像分割脑肿瘤的HNF-Netv2
- 深度学习之医学图像分割论文|[深度学习论文笔记]UCTransNet:从transformer的通道角度重新思考U-Net中的跳跃连接
- 多模态融合|多模态融合
- 深度学习之医学图像分割论文|[深度学习论文笔记]UNETR: Transformers for 3D Medical Image Segmentation
- 论文阅读笔记|双流网络泛读【Two-Stream Convolutional Networks for Action Recognition in Videos】
- 深度学习|GAT: 图注意力模型介绍及PyTorch代码分析