Multi-Source Domain Adaptation with Mixture of Experts

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

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述

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的边缘分布

在这里插入图片描述

整体的训练算法如图

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值