第一部分 背景与概念
第1章 绪论
迁移学习,顾名思义,就是要通过知识的迁移进行学习,达到事半功倍的效果。具体而言,在机器学习范畴,迁移学习可以利用数据、任务或模型之间的相似性, 将在旧领域学习过的模型和知识应用于新的领域。 例如,不同的用户、设备、穿戴位置形成了各式穿戴式传感器信号,如何利用用户、设备、位置的相似性,构建个性化机器学习模型,从而可以识别每个用户的日常行为?
1.1 传统的有监督机器学习与迁移学习的区别
| 项目 | 传统的有监督机器学习 | 迁移学习 |
|---|---|---|
| 数据分布 | 训练和测试数据服从相同的分布 | 训练和测试数据服从不同的分布 |
| 数据标注 | 需要足够的数据标注来训练模型 | 不需要足够的数据标注 |
| 模型 | 每个任务分别建模 | 模型可以在不同任务之间迁移 |
1.2 迁移学习的必要性
| 矛盾 | 传统机器学习 | 迁移学习 |
|---|---|---|
| 大数据与少标注 | 增加人工标注,但是昂贵且耗时 | 数据的迁移标注 |
| 大数据与弱计算能力 | 只能依赖强大计算能力,但是受众少 | 模型迁移 |
| 有限数据与模型泛化能力 | 无法满足泛化要求 | 领域泛化、元学习等 |
| 普适化模型与个性化需求 | 通用模型无法满足个性化需求 | 模型自适应调整 |
| 特定应用的需求 | 冷启动问题无法解决 | 数据迁移 |
1.3 迁移学习的研究领域与研究方法分类
按特征空间分类:
如果特征语义和维度都相同,那么就是同构;反之,如果完全不相同,那么就是异构。举个例子来说,不同图片的迁移就可以认为是同构的;而图片到文本的迁移则是异构的。
按目标域有无标签分类:
显然,少标签或无标签的问题(半监督和无监督迁移学习)是研究的热点和难点,也是本书重点关注的领域。
按学习方法分类:
- 基于实例的迁移学习方法:通过权重重用,对源域和目标域的样例进行迁移。
- 基于特征的迁移学习方法:通过对特征进行变换来完成迁移。
- 基于模型的迁移学习方法:构建参数共享的模型,例如预训练–微调(Pretrain-finetune)。
- 基于关系的迁移学习方法:其主要挖掘和利用关系进行类比迁移。
按离线与在线形式分类:
目前,绝大多数的迁移学习方法都采用了离线方式,即源域和目标域均是给定的,迁移一次即可。算法无法对新加入的数据进行学习,模型也无法得到更新。
1.4 迁移学习的应用
-
计算机视觉:例如图片分类、风格迁移等。
-
自然语言处理:例如,Li等人把为普通话训练的语音识别模型迁移到广东话的语音识别上。在那些小语种的语音识别与合成任务上,迁移学习几乎是唯一可用的学习技术。
-
普适计算与人机交互:行为识别(Activity Recognition)主要通过佩戴在用户身体上的传感器研究用 户的行为。行为数据是一种时间序列数据,不同用户、不同环境、不同位置、不同设 备,都会导致时间序列数据的分布发生变化,此时,也需要进行迁移学习。
-
医疗健康:不同于其他领域,医疗领域研究的难点 问题是,无法获取足够有效的医疗数据。在这一领域,迁移学习同样也变得越来越重要。
第2章 从机器学习到迁移学习
领域(Domain)是学习的主体,主要由两部分构成:数据和生成这些数据的概率分布。我们通常用 来表示一个领域,领域上的一个样本数据包含输入 和输出 , 其概率分布记为 。我们用 来分别表示数据所处的特征空间和标签空间,则对于任意一个样本 ,都有。因此,一个领域可以被表示为 。
在迁移学习中,被迁移的领域、含有知识的领域通常被称为源领域(Source domain, 源域),而待学习的领域,则通常被称为目标领域(Target domain,目标域)。知识从源域传递到目标域,就完成了迁移。通常我们用小写下标 和 来分别指代两个领域,即 为源域, 为目标域。
第3章 迁移学习基本问题
3.1 何时迁移(When to transfer)
何时迁移,对应于迁移学习的可能性和使用迁移学习的原因。给定待学习的目标,我们首先要做的便是判断当时的任务是否适合进行迁移学习。
3.2 何处迁移(What/Where to transfer)
判断当时的任务适合迁移学习之后,第二步要解决的便是从何处进行迁移。这里的何处,我们用What和Where来表达可能更好理解。What,指的是要迁移什么知识,这些知识可以是神经网络权值、特征变换矩阵、某些参数等;而Where指的是要从哪个地方进行迁移,这些地方可以是某个源域、某个神经元、某个随机森林里的树等。
3.3 如何迁移(How to transfer)
这一步是绝大多数方法的着力点。给定待学习的源域和目标域,这一步则是要学习最优的迁移学习方法以达到最好的性能。
3.4 失败的迁移:负迁移
如果两个领域之间不存在相似性,或者基本不相似,那么,就会大大影响迁移学习的效果。拿骑自行车的例子来说,如果要用骑自行车的经验来学习开汽车,这显然是不太可能的,因为骑自行车和开汽车之间基本不存在相似性。所以,这个任务基本上无法完成。这时,可以说出现了负迁移。