NIPS 2016 深度学习 迁移学习 ---残差转移网络用于无监督领域自适应

article/2025/7/22 10:06:11

深度学习的成功得益于大量的标注数据,而数据标注是非常消耗资源的。当一个问题中缺少标注数据时,可以从另一个源中所学知识迁移过来,并且用于新问题中。

清华大学的学者提出了一种新的方法(https://arxiv.org/pdf/1602.04433.pdf),它可以在源领域中学习自适应分类器,并且可以将所学特征迁移到目标域的无标签数据中。

Unsupervised Domain Adaptation with Residual Transfer NetworksMingsheng Long*, Tsinghua University; Han Zhu, Tsinghua University; Jianmin Wang, Tsinghua University; Michael Jordan, University of California, Berkeley

这种方法将特征嵌入到可再生核希尔伯特空间中,匹配特征分布,以便特征自适应。其中的自适应借助于对前向模型加以扩展,即加入新的残差层和损失函数。

注:训练样本集和测试样本集之间存在某种变换关系时,所学判别模型就是领域适应问题,也是迁移学习的一种特例 (Pan & Yang, 2010)。本篇论文主要源于 ImageNet ILSVRC 2015 中的一篇论文 He et al. (2015)。

本文贡献在于:

(1) 为领域适应提出一种新的残差迁移网络模型,其中分类器和特征都是自适应的。 (2) 为领域适应问题探索出一个深层残差学习框架,在目标领域中不需要标签数据。

这种方法具有一定的通用性,因为它几乎可以用于所有现有前向结构中。

下面简单介绍下模型。

源领域中的经验误差定义如下:

0?wx_fmt=png

其中交叉熵损失函数定义如下:

0?wx_fmt=png

作者所提残差迁移网络模型结构如下:

0?wx_fmt=png

下图是残差学习的构建单元,通过下面的构建单元可以将源领域中的分类器(激活前)和目标领域中的分类器(激活前)桥接起来。

这样可以保证不涉及到类别标签,因为目标领域问题中是没有标签的。

0?wx_fmt=png

其中 He et al. (2015) 给出了

0?wx_fmt=png

0?wx_fmt=png

0?wx_fmt=png

是条件概率,累加项是条件熵损失函数。通过最小化交叉熵惩罚项(3),目标领域的分类器就可以用于目标领域中的无标签数据。

特征适应需要最小化下面函数

0?wx_fmt=png

0?wx_fmt=png

这个差异度量具有如下特性 (Gretton et al., 2012a):

0?wx_fmt=png

将特征学习(1),分类器自适应(2) (3),特征自适应(4)集成起来就可以得到作者提出的残差迁移网络:

0?wx_fmt=pngMK-MMD惩罚(4)的折衷参数。

实验

实验过程的预训练基于ImageNet 2012的 AlexNet 模型,微调过程参考了 (Long et al., 2015).

实验结果

0?wx_fmt=png

0?wx_fmt=png

其中

Transfer Component Analysis (TCA) (Pan et al., 2011),

Geodesic Flow Kernel (GFK) (Gong et al., 2012), Deep Domain Confusion (DDC) (Tzeng et al., 2014),

Deep Adaptation Network (DAN) (Long et al., 2015),

Reverse Gradient (RevGrad) (Ganin & Lempitsky, 2015).

0?wx_fmt=png

其中 t-Distributed Stochastic Neighbor Embedding (t-SNE) (Donahue et al., 2014) 是一种用于降维的技巧,非常适合对高维数据可视化。

0?wx_fmt=png

参考资料:

Pan, S. J. and Yang, Q. A survey on transfer learning. TKDE, 22(10):1345–1359, 2010.

He, K., Zhang, X., Ren, S., and Sun, J. Deep residual learning for image recognition. arXiv preprint arXiv:1512.03385, 2015.

Long, M., Cao, Y., Wang, J., and Jordan, M. I. Learning transferable features with deep adaptation networks. In ICML, 2015.

Gretton, A., Borgwardt, K., Rasch, M., Sch¨olkopf, B., and Smola, A. A kernel two-sample test. JMLR, 13:723–773, March 2012a.

Gretton, A., Sriperumbudur, B., Sejdinovic, D., Strathmann, H., Balakrishnan, S., Pontil, M., and Fukumizu, K. Optimal kernel choice for large-scale two-sample tests. In NIPS, 2012b.

Pan, S. J., Tsang, I. W., Kwok, J. T., and Yang, Q. Domain adaptation via transfer component analysis. TNNLS, 22 (2):199–210, 2011.

Gong, B., Shi, Y., Sha, F., and Grauman, K. Geodesic flow kernel for unsupervised domain adaptation. In CVPR, 2012.

Tzeng, E., Hoffman, J., Zhang, N., Saenko, K., and Darrell, T. Deep domain confusion: Maximizing for domain invariance. 2014.

Ganin, Y. and Lempitsky, V. Unsupervised domain adaptation by backpropagation. In ICML, 2015.

https://arxiv.org/pdf/1602.04433.pdf


http://chatgpt.dhexx.cn/article/7PY9XjZ4.shtml

相关文章

深度残差网络+自适应参数化ReLU激活函数(调参记录21)Cifar10~95.12%

本文在调参记录20的基础上,将残差模块的个数,从27个增加到60个,继续测试深度残差网络ResNet+自适应参数化ReLU激活函数在Cifar10数据集上的表现。 自适应参数化ReLU函数被放在了残差模块的第二个卷积层之后,这与Squeeze-and-Excitation Networks或者深度残差收缩网络是相似…

已知两个长度分别为m 和 n 的升序链表,合并降序链表,求时间复杂度

王道数据结构上一道题: 之前我看到一个电子版的书,上边答案解析写的有点错误, 听说有些同学买的实体书上,答案解析也是这样写的 这个是刊印错误,很显然2Max( m , n )大于等于 m n 而且这个解析也不够清晰。 解析&a…

波束形成 常见自适应波束形成算法信(干)噪比增益影响因素

0、其他补充 均匀线阵波束形成器的信噪比增益上确界可由下式表示: 其中为阵元数,所以为了方便起见,一般的稳健自适应波束形成算法在仿真过程中的阵元数量均设置为10。 阵列的导向矢量可由下式表示: 以首个阵元为参考阵元&#xff…

两个升序链表合并成一个降序链表的时间复杂度

王道考研P7 第六题 【2013年统考真题】已知两个长度分别为m和n的升序链表,若将它们合并为长度为mn的一个降序链表,则最坏情况下的时间复杂度是() A. O(n) B. O(mn) C. O(min(m,n)) D. O(max(m,n)) 答案是D 注意,此题…

无线传感器网络路由优化中的能量均衡LEACH改进算法

文章目录 一、理论基础1、LEACH算法概述2、改进的LEACH算法 二、算法流程图三、仿真实验与分析四、参考文献 一、理论基础 1、LEACH算法概述 请参考这里。 2、改进的LEACH算法 改进的LEACH算法(LEACH-N)主要针对LEACH算法分簇阶段的缺陷而改进的&…

机器学习之自适应增强(Adaboost)

1.Adaboost简介 **Adaptive boosting(自适应增强)是一种迭代算法,其核心思想是针对同一个训练集训练不同的弱分类器,然后把这些弱分类器集合起来,构成一个强分类器,Adaboost可处理分类和回归问题。了解Adaboost算法之前&#xff…

自适应阈值(adaptiveThreshold)分割原理及实现

背景介绍及原理 前面介绍了OTSU算法和最大熵算法,但这两种算法都属于全局阈值法,所以对于某些光照不均的图像,这种全局阈值分割的方法会显得苍白无力,如下图: 显然,这样的阈值处理结果不是我们想要的&…

优化算法+神经网络:神经网络自动参数优化

当智能群优化算法遇上神经网络 优化算法进行神经网络的参数寻优,解放深度调参1.已经实现的Genetic Algorithm优化Neural Network2.已经实现的PSO优化Neural Network3.已实现的SSA[^1]优化Neural Network 三种方法的可视化搜索过程对比三种优化算法性能总结总结目前来…

Java stream().sorted()实现排序(升序、降序、多字段排序)

1 自然排序 sorted()&#xff1a;自然排序&#xff0c;流中元素需实现Comparable接口 package com.entity;import lombok.*;Data ToString AllArgsConstructor NoArgsConstructor public class Student implements Comparable<Student> {private int id;private String …

linux centos查找某个文件,Linux查找命令(文件、文件中的关键字)

1、grep &#xff1a;查找文件中的内容 $ grep [option] pattern [file] 例&#xff1a; $ grep un day Sunday 例: $grep include doulinked.c doulinked1.c doulinked.c:#include doulinked.c:#include doulinked.c:#include doulinked1.c:#include doulinked1.c:#includ…

Linux下查找\命令(收集整理)

以下为总结&#xff0c;其实可直接跳过&#xff0c;查看locate部分&#xff0c;这个是类似windows下verything搜索工具&#xff01; 一.Linux查找文件的相关命令 常 用 命 令 简要中文说明 程序所在目录 whereis 寻找文件工具 /usr/bin find 寻找文件工具 /usr/bin l…

Linux查找命令 which和find命令

目录 前言一、which命令二、find命令 前言 一、which命令 格式&#xff1a; which [选项] 命令|程序名 #默认当找到第一个目标后不再继续查找选项说明-a查找全部内容&#xff0c;而非第一个文件-n<文件名长度>  指定文件名长度&#xff0c;指定的长度必须大于或等于所有…

Linux文件查找的4个命令

1. find find 命令应该是最经典的命令了&#xff0c;谈到搜索工具第一个想到的肯定是 find 命令。但是&#xff0c;find 命令非常强大&#xff0c;想要把它的功能都介绍一遍&#xff0c;恐怕要写好几篇文章。 所以&#xff0c;这里介绍最基本的&#xff0c;根据文件名查找文件…

Linux下的查找命令合集(which/whereis/locate/find)

Linux 下的查找命令有很多&#xff0c;常用的有which、whereis、locate、find。那么这4个命令之间各自有什么特点&#xff0c;又有什么区别&#xff0c;什么时候该用哪个才最合适呢&#xff1f;方便我们在开发和学习中能更加有效的使用。 1、which 该命令主要是用来查找系统P…

【Linux命令】查找文件命令

文章目录 一、查找文件locateupdatedbfind测试条件操作符操作预定义操作自定义操作 find命令选项&#xff08;常用&#xff09; 一、查找文件 locate locate命令会查找其路径名数据库&#xff0c;输出所有包含查找字符串的匹配项&#xff1a; locate settings.xmlupdatedb …

Linux常用查找命令

1、命令名称&#xff1a;which&#xff08;查看命令文件位置和命令可能出现的别名&#xff09; which 命令 2、whereis&#xff08;查找命令及帮助文档所在位置&#xff09; whereis 命令 3、locate&#xff08;按照文件名查找&#xff0c;按照数据库查找&#xff09; locate…

【Linux学习笔记】8. Linux查找命令:find和grep详解

Linux查找命令 find查找文件grep查找字符串 1. find命令 有多种使用方式&#xff1a; 根据文件名搜索根据文件大小搜索根据文件类型搜索根据修改时间搜索根据文件权限搜索根据文件所有者搜索 上面的各种方式可以利用逻辑与或非组合起来使用。 功能一&#xff1a;按文件名…

linux查找命令,文件就这些which,whereis,locate,find,grep,|

linux生产中我们经常需要查看某个软件是否安装&#xff0c;某个文件在哪里等&#xff0c;某个命令是否存在等。 1. which 查看可执行文件的位置 which命令的作用是&#xff0c;在PATH变量指定的路径中&#xff0c;搜索某个系统命令的位置&#xff0c;并且返回第一个搜索结果…

linux 查找命令

CentOS Linux学习笔记总结(八十六)-CentOS Linux系统的查找命令find find命令是用于在指定目录下查找文件,并可以对查找到的文件进行指定的操作。它的查找是从指定目录开始,并向下递归搜索它的所有各个子目录,查到后标准输出,并对其进行指定操作。 find语法: find [参…

Linux下4个查找命令which、whereis、locate、find

1.which 作用:从环境变量PATH中,定位、返回与指定名字相匹配的可执行文件所在的路径 原理:执行which命令时,which会在当前环境变量PATH中依次寻找能够匹配所找命令名字的可执行文件 适用场合:一般用于查找命令、可执行文件所在的路径 2.whereis 作用:定位、返回与指定名字…