• 论文解读(MCADA)《Multicomponent Adversarial Domain Adaptation: A General Framework》


    Note:[ wechat:Y466551 | 可加勿骚扰,付费咨询 ]

    论文信息

    论文标题:Multicomponent Adversarial Domain Adaptation: A General Framework
    论文作者:Chang’an Yi, Haotian Chen, Yonghui Xu, Huanhuan Chen, Yong Liu, Haishu Tan, Yuguang Yan, Han Yu
    论文来源:2023 aRxiv
    论文地址:download 
    论文代码:download
    视屏讲解:click

    1 介绍 

      出发点:现有的域对抗训练方法主要考虑对齐域级的数据分布,而忽略了不同域中的组件之间的差异。因此,不会过滤掉与目标域无关的组件,这可能造成负迁移;

      贡献:

      • 提供了一个两阶段的框架,可同时考虑全局数据分布和特征的内在关系。即:首先学习域级模型,然后在组件级对模型进行微调来增强正迁移;
      • 构造了一个二部图来匹配来自不同域的分量。二部图可以为目标域的每个分量找到最相关的源分量,由于两个匹配分量的数据分布比不同域之间的数据分布更相似,可以通过匹配组件来增强正传递;
      • 实验结果表明,所提出的框架始终优于 11 种最先进的DA方法;

      组件(component)的概念

      

      Note:半监督域适应,协变量偏移;

    2 方法

    2.1 整体框架

      

    2.2 Domain-Level Adversarial Adaptation 

      第一阶:通过生成可迁移样本,全局对齐不同域的数据分布;

      

      在对抗自适应过程中,需要少量已标记的目标样本,其必要性如 Figure 4 所示:

      

      即:对比于无监督来说,其类中心更加准确;

    1) Adversarial Generation

      可迁移样本应该满足两个条件:

      • 应该迷惑域鉴别器 D" role="presentation">D
      • 应该位于源域和目标域之间;

      生成可迁移样本的方法:

        fFake fTrue +αfTue L+β Dist. " role="presentation">fFake fTrue +αfTue L+β Dist. 

      注意:fFake " role="presentation">fFake  为生成的对抗性样本,fTrue " role="presentation">fTrue  原始样本;

    2) Adversarial Training

      使用可迁移样本可以增强分类器对 域变化对抗性扰动 的鲁棒性:

        Lcla =Lc(x)+Lc, adv (x)" role="presentation">Lcla =Lc(x)+Lc, adv (x)

      使用可迁移样本可以有效的弥补域差异,定义如下:

        Ldis =Ld(x)+Ld, adv (x)" role="presentation">Ldis =Ld(x)+Ld, adv (x)

      第一阶段的优化问题可以总结如下:

        minΘC,ΘDLcla +Ldis " role="presentation">minΘC,ΘDLcla +Ldis 

      该小结算法如下:

      

    2.3 Component Matching Based on Bipartite Graph

      当数据分布被全局对齐后,接着便是考虑特征的内在特征,同一领域的样本往往具有不同的内在特征,而这些特征被域级的自适应所忽略。因此,应单独考虑它们,以有效地弥合分布差异。

      每个域都应该被划分为不同的组件,可以通过使用基于距离的聚类方法来实现(如 k-means)。如果目标域 DT" role="presentation">DT 被划分为 N" role="presentation">N 个分量,那么 DT=n=1NDTn" role="presentation">DT=n=1NDTn,其中 DTn(1nN)" role="presentation">DTn(1nN) 表示第 n" role="presentation">n 个分量。此外,DS" role="presentation">DS 中的不同组件可能与 DT" role="presentation">DT 中的组件之间有不同的关系。需要发现这些关系,然后分开对待它们。一个二部图可以捕获分量之间的关系。如果 DS" role="presentation">DSDT" role="presentation">DT 分别有 M" role="presentation">MN" role="presentation">N 个分量,则边数为 N" role="presentation">N,因为最终目的是对目标域进行预测。设分量级二部图为 G=(VsVtEst)" role="presentation">G=(VsVtEst),其中 Vs" role="presentation">VsVt" role="presentation">VtEst" role="presentation">Est 分别表示源分量集、目标分量集和跨域边,Est" role="presentation">Est 中的每条边都表示基于距离的最近的关系。给定分别属于源域和目标域的两个分量 DSi(1iM)" role="presentation">DSi(1iM)DTj(1jN)" role="presentation">DTj(1jN),这两个分量之间的距离由以下方法计算

        d(DSi,DTj)=|ExDSi[f(x)]ExDTj[f(x)]|" role="presentation">d(DSi,DTj)=|ExDSi[f(x)]ExDTj[f(x)]|

      分量的距离矩阵由一个 M×N" role="presentation">M×N 矩阵来描述。接下来,将匹配组件来构建成对关系,只需要为目标域中的每个组件找到最相关的源组件。

      由于不同的组件具有不同的内在特征,因此需要对在第一阶段学习到的基本模型 C0" role="presentation">C0 进行微调,以适应每一对匹配的组件。与域级的对抗性适应不同,标记的目标样本对于组件级的适应是不必要的,因为 C0" role="presentation">C0 已经包含了这些信息。

    2.4 Component-Level Adversarial Adaptation 

      使用上述生成的二部图对 P=n=1NDSn,DTn(1nN)" role="presentation">P=n=1NDSn,DTn(1nN) 进行对抗性训练

    1) Adversarial Generation Across Components

      组件之间的对抗性样本:

        fSiω+fSiω+αfSiωLd(fSiω,Θdn)+αfSiωLc(fSiω,Θcn)βfSiω2(fSiω,fSi0)" role="presentation">fSiω+fSiω+αfSiωLd(fSiω,Θdn)+αfSiωLc(fSiω,Θcn)βfSiω2(fSiω,fSi0)

        fTiω+1fTiω+αfTiωLd(fTiω,Θdn)βfTiω2(fTiω,fTi0)" role="presentation">fTiω+1fTiω+αfTiωLd(fTiω,Θdn)βfTiω2(fTiω,fTi0)

      即:和原样本距离尽可能小,域鉴别和(分类)能力尽可能差;

    2) Adversarial Training Across Components

      Cn" role="presentation">Cn 训练如下:

        Lc(Pn,ΘCn|n=1N)=E(xs(i),ys(i))DSnΦce(Cn(xs(i)),ys(i))Lc, adv (Pn,ΘCn|n=1N)=E(xs(i),ys(i))DSnΦce(Cn(xs(i)),ys(i))+Ext(i)DTnCn(xt(i))Cn(xt(i))2" role="presentation">Lc(Pn,ΘCn|n=1N)=E(xs(i),ys(i))DSnΦce(Cn(xs(i)),ys(i))Lc, adv (Pn,ΘCn|n=1N)=E(xs(i),ys(i))DSnΦce(Cn(xs(i)),ys(i))+Ext(i)DTnCn(xt(i))Cn(xt(i))2

      Dn" role="presentation">Dn 训练如下:

        Ld(Pn,ΘDn|n=1N)=Exs(i)DSnlog[Dn(xs(i))]Ext(i)DTnlog[1Dn(xt(i))]Ld, adv (Pn,ΘDn|n=1N)=Exs(i)DSnlog[Dn(xs(i))]Ext(i)DTnlog[1Dn(xt(i))]" role="presentation">Ld(Pn,ΘDn|n=1N)=Exs(i)DSnlog[Dn(xs(i))]Ext(i)DTnlog[1Dn(xt(i))]Ld, adv (Pn,ΘDn|n=1N)=Exs(i)DSnlog[Dn(xs(i))]Ext(i)DTnlog[1Dn(xt(i))]

    3) Optimization Across Components

      对 Pn(1nn)" role="presentation">Pn(1nn) 的优化问题总结如下:

        (Θ^1,,Θ^n)=argminΘ1,,ΘnLc(Pn,ΘCn)+Ld(Pn,ΘDn)+λLc, adv (Pn,ΘCn)+λLd, adv (Pn,ΘDn)" role="presentation">(Θ^1,,Θ^n)=argminΘ1,,ΘnLc(Pn,ΘCn)+Ld(Pn,ΘDn)+λLc, adv (Pn,ΘCn)+λLd, adv (Pn,ΘDn)

      算法如下:

      

    2.4 Extensibility of MCADA on Streaming Data 

      数据流算法如下:

      

    3 实验

    域适应结果:

      


    __EOF__

  • 本文作者: Blair
  • 本文链接: https://www.cnblogs.com/BlairGrowing/p/17616870.html
  • 关于博主: I am a good person
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
  • 声援博主: 如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。
  • 相关阅读:
    【题目讲解】等腰三角形
    详解Pinia和Vuex
    关于在windows里使用git bash用./的命令执行sh文件
    Java面试题-Redis-第一天(Redis简单介绍)
    22牛客多校6 - Z-Game on grid(博弈,反推)
    SpringCloudAlibaba 微服务讲解(三)Nacos Discovery-服务治理
    深入了解Spring Boot Actuator
    LinkWeChat V4.9.8 版本发布
    DUBBO中的一致性哈希算法
    未能将“obj\Debug\IOControl.exe”复制到“bin\Debug\IOControl.exe
  • 原文地址:https://www.cnblogs.com/BlairGrowing/p/17616870.html