introduction
-
作者认为,domain adaption(域适应)方法旨在通过学习domain-invariant feature(域不变特征)来桥接source domain和target domain,从而能够在target domain没有标签的情况下,利用source domain所学到的分类器对target domain进行预测。
-
现在已经可以将domain adaption嵌入到deep feature学习的过程(该过程希望学得domain-invariant feature)当中了。
-
先前的deep domain adaption(深度域适应)方法假定source domain上的分类器可以被直接通过学习得到的domain-invariant feature转换到target domain上来,但是作者认为这个假设在实际中太过于严格,因为检查source domain和target domain上的分类器是否可以共享通常是不可行的。
-
因此,作者在更加一般的的情况下对domain adaption进行研究,其中,source classifier(source domain上的分类器)和target classifier(target domain上的分类器)之间的差异是一个小的perturbation function(扰动函数)。
-
本文的目的是通过将分类器和特征的adaptation过程嵌入到一个统一的深层网络架构中,从有标记的source domain和未标记的target domain中学习得到adaptive classifiers(自适应分类器)和transferable feature(可转移特征)。
-
作者从2015年的deep resudual learning中得到启发(可以去
这篇博客
看一下),并提出了一个叫做Residual Transfer Network(RTN)的新的框架,并假设source classifier和target classifier在一个很小的resdual function(残差函数,就是博客中的F(x))。
-
作者通过将几层网络插入到深层网络当中来实现classifier adaptation(分类器适应),通过参考target classifier(?为什么参考它)来明确的学习resdual function。
-
作者通过计算神经网络中几个层的feature的张量积,并且将它们嵌入到reproducing kernel Hilbert spaces(再生核希尔伯特空间)当中来匹配feature的适应(adaptation)(就是后面提到的MMD)
Relative Work
Residual Transfer Networks
-
source domain:
D
S
=
{
(
x
S
i
,
y
S
i
)
}
n
S
i
=
1
个labeled data
-
服从的分布为
-
希望学习到的分类器为
y
=
f
S
(
x
)
target domain:
D
T
=
{
x
T
j
}
n
T
j
=
1
个unlabeled data
服从的分布为
q
≠
p
希望学习到的分类器为
y
=
f
T
(
x
)
p
(
x
,
y
)
≠
q
(
x
,
y
)
,且分类器
f
S
(
x
)
≠
f
T
(
x
)
,这些mismatches(不相匹配)可以通过共通的adaptation来修复,使得domain adaptation更加有效。
分类器:source domain上的empirical error(经验误差):
min
f
S
1
n
S
∑
i
=
1
n
S
L
(
f
S
(
X
S
i
)
,
y
S
i
)
)
L
(
,
)
表示交叉熵损失函数。
因为卷积层能够学习到一个可以在两个域中转换的普适的特征,所以作者决定对预先训练的卷积层所学到的特征fine-tune(微调)而不是直接adapt。
Feature Adaptation
网络架构:
-
首先,CNNs之后加一个bottleneck layer(我查了一下,这个瓶颈层是为了减少feature的维度而被创建出来的。。。)
f
c
b
来减少feature的维度。
-
之后使用multiple layers
L
=
{
f
b
c
,
f
c
c
}
的feature,在source domain上微调(fine-tune) CNNs。目的是为了让source domain和target domain更加相似。
-
为了使mutiple layers
的adaptation进行得更加有效,作者建议使用mutiple layers
之间的张量积来做一个 lossless multi-layer feature fusion(无损多层特征融合)。
-
定义:
z
S
i
=
Δ
⨂
l
∈
L
x
s
l
i
z
T
i
=
Δ
⨂
l
∈
L
x
t
l
i
-
我查了一下,这里的张量积大概是矩阵的张量积也就是克罗内克积,百度百科一下就可以知道。
-
之后,作者之后利用最小化source domain和target domain之间Maximum Mean Discrepancy(MMD,最大平均差异)来做adaptation(域适应)(使用了kernel trick):
min
f
S
,
f
T
D
L
(
D
S
,
D
T
)
=
∑
i
=
1
n
s
∑
j
=
1
n
s
k
(
z
s
i
,
z
s
j
)
n
2
s
+
∑
i
=
1
n
t
∑
j
=
1
n
t
k
(
z
t
i
,
z
t
j
)
n
2
t
−
2
∑
i
=
1
n
s
∑
j
=
1
n
t
k
(
z
s
i
,
z
t
j
)
n
s
n
t
其中,特征核函数
k
(
z
,
z
′
)
=
e
−
∥
v
e
c
(
z
)
−
v
e
c
(
z
′
)
∥
2
/
b
是一个带宽为b的高斯核函数
-
与DAN不同,作者使用了多层特征的MMD惩罚。作者认为他的优势这样可以获取到multilayer之间充分的互动(?can capture full interactions across multilayer features)并且能够更好地选择模型
Classifier Adaptation
-
因为feature adaptation并不能够消除分类模型中的mismatch(不匹配),所以作者认为还需要学习分类器的adaptation来使得domain adaptation更加有效。
-
作者假设classifier
f
s
(
x
)
f
t
(
x
)
之间仅仅相差一个微小的perturbation function(扰动函数)
Δ
f
(
x
)
f
t
(
x
)
=
f
s
(
x
)
+
Δ
f
(
x
)
Δ
f
(
x
)
是一个仅由input feature
决定的函数。
-
然而,这些方法需要target domain上的标签来学习这个perturbation function,无法在这个非监督域适应任务中使用。所以换成学习
f
s
(
x
)
=
f
t
(
x
)
+
Δ
f
(
x
)
这个函数。
-
作者假设在target domain和source domain被合理地连接在一起后,perturbation function
Δ
f
(
x
)
可以从source domain中标记的数据和target domain中不被标记的数据中共同学习得到。
-
采取学习residual function
Δ
F
(
x
)
=
Δ
F
(
x
)
−
x
(最终希望学习的函数是
Δ
F
(
x
)
+
F
(
x
)
)而不知直接学习的原因是,二者学习的难度是不一样的。
-
作者认为虽然identity mappings(就是之前提到的x直接作为学习到的函数本身)不太可能是最优的,但是依据这个identity mappings找到一个 perturbation function远比直接学习一个全新的函数要容易的多。residual learning(残差学习?)是成功训练一个非常深的网络的关键所在。
-
作者基于上述的观察,在网络中加入了residual block(如网络架构图最右侧所示)
-
推导运算:
f
S
(
x
)
为source classifier中
f
c
c
层的输出,
f
T
(
x
)
为target classifier中
f
c
c
层的输出
-
但是
f
S
(
x
)
(大写)被定义为:
f
S
(
x
)
=
f
T
(
x
)
+
Δ
f
(
x
)
因为target domain没有标签所以如果选择
f
T
(
x
)
会导致back propagation无法工作
-
最终的输出都经过softmax 激活处理:
f
s
(
x
)
=
Δ
σ
(
f
S
(
x
)
)
f
t
(
x
)
=
Δ
σ
(
f
T
(
x
)
)
σ
(
)
为softmax,为了保证最终的输出为“可能性”。
-
Residual layer
f
c
1
−
f
c
2
作为全连接层,并保证
f
t
(
x
)
f
s
(
x
)
太远。
-
但是即便如此,仍然不能够保证
f
t
(
x
)
能够很好的切合target domain,因此作者利用entropy minimization principle(熵最小化原理)来优化参数,通过最小化各个类的条件分布
f
t
j
(
x
t
i
)
=
p
(
y
t
j
=
j
|
x
t
i
;
f
t
)
的熵来鼓励target domain上类之间的low-density separation(低密度分离?我的理解是输出更加趋向一个one-hot vector,因为one-hot vector的熵是最低的)
min
f
t
1
n
t
∑
i
=
1
n
t
H
(
f
t
(
x
t
i
)
)
这就是entropy penalty(熵惩罚)。其中条件信息熵
H
(
f
t
(
x
t
i
)
)
=
−
∑
c
j
=
1
f
t
j
(
x
t
j
)
l
o
g
(
f
t
j
(
x
t
j
)
)
为类(label)的数目,
就是label,
f
t
j
(
x
t
j
)
=
p
(
y
t
j
=
j
|
x
t
i
;
f
t
)
为给定数据时标签是
的概率,也就是类的后验概率。不了解信息熵可以看一看这里:
信息熵
,
条件熵
。
Residual Transfer Network
最终的学习公式(整合):
f
S
=
min
f
t
+
Δ
f
1
n
s
∑
i
=
1
n
s
L
(
f
s
(
x
s
i
)
,
y
s
i
)
+
γ
n
t
∑
i
=
1
n
t
H
(
f
t
(
x
t
i
)
)
+
λ
D
L
(
D
s
,
D
t
)
是一对tradeoff parameters,用来前面权衡张量MMD惩罚和entropy惩罚的比重。
Experiments
-
作者提到说他使用的是动量为0.9的mini-batch SGD,其中在RevGrad(Reverse Gradient)实现的学习率退火策略:
-
因为计算成本太高,不去搜索合适的学习率
-
随着SGD的进行网络的学习率会进行自适应调整:
η
p
=
η
0
(
1
+
α
p
)
β
随着训练的进行,线性地从0变为1,
α
=
10
,
β
=
0.75
,
η
=
0.01
。
-
性能:
-
为了解决传统监督学习需要大量人工标注的问题。顾名思义,就是将某个领域或者任务学习好的知识或模式,应用到到新的不同但相关?的领域中,达到可观的效果。比如我们最常见的fine-tuning。
根据目前已有的研究显示,1)深度神经网络可以很好地学习到数据间的可迁移特征,或者叫做域不变(
dom
ain
in...
论文题目: 《Un
super
vis
ed
Dom
ain
Ada
pta
t
ion
with Re
sidual
Transfer
Networks
》
论文信息: NIPS2016, Mingsheng Long, Han Zhu, Jianmin Wang, Tsinghua University
http://ise.thss.tsinghua.
ed
u.cn/~mlong/doc/res
性能最好的深度架构是在大量标记数据上进行训练的。在缺乏特定任务的标记数据的情况下,领域适应通常提供了一个有吸引力的选择,因为可以获得性质相似但来自不同领域的标记数据(例如合成图像)。在这里,我们提出了一种在深度架构中进行领域适应的新方法,该方法可以在来自源领域的大量标记数据和来自目标领域的大量未标记数据(不需要标记目标领域数据)上进行训练。随着训练的进展,该方法促进了“深度”特征的出现,这些特征(i)对源域上的主要学习任务具有区别性,(ii)对于域之间的转移具有不变性。
Long, Mingsheng, et al. “Un
super
vis
ed
dom
ain
ada
pta
t
ion
with re
sidual
transfer
networks
.” Advances in Neural Informat
ion
Processing Systems. 2016.
dom
ain
ada
pta
t
ion
用于分类问题。其中source
dom
ain
具有label,ta...
上一节主要介绍了通过分布匹配来解决领域自适应问题的方法,主要是在神经网络中添加距离约束,利用MMD等距离度量使得源域和目标域的数据经过网络后得到的特征分布比较相似,从而可以使得在源域上学到的模型能更好的迁移到目标域。领域自适应问题的关键就在于如何使得源域和目标域的数据更好的进行分布匹配,这一点除了可以通过MMD等距离约束实现,也可以使用对抗训练的思想,这也是本文将要介绍的重点内容。
一、DANN (RevGrad)
较早的使用对抗训练思想解决领域自适应问题的研究是Yaroslav Ganin等人
本篇是迁移学习专栏介绍的第十三篇论文,发表在ICML15上。论文提出了用对抗的思想进行
dom
ain
ada
pta
t
ion
,该方法名叫DANN(或RevGrad)。核心的问题是同时学习分类器、特征提取器、以及领域判别器。通过最小化分类器误差,最大化判别器误差,使得学习到的特征表达具有跨领域不变性。
Abstract
高性能的深层体系结构是针对大量标记数据进行训练的。在缺少特定任务的标...
一、
Dom
ain
ada
pta
t
ion
在开始介绍之前,首先我们需要知道
Dom
ain
ada
pta
t
ion
的概念。
Dom
ain
ada
pta
t
ion
,我在标题上把它称之为域适应,但是在文中我没有再翻译它,而是保持它的英文原意,这也有助于我们更好的理解它的概念。
Dom
ain
ada
pta
t
ion
的目标是在某一个训练集上训练的模型,可以应用到另一个相关但不相同的测试集上。
对这个问题列
有一篇论文([cvpr
2017
]Joint Geometrical and Statistical Alignment for
Vis
ual
Dom
ain
Ada
pta
t
ion
)对
Dom
ain
Ada
pta
t
ion
做了一定的总结,我直接把我当时的翻译抄一下:
常见的域适应包括基于实例(instance-bas
ed
)的适应、基于特征表示( feature representat
ion
)的适应、
Introduct
ion
论文作者希望网络学习由discriminativeness(分歧,应该是source
dom
ain
和target
dom
ain
的区别吧)和
dom
ain
-invariance组合起来的隐藏特征(underlying feature)
通过同时优化以下两个discriminative classifiers来实现
label pr
ed
ictor预测分类标签(训练与测试的时候)
**Bousmalis, Konstantinos, et al. “Un
super
vis
ed
pixel-level
dom
ain
ada
pta
t
ion
with generative adversarial
networks
.” CVPR
2017
. **
问题背景:
将原域的图像转换到目标域。已知源域的图像类别标签,对于目标域的图像标签未知。
1. 域对抗损失:
2. 分类损失...