迁移学习基础

读A survey on Transfer Learning后的一些想法,仅供参考,若有错误还希望与大家多多交流。

1.什么时候需要进行迁移学习:目前大多数机器学习算法均是假设训练数据以及测试数据的特征分布相同。然而这在现实世界中却时常不可行。例如我们我们要对一个任务进行分类,但是此任务中数据不充足(在迁移学习中也被称为目标域),然而却又大量的相关的训练数据(在迁移学习中也被称为源域),但是此训练数据与所需进行的分类任务中的测试数据特征分布不同(例如语音情感识别中,一种语言的语音数据充足,然而所需进行分类任务的情感数据却极度缺乏),在这种情况下如果可以采用合适的迁移学习方法则可以大大提高样本不充足任务的分类识别结果。也即是大家通常所说的将知识迁移到新环境中的能力,这通常被称为迁移学习。

具体的一个示例:例如在评价用于对某一品牌的情感分类任务中(假如用户对任一品牌的评价有positive和negative两类),在分类任务之前首先要通过收集大量的用户评价,对其进行标注,然后进行模型的训练。然而现实生活中品牌众多,不同的人也会有不同的语言表达自己的情绪,我们无法收集到非常全面的用户评价的数据,因此当我们直接通过之前训练好的模型进行情感识别时,效果必然会受到影响。如果想要在测试数据上有好的分类效果,最直接的方式是手机大量与测试数据分布相似的数据,但是这样的开销非常大。因此这个时候通过迁移学习可以节省大量的时间和精力,并且通过合适的方法也可以得到较好的识别结果。

2.迁移学习的历史:最早的迁移学习是在NIPS-95 一个workshop上提出,“Learning to learn”。

多任务学习和迁移学习相似,但是不同是多任务学习是对目标域和源域进行共同学习,而迁移学习主要是对通过对源域的学习解决目标域的识别任务。

下图展示了传统的机器学习方法与迁移学习的区别。 
这里写图片描述

3.迁移什么:在一些学习任务中有一些特征是个体所特有的,这些特征不可以迁移。而有些特征是在所有的个体中具有贡献的,这些可以进行迁移。

4.什么时候迁移:有些时候如果迁移的不合适则会导致负迁移,例如当源域和目标域的任务毫不相关时有可能会导致负迁移。

5.迁移学习的定义:

迁移学习主要包含域和任务的概念。每个域 D 由特征空间χχ 以及边际概率分布P(X)组成,且X=x1,...,x2∈χX=x1,...,x2∈χ。例如如果我们的任务是文档分类,那么每一个单词则可以表示为二进制特征,X是所有单词的特征空间,xi是第i个单词的二进制特征。 
给定一个域D={χ,P(X)}D={χ,P(X)},一个任务T则可以通过由一个标签空间Y以及一个目标函数f()组成。此目标函数可以通过训练集中的带标签数据训练得到,然后用来预测新数据的标签。从概率的角度来看,此目标函数可以被表示为条件概率分布的形式P(y|x)P(y|x),对于二分分类来说即为真或假。 
给定一个源域Ds,一个原任务Ts。一个目标域Dt,一个目标任务Tt。迁移学习的目的是借助源域和原任务提高目标函数fT(⋅)fT(⋅)在目标域的分类结果 
由于域D 和任务T都被定义为元祖,所以这些不平衡就会带来不同迁移学习的场景。在这篇文章中,作者将其分为归纳迁移学习(Inductive Transfer Learning),直推式迁移学习(Transductive Transfer Learning),无监督迁移学习(unsupervised transfer learning)下面具体一一讨论。

6.归纳迁移学习(Inductive Transfer Learning) 
目标任务与原任务不同,目标域和源域可能相同也可能不同。即Ts≠TtTs≠Tt。这种迁移学习方式又被分为四种形式 
1)实例知识迁移学习(Transferring knowledge of instances) 
基于实例的迁移学习的基本思想是,尽管目标域中部分带标签训练数据和源训练数据或多或少会有些不同,但是目标域中部分训练数据中应该还是会存在一部分比较适合用来训练一个有效的分类模型,并且适应测试数据。于是,目标就是目标域中部分带标签训练数据中找出那些适合测试数据的实例,并将这些实例迁移到源训练数据的学习中去。(不知道这样理解是否正确,原文为although the source domain data cannot be reused directly, there are certain parts of the data that can still be reused together with a few labeled data in the target domain.) 
这种方法比较适合与源数据与目标数据中部分带标签数据非常接近的情况。 
2)特征知识迁移(Transferring knowledge of feature representations) 
基于特征的迁移学习主要是找到一种好的特征表示最小化域的不同。并且根据源域中带标签样本是否充足可以分为有监督以及无监督学习方法。 
3)参数知识迁移 (Transferring knowledge of parameters) 
大部分基于参数的迁移学习均是以不同域的模型共享了一些参数或者是贡献了一些先验分布为前提的。 
4)相关知识迁移 (Transferring relational knowledge) 
这种迁移学习中源域和目标域的数据是相关的。例如newworked data以及social network data。它们的数据之间存在关联。

7.直推式迁移学习(Transductive Transfer Learning) 
直推式迁移学习的原任务和目标任务式相同的Ts=TtTs=Tt,目标域和源域可能相同也可能不同。 
它又可以被分为a)特征空间不同χs≠χtχs≠χt以及b)特征空间相同,但边缘概率分布不同P(Xs)≠P(Xt)P(Xs)≠P(Xt)(这种情况和domain adaptation相似) 
直推式迁移学习仍然包括实例知识迁移学习(Transferring knowledge of instances)以及特征知识迁移(Transferring knowledge of feature representations)(这种情况多是在无监督学习模型中进行的。)

8.无监督迁移学习(unsupervised transfer learning) 
无监督迁移学习的原任务和目标任务式不相同Ts≠TtTs≠Tt,且目标域数据以及源域数据都没有标签。 
例如最近提出的self-taught clustering,transferred discriminative analysis(TDA)属于无监督迁移学习。 
且这些无监督特征学习只存在特征知识迁移(Transferring knowledge of feature representations)。

References: 
(1)Pan S J, Yang Q. A Survey on Transfer Learning[J]. IEEE Transactions on Knowledge & Data Engineering, 2010, 22(10):1345-1359. 
(2)www.sohu.com/a/130511730_465975

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值