笔记:Deep transfer network: unsupervised domain adaptation

这篇文章里提出了一种用MMD来同时对两个域上的marginal distribution和conditional distribution进行约束的迁移网络。

具体而言,用MMD来对两个域(源域和目标域)上的提取到的特征分布进行约束,从而使两个域上的特征分布尽可能相同,这个分布叫做marginal distribution;同时对两个域上的softmax分类结果用MMD来进行约束,使得两个分类结果的分布尽可能相同,这个分布叫做conditional distribution。这两个方面应该和这篇文章Long M, Wang J, Ding G, et al. Transfer feature learning with joint distribution adaptation[C]//Proceedings of the IEEE International Conference on Computer Vision. 2013: 2200-2207.的思路基本相同,不同之处在于这篇文章使用的是基于传统的方法,这里使用了深度学习。

由于本文并没有使用标准的卷积网络结构,所以最后取得的效果和之前的deep learning的方法并没有可比性,最后实验部分也是用的传统的浅层方法进行对比,没有与最新的基于deep learning方法对比。

文章方法的网络结构在文中表示如下:

首先是特征提取层,也就是图中的前l-1层,最后一层是分类层,输出的是属于每个类的概率。本文在第l-1层以及分类器的输出衡量源域和目标域基于MMD的分布损失。在特征分布上,通过在目标函数中的marginal MMD来衡量两个域上的分布区别,具体如下:

其中的h(l-1)分别代表网络层第l-1层的输出。

在分类器的输出层添加MMD损失使得两个域在条件分布(conditional distribution)上尽可能一致。定义如下的conditional MMD:

其中q是对应某一类的所有输出构成的向量。

最后加上网络结构中标准的分类损失,得到整个网络的目标函数如下:

其中:

接着本文给出了对这个目标函数基于梯度的优化方法:

需要注意以下三点:

1. 如果在每次梯度法中使用全部的样本,那么当样本数很大的时候效率会很低,所以本文采取了基于mini-batch的梯度法。

2. Minibatch构造时随机抽取一半的源域和一半的目标域上的样本,由于两个域上样本数往往不同,本文通过样本复制方式将两个样本集的样本数变为一致。

3. 在构造conditional MMD时,需要用到源域和目标域的标签信息,由于目标域上没有ground-truth,这里通过一个简单的分类器来预测这种label。这个网络就是当前训练得到的网络,随着每次网络更新的结束,这个label也会不断更新,直到收敛或者达到最大的循环次数。

分析:本文的目标函数中的三个部分:标准的分类损失,基于特征分布的marginal MMD损失,基于分类结果的conditional MMD损失,前两个部分在构造domain invariant特征的网络中比较常见。第三个损失是衡量每类输出构成的向量分布之间的差异,这个差异越小,那么两个域上的conditional distribution越相近。对于第三个损失在这里简单对比了它与simultaneous Deep Transfer Across Domains and Tasks文章中提到的soft label loss之间的关系。

另外一个比较conditional MMD损失与之前的soft label结构之间的关系: softlabel方案中是基于目标域上的监督信息,尽可能在目标域上保存源域上学习得到类别之间的关系(relationship between classes),最后的损失用一个交叉熵来构造(两个分布越相似,两者的交叉熵损失越小)。本文基于conditional MMD的损失基于softmax输出的scalar,它要求在同一类上,源域和目标域上的样本在softmax的输出上具有相同的分布。按照这种思路,我们需要也目标域上样本的监督信息,文章里面的做法是先用一个base classifier对目标域上的样本构造一个pseudo label,按照这个label分别来构造conditional MMD损失。

时间: 2024-08-29 22:58:07

笔记:Deep transfer network: unsupervised domain adaptation的相关文章

笔记:unsupervised domain adaptation by backpropagation

这篇文章是结合对抗网络框架与深度学习技术解决domain adaptation应用的一个工作.具体而言,在这个框架中对三个部分进行训练:一个是feature extractor,这个是用于提取特征的,一般由卷积层与pooling层组成:另一个是label classifier,使用全连接层+逻辑斯蒂分类器:第三个在一般的分类器中不会出现,也就是和feature extractor构成对抗网络框架的分类器domain classifier,它也是一个分类器,由全连接层+交叉熵分类器构成.其中全连接

论文笔记-Deep Interest Network for Click-Through Rate Prediction

重点:认为不同的广告会触发用户的兴趣点不同导致user embedding随之改变. DIN网络结构如下图右边 DIN的出发点:认为不同的广告会触发用户的兴趣点不同导致user embedding随之改变. 认为用户embedding向量 是 推荐出来的ad向量的函数,并且ad向量可以通过与历史行为有关的id向量之间的attention联系起来,将用户向量表示成历史行为id向量的attention加权. 关于训练的个人理解:向量u里面各个参数是由向量i和向量a的参数来表征的,通过这种约束(关系)

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

深度学习论文笔记--Recover Canonical-View Faces in the Wild with Deep Neural Network

文章来源:CVPR2014 作者:Zhenyao Zhu,Ping Luo,Xiaogang Wang,Xiaoou Tang (香港中文大学果然牛啊,CVPR一刷一大堆) 主要内容: 提出了利用深度学习(还是CNN)来进行人脸图像重构正面人脸,然后利用重构的正面人脸图像来进行人脸的verification,当然能够取得更高的准确率(比没有用正脸去verification),文章提出利用DL来学习从任意脸到canonical 脸的转换,可以认为是一个回归问题(也不一定非得用DL方法来做). 现有

【论文笔记】Leveraging Datasets with Varying Annotations for Face Alignment via Deep Regression Network

參考文献: Zhang J, Kan M, Shan S, et al. Leveraging Datasets With Varying Annotations for Face Alignment via Deep Regression Network[C]//Proceedings of the IEEE International Conference on Computer Vision. 2015: 3801-3809. 简单介绍 眼下网上发布的人脸关键点的数据集非常多,但标注标准却

论文笔记之:Decoupled Deep Neural Network for Semi-supervised Semantic Segmentation

Decoupled Deep Neural Network for Semi-supervised Semantic Segmentation xx

What are the advantages of ReLU over sigmoid function in deep neural network?

The state of the art of non-linearity is to use ReLU instead of sigmoid function in deep neural network, what are the advantages? I know that training a network when ReLU is used would be faster, and it is more biological inspired, what are the other

Deep Belief Network

Deep Belief Network3实例3.1 测试数据按照上例数据,或者新建图片识别数据. 3.2 DBN实例//****************例2(读取固定样本:来源于经典优化算法测试函数Sphere Model)***********// //2 读取样本数据 Logger.getRootLogger.setLevel(Level.WARN) valdata_path ="/user/huangmeiling/deeplearn/data1" valexamples =ww