JPDA

Transferability versus Discriminability:Joint Probability Distribution Adaptation (JPDA)

最新的一篇迁移学习(传统方法)
读后感。。。

一、introduction

传统的迁移学习可以分成:
基于参数的:需要目标域中有带有label的样本
基于实例的:需要源域和目标域有相同的条件分布
基于特征的:需要源域和目标域存在一个共同的子空间,源域和目标域有相似的分布即可。

那么这篇文章就是:无监督的,基于特征的transfer learning

二、以前基于特征的transfer learning

一般基于特征的TL:
目的:通过一个分布矩阵(A)来降低源域和目标域的分布差异。
这些分布矩阵有:MMD(最常用), KullbackLeibler divergence, Wasserstein distance等。
MMD: 主要用边缘分布和条件分布来衡量。(TL 方法:TCA,JDA,BDA)

三、本文提出的方法 (JPDA)

首先,他提出了两个因素,在衡量DA(基于特征迁移的方法)
1、transferability:它衡量了用特征表示来降低跨域差异的能力。翻译的不好(原文:which measures how capable the feature representation can minimize the cross domain discrepancies.)
2、discriminability:衡量用分类器区分不同类别的能力。(which measures
how easily different classes can be distinguished by a supervised classifier.)

1、assumption

JPDA
用联合概率分布来衡量源域和目标域的分布差异:(TCA JDA BDA 都是边缘分布概率和条件分布概率)

JPDA

2、针对第一点:transferability

Minimize the joint probability MMD of the same class in the two domains
个人理解:就是降低同类之间的距离。
JPDA
下面就和之前的JDA一样,求条件分布概率。
JPDA
JPDA

但是又不完全一样。这里是 联合概率分布。
JPDA
JPDA
这个式子如果不理解可以去跑一下代码,自己查查看,Ys和Ys’用的是one_hot 矩阵。
JPDA
那么上面这个式子代表了矩阵变换后他的每一列的这个特征属于某一类的特征均值。

2、针对第二点:discriminability 不同类之间的距离。

JPDA
这就是我们要优化的式子

JPDA
JPDA

JPDA
L = {α1, α2, …, αC},ak是之前得到的one_hot矩阵的Ys的第k个列向量。
这里* 不是简单地矩阵相乘,而是将前面得到的矩阵复制后面的数字eg C-1,就是复制C-1遍。

3、最后,我们整合上面两个式子,一个是transferability一个是discriminaility,同类之间的距离缩小,不同类之间的距离放大。

JPDA
JPDA
JPDA
JPDA
最后整合到一起就是

JPDA

整个算法流程如下:
JPDA
代码里面用的分类器是1近邻(fitcknn),实验结果和TCA JDA BDA 进行对比,当然肯定作者提出的方法是好的。

实验代码:https://github.com/chamwen/JPDA