摘要

近期研究表明,通常而言,一个在大量数据上训练的监督学习深度CNN模型可以减少但是不能移除一个标准基准上的数据集偏差。在新的域内使用基于微调的深度模型对数据量有很高的需求,这种限制使得这种方法在很多场景中无法应用。作者提出了一种新的CNN架构,这种架构中引入了一种自适应层以及一个额外的***域混淆(Domain Confusion)***误差,用于学习域不变的数据特征。作者也额外表明一个域混淆策略可以应用于模型选择,用于确定自适应层的维度以及该层在CNN架构中的最好位置。作者提出的适应方法在一个标准的基础视觉域适应任务获得了比之前提出的方法更高的经验表现。

引言

数据差异是使用传统监督学习方法进行图像识别任务中的一个广为人知的难题。近期的理论以及经验结果表明,监督学习方法的测试误差会因训练集和测试集的数据分布差异而成比例增长。近年来,针对这个问题也产生了一些视觉域适应的方法,但是都局限于浅层模型。传统的深度模型适应方法只有微调方法。
直接将一个深度模型的参数在少量有标签的样本上进行微调是存在问题的。幸运的是,预训练深度模型在一个全新的域上表现良好。近来,有文献指出,使用在ImageNet数据集上训练的模型的中间层特征,而不是更加卷积化的词袋特征,可以有效降低OFFICE数据集域适应设置中的一些偏差。这个算法将从ImageNet上训练得到的特征表示进行迁移,同时将所有的这个数据以一个合适的类比作为源域数据。然而,这种方法不能从深度网络结构中选取特征表示,而是跨多个层选择选项。
数据集偏差通过Torralba和Efros的“命名数据集”游戏经典地在计算机视觉中得到了说明。事实上,这在形式上与衡量领域差异的标准有关。,因此,优化域之间的差异,可以等效地看做一个这样的任务,即:在学习如何预测正确标签的同时寻找一个使得域看起来相似的特征表示。这种原则构成了本文提出的方法的本质。作者通过优化损失的方法学习特征表示,这种损失一方面包括了有标签数据上的分类损失,另一方面也包括一个使得域之间难以分辨的域混淆(Domain Confusion)损失
作者提出了如图1所示的一个全新的CNN结构,其中使用了一个基于最大均值误差(Maximum Mean Discrepance,MMD)的域混淆损失的自适应层,用于自动学习联合训练的特征表示,以优化分类以及域的差异。作者所提出的域混淆策略一方面可以用来选择自适应层的维度,在没有预训练CNN结构的基础上选择一个有效的新域适应层的安放位置,同时也可以微调特征表示。
作者所提出的结构可以用来解决目标域有少量有标签样本的情况,即监督自适应(Surpervised Adaptation)以及目标域数据没有样本的情况,即无监督自使用(Unsupervied Adaptation)。作者在OFFICE基础数据集的视觉差异域上提供了一个详细的模型评估。通过对域混淆以及分类的联合优化,作者所提出的方法比前沿的视觉域适应方法的结果都要优秀。事实上,对于微小姿势、分辨率以及光照的条件的改变,所提出的算法可以达到96%的准确率,结果表明所提出的模型可以从这些差异中学习到不变的特征表示。

图1. 此模型结构对深度CNN中的分类损失以及域混淆损失都进行了优化。当目标域上存在少量有标签样本时,此模型可以进行监督域适应训练;当目标域上存在大量无标签样本时,此模型可以进行无监督域适应训练。通过域混淆引导自适应层的深度和宽度的选择,以及微调过程中可以直接降低源域和目标域特征表示之间距离的额外的域误差项,进而获取域不变特征。

相关工作

视觉数据集差异的概念在引文【A. Torralba and A. Efros. Unbiased look at dataset bias. In Proc. CVPR, 2011. 1, 2】中被提出。近年来针对时域域适应问题有很多方法被提出。并且都发现源域和目标域上的特征表示存在一定迁移。事实上,***域迁移(Domain Shift)***的程度通常可以通过源域和目标域的子空间特征表示描述。很多方法都尝试学习一个特征空间转换来联合源域和目标域的特征表示。在监督域适应场景中,当目标域上存在少量有标签样本时,已经提出了一些方法来学习针对源分类器进行正则化的目标分类器。另外也有一些方法在学习特征转换的同时进行目标分类器的正则化。
近期,基于监督学习卷积神经网络的特征表示已经被证明对各种视觉识别任务非常有效。具体来说,使用深度特征表示可以很大程度上降低分辨率以及光照对域迁移的影响。
平行CNN结构,例如Siamese网络已经被证明对于学习不变的特征表示很有效。然而,训练这些模型需要每个训练样本的标签,因此,如何将这些方法扩展到无监督设置中暂不明确。
多模型深度学习结构也探索了如何学习不同输入形式的特征表示。然而,此类方法主要在生成环境中运行,因此没有利用到监督CNN的全部表征能力。
训练一个联合的源域和目标域CNN结构最早由文献【S. Chopra, S. Balakrishnan, and R. Gopalan. DLID: Deep learning for domain adaptation by interpolating between domains. In ICML Workshop on Challenges in Representation Learning, 2013. 2, 5】提出,但是也受限于两层的网络,并且被使用深度网络结构,并且在大型数据源上训练的模型大幅超越。
文献【M. Ghifary, W. B. Kleijn, and M. Zhang. Domain adaptive neural networks for object recognition. CoRR, abs/1409.6041, 2014. 2, 5】提出了一个使用降噪自编码器,同时使用MMD域混淆损失训练两层神经网络进行预训练的方法。这种方法有效地学习到了域不变特征表示,但是再一次地,因为进行学习的网络结构相对浅,这种方法缺少了通过直接使用监督深度CNN方法进行优化分类目标学习到的强语义表示。

训练基于CNN的域不变特征表示

作者引入一种全新的CNN结构,用来学习域不变的、可以提供强语义分割的视觉表示。目前已经证明,一个预训练的CNN可以通过微调来适应新的任务。然而,在域适应场景中,目标域几乎或者完全不存在有标签数据,因此不能在目标域T中对感兴趣的类别C进行微调。相反,我们使用一个与目标域相关,但是存在一定差异的目标域S中的数据,其中更多的有标签数据可以从对应的类别C中获得。
直接将使用源域数据训练好的分类器应用到目标分布中通常会导致过拟合的问题,在目标域中进行识别时的测试表现可能会下降。我们的直觉是,如果我么可以一个特征表示,这种特征表示可以最小化源域和目标域之间的分布差异,这样就可以直接将源域上训练的分类器应用到目标域上,将准确率的损失降到最低。
为了最小化这种距离,我们考虑到一种标准的分类距离策略,最大均值误差MMD,该距离是针对特征表示φ(·)计算的。在我们的例子中,我们定义了一个表示φ(·),在源域(xs ∈ XS)和目标域(xt ∈ XT)点上进行操作。这样,这种距离的经验估计可以由下式表示:

如图2所示,我们想要的不仅是最小化域之间的距离(或者说是最大化域混淆),同时也需要获得有利于训练强分类器的特征表示。这样的特征表示可以使得我们有能力学习一个容易跨域的强分类器。这里提出了一个可以同时满足这些标准进而最小化损失的方法:

其中LC (XL, y) 表示在可利用的有标签数据XL以及实际标签y上的分类误差,而MMD(XS, XT )表示源域XS和目标域XT的距离,超参数λ决定了我们在何种程度上混淆不同域。
一种最小化上述损失的方法是:使用一个固定的CNN,这个CNN已经是一个强的分类表示,使用MMD来决定其中哪一层需要使用激活函数来最小化域分布之间的距离。我们可以随后使用这种表示来训练另一个模型,用于识别我们感兴趣的类别。这可以看做是公式(2)中的坐标下降:我们训练一个用于最小化LC的神经网络,选择最小化MMD的特征表示,然后使用这种表示来进一步最小化LC。
然而,这种方法有一定的显示,不能够直接进行特征表示的自适应,相反地,这种方法被一系列固定的特征表示所限制。因此,我们提出了一种神经网络,这种网络可直接优化分类以及域混淆目标,如图1所示。
我们首先使用的是Krizhevsky的结构,其中包含5个卷积和池化层,三个维度为{4096,4096,|C|}的全连接层,我们额外添加了一个低维的“瓶颈”自适应层。我们的直觉是:使用一个低维的层可以对源域分类器的训练进行规范,同时防止源域分布中特定的细微差距的过拟合。我们将域距离损失放在瓶颈层上,进而直接对源域和目标域的不变特征表示进行规范。
在添加适应层以及域距离损失的过程中必须进行两个模型选择的决定。我们必须确定在网络的何处防止自适应层,并确定该层的维度。我们使用MMD策略来进行这两种决策。首先,如之前讨论到的,为了我们的初始的固定表示,我们发现了网络中将可利用的源域和目标域之间的MMD距离最小化的层,在我们的实验中,这个地方对应的是全连接层fc7后面的位置。
接下来,我们必须确定自适应层的维度。我们使用了一种网格搜索的方法来解决这个问题,在这个方法中,我们使用不同维度对多模型进行了微调,并且在新的低维表示中计算MMD距离,最终确定了可以最小化源域和目标域距离的维度。
使用哪个层中的特征表示(‘depth’)以及自适应层的维度大小(‘width’),这两个问题都由MMD进行指导,因此可以看做我们整体目标的下降步骤。
我们的网络结构(如图1)包括一个源域以及一个目标域的CNN,二者权重共享。只有有标签的数据参与到了分类损失的计算过程中,而在计算域混淆损失的过程中,所有数据都参与其中。这个神经网络是在源域和目标域可利用的数据上进行联合训练的。
公式(2)中概括的对象可以使用这个卷积神经网络轻易地表示,其中,MMD在源域和目标域的小批次上进行计算。我们仅仅在网络顶部,自适应层之后添加了一个分叉结构,同时其他的分支使用了所有的数据,计算源域和目标域的MMD。
在进行这个网络结构的微调以后,因为联合损失中存在的两项,自适应层可以学习到特征表示。基于分类误差损失项,这个表示可以有效地对问题中的不同类别进行区分,同时基于MMD项,这个特征表示可以在域迁移的情况下保持不变。我们期待这种特恒表示可以因此获得更加的适应能力。

模型评估

我们在一个具有少量源域的标准域适应数据集上对所提出的自适应算法进行了评估。结果表示,我们的算法可以通过有效的自适应产生一个CNN的特征表示,在目标域仅有少量有标签样本或者无有标签样本的情况下表现良好。
OFFICE数据集包含了三个不同于的图像:Amazon,DSLR和Webcam。数据集中的31个类别由常见的办公室配置中的场景组成,例如键盘、文件柜以及笔记本电脑组成。最大的域包含2817张有标记图像。
我们在模型评估常用的三种迁移任务(Amazon→Webcam,DSLR→Webcam以及Webcam→DSLR )进行了三种随机的训练/测试集划分,对于每种设置展示了其均值以及标准误差。我们将所提出的方法与近期提出的六种方法的结果进行了监督和无监督场景的对比。
这个数据集的源域是亚马逊数据集时,每个种类包含20个源域图片,源域数据集是Webcam或者DSLR时,每个种类包含8个图片,训练过程中遵循标准的训练协议。在监督自适应设置中,我们假设每个种类包含三个有标签样本。
评估自适应层的安放位置
我们使用特征表示选择策略的评估作为开始,在使用了一个预训练的卷积神经网络的基础上,我们在各个全连接层上对源域和目标域数据的表示进行特征提取。随后我们可以对各层的源域和目标域的MMD距离进行计算。因为一个低的MMD距离表明特征表示具有更好的域不变形,我们期待具有更低MMD的特征表示可以在自适应过程后实现更好的表现。
为了测试这种假设,在其中一种Amazon→Webcam的划分中,我们使用了一种由Daume引入的简单的域适应基线,用于计算目标域的测试准确率。图3中显示了不同桥层的MMD以及自适应表现。我们使用MMD正确地排序了特征表示,指出了fc7层具有最好表现,fc6表现最差。因此,我们后续的实验中在fc7层后添加了自适层。
选择自适应层维度
在我们可以通过我们提出的微调方法学习到新的特征表示之前,我们必须确定这个特征表示的宽度。再一次地,我们使用MMD作为决定测量,为了确定我们学习到的特征表示层的维度,我们在Amazon→Webcan任务上训练了很多不同的神经网络,这个任务是三者间最具挑战性的任务。具体地,我们在64到4096间尝试了不同的宽度,宽度逐次乘2。一旦模型训练完毕,我们就在不同的源域和目标域学习到的特征表示之间度量MMD。我们的方法选择了可以使得源域和目标域MMD最小的维度。
为了确定MMD方法可以得到正确的结论,我们再一次在测试集上对MMD的表现进行了测试。图4表明,我们选择自适应层的维度为256,虽然这种设置并不是使得表现最佳的设置,它仍然是一个合理的选择。具体而言,使用MMD方法避免选择极端的宽度,这种宽度可能会使得表现大打折扣。值得注意的是,图中存在一部分不规则性,可能更好地采样方法会产生更准确的选择。

图3(左)和图4(右).图三表示不同的特征表示层的选择导致的MMD以及测试准确率。我们观察到,源域和目标域的MMD以及准确率似乎存在反相关的关系,这表明MMD可以用于选择更好的自适应层。图4表示选择不同的自适应层维度产生的MMD以及测试误差,我们观察到MMD与准确率似乎存在反相关,表明MMD可以帮助选择合适的维度。
使用域混淆正则化进行微调
在我们确定了自适应层维度的选择之后,我们可以通过第三节中描述的联合损失对模型进行微调,然而,我们需要确定正则化超参数λ。将λ设置地太小会导致MMD正则器对学习的特征表示没有影响,而将λ设置地太大会导致正则化过于严重,会学习到退化的特征表示,其内部的所有点之间距离太近。我们设置正则化参数λ=0.25,这使得目标主要侧重于分类,但是也拥有足够的避免过拟合的正则化。
在监督和无监督中我们使用了相同的微调结构。然而,在监督学习设置中,分类器是在两个域上进行训练的;在无监督设置中,因为训练样本标签的缺失,分类器仅使用源域数据进行训练。在两个设置中,MMD都利用了所有的数据,因为其不需要标签。
最终,因为自适应层以及分类器都是从头训练的,我们可以发现其学习率比网络中从从其他预训练模型中复制得到的底层中的学习率要高十倍。随后通过反向传播优化推进微调。
监督的自适应设置结果如表1所示,无监督自适应结果如表2所示。我们注意到我们的算法戏剧性地超过了所有的竞争算法。我们算法的显著提升表明通过MMD正则化微调学习到的自适应层具有成功迁移到新目标域的能力。
为了确定MMD正则化如何影响学习,我们在图5中针对Amazon→Webcam任务,对比了额使用和未使用正则化时的学习曲线。我们发现,虽然没有进行正则化的版本在刚开始训练速度很快,但是也迅速地陷入过拟合,同时测试准确率下降。相反地,使用MMD正则化防止了模型对源域数据陷入过拟合,虽然训练时间较长,正则化在最终的测试准确率上准确率较高。

图5.在无监督的Amazon→Webcam上进行的正则化和无正则化的微调的前700次迭代的测试准确率。虽然最开始无监督训练获得了更好的表现,其对于源域数据过拟合。相反地,使用正则化防止了过拟合,因此虽然最开始学习速度较慢,我们最终可以观测到更好的表现。
为了进一步我们学习到的特征表示的域不变性,我们在图6中使用我们对Amazon和Webcam学习到的特征表示画出了一个t-SNE嵌入图,并且将其与预训练模型中的fc7中产生的嵌入式特征进行对比。测试了这些嵌入特征,我们发现我们学习到的特征表示在将域进行混合时存在更紧密的类别聚类,同时fc7中的嵌入式特征聚类较弱,我们发现,更紧密的聚类来源于一个域或者其他域中,但是很少是二者同时的。

图6.使用我们的监督学习方法通过MMD正则化学习到的256维的特征表示以及来自与训练模型的原始的fc7中的特征表示获得的Amazon和Webcam的t-SNE。相比于未进行域不变训练的原始特征表示而言,可以观察到我们学习的特征表示在将域混合时可以将不同的类别进行更好地区分。举例而言,在fc7空间中,Amazon显示器和Webcam显示器被划分到了不同的聚类,而我们学习到的特征表示中不论域的所有显示器都被混合在同一个聚类中。
Office数据集上的历史进展
在图7中我们展示了自标准Office数据集被引入以来在其上获得的历史进展。我们将使用传统特征的方法(例如:SURF BoW)使用蓝色圆圈标注,将使用深度特征表示的方法使用红圈标注。我们展示了两种自适应场景。第一种是对视觉遥远的域(Amazon→Webcam)上的监督自适应任务。在这个任务上我们的算法比DeCAF算法在多分类上提升了3.4%的准确率。最终,我们展示了对于同种迁移的最难的无监督适应。这里我们展示了我们的方法提供了最明显的5.5%的多分类准确率提升。

图7.近年来在一个标准的视觉域适应数据集Office上取得的快速提升。我们在Amazon→Webcam上,将使用传统的人工设计的视觉特征表示方法通过篮圈进行标注,将使用深度特征表示的方法使用红圈进行标注。在监督学习任务上,我们的方法获得了84%的多分类准确率,提升了3%。在无监督任务上,我们的方法获得了60%的多分类准确率,提升了6%。
结论
在这篇文章中,我们针对学习分类域不变特征表示提出了一种目标函数。这种目标利用一种额外的域混淆项来确保在学习到的特征表示中的域是无法区分的。随后我们提出了一系列不同的方法来优化对象,从简单的固定特征表示选取到通过反向传播使用卷积结构直接优化目标。
我们的全部方法,使用MMD在微调过程中优化正则器的宽度和深度,在视觉域适应基准上实现了最好的表现,以相当大的优势超过了前面的方法。
这些实验表明,使用一个有效的方法将域适应项加入到判别性的特征表示学习过程中可以保证学习到的知识在可以进行分类的同时对域迁移现象保持不变。

Deep Domain Confusion:Maximinzing for Domain Invariance阅读笔记相关推荐

  1. 25. Deep Weighted MaxSAT for Aspect-based Opinion Extraction 阅读笔记

    25. Deep Weighted MaxSAT for Aspect-based Opinion Extraction 阅读笔记 Author Information::Meixi Wu* , We ...

  2. Deep Domain Confusion: Maximizing for Domain Invariance

    1. 作者 来源 UC Berkeley 与 UMass Lowell, 的Eric Tzeng, Judy Hoffman, Ning Zhang ,Kate Saenko,Trevor Darre ...

  3. RelExt: Relation Extraction using Deep Learning approaches for Cybersecurity Knowledge Graph 阅读笔记

    RelExt: Relation Extraction using Deep Learning approaches for Cybersecurity Knowledge Graph Improve ...

  4. 《Deep Learning for Computer Vision withPython》阅读笔记-PractitionerBundle(第9 - 11章)

    9.使用HDF5和大数据集 到目前为止,在本书中,我们只使用了能够装入机器主存储器的数据集.对于小数据集来说,这是一个合理的假设--我们只需加载每一个单独的图像,对其进行预处理,并允许其通过我们的网络 ...

  5. 翻译论文:Deep Domain Confusion: Maximizing for Domain Invariance

    题外话: 第一次做全文翻译,翻译不好请谅解,多多给予意见.最近在看DDC,顺便就把这篇文章翻译一下. 摘要 最近的报告表明,在大规模数据集上训练的通用监督深度cnn模型可以减少但不消除对标准基准数据集 ...

  6. Domain Adaption Without Source Data论文阅读笔记

    总的来说: 源模型经过一个特征提取器和一个分类器后得到一个标签ysy_sys​ 可训练的目标模型输入目标样本,经过特征提取器后,分类器Cs2tC_{s2t}Cs2t​用源伪标签训练,分类器CtC_tC ...

  7. EnlightenGAN: Deep Light Enhancement without Paired Supervision论文阅读笔记

    EnlightenGAN: Deep Light Enhancement without Paired Supervision论文解读 Motivation and introduction 最近在x ...

  8. 《Deep Learning for Computer Vision withPython》阅读笔记-StarterBundle(第6 - 7章)

    6.配置您的开发环境 当涉及到学习新技术(尤其是深度学习)时,配置开发环境往往是成功的一半.在不同的操作系统.不同的依赖版本以及实际的库本身之间,配置您自己的深度学习开发环境可能是相当令人头痛的事情. ...

  9. 《Deep Learning for Computer Vision withPython》阅读笔记-StarterBundle(第4 - 5章)

    4.图像分类基础 这句格言在我们的生活中已经听过无数次了.它只是意味着一个复杂的想法可以在一个单一的图像中传达.无论是查看我们股票投资组合的折线图,查看即将到来的足球比赛的传播,还是简单地学习绘画大师 ...

最新文章

  1. 定时任务:Java中Timer和TimerTask的使用
  2. android操作系统优势,Android操作系统平台最大的优势
  3. android listview item长按事件,ListView的点击事件,长按事件,数据刷新
  4. J2ME Nokia 模拟器 安装运行
  5. boost::hana::and_用法的测试程序
  6. VTK:PolyData之KochanekSplineDemo
  7. Go语言中查询SqlServer数据库
  8. Leet Code OJ 125. Valid Palindrome [Difficulty: Easy]
  9. 【Tyvj1783】【codevs2418】【BZOJ1856】字符串,厉害的组合数与模型转换
  10. cmake2 配合1
  11. Spring事务管理实现方式之编程式事务与声明式事务详解
  12. MMKV 原理以及使用
  13. 敌兵布阵 HDU - 1166
  14. 小武与SSD与pytorch-尝试手撕代码
  15. PHP编程 第3版pdf
  16. 谷歌SEO的内容营销应该怎么做
  17. 湖南工大计算机学院大一分班,不懈奋斗,书写无悔青春 --中国矿业大学计算机学院14-05班获评校级“优良学分班”称号...
  18. ZigBee Routing Tables 路由表
  19. 星城,你准备好了么?Greenplum走进长沙技术研讨会
  20. Vue项目之上传图片

热门文章

  1. matlab1到100求和for_一个简单的MATLAB程序(1到100求和)
  2. 知识点 - 线性丢番图方程 Linear Diophantine Equations
  3. AHRS简要说明及使用例程(外加踩坑)
  4. 前端des加密,后端des解密
  5. 高等数学:如何理解泰勒展开公式?等价无穷小与泰勒公式的关系是什么?
  6. SocialBoo出海指南 || 海外网红营销深度报告
  7. WorldFirst如何注册?WorldFirst收款账号注册流程!
  8. cadence logic 库说明
  9. iif能用到mysql中吗_数据库iif
  10. oracle授权v$lock,访问V$LOCK视图Oracle 11g出现性能问题