Multi-Source Domain Adaptation with Mixture of Experts

本文探讨了在multi-source domain adaptation中利用多个源域知识预测目标域的挑战,提出了一种混合专家(MoE)方法。该方法通过为不同源域和目标域建立独立的子空间,而非统一子空间,结合point-to-set马氏距离和元学习策略,实现源域与目标域间的关系建模。文章详细介绍了MoE模型的四个关键组成部分:编码器、分类器、度量和对抗模块,以及针对不同任务设计的score函数。

在这里插入图片描述

Motivation

本文出发点还是荣multi-source domain adaptation出发,如何利用多个source domain的知识,来更好的预测target domain. 还是从target的分布可以用source distribution的加权来接近。

作者对domain之间的relationship建模提出了mixture-of-expert(MoE)的方法,

  • 将不同的source domain和target domain投影到不同的子空间,而不是将所有的domain投影到同一个子空间。
  • target的后验概率,通过不同source域的分类器加权组合,这里权重反应了target样本到每一个source domain的距离
  • 定义了point-to-set 的metric,并作为loss训练,采用了meta-training的方式

Method

在这里插入图片描述

如图所示模型主要包括四个部分 1)encoder 用来提取特征 2)classifier, domain-specific 分类器,每一个source的都有一个3)metric用来将多个domain-specific的target的结果融合 4)adversary用来align不同域之间的距离

Metric
pmoe(y∣x)=∑i=1Kα(x,Si)pSi(y∣x) p_{moe}(y|x)=\sum_{i=1}^K\alpha(x,S_i)p^{S_i}(y|x) pmoe(yx)=i=1Kα(x,Si)pSi(yx)
pSip^{S_i}pSi是由第i个source分类器FSiF^{S_i}FSi产生的后验概率(给定提取的特征x,判断属于类别y的概率),作者首先定义了point-to-set的马氏距离,即样本x到集合S
d(x,S)=((E(x)−μS)TMS(E(x)−μS))1/2 d(x,S) = ((E(x)-\mu^S)^TM^S(E(x) - \mu^S))^{1/2} d(x,S)=((E(x)μS)TMS(E(x)μS))1/2
其中μS\mu^SμS是S的特征的平均值,MSM^SMS是S的特征的协方差矩阵的逆矩阵

其中α(x,Si)\alpha(x,S_i)α(x,Si)反应了对第i个分类器的可靠程度
α(x,Si)=exp(e(x,Si))∑j=1Kexp(e(x,Sj)) \alpha(x,S_i)=\frac{exp(e(x,S_i))}{\sum_{j=1}^K exp(e(x,S_j))} α(x,Si)=j=1Kexp(e(x,Sj))exp(e(x,Si))
e(x,Si)=f(d(x,Si))e(x,S_i)=f(d(x,S_i))e(x,Si)=f(d(x,Si))是基于point-to-set马氏距离设计的score函数,而α(x,Si)\alpha(x,S_i)α(x,Si)是其归一化后的结果。作者针对不同的任务设计了不同的socre函数

  • binary classification

考虑到在二分类任务中,SSS 的feature(encoding)的平均值μS\mu^SμS往往接近于decision boundary,样本到boundary越近,往往置信度越低,因此直接用d(x,s)不合适。
e(x,S)=∣d(x,S+)−d(x,S−)∣ e(x,S) = |d(x,S^+)-d(x,S^-)| e(x,S)=d(x,S+)d(x,S)
上述的函数对outlier的点e(x,S)的值低,

  • Sequence tagging

e(x,S)=−d(x,S) e(x,S) = -d(x,S) e(x,S)=d(x,S)

Training

借鉴了few-shot里面的学习方法,从K个source domain里面任意选一个作为meta-target,其余作为meta-source,这样得到K组(meta-source,meta-target)的训练pair,

loss一共有两个部分:MoE objective和multi-task
Lmoe=−∑i=1K∑j=1∣Si∣log(pmoe(yjSi∣xjSi)) L_{moe} = -\sum_{i=1}^{K}\sum_{j=1}^{|S_i|}log(p_{moe}(y_j^{S_i}|x_j^{S_i})) Lmoe=i=1Kj=1Silog(pmoe(yjSixjSi))
对每个pair里面的meta-target中的每个样本计算moe loss,meta-target的分类是通过meta-source加权得到,moe就是约束这样的关系,让meta-source中同样的标签的分类变大
Lmtl=−∑i=1K∑j=1∣Si∣log(pSi(yjSi∣xjSi)) L_{mtl} = -\sum_{i=1}^K\sum_{j=1}^{|S_i|}log(p^{S_i}(y_j^{S_i}|x_j^{S_i})) Lmtl=i=1Kj=1Silog(pSi(yjSixjSi))
Muti-task是分类的交叉熵损失

  • Adversary-augmented MoE

使用MMD来最小化target domain和source domain的边缘分布

在这里插入图片描述

整体的训练算法如图

在这里插入图片描述

多源多模态领域自适应是领域自适应(Domain Adaptation)的一个拓展方向。领域自适应主要解决的是当模型从有标注的源域迁移到无标注的目标域时,因源域和目标域之间存在域间差异(domain gap),导致模型在目标域上性能下降的问题,而多源多模态领域自适应则在其基础上进一步考虑了多个源域以及多种模态的数据情况 [^1]。 从“多源”角度来看,它意味着有多个不同的源域。传统的领域自适应通常只考虑一个源域,而多源的情况下,模型可以从多个不同的有标注源域中学习知识,这些源域可能具有不同的数据分布、特征等。例如,在图像识别任务中,不同的源域数据可能来自不同的采集设备、不同的场景等,模型需要综合这些不同源域的信息,以更好地适应目标域。 从“多模态”角度而言,它涉及多种不同类型的数据模态,如视觉(图像、视频)、听觉(音频)、文本等。不同模态的数据包含了不同方面的信息,通过结合多模态的数据,可以为模型提供更丰富的特征。例如在动作识别任务中,既可以利用视频中的视觉信息,也可以结合音频信息,使模型对动作的理解更加全面。 以相关论文为例,“Multi - Modal Domain Adaptation for Fine - Grained Action Recognition”中提到,利用视频中的视觉信息和音频信息的一致性作为自监督学习的分类标签进行表征学习,设计模态一致性检测器来增强特征的表征能力,这就体现了多模态数据在领域自适应中的应用。而在更广泛的多源多模态领域自适应场景下,可能会有多个包含不同模态数据的源域,需要将这些源域的多模态数据特征进行整合和对齐,以减小与目标域的差异,让模型在目标域上有更好的性能表现 [^5]。 ```python # 以下为简单示意代码,模拟多源多模态数据处理 import numpy as np # 假设有两个源域,每个源域有视觉和听觉两种模态数据 source_domain_1_visual = np.random.rand(100, 64) # 100个样本,每个样本64维视觉特征 source_domain_1_audio = np.random.rand(100, 32) # 100个样本,每个样本32维听觉特征 source_domain_2_visual = np.random.rand(120, 64) source_domain_2_audio = np.random.rand(120, 32) # 合并多模态数据 source_domain_1_multi_modal = np.hstack((source_domain_1_visual, source_domain_1_audio)) source_domain_2_multi_modal = np.hstack((source_domain_2_visual, source_domain_2_audio)) # 这里可以进一步对多源多模态数据进行处理,如特征对齐等操作 ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值