域泛化(Domain Generalization)

仓库:https://github.com/jindongwang/transferlearning
综述:https://arxiv.org/pdf/2103.03097、https://arxiv.org/pdf/2103.02503


1.问题及解决方案

出发点:需要解决domain shift、out-of-distribution (OOD)问题
解决方案:绕过OOD数据问题的一个简单解决方案是从目标域收集一些数据,以适应源域训练的模型。缺点是难以收集目标域数据(在交通场景语义分割中,在所有可能的天气条件下收集捕获所有不同场景的数据是不可行的)。为了克服域偏移问题以及缺乏目标数据,引入了域泛化(DG)。具体而言,DG的目标是使用来自单个或多个相关但不同的源域的数据来学习模型,使模型能够很好地推广到任何OOD目标域。

2.Domain Generalization

域泛化 (Domain Generalization, DG) 它研究的问题是从若干个具有不同数据分布的数据集(领域)中学习一个泛化能力强的模型,以便在 未知 (Unseen) 的测试集上取得较好的效果。包含了很多方法比如:domain alignment, meta-learning, data augmentation, or ensemble learning

域泛化问题与域自适应 (Domain Adaptation,DA)最大的不同:DA在训练中,源域和目标域数据均能访问(无监督DA中则只有无标记的目标域数据);而在DG问题中,我们只能访问若干个用于训练的源域数据,测试数据是不能访问的。毫无疑问,DG是比DA更具有挑战性和实用性的场景:毕竟我们都喜欢“一次训练、到处应用”的足够泛化的机器学习模型。

域泛化与迁移学习的区别在于是否使用了目标数据。在TL中,新的下游任务的模型微调需要目标数据,而在DG中,我们假设无法访问目标数据,因此更多地关注模型泛化。

在这里插入图片描述

2.1 数据集

VLCS和Office-31是两个在迁移学习和领域泛化任务中常用的数据集,前者主要是视角与环境的
VLCS数据集包含Pascal VOC 2007(V)、LabelMe(L)、Caltech 101(C)和SUN09(S)。Office-31数据集包含了来自三个不同领域的图像数据,这三个领域分别是:Amazon(在线电商图片)、Webcam(网络摄像头拍摄的低解析度图片)和DSLR(单反相机拍摄的高解析度图片)

在这里插入图片描述

2.2 Evaluation

DG算法的评估通常遵循leave-one- domain-out的规则:给定一个包含至少两个不同域的数据集,其中一个或多个域被用作模型训练的源域,而其余域被视为目标域;模型选择包括三种方法:Training-domain validation,Leave-one-domain-out validation,Test-domain validation

2.3 Related Topics

如表2所示,Transfer Learning TL和DG之间的关键区别在于是否使用了目标数据。在TL中,新的下游任务的模型微调需要目标数据,而在DG中,我们假设无法访问目标数据,因此更多地关注模型泛化。

Zero-Shot Learning (ZSL),为了识别ZSL中看不见的类,一种常见的做法是学习输入图像空间和属性空间之间的映射[148],因为标签空间在训练数据和测试数据之间是不相交的。
在这里插入图片描述

3.方法调研

Domain Alignment:大多数现有的DG方法属于域对齐,其中的中心思想是最小化源域之间的差异,以学习域不变表示。
Data Augmentation:尽管在学习过程中使用图像转换不需要域标签,但转换的选择通常是特定于问题的。

在这里插入图片描述

### 域泛化的定义及其重要性 域泛化Domain Generalization, DG)是一种旨在使机器学习模型能够推广到未见过的数据分布的技术。与传统的监督学习不同,DG的目标是在训练阶段仅利用来自多个已知源域的数据来构建模型,从而使该模型能够在目标域上表现良好,即使目标域从未被观察过[^1]。 为了实现这一目标,研究人员通常会采用一些特定的方法和技术策略。这些技术可以大致分为两大类:基于表示学习的方法和基于不变性的方法。前者通过提取更通用的特征表示来减少对具体数据分布的依赖;后者则试图找到跨域共享的不变特性作为建模的基础[^2]。 ### 实现域泛化的常见方法 #### 1. **基于表示学习的方法** 这种方法的核心思想是设计一种机制使得学到的特征尽可能独立于具体的领域属性。例如,在某些工作中提出了对抗网络架构,其中编码器负责生成特征映射,判别器尝试区分不同的源域。通过最小最大优化过程,可以使编码后的特征变得难以辨别所属的具体域,从而提高其可移植性和普适性[^3]。 ```python import torch.nn as nn class DomainGeneralizationModel(nn.Module): def __init__(self): super(DomainGeneralizationModel, self).__init__() self.feature_extractor = nn.Sequential( nn.Linear(784, 512), nn.ReLU(), nn.Dropout(p=0.5) ) def forward(self, x): features = self.feature_extractor(x) return features ``` 上述代码片段展示了一个简单的神经网络结构,用于从输入数据中提取鲁棒特征。这种类型的模型可以通过进一步调整损失函数或者引入额外组件(比如对抗模块),增强其应对未知环境的能力。 #### 2. **基于因果推理或不变假设的方法** 另一种主流途径是从统计学角度出发寻找那些不受变化影响的因素——即所谓的“不变模式”。这类算法假定存在若干潜在变量决定了最终观测结果,并且无论在哪一环境下这些决定因素保持一致。因此如果能成功辨识并聚焦于此,则理论上可以获得更好的外推效果。 举个例子来说就是当面对图像分类任务时,颜色直方图可能随光照条件改变而波动较大,但物体边缘轮廓相对稳定得多。所以专注于捕捉形状信息而非单纯像素强度可能会带来更强健的表现。 --- ### 应用场景举例 - 生物医学工程方面,如脑电波分析项目里提到过的做法那样,先针对各类健康状况下的大脑活动记录建立初步认知框架之后再迁移到其他相似却有所区别的病例上去检验有效性; - 自动驾驶汽车感知系统的开发过程中也需要考虑到天气情况、地理位置等因素造成的视觉传感器获取画面质量下降等问题解决之道之一便是运用此类理论指导实践工作开展起来更加高效可靠。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jeremy_lf

你的鼓励是我的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值