4、迁移学习和预训练模型

注:迁移学习内容来自于王晋东老师的《迁移学习简明手册》
1、什么是迁移学习
迁移学习,顾名思义,就是要进行迁移 。放到人工智能和机器学习的学科里,迁移学习是一种学习的思想和模式 。
首先机器学习是人工智能的一大类重要方法,也是目前发展最迅速、效果最显著的方法 。机器学习解决的是让机器自主地从数据中获取知识,从而应用于新的问题中 。迁移学习作为机器学习的一个重要分支,侧重于将已经学习过的知识迁移应用于新的问题中 。
迁移学习的核心问题是,找到新问题和原问题之间的相似性,才可顺利地实现知识的迁移 。
例子:
在我们一开始说的天气问题中,那些北半球的天气之所以相似,是因为它们的地理位置相似;
而南北半球的天气之所以有差异,也是因为地理位置有根本不同 。
其实我们人类对于迁移学习这种能力,是与生俱来的 。
比如,我们如果已经会打乒乓球,就可以类比着学习打网球 。再比如,我们如果已经会下中国象棋,就可以类比着下国际象棋 。
因为这些活动之间,往往有着极高的相似性 。生活中常用的“举一反三”、“照猫画虎”就很好地体现了迁移学习的思想 。
迁移学习的定义:
迁移学习,是指利用数据、任务、或模型之间的相似性,将在旧领域学习过的模型,应用于新领域的一种学习过程 。
1.1、为什么需要迁移学习 1. 大数据与少标注之间的矛盾 。2. 大数据与弱计算之间的矛盾 。3. 普适化模型与个性化需求之间的矛盾 。4. 特定应用的需求 。
上述存在的几个重要问题,使得传统的机器学习方法疲于应对 。迁移学习则可以很好地进行解决 。那么,迁移学习是如何进行解决的呢?
1. 大数据与少标注:迁移数据标注2、大数据与弱计算:模型迁移
不可能所有人都有能力利用大数据快速进行模型的训练 。利用迁移学习的思想,我们可以将那些大公司在大数据上训练好的模型,迁移到我们的任务中 。针对于我们的任务进行微调,从而我们也可以拥有在大数据上训练好的模型 。更进一步,我们可以将这些模型针对我们的任务进行自适应更新,从而取得更好的效果 。
3、普适化模型与个性化需求:自适应学习
为了解决个性化需求的挑战,我们利用迁移学习的思想,进行自适应的学习 。考虑到不同用户之间的相似性和差异性,我们对普适化模型进行灵活的调整,以便完成我们的任务 。
4、特定应用的需求:相似领域知识迁移
为了满足特定领域应用的需求,我们可以利用上述介绍过的手段,从数据和模型方法上进行迁移学习 。
以上用表格概括入下:
2、预训练模型
采用链接:
预训练模型可以把迁移学习很好地用起来 。这和小孩读书一样,一开始语文、数学、化学都学,读书、网上游戏等,在脑子里积攒了很多 。当他学习计算机时,实际上把他以前学到的所有知识都带进去了 。如果他以前没上过中学,没上过小学,突然学计算机就不懂这里有什么道理 。这和我们预训练模型一样,预训练模型就意味着把人类的语言知识,先学了一个东西,然后再代入到某个具体任务,就顺手了,就是这么一个简单的道理 。
为什么要做预训练模型
自然语言处理(NLP),目的是使得计算机具备人类的听、说、读、写、译、问、答、搜索、摘要、对话和聊天等能力,并可利用知识和常识进行推理和决策,并支持客服、诊断、法律、教学等场景 。
预训练模型,则是使自然语言处理由原来的手工调参、依靠 ML 专家的阶段,进入到可以大规模、可复制的大工业施展的阶段 。而且预训练模型从单语言、扩展到多语言、多模态任务 。