作者:李新春
————————
计算机软件新技术国家重点实验室伪文艺程序员
既可提刀立码,行遍天下
又可调参炼丹,卧于隆中
在迁移学习(Transfer Learning)任务里面,迁移算法能够利用在源域(Source Domain)学习到的知识辅助目标域(Target Domain)的模型的建立。在非深度迁移(Shallow Transfer Learning)领域,以基于样本的迁移(Instance-based)、基于特征的迁移(Feature-based)为主;在深度迁移(Deep Transfer Learning)领域,以基于对抗网络的迁移(Adversarial Domain Adaptation)技术为主。
基于样本的迁移主要是给源域样本赋予一个权重,使得加权(Instance Re-weighting)或者重采样(Importance Sampling)之后的源域样本和目标域样本的分布对齐,比如KMM、KLIEP、TrAdaboost等等;基于特征的迁移主要是基于子空间(Subspace)的方法,目的是寻找一个合适的映射矩阵使得源域和目标域在子空间里面的距离最小,比如SA、TCA等等。
无论是哪种迁移算法,出发点都有两个:第一,减小源域和目标域的距离,对齐数据分布;第二,保证分类算法在源域和目标域(如果目标域有标记)上的性能不会下降太多。
本文就简单从上面的出发介绍一些迁移学习领域的知识,包括浅度迁移模型举例、深度网络迁移、迁移两大因素、迁移理论研究、迁移度量技术和迁移前沿研究等内容。
下面是文章的目录结构:
Shallow Transfer Models
Deep Domain Adaptation
Transfer Learning Theory
Transferability & Discriminability
Quantify Transfer Learning Factors
Transfer Learning New Researches
Shallow Transfer Models
本节介绍一些传统的迁移算法,有的只是列出优化目标,并不会详细进行推导,主要是一个梳理工作,大概包括以下算法(按发表时间排序):
KMM(NeurIPS 2006)
KLIEP(NeurIPS 2007)
MMDE(AAAI 2008)
TCA(IJCAI 2009)
GFK(CVPR 2012)
ITL(ICML 2012)
MSDA(ICML 2012)
SA(ICCV 2013)
GTL(TKDE 2014)
CORAL(AAAI 2016)
LSDT(TIP 2016)
下面就分别简单地介绍一下这些算法的核心思想。
KMM
KMM的全称是Kernel Mean Match,是NeurIPS 2006年《Correcting Sample Selection Bias by Unlabeled Data》提出的一个算法。这里的Sample Selection Bias指的是训练集和测试集的采样分布有稍微的偏差,和Covariate Shift和Domain Adaptation的概念有一定相似。
机器学习任务(比如分类)中训练集上的期望损失为 ,测试集的期望损失为 。一般的机器学习算法假设训练集和测试集是从同一个分布采样得到的,即 ,那么最小化 的同时也会最小化 。
我们的目标是希望在训练集上训练的模型能更好地泛化到测试集,因此我们希望最小化的还是 ,由于传统机器学习假设 ,因而直接最小化训练集上的期望/经验损失即可。
但是,很多实际场合里面训练集和测试集的分布不一致,包括边际分布 和条件分布 都可能不一样。那么有 ,因此如果我们想获得一个在测试集上也能表现地很好的学习器 ,那么我们需要做的是:
可以看出,给训练集上的样本加个权重,类似于使用重要性采样(Importance Sampling)的方法对样本进行赋权(Instance Reweight),记 。根据Covariate Shift或者Sample Selection Bias的假设,边际分布不一致,但是条件分布一致。因此有 。
如果能寻找出一组权重 ,使得带权的训练集样本分布和测试集分布一致,这里的一致该如何衡量呢?这个可以根据《A Kernel Method for the Two Sample Problem》里面的Kernel Mean Matching方法(也是著名的MMD的前身),这个文章发表在NeurIPS 2006,和KMM算法的提出者是同一批作者。
优化目标是:
其中 是样本到希尔伯特空间的映射, 是要优化求解的权重。 则可以理解为根据样本分布 采样得到的样本在希尔伯特空间里面的中心表示,可以看作是一个分布的特征表示。最小化两个分布的表示的距离(在希尔伯特空间),那么就相当于最小化两个分布之间的差异。
以上优化目标的经验近似为: