Ganin Y. and Lempitsky V. Unsupervised Domain Adaptation by Backpropagation. ICML 2015.

监督学习非常依赖标签数据, 但是获得大量的标签数据在现实中是代价昂贵的一件事情, 这也是为何半监督和无监督重要的原因.

本文提出一种利用GRL来进行domain adaptation的方法, 感觉本文的创新点还是更加偏重于结构一点.

主要内容

接下来的叙述的方式可能和原文的有一点点的出入.

首先整个网络的框架包括一个用于提取特征的\(G_f\), 可见其是共享的, 提取的到的特征会分别进入上下两个\(G_c, G_d\).

其中, \(G_c\) 是普通的分类器, 当然这要求最开始的输入我们是有对应的标签的, \(G_f + G_c\)也就是我们最后所需要的整个网络.

而\(G_d\)的最后是一个二分类器, 用于区别输入的样本是来自有标签的数据集还是目标数据集.

我们来看一下损失

\[\sum_{i=1\cdots N, d_i=0} \mathcal{L}_y^i (\theta_f, \theta_c) + \lambda \cdot \sum_{i=1\cdots N} \mathcal{L}_{d}^i (\theta_f, \theta_d)
\]

首先关于\(G_f, G_c\)最小化\(\mathcal{L}_y\), 关于\(G_d\)则是最小化\(\mathcal{L}_d\), 同时关于\(G_f\)最大化\(\mathcal{L}_d\).

直观上讲就是, 我们要求\(G_f\)提取的特征使得分类器能够区分出输入的类别, 而下半部分则是一种对抗的思想, \(G_f\)提取的特征希望\(G_d\)不能够区别出输入来自有标签的域还是目标域, 对应的\(G_d\)是努力去区别开来.

为了实现这一点, 本文利用了一种GRL的技术, 即梯度从\(G_d\)回传到\(G_f\)的时候会变换梯度的方向.

代码

import torch
from torch.autograd import Function class RevGrad(Function): @staticmethod
def forward(ctx, inputs):
return inputs @staticmethod
def backward(ctx, grad_outputs):
return grad_outputs.neg()

Unsupervised Domain Adaptation by Backpropagation的更多相关文章

  1. 论文笔记:Unsupervised Domain Adaptation by Backpropagation

    14年9月份挂出来的文章,基本思想就是用对抗训练的方法来学习domain invariant的特征表示.方法也很只管,在网络的某一层特征之后接一个判别网络,负责预测特征所属的domain,而后特征提取 ...

  2. Deep Transfer Network: Unsupervised Domain Adaptation

    转自:http://blog.csdn.net/mao_xiao_feng/article/details/54426101 一.Domain adaptation 在开始介绍之前,首先我们需要知道D ...

  3. Unsupervised Domain Adaptation Via Domain Adversarial Training For Speaker Recognition

    年域适应挑战(DAC)数据集的实验表明,所提出的方法不仅有效解决了数据集不匹配问题,而且还优于上述无监督域自适应方法.        

  4. Domain Adaptation (3)论文翻译

    Abstract The recent success of deep neural networks relies on massive amounts of labeled data. For a ...

  5. Domain Adaptation (1)选题讲解

    1 所选论文 论文题目: <Unsupervised Domain Adaptation with Residual Transfer Networks> 论文信息: NIPS2016, ...

  6. 关于模式识别中的domain generalization 和 domain adaptation

    今晚听了李文博士的报告"Domain Generalization and Adaptation using Low-Rank Examplar Classifiers",讲的很精 ...

  7. 论文阅读 | A Curriculum Domain Adaptation Approach to the Semantic Segmentation of Urban Scenes

    paper链接:https://arxiv.org/pdf/1812.09953.pdf code链接:https://github.com/YangZhang4065/AdaptationSeg 摘 ...

  8. 【论文笔记】Domain Adaptation via Transfer Component Analysis

    论文题目:<Domain Adaptation via Transfer Component Analysis> 论文作者:Sinno Jialin Pan, Ivor W. Tsang, ...

  9. 域适应(Domain adaptation)

    定义 在迁移学习中, 当源域和目标的数据分布不同 ,但两个任务相同时,这种 特殊 的迁移学习 叫做域适应 (Domain Adaptation). Domain adaptation有哪些实现手段呢? ...

随机推荐

  1. E面波导和H面波导的问题

    我感觉与窄壁平行是E面,反之为H面.通常E面(窄面)是指与电场方向平行的方向图切面(窄面):H面(宽面)是指与磁场方向平行的方向图切面(宽面).E面的意思是... ElevationH面的意思是... ...

  2. 锁对象-条件对象-synchronized关键字

    1 import java.util.concurrent.locks.Condition; 2 import java.util.concurrent.locks.Lock; 3 import ja ...

  3. SVN的基本介绍\服务器配置

    ### 1. 工作场景 1. 进入公司需要做的关于开发的第一件事, 就是向项目经理索要SVN服务器地址+用户名+密码### 2. 角色解释> 服务器: 用于存放所有版本的代码,供客户端上传下载更 ...

  4. 解决 nginx: [error] invalid PID number "" in "/usr/local/nginx/logs/nginx.pid"

    使用/usr/local/nginx/sbin/nginx -s reload 重新读取配置文件出错 [root@localhost nginx]/usr/local/nginx/sbin/nginx ...

  5. contrller层的编码设设计流程以及详细配置

    /**      实际开发中遵循一个规律:自己写的类使用注解,系统提供的类使用配置文件 1.书写controller类----->配置springmvc.xml-------->配置web ...

  6. Markdown随时记录

    Markdown学习 推荐文本编译器 Typora 标题(支持六级) 一级标题:# + 空格 + 内容 二级标题:## + 空格 + 内容 三级标题:### + 空格 + 内容 . . . 字体 粗体 ...

  7. Iphone开源项目汇总

    扫描wifi信息: http://code.google.com/p/uwecaugmentedrealityproject/ http://code.google.com/p/iphone-wire ...

  8. 粒子群优化算法—Matlab

    PSO算法 clc; clear ; close ; %% Problem Definition CostFunction = @(x) sphere(x); % Cost Function nVar ...

  9. Spring5 AOP编程:关于org.springframework.beans.factory.BeanNotOfRequiredTypeException报错

    Spring5 AOP编程:关于org.springframework.beans.factory.BeanNotOfRequiredTypeException报错 先上错误详细信息: org.spr ...

  10. Blazor Webassembly多标签页实现非iframe的实现

    前面用iframe实现了多标签页,这次是不用iframe实现的多标签页.参考了一下Ant Design Blazor. 基本功能已经都实现了不论是标签滚动.激活.左移.右移.关闭其他,还是在内容页跳转 ...