A Survey on Transfer Learning 论文阅读笔记与总结

一、引入

  • 第一作者:Sinno Jialin Pan,南洋理工大学副教授,中大数学学士、硕士,香港科技大学博士,研究方向:迁移学习
  • 期刊:IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING(IEEE TKDE,SCI 三区)
  • 原文链接:传送门

当前的数据挖掘和机器学习技术(分类、回归和聚类)的大部分研究的前提是训练数据和测试数据拥有相同的特征空间和分布。若分布发生改变,则需要根据新的数据重新训练模型,这样通常会带来较大的成本开销(比如有的数据较难恢复,或者需要重新标记数据)。

论文中针对迁移学习的应用场景给了三个例子:

  1. 网页分类。使用大学网站训练网页分类模型,现给定新的分类任务,其网页文档的数据特征或者分布可能与之前训练的样本不同,那么将无法使用旧有训练的模型。此时需要将学习到的原有分类知识迁移到新的域上。
  2. 室内WiFi定位。该技术基于采集到的的WiFi数据得到用户当前的位置。但是WiFi信号强度可能是时间、设备或其他因素的函数。某段时间内或某个设备上训练得到的模型,可能在其他场景下无法适用。需要将某段时间训练得到的模型应用在新的时间段上。
  3. 情感分类。分类用户对于相机品牌的评价是正面还是负面。不同品牌的产品之间数据分布不同,需要针对每一个产品训练一个模型。但这样显然不显示,因此需要将在一些产品上训练得到的模型迁移到其他产品上。

二、定义

传统机器学习方法在以往收集到的有标签或无标签数据上训练统计模型,随后对未来数据做预测。半自监督分类用于训练数据中有大量无标注数据和少量有标注数据的场景。还有一些其他的学习方法。但是绝大多数都假设有标注和无标注数据的分布是相同的。

迁移学习的研究自1995年开始,包括多种叫法:学习学习(learning to learn)、终身学习(lief-long learning)、知识迁移(knowledge transfer)、归纳学习(inductive transfer)、多任务学习(multitask learning)、知识巩固(knowledge consolidation)、上下文敏感学习(context-sensitive learning)、基于知识的归纳偏移(knowledge-based inductive bias)、元学习(metalearning)、增量/累积学习(incremental/cumulative learning)。

05年提出迁移学习的任务,即一个系统所具有将以往任务学习到的知识和技巧应用到新任务中的能力

定义——域(domain):

定义域(domain)KaTeX parse error: Undefined control sequence: \set at position 13: \mathcal{D}=\̲s̲e̲t̲{\mathcal{X},P(… X \mathcal{X} X 表示特征空间, P ( X ) P(X) P(X)表示边缘分布概率,其中 KaTeX parse error: Undefined control sequence: \set at position 3: X=\̲s̲e̲t̲{x_1,\cdots,x_n…

对于文档分类任务,所有单词项都被看做二元量(1 or 0),一篇文章可以看做一个由布尔型构成的向量,表示每个单词项有或者没有。则 X \mathcal{X} X 是由所有这些向量构成的空间, X X X 是特定的某一个学习任务。

定义——任务(task):

定义任务(task)KaTeX parse error: Undefined control sequence: \set at position 13: \mathcal{T}=\̲s̲e̲t̲{\mathcal{Y},f(… Y \mathcal{Y} Y 表示标签空间, f ( ⋅ ) f(\cdot) f() 表示未被观测到,但可以从训练数据(由KaTeX parse error: Undefined control sequence: \set at position 1: \̲s̲e̲t̲{x_i,y_i}对组成)中学习到的目标预测函数。其用于预测某一实例的标签。从概率角度, f ( x ) f(x) f(x) 也可以被写成 P ( y ∣ x ) P(y|x) P(yx)

定义——源域数据(source domain data)与目的域数据(target domain data):

源域数据 KaTeX parse error: Undefined control sequence: \set at position 5: D_S=\̲s̲e̲t̲{(x_{S_1},y_{S_…,目标域数据 KaTeX parse error: Undefined control sequence: \set at position 5: D_T=\̲s̲e̲t̲{(x_{T_1},y_{T_…,通常情况下 0 ≤ n T < < n T 0\leq n_T<0nT<<nT

随后可以通过以及任务的概念来定义迁移学习

定义——迁移学习(transfer learning):

给定源域 D S \mathcal{D}_S DS 和学习任务 T S \mathcal{T}_S TS,目标域 D T \mathcal{D}_T DT 和学习任务 T T \mathcal{T}_T TT,在 D S ≠ D T \mathcal{D}_S\neq\mathcal{D}_T DS=DT T S ≠ T T \mathcal{T}_S\neq\mathcal{T}_T TS=TT 的情况下,迁移学习应使用在 D S \mathcal{D}_S DS T S \mathcal{T}_S TS 中学习到的知识来改善对目标预测函数 f T ( ⋅ ) f_T(\cdot) fT() 的学习过程

可以看到,迁移学习的目标是通过在源域和源任务上学习到的知识,改善在目标域和目标任务上的学习过程。源域和目标域相同与否、源任务与目标任务相同与否构成了不同的迁移任务类型。

  • D S ≠ D T \mathcal{D}_S\neq\mathcal{D}_T DS=DT 意味着可能存在 X S ≠ X T \mathcal{X}_S\neq \mathcal{X}_T XS=XT 或者 P S ( X ) ≠ P T ( X ) P_S(X)\neq P_T(X) PS(X)=PT(X)。比如对于文档来说,前者的例子为不同语言的文档,特征空间肯定不同。后者的例子为不同主题的文档,其单词分布也必然不同。
  • T S ≠ T T \mathcal{T}_S\neq\mathcal{T}_T TS=TT 意味着存在 Y S ≠ Y T \mathcal{Y}_S\neq\mathcal{Y}_T YS=YT 或者 P ( Y T ∣ X T ) ≠ P ( Y S ∣ X S ) P(Y_T|X_T)\neq P(Y_S|X_S) P(YTXT)=P(YSXS)。表示源域和目标域在用户定义的类上分布不平衡。什么叫源域和目标域在用户定义的类上不平衡?

三、不同迁移学习类型之间的比较

作者将当前的迁移学习分为3类,分别是Inductive Transfer Learning、Transductive Transfer Learning和Unsupervised Transfer Learning。

1、Inductive Transfer Learning

定义——归纳迁移学习(Inductive Transfer Learning):

给定源域 D S \mathcal{D}_S DS 和学习任务 T S \mathcal{T}_S TS,目的域 D T \mathcal{D}_T DT 和学习任务 T T \mathcal{T}_T TT,Inductive Transfer Learning 目标是 T S ≠ T T \mathcal{T}_S\neq\mathcal{T}_T TS=TT 的条件下,通过在 D S \mathcal{D}_S DS T S \mathcal{T}_S TS 上学习到的知识改善在 D T \mathcal{D}_T DT 上学习目标预测函数 f T ( ⋅ ) f_T(\cdot) fT() 上的学习过程。

在该类迁移学习中,目的域上存在有标签的数据,根据源域数据是否有标签,可以进一步分类。若源域数据也存在标签,则类似于多任务学习(multitask learning),但是迁移学习仅负责在目的域上获得较高的性能。若源域数据无标签,则类似于自学习(self-taught learning)。

2、Transductive Transfer Learning

定义——直推迁移学习(Transductive Transfer Learning):

给定源域 D S \mathcal{D}_S DS 和学习任务 T S \mathcal{T}_S TS,目的域 D T \mathcal{D}_T DT 和学习任务 T T \mathcal{T}_T TT,Transductive Transfer Learning 目标是在 T S = T T , D S ≠ D T \mathcal{T}_S=\mathcal{T}_T,\mathcal{D}_S\neq\mathcal{D}_T TS=TT,DS=DT 的条件下,通过在 D S \mathcal{D}_S DS T S \mathcal{T}_S TS 上学习到的知识改善在 D T \mathcal{D}_T DT 上学习目标预测函数 f T ( ⋅ ) f_T(\cdot) fT() 上的学习过程。

在该类迁移学习中,目的域数据无标签,根据源域与目的域不同的两种情况,可以进一步分类。第一类是特征空间不同。第二类是特征空间相同,但边缘概率分布不同,该情况下类似于文本分类中知识迁移的域适应(domain adaptation for knowledge transfer in text classification),样本选择偏差(sample selection bias)或者协方差偏移(covariate shift)

3、Unsupervised Transfer Learning

定义——无监督迁移学习(Unsupervised Transfer Learning):

给定源域 D S \mathcal{D}_S DS 和学习任务 T S \mathcal{T}_S TS,目的域 D T \mathcal{D}_T DT 和学习任务 T T \mathcal{T}_T TT,Unsupervised Transfer Learning 目标是在 T S ≠ T T \mathcal{T}_S\neq\mathcal{T}_T TS=TT 并且无法观测到 Y S , Y T \mathcal{Y}_S,\mathcal{Y}_T YS,YT的条件下,通过在 D S \mathcal{D}_S DS T S \mathcal{T}_S TS 上学习到的知识改善在 D T \mathcal{D}_T DT 上学习目标预测函数 f T ( ⋅ ) f_T(\cdot) fT() 上的学习过程。

该类迁移学习任务中,目的域与源域数据无标签

  • 不同迁移学习类型在域和任务上的区别

A Survey on Transfer Learning 论文阅读笔记与总结_第1张图片

  • 不同迁移学习类型在源域与目的域标签上的区别

A Survey on Transfer Learning 论文阅读笔记与总结_第2张图片

  • 不同迁移学习类型的分类汇总

A Survey on Transfer Learning 论文阅读笔记与总结_第3张图片

四、不同的迁移学习类型与迁移对象

知识迁移需要明确迁移的知识实体,一共有三类不同的迁移对象:

  • 基于实例的迁移学习(instance-based):假设源域中的某些数据可以在目的域中通过赋予不同的权重进行重用。主要的两个技术有 Instance Reweighting 和 Importance Sampling。
  • 特征表达迁移方法(feature-representation-transfer):目的是为目的域学习到良好的特征表达方式。在不同域中传递的知识实体是特征表达。
  • 参数迁移方法(parameter-transfer):假设源域和目的域任务共享参数或者先验。
  • 关系知识迁移方法(relational-knowledge-transfer):上述三种方法假设域中的数据独立同分布。而本方法假设源域与目的域的数据内部关系是相似的,可以将这种关系进行传递。当前(2010年)主流的方法是统计关系学习技术(statitical relational learning)。

A Survey on Transfer Learning 论文阅读笔记与总结_第4张图片

不同迁移学习类型与迁移对象的研究概况:

A Survey on Transfer Learning 论文阅读笔记与总结_第5张图片

你可能感兴趣的:(CNN,人工智能,深度学习,迁移学习)