【深度学习】对迁移学习中域适应的理解和3种技术的介绍

article/2025/8/15 4:18:11

点击上方“小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达

1

『如何理解域适应』

域适应是计算机视觉的一个领域,我们的目标是在源数据集上训练一个神经网络,并确保在显著不同于源数据集的目标数据集上也有良好的准确性。为了更好地理解域适应和它的应用,让我们先看看它的一些用例。

  • 我们有很多不同用途的标准数据集,比如GTSRB用于交通标志识别,LISA和LARA dataset用于交通信号灯检测,COCO用于目标检测和分割等。然而,如果你想让神经网络很好地完成你的任务,比如识别印度道路上的交通标志,那么你必须首先收集印度道路的所有类型的图像,然后为这些图像做标注,这是一项费时费力的任务。在这里我们可以使用域适应,因为我们可以在GTSRB(源数据集)上训练模型,并在我们的印度交通标志图像(目标数据集)上测试它。

  • 在很多情况下很难收集数据集,这些数据集具有训练鲁棒神经网络所需的所有变化和多样性。在这种情况下,在不同的计算机视觉算法的帮助下,我们可以生成具有我们需要的所有变化的大型合成数据集。然后在合成数据集(源数据集)上训练神经网络,并在真实数据集(目标数据集)上测试它。

为了更好地理解,我假设我们对目标数据集没有可用的标注,但这不是唯一的情况。因此在域适应方面,我们的目标是在一个标签可用的数据集(源)上训练神经网络,并在另一个标签不可用的数据集(目标)上保证良好的性能。

30566048a6a10554991b53f8447d162d.png

分类pipeline

现在让我们看看如何实现我们的目标。考虑以上图像分类的例子。为了从一个域适应到另一个域,我们希望我们的分类器能够很好地从源数据集和目标数据集中提取特征。由于我们已经在源数据集上训练了神经网络,分类器必须在源数据集上表现良好。然而,为了使分类器在目标数据集上表现良好,我们希望从源数据集和目标数据集提取的特征是相似的。因此,在训练时,我们加强特征提取,为源和目标域图像提取相似的特征。

36114cbce8fc3577c350d90a30c4ba86.png

成功的域适应

2

『基于目标域的域自适应类型』

根据目标域提供的数据类型,域适应可分为以下几类:

  • 监督 — 你已经标记了来自目标域的数据,目标域数据集的大小比源数据集小得多。

  • 半监督 — 你既有目标域的标记数据也有未标记数据。

  • 无监督的 — 你有很多目标域的未标记样本。

域适应技术

主要采用三种技术实现任意域适应算法。以下是域适应的三种技术:

  • 基于分布的域适应

  • 基于对抗性的域适应

  • 基于重建的域适应

现在让我们逐个来看每种技术。

3

『基于分布的域适应』

基于散度的域适应原理是最小化源与目标分布之间的散度准则,从而得到域不变性特征。常用的分布准则有对比域描述、相关对齐、最大平均差异(MMD),Wasserstein等。为了更好地理解这个算法,让我们先看看一些不同的分布。在最大平均差异(MMD)中,我们试图找出给定的两个样本是否属于相同的分布。我们将两个分布之间的距离定义为平均嵌入特征之间的距离。如果我们有两个在集合X上的分布PQ。MMD通过一个特征映射来定义,: XH,这里H再生核希尔伯特空间。MMD的公式如下:

220f66b48e166b17f150587ba3383776.png

为了更好地了解MMD,请查看以下描述:如果两个分布的矩相似,则它们是相似的。通过使用kernel,我可以对变量进行变换,从而计算出所有的矩(一阶,二阶,三阶等)。在潜在空间中,我可以计算出矩之间的差值并求其平均值。

在相关对齐中,我们尝试对源和目标域之间的相关(二阶统计量)进行对齐,而不是使用MMD中的线性变换对均值进行对齐。

40e43060f8de1eb5a9abe855a6fced70.png

训练时
b82c856393bb06be6d9f2cf46e638052.png
推理时

上面的结构假设源域和目标域有相同的类别。在上述架构中,在训练过程中,我们最小化了两种损失,分类损失和基于散度的损失。分类损失通过对特征提取器和分类器的权值进行更新,确保获得良好的分类性能。而散度损失则通过更新特征提取器的权值来保证源域和目标域的特征相似。

在推理过程中,我们只需将目标域图像通过神经网络。所有的分布通常是非参数而且是人工的数学公式,不是专门针对数据集或我们的问题的,如分类,目标检测,分割等。因此,这种基于分布的方法并不能很好地解决我们的问题。但是,如果分布可以通过数据集或问题来学习,那么它将比传统的预定义分布表现得更好。

4

『基于对抗的域适应』

为了实现基于对抗性的域适应,我们使用GANs。这里我们的生成器是简单的特征提取器,我们添加了新的判别器网络,学习区分源和目标域的特征。由于这是一个双人游戏,判别器帮助生成器产生的特征对于源和目标领域是不可区分的。由于我们有一个可学习的判别器网络,我们学习特定于我们的问题和数据集的特征提取,这可以帮助区分源和目标域,从而帮助生成器产生更鲁棒的特征,即,不能很容易区分的特征。

c63708c2be1f979dcc6c81ae0180fef0.png

训练时,在源域上
f686e4121a3a2965dc3c9eb63205aab4.png
训练时,在目标域上

假设是分类问题,我们使用两种损失,分类损失和判别器损失。分类损失的目的已在前面说明。判别器损失有助于判别器正确地区分源域和目标域的特征。这里我们使用梯度反向层(GRL)来实现对抗性训练。GRL block是一个简单的block,它在反向传播时将梯度乘以-1或一个负值。

在训练过程中,为了更新生成器,我们有来自两个方向的梯度,首先来自分类器,其次来自判别器。由于GRL的存在,判别的梯度乘以一个负值,导致训练生成器的效果与判别器相反。例如,如果优化判别器损失函数的计算梯度为2,那么我们使用-2(假设负值为-1)来更新生成器。通过这种方式,我们试图训练生成器,使其生成即使是判别器也无法区分源域和目标域的特征。GRL层在许多域适应的文献中都有广泛的应用。

5

『基于重建的域适应』

这是基于图像到图像的转换。一个简单的方法是学习从目标域图像到源域图像的转换,然后在源域上训练一个分类器。我们可以用这个想法引入多种方法。图像到图像转换的最简单模型可以是基于编码器-解码器的网络,并使用判别器强制编码器 — 解码器网络生成与源域相似的图像。

e3db058cda2e382e8aac9ee42fafe05f.png

训练时
2e8528bb785f53c7f72e602b32896c2b.png
测试时

另一种方法是使用CycleGANs。在Cycle GAN中采用了基于两种编解码器的神经网络。一个用于将目标转换为源域,另一个用于将源转换为目标域。我们同时训练了生成两个域(源域和目标域)图像的GANs。为了保证一致性,引入了循环一致性损失。这可以确保从一个域转换到另一个域,然后再转换回来,得到与输入大致相同的图像。因此,两个配对网络的总损失和是判别器损失与循环一致性损失的和。

6

『总结』

我们已经看到了三种不同的技术,可以帮助我们实现或实施不同的域适应方法。它在图像分类、目标检测、分割等不同任务中都有很大的应用。在某些方面,我们可以说,这种方法类似于人类如何学习视觉识别不同的东西。我希望这个博客能让你了解我们是如何思考不同的域适应pipelines的。

英文原文链接

https://levelup.gitconnected.com/understanding-domain-adaptation-63b3bb89436f

 

好消息!

小白学视觉知识星球

开始面向外开放啦👇👇👇

 

4b6ebd1605d7860d6cf7d36c95fbcac4.jpeg

下载1:OpenCV-Contrib扩展模块中文版教程在「小白学视觉」公众号后台回复:扩展模块中文教程,即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。下载2:Python视觉实战项目52讲
在「小白学视觉」公众号后台回复:Python视觉实战项目,即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。下载3:OpenCV实战项目20讲
在「小白学视觉」公众号后台回复:OpenCV实战项目20讲,即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。交流群欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~

http://chatgpt.dhexx.cn/article/ZebUSLaB.shtml

相关文章

协议模糊的堆叠式Seq2seq注意模型

摘要--通过生成大量异常数据作为程序的输入,模糊测试是发现软件漏洞的有效方法。很难自动模糊协议,因为必须手动构造一个满足协议规范的模板以生成测试用例。在本文中,我们建立了堆叠的seq2seq注意模型来自动生成协议测试用例。Seq2seq-atten…

【推荐收藏】3.5万字图解Pandas

文章目录 第一部分:Pandas 展示技术提升1. 排序2.按多列排序3. 添加一列4. 快速元素搜索5. 按列连接(join)6.按列分组7. 数据透视表8、Pandas速度 第二部分. Series 和 Index索引(Index)按值查找元素缺失值比较追加、插入、删除统计数据重复数…

层次分析法原理及应用案例

层次分析法是指将一个复杂的多目标决策问题作为一个系统,将目标分解为多个目标或准则,进而分解为多指标(或准则、约束)的若干层次,通过定性指标模糊量化方法算出层次单排序(权数)和总排序&#…

论文研读-AI4VIS-可视化推荐-VizML: 一种基于机器学习的可视化推荐方法

VizML: 一种基于机器学习的可视化推荐方法 1 论文概述1.1 摘要1.2 引言 2 问题陈述3 相关工作3.1 基于规则的可视化推荐系统3.2 基于机器学习的可视化推荐系统 4 数据4.1 Plotly介绍4.2 数据描述和分析,收集和清理4.2 数据特征提取4.3 设计选择提取 5 方法5.1 特征处…

《python数据分析与挖掘实战》笔记第3章

文章目录 第3章:数据探索3.1、数据质量分析3.2、数据特征分析3.2.1、分布分析3.2.2、对比分析3.2.3、统计量分析1.集中趋势度量2.离中趋势度量 3.2.4、周期性分析3.2.5、贡献度分析3.2.6、相关性分析1. 直接绘制散点图2. 绘制散点图矩阵3. 计算相关系数 3.3、python…

对迁移学习中域适应的理解和3种技术的介绍

域适应是计算机视觉的一个领域,我们的目标是在源数据集上训练一个神经网络,并确保在显著不同于源数据集的目标数据集上也有良好的准确性。为了更好地理解域适应和它的应用,让我们先看看它的一些用例。 我们有很多不同用途的标准数据集&#…

基于1305变频器的几种变参数运行测试

该文主要用于学习归纳,因此会省略正规操作中很多步骤,详述原理。欢迎指正。 一. 设备参数 1305变频器一台(380-460V/9A/4.0KW/5HP);三相异步交流电动机(1.5(2HP)/3.65A/380V/50Hz/1420rpm/4),直流发电机组;计算机&am…

2022秋 | PTA编程训练(一)

目录 1.素数对猜想 2.数组元素循环右移问题 3.水仙花数 4.找出不是两个数组共有的元素 5.找鞍点 6.验证“哥德巴赫猜想” 7.黑洞数 8.装箱问题 9.IP地址转换 10.龟兔赛跑 1.素数对猜想 题目详情: 让我们定义dn​为:dn​pn1​−pn​&#xff0…

测试用例设计之正交表法详解

正交实验法的由来 拉丁方名称的由来 古希腊是一个多民族的国家,国王在检阅臣民时要求每个方队中每行有一个民族代表,每列也要有一个民族的代表。 数学家在设计方阵时,以每一个拉丁字母表示一个民族,所以设计的方阵称为拉丁方。 什么是n阶拉丁方? 用n个不同的拉丁字母排成一…

2018年华为数通技术大赛复赛拓扑题

正在准备华为杯的竞赛,期间的训练需要用心练习,希望我的这篇文章能对跟我一样的小伙伴们起到作用。在比赛之前,我们的目的都不是配通这个网络,而是在一次次错误中总结经验,你会受益匪浅!不多说,…

华为网络技术比赛-云平台课件笔记

** (一)5 G ** 在这这张图片很重要啊!!!! 5G的子载波带宽是不固定的!!!!!! 注意: Massive MIMO (1&a…

2022年金砖国家技能大赛-IT网络系统管理样题

2022年金砖国家技能大赛-IT网络系统管理(完整版) 1-网络构建部分 任务二:实现集团、北京数据中心、分公司、办事处的网络互联互通。 拓扑图: 2-项目实施: 一、完成模拟器组网,按照拓扑图搭建及命令,过程略。 二、完成交换部分配置: IDC2北京区域交换机 sysname…

2016年华为网络技术精英大赛复赛试题

2016年华为网络技术精英大赛复赛试题 【转载请注明出处】http://blog.csdn.net/guyuealian/article/details/51470839 1 实验考试说明 本次实验考试满分100分。 考生需要在除给定文档外没有任何协助的情况下,在150分钟内完成本考试的所有内容。 实验中请根据题干…

计算机网络应用技能大赛试题答案,《计算机网络应用》技能大赛模拟题及答案.doc...

《计算机网络应用》技能大赛模拟题及答案.doc 计算机网络应用技能大赛模拟题网络设备配置要求 拓扑编址设备名称接口地址PC1IP192.168.10.100/24PC2IP192.168.20.100/24PC3IP192.168.30.100/24PC4IP10.11.12.100/24S3760VLAN10192.168.10.1/24S3760VLAN20192.168.20.1/24S3760V…

16华为网络技术大赛模拟题答案详解

一、判断题 (1)VLSM的作用是:在有类的IP地址基础上,从主机位部分划分出相应的位数做为网络位。但是在路由器上部署时,需要路由协议的支持。 【解释】对,VLSMVariable Length Subnet Mask,可变长子网掩码 (2)有效的沟通…

2018华为网络技术大赛课程-服务器操作系统基础原理自测题答案

这是2018华为网络技术大赛课程-服务器操作系统基础原理自测题答案。 耶~祝大家满分!

2019华为网络技术大赛模拟题

2019我的模拟题: 1.(判断题)小型机通常采用RISC和unix操作系统。 正确答案: A 你的答案: A (正确) 2.单选题)磁盘接口的类型包括:1、SAS;2、SATA;3、NL-SAS;4、SCSI;5、…

一路走来之“华为网络技术大赛”(新含2018年资料)

2018年的网络大赛资料——学妹整理的,共347.9M,可加技术交流群下载! 博客链接: http://codeshold.me/2017/05/ntec.html 参赛历程 在参加华为软件精英挑战赛的校园宣讲时,一位HR姐姐告诉我“你可以多报几个比赛啊?”…

2018华为网络技术大赛复赛

华为网络技术大赛复赛落下帷幕,考完上机ensp配置我已经基本知道结果了,题目真的不难,但是真的需要用心准备,包括前期学习的准备,也包括考试前半个小时准备,我就是那个前期花了很多时间,最后在考…

华为网络技术大赛模拟题答案详解

华为网络技术大赛模拟题答案详解 【尊重 原创,转载请注明出处 】http://blog.csdn.net/guyuealian/article/details/51354514 一、判断题 (1)VLSM的作用是:在有类的IP地址基础上,从主机位部分划分出相应的位数做为网络位。但是在路由器上部…