找回密码
 立即注册
搜索
查看: 94|回复: 0

迁移学习:让计算机实现举一反三的能力

[复制链接]

2万

主题

0

回帖

6万

积分

管理员

积分
63733
发表于 2024-10-4 05:09:01 | 显示全部楼层 |阅读模式
目录

1 对迁移学习的直观理解

人类很容易在类似的任务中使用以前的经验。例如,学习骑自行车可以轻松帮助您学习骑摩托车。学习打羽毛球也可以帮助你学习打网球。学习小提琴也可以帮助你学习二胡。也就是将一个领域学到的知识迁移到另一个领域。目的是让计算机能够从一个实例中进行推论(可能是实现AGI的一个重要障碍),或者尝试充分利用已经训练过的某个领域的知识。解决当前任务的知识(这样可以解决小数据的问题)。

在迁移学习中,应强调源域( )、源任务( Task )、目标域( )和目标任务( )的概念。普通的机器学习方法中,源域和目标域是相同的,即训练和测试的数据也是本领域的数据(如“摄像头拍摄的行人图片”);源任务和目标任务也是一样的,即你希望模型能做的就是它被训练做的事情(比如“分类猫和狗”)。在迁移学习中,源域和目标域可能不同,源任务和目标任务也可能不同(甚至可能一个是分类,另一个是回归)。我的理解是源域-目标域,源任务-目标任务必须至少有一对不同才能称为迁移学习。

2 迁移学习的类型

在SJ Pan 2012年的一篇综述中,迁移学习根据标记样本的情况分为以下三类,可以解决不同的问题。

3. 领域适配简述

是源任务和目标任务相同,但源域和目标域的数据分布不同,并且源域有大量标记样本,而目标域没有(或很少)标记的样品。学习方法。这就是如何将从源域中大量标记样本中学到的知识迁移到目标域来解决同样的问题。然而,大多数唯一可以在目标域中使用的未标记样本都是未标记样本。

这里需要解释一下“数据分布不同”是什么意思。例如,下图中的(a)组是来自不同来源的自行车和笔记本电脑的照片。有的是从购物网站下载的,有的是用数码相机拍摄的日常照片,有的是从网上获取的照片,虽然都是快递自行车和笔记本电脑,但数据分布不同。

例如,使用(b)组的门牌数据集SVHN来训练模型,提取SVNH和MNIST的特征,然后将其可视化成平面,如下图左侧所示。蓝点是源域(SVNH)的样本,红点是目标域(MNIST)的样本,这意味着直接在源域上训练的分类器的分类边界无法很好地区分目标域的样本。领域适应的迁移学习方法想要达到的效果如下图右侧所示,使得源域和目标域中的样本能够对齐,从而使模型能够很好地用于目标域。

4个DA研究方向

领域适应也有很多方向。如果源域和目标域之间的距离太大(例如,源域是文本,目标域是图像),则可能需要处理多步迁移。这个非常大的迁移被分成了一步一步的小迁移。如下图所示。通过选择合适的中间域,将多步域适应(Multi-step DA)转换为单步域适应(One-step DA),这样您只需要研究如何进行单步迁移。

那么单步迁移根据源域的数据情况可以分为同质(即数据空间相同,但数据分布不同)和异构(数据空间不同)两种。目标域。

\chi _{s}=\chi _{\tau },P(\chi _{s})\neq P(\chi _{\tau })" src="" />

\chi _{s}\neq \chi _{\tau }" src="" />

接下来,根据目标域数据的标记情况,同构或异质DA可以分为有监督、半监督和无监督DA。学术界研究最多的是无监督DA,难度更大,价值更高。

5 DA 方法的类型

传统的ML方法是最小化损失:

基于特征的自适应( )是利用一个映射Φ将源域样本和目标域样本调整到同一特征空间,使得样本能够在这个特征空间中“对齐”。这也是最常用的方法:

基于实例的自适应( )考虑到源域中总有一些样本与目标域中的样本非常相似,因此在训练时将源域中所有样本的Loss乘以一个权重。

(即表示“重视”程度),样本与目标域越相似,权重越大:

基于模型参数(Model)的自适应就是通过参数迁移寻找新的参数θ′,使模型能够更好地在目标域中工作:

如果目标域数据没有标签,则无法使用Fine-Tune将目标域数据投入训练。此时的无监督适应方法就是基于特征的适应。因为有很多数学公式可以衡量源域和目标域数据之间的距离,所以可以计算出距离并将其作为Loss嵌入到网络中进行训练。这样就可以优化距离逐渐变小,最终训练出来的模型将源域和目标域放在足够近的特征空间中。

这些衡量源域和目标域数据之间距离的数学公式包括KL、MMD、H-sum等。

6 深度学习中的DA方法

请注意,以下三种方法都属于五种基于特征的自适应方法。

6.1 基于差异的方法

例如,无监督DA的经典DDC方法使用MMD(Mean),即找到一个核函数将源域和目标域都映射到一个再生核空间,并取这两个在这个空间中的差值分别计算域数据和平均值,然后将这个差值作为距离。使用该方法训练网络的损失为:

第一项是源域之前模型的Loss(比如分类任务就是分类Loss),然后第二项是指定层ll上的MMD距离之和,乘以一个系数λ \λ 代表重要性。在训练过程中,有两个网络,一个用于源域,一个用于目标域。他们共享参数,然后在一些更深的层计算MMD距离,然后根据上面的公式将它们加在一起作为整个模型。损失。

这种DDC方法有很多改进。例如,DAN(ICML,2015)使用多个核函数的线性组合并计算多个层上的MMD距离。

RTN(NIPS,2016)的前半部分仍然是DAN,但是单独使用DAN特征可能无法很好地对齐,因此将其直接连接到源域分类器的地方改为残差结构来学习源域和目标。域分类器的差异。该方法相当于在DAN中补充了5种基于模型参数的自适应方法。

JAN 中还提出了 JMMD(联合分布式 MMD)(arXiv,2016)。通过优化这个JMMD,源域和目标域的特征和标签的联合分布可以更加接近,因此效果更好。

6.2 基于对抗的方法

例如(ICML,2015)的基本思想是使用GAN让生成器生成特征,然后让判别器判断是源域的特征还是目标域的特征。如果无法区分,则说明源域和目标域都在这个特征空间内。域是一致的。

下图中绿色部分是特征提取器。源域和目标域数据被扔进去。它用于生成(或提取)特征。紫色部分是分类器,对源域数据的特征进行分类。红色部分是判别器,区分源域数据和目标域数据的特征。这个鉴别器必须不断增强(它可以很好地区分源域或目标域的特征)。同时,还必须对生成器进行增强,使得生成的特征能够混淆判别器的判断,从而使最终生成(提取)的特征在源域和目标域空间中保持一致。

这个可以使用GAN的最小化-最大化思想来训练,也可以使用论文中的梯度反转层(Layer)方法,即在图中白色空心箭头的位置添加梯度反转层多于。前向传播的过程就是普通网络,即最小化Loss,让红色部分的判别器表现更好,然后在反向传播的过程中对梯度进行负值,即优化绿色部分的特征提取器,尝试制作红色部分一些判别器无法区分特征是来自源域还是目标域。这种方法是一种训练技术。

它的改进包括CAN(CVPR,2018),它将深度网络的几个连续层视为一个块,将其分为几个块,然后为每个块添加一个鉴别器。提出希望网络高层块中的特征与域信息无关,因为最终结果是一个不区分源域和目标域数据的网络;希望网络低层块中的特征与领域信息相关。 ,因为底层是提取边缘信息,希望这些边缘信息能够更好的提取目标域的特征。

还有 MADA(AAAI,2018)。前面的方法都是源域和目标域的类别相同,但有时源域和目标域的类别不一定相同。例如,目标域类别可以是源域类别的子集。该方法提出不应该是域到域的对齐,而是类别到类别的对齐。该方法仅使用最后一层的判别器,但对每个类别使用单独的判别器。这种对齐引入了语义信息(类别信息),可以使特征空间更好地对齐。然而,由于在无监督DA中,目标域样本没有标签,因此这里使用源域分类器来输出目标域样本属于每个类的概率。哪个类别属于它的概率更大,让该类别的判别器发挥作用。效果更大。该方法相当于用五种基于实例的自适应方法补充了上述方法。

6.3 基于重构的方法

DRCN(2016,ECCV)的结构如下所示。左边的也是用来生成特征的,扔进源域和目标域样本,然后用分类器对源域特征进行分类,这样生成的特征就可以很容易的区分源域的样本好的(也就是比较好的特征),用一个来解码目标域的特征,这样可以尽可能的恢复目标域的样本。这样,生成的特征的特征空间就比较接近源域和目标域样本。

DSN(NIPS,2016)将源域和目标域的样本分为两部分。一部分是两个域私有的,即它尝试对各自域中的特定信息进行编码,另一部分是两个域公共的。显然,它浮现在脑海中。你得到的就是这个共同的特征。分类时,尽量让私有特征和共享特征正交,这样它们的相关性就较小,两个域各有一个损失。

。还需要保证私有特征和共享特征能够尽可能地恢复之前的样本,并且两个域都存在损失。

。还需要保证两个域生成的共同特征尽可能相似,对应一个loss

。训练后,使用源域样本(生成的共同特征)来训练分类器。该分类器在目标域中也具有良好的性能。

原文链接
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|【远见汇智】 ( 京ICP备20013102号-17 )

GMT+8, 2025-5-5 16:33 , Processed in 0.118261 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表