领域泛化

领域泛化(Domain Generalization, DG)是迁移学习中更具挑战性的一个分支。与领域自适应(Domain Adaptation)不同,领域泛化要求模型在训练时完全无法访问目标域的任何数据(包括无标注数据),但仍然需要在未见过的目标域上取得良好的泛化性能。

核心问题

在实际部署中,训练环境和测试环境往往存在分布差异。例如,在一个特定光照条件下拍摄的照片上训练的分类器,可能在其他光照条件下表现不佳。领域自适应虽然可以缓解这一问题,但它需要目标域的(至少是无标注)数据,这在许多实际场景中并不可行。领域泛化的目标是在不接触任何目标域数据的前提下,训练出能够鲁棒地泛化到各种未知目标域的模型。

方法分类

领域泛化的主流方法可以分为以下几类:

1. 数据增强(Data Augmentation)

通过对源域数据进行多样化的增强变换,模拟可能的领域变化,提高模型对不同领域特征的鲁棒性。典型方法包括:

  • 传统的数据增强:旋转、缩放、颜色抖动、裁剪等
  • 对抗性数据增强:生成具有挑战性的领域偏移样本
  • 混合增强:通过插值混合不同领域样本的特征或标签

2. 学习领域不变特征(Domain-Invariant Feature Learning)

通过特定的训练策略,使模型学习到的特征表示在不同领域之间保持一致,从而降低领域偏移的影响。常用技术包括:

  • 最大均值差异(MMD)最小化:最小化不同领域特征分布之间的 MMD 距离
  • 域对抗训练:通过对抗学习去除特征中的领域相关信息
  • 协方差对齐:对齐不同领域特征的统计矩(均值、方差)

3. 元学习(Meta-Learning)

将领域泛化建模为一个元学习问题:在模拟的领域偏移条件下训练模型,使其学会快速适应新的数据分布。典型方法如 MLDG(Meta-Learning for Domain Generalization),将源域划分为元训练集和元测试集,模拟领域偏移以优化模型的泛化能力。

4. 集成方法(Ensemble Methods)

训练多个在不同源域或不同初始化上训练的模型,在测试时集成它们的预测结果。由于不同模型倾向于在不同领域上表现出不同的优势,集成可以有效降低模型对特定领域特征的过拟合。

与领域自适应的区别

维度领域自适应领域泛化
目标域数据训练时可访问(至少无标注)训练时完全不访问
目标域数量通常一个或几个已知任意未知
适用场景目标域可预先确定部署环境不确定
难度相对较低相对较高

挑战

  • 分布偏移不可控:目标域的数据分布未知,模型无法针对性地进行调整。
  • 过拟合有限源域:可用的源域如果数量少或多样性不足,模型容易过拟合到源域特定的特征上。
  • 理论保证有限:在完全不访问目标域的情况下,很难为模型在任意目标域上的表现提供理论保障。
  • 评估难题:由于目标域未知,领域泛化方法的评估通常需要在多个不同的测试域上进行,实验设计较为复杂。

应用场景

  • 通用计算机视觉模型:在多种拍摄条件、设备、环境下都能稳定工作的视觉模型。
  • 跨场景医疗诊断:在不同医院、不同设备采集的医疗影像上都能准确诊断的模型。
  • 自动驾驶感知:在不同天气、光照、地理环境中都能可靠运行的感知系统。
  • 鲁棒语音识别:在不同噪声环境、口音、录制设备上都能准确识别的语音系统。

链接到