迁移学习是什么?包含什么?

大白话迁移学习

在机器学习领域中,一个机器模型将其他领域(源域)学习的知识迁移到当前任务(目标域)的学习方式成为迁移学习。类比于人类:应用先前的经验知识进行推理和学习,比如你学会了骑自行车,那么学习骑摩托车就比较容易。

迁移学习的定义

在上面我们提到了两个关键的词:源域和目标域;源域(Source Domain)是已有的知识领域;目标域(Target Domain)是要进行学习的领域。
D s , D t D_s, D_t Ds,Dt 分别表示源域和目标域, X s , X t X_s, X_t Xs,Xt 分别是源域和目标域的样本,通常,目标域和源域样本具有不同的特征分布 X s ≠ X t X_s \neq X_t Xs=Xt,或者不同的不同的边际概率分布 P s ( X ) ≠ P t ( X ) P_s (X) \neq P_t (X) Ps(X)=Pt(X).

给定一个源域 D s = X s , Y s D_s={X_s,Y_s} Ds=Xs,Ys 和一个目标域 D t = X t , Y t D_t={X_t,Y_t} Dt=Xt,Yt ,对于不同任务 Y t Y_t Yt 具有不同定义,比如,半监督学习任务时, Y t Y_t Yt 表示部分的标签,其数量少于样本数;对比无监督域自适应任务, Y t Y_t Yt 表示一个空集。
迁移学习目标是借助源域知识学习一个目标预测模型 F : X t → Y t \mathcal {F}:X_t \to Y_t F:XtYt,其中 X s ≠ X t X_s \neq X_t Xs=Xt Y s ≠ Y t Y_s \neq Y_t Ys=Yt and/or P s ( X ) ≠ P t ( X ) P_s (X) \neq P_t (X) Ps(X)=Pt(X)

为什么要迁移学习?

绝大情况下获取标签是困难的,可获得有标签的目标样本是有限的,假设目标域上有标签样本远小于源域样本。迁移学习提供一种策略将源域的知识促进目标域上任务学习。

迁移学习的分类

从源域和目标域之间的差异上分类

  1. 源域和目标域具有不同的特征空间
  2. 具有相同的特征空间,但是特征的边际分布不同
  3. 标签空间不同(例如:源域上有class_a和Class_c,目标域上有Class_b,CLass_c, Class_d )
  4. 标签空间相同,但是标签的条件概率分布不同

其中,1和3相对没有 2、4容易实现,目前主要研究也是在2、4 上面。

从迁移方式上分类

  1. 基于特征的迁移 : TCA 2021
  2. 基于实例的迁移 : TrAdaBoot 2007
  3. 基于模型的迁移 : Collaborative Filtering (IJCAI 2009)
  4. 基于关系的迁移:Relation-based transfer learning (IJCAI 2011)

迁移学习的特例

域自适应(Domain Adaptation)

  • 数据分布角度:源域和目标域概率分布相似;通常采用最小化概率分布距离方式
  • 特征选择角度: 源域和目标域共享某些特征;通常采用选择共享特征方式(比如,对抗学习:判断公共特征来自于那个域)
  • 特征变换角度:源域和目标域共享子空间;通常采用变换到相同子空间方式(比如利用GAN生成目标域图像的方式)

知识蒸馏(Knowledge Distillation)

  • 相同数据异构网络:通过一个具有较多知识储备的大型网络来教一个小型网络,以至于使得小的神经网络被训练到达到大神经网络的性能。
  • 异构数据相同网络
  • 异构数据相同标签分布

你可能感兴趣的:(文档,机器学习,人工智能,深度学习)