Domain Separation Networks
来源:NIPS 2016
作者:Konstantinos Bousmalis,George Trigeorgis,Nathan Silberman,Dilip Krishnan,Dumitru Erhan
机构:Google Brain Mountain View, CA
Imperial College London ,London UK,
Google Research New York, NY
Google Research Cambridge, MA
数据集:MNIST , MNIST-M ,
the German Traffic Signs Recognition Benchmark (GTSRB),
the Streetview House Numbers (SVHN) ,
cropped LINEMOD dataset( a standard for object instance recognition and 3D pose estimation)
实现框架:
代码:文中作者说We provide code at https://github.com/tensorflow/models/domain_adaptation.,但是链接打不开。
本文基于下面一个假设:We hypothesize that explicitly modeling what is unique to each domain can improve a model’s ability to extract domain-invariant features.
网络结构解读:
用了三个特征提取器(Encoder),一个用于提取原域的独有特征,一个用于提取目标域的独有特征,还有一个提取原域和目标域共有的特征。这里用两个损失来控制提取的特征,一个是,用于使得提取出的原域(目标域)独有特征和公共特征尽可能的不同。另一个是,用于使得公共特征提取器提取出的原域和目标域的公共特征尽可能的相似。
1.差异损失:
2.相似性损失
文中相似性损失选择了两个,如下:
DANN相似性损失,要用域判别器去判断公共特征提取器提取出的特征属于原域还是目标域。域判别器和公共特征提取器之间构成一个对抗。
MMD相似性损失是基于核函数的。
The Maximum Mean Discrepancy (MMD) loss [11] is a kernel-based distance function between pairsof samples。
3.分类损失
原域数据还要计算一个分类损失,公共提取器提取出的原域样本的特征,送入分类器去分类,就得到了这个分类损失。
4.重构损失
用原域样本经过公共特征提取器提取的特征和经过私有的特征提取器提取的特征进行重构原域样本,重构后的原域样本和原域样本做损失,就得到了一个重构损失。
目标域样本也是如此,得到一个目标域样本的重构损失。