0
点赞
收藏
分享

微信扫一扫

soul 一面(校招java)

1. 问题形式化

迁移学习的问题形式化,是进行一切研究的前提。在迁移学习中,有两个基本的概念:领域

(Domain) 和任务 (Task)。它们是最基础的概念。

1.1 领域

领域 (Domain): 是进行学习的主体。领域主要由两部分构成:数据和生成这些数据的概率分布。通

常我们用 D 来表示一个 domain,用大写 P 来表示一个概率分布。特别地,因为涉及到迁移,所以

对应于两个基本的领域:源领域 (Source Domain) 和目标领域 (Target Domain)。这两个概念很好

理解。源领域就是有知识、有大量数据标注的领域,是我们要迁移的对象;目标领域就是我们最终

要赋予知识、赋予标注的对象。知识从源领域传递到目标领域,就完成了迁移。

领域上的数据,我们通常用小写粗体 x 来表示,它也是向量的表示形式。例如,xi 就表示第 i 个样

本或特征。用大写的黑体 X 表示一个领域的数据,这是一种矩阵形式。我们用大写花体 X 来表示

数据的特征空间。通常我们用小写下标 s t 来分别指代两个领域。结合领域的表示方式,则:Ds

表示源领域,Dt 表示目标领域。值得注意的是,概率分布 P 通常只是一个逻辑上的概念,即我们

认为不同领域有不同的概率分布,却一般不给出(也难以给出)P 的具体形式。

1.2 任务

任务 (Task): 是学习的目标。任务主要由两部分组成:标签和标签对应的函数。通常我们用花体 Y

来表示一个标签空间,用 f(·) 来表示一个学习函数。相应地,源领域和目标领域的类别空间就可以

分别表示为 Ys Yt 。我们用小写 ys yt 分别表示源领域和目标领域的实际类别。

1.3 常用符号总结

迁移学习(Transfer Learning):给定一个有标记的源域和一个无 标记的目标域

。这两个领域的数据分布P(xs)和P(x1)不同,即P(xs)≠P(xt)。迁移学

习的目的就是要借助Ds的知识,来学习目标域Dt的知识(标签)。更进一步,结合我们前面说过

的迁移学习研究领域,迁移学习的定义需要进行如下的考虑:

(1)特征空间的异同,即Xs和Xt是否相等。

(2)类别空间的异同:即ys和yt是否相等。

(3)条件概率分布的异同:即Qs(ys|xs)和Qt(yt | xt)是否相等。

结合上述形式化,我们给出领域自适应(Domain Adaptation)这一热门研究方向的定义:

领域自适应(Domain Adaptation):给定一个有标记的源域和一个 无标记的目标

,假定它们的特征空间相同,即Xs=Xt,并且它们的类别空间也相同,即ys=yt

以及条件概率分布也相同,即Qs(ys|xs)=Qt(yt|xt)。但是这两个域的边缘分布不同,即Ps

(xs)≠Pt(xt)。迁移学习的目标就是,利用有标记的数据Ds去学习一个分类器f:xt→yt来预测

目标域Dt的标签

迁移学习的核心是,找到源领域和目标领域之间的相似性,并加以合理利用。这种相似性非常普

遍。比如,不同人的身体构造是相似的;自行车和摩托车的骑行方式是相似的;国际象棋和中国象

棋是相似的;羽毛球和网球的打球方式是相似的。这种相似性也可以理解为不变量。以不变应万

变,才能立于不败之地。 找到相似性 (不变量),是进行迁移学习的核心。有了这种相似性后,下

一步工作就是,如何度量和利用这种相似性。度量工作的目标有两点:一是很好地度量两个领域的

相似性,不仅定性地告诉我们它们是否相似,更定量地给出相似程度。二是以度量为准则,通过我

们所要采用的学习手段,增大两个领域之间的相似性,从而完成迁移学习。

1.4 度量

定义在两个向量 (两个点) 上,这两个数据在同一个分布里。点 x 和点 y 的马氏距离为:

最大均值差异是迁移学习中使用频率最高的度量。Maximum mean discrepancy,它度量在再生希

尔伯特空间中两个分布的距离,是一种核学习方法。两个随机变量的 MMD 平方距离为:

其中φ(`)是映射,用于把原变量映射到再生核希尔伯特空间中。什么是RKHS?形式化定义太复

杂, 简单来说希尔伯特空间是对于函数的内积完备的,而再生核希尔伯特空间是具有再生性

的希尔伯特空间。就是比欧几里得空间更高端的。将平方展开

后,RKHS空间中的内积就可以转换成核函数,所以最终MMD可以直接通过核函数进行计算。

2. 迁移学习的基本方法

2.1 基于样本迁移

基于样本的迁移学习方法 (Instance based Transfer Learning) 根据一定的权重生成规则,对数据样

本进行重用,来进行迁移学习。图片形象地表示了基于样本迁移方法的思想。源域中存在不同种类

的动物,如狗、鸟、猫等,目标域只有狗这一种类别。在迁移时,为了最大限度地和目标域相似,

我们可以人为地提高源域中属于狗这个类别的样本权重。

虽然实例权重法具有较好的理论支撑、容易推导泛化误差上界,但这类方法通常只在领域间分布差

异较小时有效,因此对自然语言处理、计算机视觉等任务效果并不理想。 

2.2 基于特征迁移

基于特征的迁移方法 (Feature based Transfer Learning) 是指将通过特征变换的方式互相迁移 ,来

减少源域和目标域之间的差距;或者将源域和目标域的数据特征变换到统一特征空间中,然后利用

传统的机器学习方法进行分类识别。根据特征的同构和异构性,又可以分为同构和异构迁移学习。

图片很形象地表示了两种基于特征的迁移学习方法。 

基于特征的迁移学习方法是迁移学习领域中最热门的研究方法,这类方法通常假设源域和目标域间

有一些交叉的特征。 

2.3 基于模型迁移

基于模型的迁移方法 (Parameter/Model based Transfer Learning) 是指从源域和目标域中找到他们

之间共享的参数信息,以实现迁移的方法。这种迁移方式要求的假设条件是:源域中的数据与目标

域中的数据可以共享一些模型的参数。

2.4 基于关系迁移 

基于关系的迁移学习方法 (Relation Based Transfer Learning) 与上述三种方法具有截然不同的思

路。这种方法比较关注源域和目标域的样本之间的关系。图片形象地表示了不同领域之间相似的关

。就目前来说,基于关系的迁移学习方法的相关研究工作非常少,大部分都借助于马尔科夫逻辑

网络 (Markov Logic Net) 来挖掘不同领域之间的关系相似性

2.5 基于马尔科夫逻辑网的关系迁移 

3. 迁移学习算法-TCA 

3.1 数据分布自适应 

数据分布自适应 (Distribution Adaptation) 是一类最常用的迁移学习方法。这种方法的基本思想

是,由于源域和目标域的数据概率分布不同,那么最直接的方式就是通过一些变换,将不同的数据

分布的距离拉近。根据数据分布的性质,这类方法又可以分为边缘分布自适应、条件分布自适应、

以及联合分布自适应。

图片形象地表示了几种数据分布的情况。简单来说,数据的边缘分布不同,就是数据整体不相似。

数据的条件分布不同,就是数据整体相似,但是具体到每个类里,都不太相似

3.2 TCA 

迁移成分分析 (Transfer Component Analysis)是一种边缘分布自适应方法 (Marginal Distribution

Adaptation) 。其目标是减小源域和目标域的边缘概率分布的距离,从而完成迁移学习。从形式上

来说,边缘分布自适应方法是用 P(xs )P(xt ) 之间的距离来近似两个领域之间的差异。即

边缘分布自适应的方法最早由香港科技大学杨强教授团队提出。

边缘分布自适应的方法最早由香港科技大学杨强教授团队提出,方法名称为迁移成分分析(Transfer

Component Analysis)。由于P(xs)≠P(xt),因此,直接减小二者之间的距离是不可行的。TCA假设存

在一个特征映射Φ,使得映射后数据的分布。TCA假设如果边缘分布接近,

那么两个领域的条件分布也会接近,即条件分布。这就是TCA的全

部思想。因此,我们现在的目标是,找到这个合适的Φ。

问题:但是世界上有无穷个这样的Φ,我们肯定不能通过穷举的方法来找 Φ 的。那么怎么办

呢? 迁移学习的本质:最小化源域和目标域的距离。能否先假设这个Φ是已知的,然后去求距离,

看看能推出什么?

更进一步,这个距离怎么算?机器学习中有很多种形式的距离,从欧氏距离到马氏距离,从曼哈顿

距离到余弦相似度,我们需要什么距离呢?TCA利用了一个经典的也算是比较“高端”的距离叫做最

大均值差异(MMD,maximum mean discrepancy)。我们令n1,n2分别表示源域和目标域的样本个

数,那么它们之间的MMD距离可以计算为:

MMD是做了一件什么事呢?简单,就是求映射后源域和目标域的均值之差。

事情到这里似乎也没什么进展:我们想求的Φ仍然没法求。TCA是怎么做的呢,这里就要感谢矩阵

了!我们发现,上面这个MMD距离平方展开后,有二次项乘积的部分!那么,联系在SVM中学过

的核函数,把一个难求的映射以核函数的形式来求,不就可以了?于是,TCA引入了一个核矩阵

K:以及一个MMD矩阵L,它的每个元素的计算方式为:

这样的好处是,直接把那个难求的距离,变换成了下面的形式:

其中,tr(`)操作表示求矩阵的迹,用人话来说就是一个矩阵对角线元素的和。这样是不是感觉离目

标又进了一步呢? 

其实这个问题到这里就已经是可解的了,也就是说,属于计算机的部分已经做完了。只不过它是一

个数学中的半定规划(SDP,semi-definite programming)的问题,解决起来非常耗费时间。由于TCA

的第一作者Sinno Jialin Pan以前是中山大学的数学硕士,他想用更简单的方法来解决。他是怎么

做的呢?他想出了用降维的方法去构造结果。用一个更低维度的矩阵W:

这里的W矩阵是比K更低维度的矩阵。最后的W就是

问题的解答了!

好了,问题到这里,整理一下,TCA最后的优化目标是:

这里的H是一个中心矩阵,

以上式子下面的条件是什么意思呢?那个 min 目标就是要最小化源域和目标域的距离,加上 W

的约束让它不能太复杂。下面的条件是是要实现第二个目标:维持各自的数据特征。TCA 要维持

的特征是scatter matrix就是数据的散度。就是说,一个矩阵散度怎么计算?对于一个矩阵 A,它

scatter matrix 就是AHA 。这个 H 就是上面的中心矩阵。

3.3 TCA PCA 的效果对比

可以很明显地看出,对于概率分布不同的两部分数据,在经过 TCA处理后,概率分布更加接近。

这说明了 TCA 在拉近数据分布距离上的优势。

举报

相关推荐

0 条评论