SHOT框架:学习域不变特征加码模块,让输出目标特征可匹配源特征分布,被源假设分类准确,
1. 引言
一个简单但通用的方法:源假设转移(SHOT).
SHOT假设:相同的深度神经网络模型包括一个域之间的特征加密模块和一个分类器模块(假设)。旨在学习一个目标特定的特征加密模块来生成与源数据表示对齐良好的目标数据表示,而不用接触源数据和目标数据的标签。SHOT基于以下进行设计:如果我们已经学习了目标数据的类源表示,源分类器(假设)对目标数据的分类输出应与源数据的类似,即与one-hot编码接近。因此,SHOT冻结了源假设,并通过最大化中间特征表示和分类器输出之间的互信息微调了源加密模块,因为信息最大化鼓励网络分配完全不同的one-hot编码给目标特征表示。
即使信息最大化迫使特征表示很好地适应假设,可能仍将目标特征表示对齐到错误的源假设。为避免,提出一个自监督伪标签方法来增强目标表示学习。考虑到源分类器生成的伪标签可能对目标数据不准确有噪,我们提出对目标域本身保留中间class-wise原型,并进一步从这些原型中通过监督得到更干净的伪标签,来指导映射模块学习。这种自监督标签充分利用了目标域的全局架构,并将学习正确适应源假设的特征表示。而且,还调查了标签平滑,权重正则化,批归一化,在源模型的网络架构内,来增强适应性能。
2. 相关工作
假设迁移学习(HTL)
HTL可看作参数适应的正则化,假设最优目标假设与源假设紧密相关。与著名的微调策略相似,HTL大多获得每个类至少一个带标记的目标例子的小集合,限制了z在半监督DA情景的可用性。
伪标签(PL)
伪标签最初为半监督学习提出,在其他传感学习上很受欢迎,主要思想:标记伪标签的数据用最大预测改了,并与标记数据一起进行微调,很有效。在没有标记数据下,DeepCluster,最好的自监督学习方法之一,通过k-means聚类生成伪标签,并利用他们来重新训练当前模型。考虑到数据集偏移,我们框架结合了两者的优势,发展了一个自建度的伪标签策略来减轻有噪伪标签的伤害。
Federated Learning (FL)
FL是一种分布机器学习方法,训练一个多个去中心化边缘设备之间的模型,而不交换他们的数据样本。FL的通常用法消耗一个简单的来自多个局部使用者的更新集合用于服务器端的学习算法,提供了一个隐私保留的机制。最近:知识从去中心化节点转移到一个新的节点,不需任何监督本身并提出一个基于对抗的解决方案。特别的,它在每个源节点训练一个模型,并用源梯度的集合更新目标模型来减少域偏移。但它可能不能解决普通的DA设定,仅有一个源域可用。
3. 方法
仅用一个预训练模型,不使用源数据来解决无监督DA任务。特别的,考虑 K − w a y K-way K−way分类。对普通的无监督DA任务,给我们 n s n_s ns个来自源域 D s D_s Ds的带标签样本 { x s i , y s i } i = 1 n s \{
{x_s^i,y_s^i\}}_{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个来自目标域 D t D_t Dt的无标签样本 { x t i } i = 1 n t \{
{x_t^i\}}_{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 \{
{y_t^i}\}_{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 : X t → Y t f_t:\mathcal{X}_t\rightarrow \mathcal{Y}_t ft:Xt→Yt,然后仅用 { x t i } i = 1 n t \{
{x_t^i}\}_{i=1}^{n_t} {
xti}i=1nt和源方程 f s : X s → Y s f_s:\mathcal{X}_s\rightarrow \mathcal{Y}_s fs:Xs→Ys来推断 { y t i } i = 1 n t \{
{y_t^i}\}_{i=1}^{n_t} {
yti}i=1nt。
我们通过三个步骤解决UDA的源模型转移任务。首先,从源数据生成源模型。其次,丢弃源数据并转移模型(包括源假设)到目标域而不接触源数据。第三,进一步研究如何为两个模型都设计更好的网络架构来提升适应性能。
3.1 源模型生成
考虑构建一个深度神经网络然后学习源模型 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 l o g δ k ( f s ( x s ) ) \mathcal{L}_{src}(f_s;\mathcal{X}_s,\mathcal{Y}_s)=-\mathbb{E}_{(x_s,y_s)\in\mathcal{X}_s\times \mathcal{Y}_s\sum_{k=1}^Kq_klog\delta_k(f_s(x_s))} Lsrc(fs;