笔记:unsupervised domain adaptation by backpropagation

这篇文章是结合对抗网络框架与深度学习技术解决domain adaptation应用的一个工作。具体而言,在这个框架中对三个部分进行训练:一个是feature extractor,这个是用于提取特征的,一般由卷积层与pooling层组成;另一个是label classifier,使用全连接层+逻辑斯蒂分类器;第三个在一般的分类器中不会出现,也就是和feature extractor构成对抗网络框架的分类器domain classifier,它也是一个分类器,由全连接层+交叉熵分类器构成。其中全连接层的激活函数都是relu函数。对抗体现在对于domain classifier损失在训练阶段两个相反的要求。具体而言:对于domain adaptation应用,我们希望网络学到的特征表示具有领域不变(domain invariant)的特征,那么就要求dimain classifier不能正确进行领域分类,也就是要求domain classifier的分类损失最大;另一方面在对domain classifier训练时,我们肯定要求分类器能尽可能的正确分类,也就是domain classifier的分类损失最小。这种对抗的框架最早出现在Goodfellow的文章Generative adversarial networks,它针对的应用是图像生成,为了训练一个生成模型学习样本的分布,在框架中引入了一个判别模型用于区分样本是由模型生成还是来源于真实分布,感兴趣的可以仔细看那篇文章的框架。下面给出这篇文章的框架。

其中绿色部分是feature extractor;蓝色部分是label classifier;红色部分是domain classifier

下面从模型以及优化算法两个方面来介绍这篇文章。

一、模型

首先来介绍模型的构成及其关系。

domain adaptation的应用中有两个域:一个包含大量的标签信息,称为源域(source domain);另一个只有少量的甚至没有标签,但是却包含我们要预测的样本 ,称为目标域(target domain)。所以,按照常理,我们可以在源域上通过一般的机器学习方法来训练得到判别模型。但是由于源域和目标域上的dataset bias,这个判别模型不能直接移植到目标域。如何在尽量不损失判别模型的条件下将判别模型由源域迁移到目标域,就是domain adaptation要解决的问题,也称为迁移学习(transfer learning)。关于这个问题,一般有shared-classifier假设:如果可以在源域和目标域上,学习到一个公共的特征表示空间,那么在这个特征空间上,源域特征上学到的判别模型也可以用到目标域的特征上。所以domain adaptation问题往往转换为寻找公共特征表示空间的问题,也就是学习域不变特征(domain invariant feature)。本文就是利用对抗网络的框架来学习域不变特征。

具体而言,如果学习得到一个domain classifier,它能对不同域进行区分。学习不变特征的假设就是,在训练好的domain classifier上,如果不同域上的特征在这个分类器上不能区分,也就是这个分类器的分类损失很大, 那么这个特征就可以看作是不变特征。一个极端的例子是如果源域和目标域在这个空间上完全重合,那么所有的domain classifier按照常理都会失效,都相当于一个随机分类器的效果。

另一方面,对于label classification,我们要让学到的特征尽可能具有label的分类判别信息,也就是最小化label classifier的分类损失。

实际上在训练domain classifier的时候要求它的分类损失最小化,而要求得到不变特征,要求分类损失最大化,这是一个互相对抗的要求,可以表示如下:

其中:

其中theta_f表示特征提取的参数,theta_y表示label classifier的分类器,theta_d表示domain classifier的参数,L_y表示label classifier的分类器,L_d表示domain classifier的分类器。N代表所有样本的数目,d_i代表域标签,0代表源域。

下面介绍如何在标准的梯度下降法中优化这个函数。

二、优化

针对上面(2)和(3)中的问题,可以用下面的方法对网络参数进行更新:

这个区别于对抗网络中的固定一个更新另一个的过程,在一个循环里面对网络参数同时进行更新。其中mu是学习的速度,lambda表示一个超参数。如果不使用lambda参数,作者表明会使得训练得到的特征最小化domain classifier loss,也就是不能学到域不变的特征。

为了使上面的式子符合标准的方向传播的表示,作者定义了一个中间函数,它在前向和反向过程中有两个不等价的表现形式:

对应的损失函数表示为:

这样就可以用标准的SGD方法进行反向传播。

时间: 2024-08-11 16:04:12

笔记:unsupervised domain adaptation by backpropagation的相关文章

笔记:Deep transfer network: unsupervised domain adaptation

这篇文章里提出了一种用MMD来同时对两个域上的marginal distribution和conditional distribution进行约束的迁移网络. 具体而言,用MMD来对两个域(源域和目标域)上的提取到的特征分布进行约束,从而使两个域上的特征分布尽可能相同,这个分布叫做marginal distribution:同时对两个域上的softmax分类结果用MMD来进行约束,使得两个分类结果的分布尽可能相同,这个分布叫做conditional distribution.这两个方面应该和这篇

Unsupervised Domain Adaptation Via Domain Adversarial Training For Speaker Recognition

当评估数据集的领域与训练数据集的领域相似时,用于说话者识别的i-Vector方法取得了良好的性能.但是,在现实应用中,训练数据集和评估数据集之间始终存在不匹配,导致性能下降.为了解决这个问题,本文提出通过领域对抗训练来学习领域不变量和说话人鉴别性语音表征.具体的,在域对抗训练方法中,我们使用梯度反转层去除域变量,并将不同域数据投影到同一子空间中.此外,我们将所提出的方法与其他基于i-Vector的先进无监督域自适应技术进行了比较(例如基于自动编码器的域自适应,数据集间可变性补偿,数据集不变协方差

笔记:Beyond sharing weights for deep domain adaptation

Based on deep learning, instead of sharing weights across source and target domains, this work proposed a two-stream architecture where different streams operate on different domains, with an additional loss function to imply the relationships across

论文阅读 | 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 摘要: 在过去的5年里面,卷积神经网络在语义分割领域大获全胜,语义分割是许多其他应用的核心任务之一,这其中包括无人驾驶.增强现实.然而,训练一个卷积神经网络需要大量的数据,而对于这些数据的收集和标注是极其困难的.计算机图形学领域的最新研究进展使得利用计算机生成的注释在接近真实照片的合成图像上训练CNN

笔记:Semi-supervised domain adaptation with subspace learning for visual recognition (cvpr15)

本文基于子空间学习提出了一种半监督的域自适应框架(SDASL).在这个框架中,一方面学习一个领域不变(domain invariant)的低维结构(low-dimension structure),也就是子空间,从而减少不同域上数据分布不同带来domain shift影响:另一方面通过正则项利用目标域上的unlabeled样本来学习目标域上的结构信息.具体而言,首先在源域和目标域上分别学习一个映射(这个映射用一个矩阵表示),可以将样本表示映射到一个低维的公共子空间上,然后在这个子空间上进行分类,

学习笔记dao,domain,service三层理解

1.dao层操作单表,不涉及复杂逻辑,主要是表的增删改查操作,完全根据domain的要求来查询数据,会对每个要操作的数据库表定义一个dao,对具体的操作要定义一个类似函数说明. eg: UppCodeInfo findByCodeNo(String codeNo);JPA方式 2.domain层考虑业务逻辑,例如过滤条件,放行或者返回,以及数据的处理,为调用dao层做好准备,一个domain可以调用一个或者一组相关的dao层. eg:@Entity         @Table(name = "

(转) Deep learning architecture diagrams

FastML Machine learning made easy RSS Home Contents Popular Links Backgrounds About Deep learning architecture diagrams 2016-09-30 Like a wild stream after a wet season in African savanna diverges into many smaller streams forming lakes and puddles,

My favourite papers from day one of ICML 2015

My favourite papers from day one of ICML 2015 07 July 2015 Aargh! How can I possibly keep all the amazing things I learnt at ICML today in my head?! Clearly I can’t. This is a list of pointers to my favourite papers from today, and why I think they a

(转) 干货 | 图解LSTM神经网络架构及其11种变体(附论文)

干货 | 图解LSTM神经网络架构及其11种变体(附论文) 2016-10-02 机器之心 选自FastML 作者:Zygmunt Z. 机器之心编译  参与:老红.李亚洲 就像雨季后非洲大草原许多野生溪流分化成的湖泊和水洼,深度学习已经分化成了各种不同的专门架构. 并且,每个架构都会有一个图解,这里将详细介绍它们. 神经网络在概念上很简单,并且它们十分动人.在层级上,有着一堆同质化的元素和统一的单位,并且它们之间还存在在一系列的加权连接.这就是神经网络的所有,至少从理论上来说是这样.然而,时间