【Bias 06】Domain-Adversarial Training of Neural Networks

Abstract

本文提出一种适用于domain adaptation的representation learning方法,训练和测试数据来自相似但不同的分布。本文方法受启发于领域自适应的理论:为实现域迁移,预测必须要基于不可分辨的训练(source)和测试(target)域。 本方法适用于:在标记的source domain和未标记的target domain上训练。在训练过程中,提取出来的特征可以完成主要学习任务(例如:分类),同时通过增加gradient reversal layer,不可以区分域间转换(不区分训练和测试域,即把他们映射到同一个域)。并且验证该方法在行人重识别中的descriptor learning task中的应用。

 

Domain-Adversarial Neural Networks (DANN)

1. source domain:分类损失

对于一个分类任务,假设输入X是m维,通过Gf层,将输入X映射为D维特征:

【Bias 06】Domain-Adversarial Training of Neural Networks

通过一个预测层Gy,将D维特征映射为结果:

【Bias 06】Domain-Adversarial Training of Neural Networks

对应的损失可以计算为:

【Bias 06】Domain-Adversarial Training of Neural Networks

因此,训练网络就是在source domain上最小化下式:

【Bias 06】Domain-Adversarial Training of Neural Networks

其中R(W, b)是一个正则化项。

 

2. target domain:域分类损失

考虑source domain上的图片特征S(Gf)和target domain上的图片特征T(Gf),本文提出通过经验H-散度来评估两个特征集之间的距离:

【Bias 06】Domain-Adversarial Training of Neural Networks

进一步通过一个domain classfication layer Gd来计算上式的min部分。

【Bias 06】Domain-Adversarial Training of Neural Networks

损失计算如下: 

【Bias 06】Domain-Adversarial Training of Neural Networks

进一步,定义正则化项如下,负号相当于对dH取反,将求最小转换为求最大。

【Bias 06】Domain-Adversarial Training of Neural Networks

 

 

3. 最后

因此,最终得到:

【Bias 06】Domain-Adversarial Training of Neural Networks

这里的负号是因为,本文希望他们的距离尽可能小,即梯度逆方向。

【Bias 06】Domain-Adversarial Training of Neural Networks

1. feature extractor: 将source domain和target domain的图片转换为特征。

2. domain classifier: 为了将target domain的特征转换和source domain的特征进行融合,或者说是统一到一个分布,作者在domain classifier中引入对抗训练,domain classifier用于对输入图片属于source domain还是target domain进行分类,但是通过gradient reversal layer将该反传梯度取反,使得目标是“尽可能区分两域”,变成“尽可能不能区分两域”,使得两域特征融合。

3. label predictor: 在label predictor中则是训练分类器,对有label的source domain图片进行分类。

 

 

Reference

https://zhuanlan.zhihu.com/p/51499968

https://blog.csdn.net/nekoli/article/details/88978797

 

上一篇:大学ACM第四周心得


下一篇:QFNU-11.08training