Domain Adaptation 与 Generative Adversarial Network

域自适应生成对抗网络

1、《Unsupervised domain adaptation by backpropagation》

pytorch 代码:https://github.com/fungtion/DANN

文章:http://sites.skoltech.ru/compvision/projects/grl/files/paper.pdf

扩展版文章:Domain-Adversarial Training of Neural Networks

网络结构:

Domain Adaptation 与 Generative Adversarial Network_第1张图片

细节:①网络简称DANN,文章发表于2015年ICML,与GAN(2014年NIPS)同时期,DANN参考文献中有GAN。DANN思想与GAN类似,通过额外的域分类器(domain classifier),当其不能区分任意样本是否来自源域(source domain)或目标域(target domain)时,可以认为对源域的方法同样适用于目标域。

          ②网络包含通用特征提取器(feature extractor,绿色)、类别分类器(label predictor,蓝色)、域分类器(domain classifier,红色)三部分。特征提取器用于提取与域无关的(domain-invariant)判别式特征,这样可以使得在源域学习的模型同样可泛化至目标域。类别分类器与源域和目标域的任务相关,如分类、分割等。域分类器用于判别输入样本来自源域或目标域。具体思想可参考GAN。

          ③与GAN训练方式不同,为了使网络可以端到端的训练,在特征提取器与域分类器之间添加了一层负梯度层(gradient reversal layer),直白来说,特征提取器期望提取判别性特征迷惑域分类器(最大化域分类损失),而域分类器期望能准确区分样本分布(最小化域分类损失),添加负号使二者统一。

你可能感兴趣的:(Pytorch,ML,python)