2021李宏毅机器学习课程笔记——Domain Adaptation

2021李宏毅机器学习课程笔记——Domain Adaptation,第1张

2021李宏毅机器学习课程笔记——Domain Adaptation I. Why Domain Adaptation

存在Domain Shift现象:训练数据与测试数据的分布差异较大。一个例子如下所示:

这就会导致我们训练的模型在遇到“未见过的不同域样本”时表现较差。实际上这一现象在工程中是非常常见的(可以认为是影响AI落地的一大问题)。一个解决Domain Shift的直观思路是进行Transfer Learning。

II. Transfer Learning

在源域上训练模型,然后在目标域上finetune。但是有个问题在于,目标域的数据(及标签)往往比较难获取(不然就可以直接当成源域加进训练集训练了),因此需要注意防止过拟合的问题。

III. Basic Idea

前面我们提到,源域与目标域的分布差异较大。那么既然差异较大,也就意味着还是有一些特征是两个域所共有的。那么,如果我们的模型能够去学会这两个域共有的特征(而不是只学源域所特有的特征;显然源域特有特征对模型在目标域上的性能贡献不大),就可以提升我们模型的泛化能力,减轻Domain Shift的影响。

一个例子如下所示:

源域的图片没有颜色,而目标域的图片有颜色,因此我们提取到的特征应该尽量不去包含颜色信息,即所谓的“服从相同分布”。

IV. Adversarial Training

至于怎么去提取"共有的特征",采用的是对抗训练的思路,流程如下所示:

  • 将源域图像(有标签)与目标与图像(无标签)送入特征提取器 θ f theta _f θf​以提取特征
  • 将上一步提取到的特征送入域分类器 θ d theta _d θd​。这个域分类器充当的就是对抗训练中的"判别器"角色,用来区分送入的这个特征到底是源域的还是目标域的。我们可以发现,如果特征提取器 θ f theta _f θf​提取到的是源域与目标域的公共特征的话,那么判别器自然无从区分;反之,如果特征提取器学到的都是些源域或目标域的特有特征,那么判别器很容易就能区分出来。
  • 将上一步提取到的特征送入标签预测器 θ p theta _p θp​,完成特定任务(这里是图像分类)。这一步的意义是,如果单纯想让特征提取器来欺骗域分类器的话,这实际上是个非常简单的任务,特征提取器直接提取些没用的废特征即可(或者干脆摆烂always zero)糊弄判别器,因此我们需要在尽可能保证模型分类性能的情况下去提取"有意义"的公共特征。
  • 关于损失函数的话,标签分类器与域分类器没什么特别的,一个是分类损失 θ p ∗ = min ⁡ θ p L theta_{p}^{*}=min _{theta_{p}} L θp∗​=minθp​​L,一个是判别损失 θ d ∗ = min ⁡ θ d L d theta_{d}^{*}=min _{theta_{d}} L_d θd∗​=minθd​​Ld​;主要需要注意的是特征提取器 θ f theta _f θf​的损失,其为 θ f ∗ = min ⁡ θ f L − L d theta_{f}^{*}=min _{theta_{f}} L-L_{d} θf∗​=minθf​​L−Ld​,字面理解其实就是使标签分类器性能尽可能高( min ⁡ θ f L min _{theta_{f}} L minθf​​L),域分类器性能尽可能低( − L d -L_{d} −Ld​)。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5689406.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存