迁移学习---举一反三
1.概念迁移学习是指充分考虑数据、任务、或者模型的相似性,将在旧领域学习到的模型,应用到新的领域的一种学习过程。通俗的讲就是把已经学习训练好的模型参数迁移到新的模型进行训练。考虑到大部分数据或任务是存在相关性的,所以通过迁移学习我们可以将已经学到的模型参数(也可理解为模型学到的知识)通过某种方式来分享给新模型从而加快并优化模型的学习效率,不用像大多数网络那样从零学习。2.目的与影响2.1 引入迁移
1.概念
迁移学习是指充分考虑数据、任务、或者模型的相似性,将在旧领域学习到的模型,应用到新的领域的一种学习过程。
通俗的讲就是把已经学习训练好的模型参数迁移到新的模型进行训练。考虑到大部分数据或任务是存在相关性的,所以通过迁移学习我们可以将已经学到的模型参数(也可理解为模型学到的知识)通过某种方式来分享给新模型从而加快并优化模型的学习效率,不用像大多数网络那样从零学习。
2.目的与影响
2.1 引入迁移学习的原因
迁移学习的目的的是什么?或者为什么要用迁移学习呢?主要有四点:
(1).大数据和少标签之间的矛盾。
目前我们正处于大数据时代,每天都可以产生海量的数据,数据的增多,使得机器学习和深度学习可以依赖更加海量的数据持续不断的更新模型,使得模型的性能越来越好,越来越适合特定场景的应用。然而,这些大数据带来了严重的问题:总是缺乏完善的数据标注。
(2).大数据与弱计算的矛盾
大数据,就需要大设备、强计算能力的设备来进行存储和计算。绝大多数普通用户是不可能具有这些强计算能力的。这就引发了大数据和弱计算之间 的矛盾。
(3) 普适化模型与个性化需求之间的矛盾。
机器学习的目标是构建一个尽可能通用的模型,使得这个模型对于不同用户、不同设 备、不同环境、不同需求,都可以很好地进行满足。我们要尽可能的替考机器学习模型的泛化能力,使之能够适应不同的数据情形。
我们对于每一个通用的任务都构建了一个通用的模型。这个模型可 以解决绝大多数的公共问题。但是具体到每个个体、每个需求,都存在其唯一性和特异性, 一个普适化的通用模型根本无法满足。那么,能否将这个通用的模型加以改造和适配,使其 更好地服务于人们的个性化需求?
(4). 特定应用的需求。
比如推荐系统的冷启动问题。一个新的推荐系统,没有足够 的用户数据,如何进行精准的推荐?
2.2 迁移学习的优势
- 大数据与少标注:迁移数据标注
利用迁移学习的思想,我们可以寻找一些与目标数据相近的有标注的数据,从而利用这 些数据来构建模型,增加我们目标数据的标注。
- 大数据与弱计算:模型迁移
利用迁移学习的思想,我们 可以将训练好的模型,迁移到我们的任务中。针对于我们的任务进 行微调,从而我们也可以拥有在大数据上训练好的模型。更进一步,我们可以将这些模型针 对我们的任务进行自适应更新,从而取得更好的效果。
- 普适化模型与个性化需求:自适应学习
我们利用迁移学习的思想,进行自适应的学习。考虑到不 同用户之间的相似性和差异性,我们对普适化模型进行灵活的调整,以便完成我们的任务。
- 特定应用的需求:相似领域知识迁移
可以利用上述介绍过的手段,从数据和模型方法上 进行迁移学习。
2.3 负迁移
是不是只要利用迁移学习就都能取得很好的效果呢?那是不可能的。这就引入了迁移学习中的一个负面现象,也就是所 谓的负迁移。
迁移学习指的是,利用数据和领域之间存 在的相似性关系,把之前学习到的知识,应用于新的未知领域。如果这个相似性找的不合理,也就是说,两个领域之间不存在相似性,或者基本 不相似,那么,就会大大损害迁移学习的效果。拿骑自行车来说,你要拿骑自行车的经 验来学习开汽车,,这显然是不太可能的。因为自行车和汽车之间基本不存在什么相似性。所 以,这个任务基本上完不成。这时候,我们可以说出现了负迁移 (Negative Transfer)。
3.分类
机器学习主要可以分为有监督、半监督和无监督 机器学习三大类。同理,迁移学习也可以进行这样的分类。
(1)基于实例(样本)的迁移,简单来说就是通过权重重用,对源域和目标域的样例进行迁移。就是 说直接对不同的样本赋予不同权重,比如说相似的样本,我就给它更大的权重,这样我就完成了迁移。
(2)基于特征的迁移,就是更进一步对特征进行变换。意思是说,假设源域和目标域的特征 原来不在一个空间,或者说它们在原来那个空间上不相似,那我们就想办法把它们变换到一 个空间里面,那这些特征不就相似了?
(3)基于模型的迁移,就是说构建参数共享的模型。这个主要就是在神经网络里面用的特 别多,因为神经网络的结构可以直接进行迁移。比如说神经网络最经典的 finetune (微调)就是模型参数迁移的很好的体现。
4.迁移学习的方法:
4.1 样本迁移(Instance based TL)
在源域中找到与目标域相似的数据,把这个数据的权值进行调整,使得新的数据与目标域的数据进行匹配。下图的例子就是找到源域的例子3,然后加重该样本的权值,使得在预测目标域时的比重加大。优点是方法简单,实现容易。缺点在于权重的选择与相似度的度量依赖经验,且源域与目标域的数据分布往往不同。
4.2 特征迁移(Feature based TL)
假设源域和目标域含有一些共同的交叉特征,通过特征变换,将源域和目标域的特征变换到相同空间,使得该空间中源域数据与目标域数据具有相同分布的数据分布,然后进行传统的机器学习。优点是对大多数方法适用,效果较好。缺点在于难于求解,容易发生过适配。
4.3 模型迁移(Parameter based TL) (调参)
假设源域和目标域共享模型参数,是指将之前在源域中通过大量数据训练好的模型应用到目标域上进行预测,比如利用上千万的图象来训练好一个图象识别的系统,当我们遇到一个新的图象领域问题的时候,就不用再去找几千万个图象来训练了,只需把原来训练好的模型迁移到新的领域,在新的领域往往只需几万张图片就够,同样可以得到很高的精度。优点是可以充分利用模型之间存在的相似性。缺点在于模型参数不易收敛。
更多推荐
所有评论(0)