趋近智
当将一个在源数据集(如ImageNet)上预训练的模型知识迁移到一个新的目标任务时,一个常见设想是基础数据分布相似。然而,在许多实际的计算机视觉应用中,此设想不成立。您的模型在部署时遇到的图像,可能在光照、摄像机角度、物体样式、背景杂乱甚至不同物体类别的出现频率上与训练数据显著不同。这种现象被称为域偏移或数据集偏移。
形式上,我们有一个数据分布为 Psource(X,Y) 的源域,以及一个数据分布为 Ptarget(X,Y) 的目标域,其中 X 表示输入数据(图像),Y 表示标签。域偏移发生于 Psource(X,Y)=Ptarget(X,Y) 的情况。忽略此偏移可能导致,当预训练模型即使在一些目标数据上进行了微调后,部署到目标环境时,其性能显著下降。域适应(DA)方法专门旨在减轻这种分布不匹配带来的不利影响。
域偏移并非单一的;它以不同方式表现,了解偏移类型可以指导适应策略的选择:
协变量偏移 (Covariate Shift): 这可能是计算机视觉中最常见的类型。在此,输入分布不同 (Psource(X)=Ptarget(X)),但输入与标签之间的条件关系保持不变 (Psource(Y∣X)=Ptarget(Y∣X))。设想将一个在白天清晰照片(源)上训练的模型,适应到雾气弥漫的夜间图像(目标)上。物体本身及其对应标签一致,但其视觉外观显著变化。摄像机传感器、光照条件或图像质量的差异常引起协变量偏移。
标签偏移(或先验概率偏移) (Label Shift (or Prior Probability Shift)): 在此情形中,边缘标签分布不同 (Psource(Y)=Ptarget(Y)),但给定标签的输入条件分布保持不变 (Psource(X∣Y)=Ptarget(X∣Y))。例如,一个在健康/患病扫描各占50%的数据集上训练的医学成像模型,可能部署在一个疾病患病率仅为5%的诊所。给定标签的健康或患病扫描的外观保持一致,但它们的相对频率变化。
概念漂移 (Concept Drift): 这是最具挑战性的偏移类型,其中输入与标签之间的关系本身发生变化 (Psource(Y∣X)=Ptarget(Y∣X))。这意味着类别的定义可能演变,或者同一输入在源域与目标域中可能映射到不同标签。例如,“现代汽车”的视觉定义在几十年间发生变化。标准域适应方法在面对显著概念漂移时常遇到困难,因为它们通常假设基础任务 (Y∣X) 是稳定的。
实际中,这些偏移常同时发生。域适应主要关注由协变量偏移主导的情形,有时处理标签偏移,同时假设核心任务保持稳定(概念漂移最少)。
域适应的核心目标是学习一个在目标域数据分布 Ptarget(X,Y) 上表现良好的模型 f。尤其值得说明的是,DA方法通常基于以下设想:我们能够获取源域的带标签数据 (Ds={(xis,yis)}i=1ns),但只有目标域的无标签数据 (Dt={xjt}j=1nt)。这种情形被称为无监督域适应(UDA),其非常实用,因为为每个潜在目标环境获取带标签数据通常过于昂贵或不切实际。
尽管有监督域适应(存在部分带标签目标数据)和半监督域适应(使用带标签和无标签目标数据)也存在,UDA应对的是在适应阶段本身没有目标标签时,更常见且更具挑战性的适应问题。
UDA方法通常通过鼓励模型学习特征来实现,这些特征不仅对源任务具有区分性,而且在源域和目标域之间不变。如果从源图像和目标图像中提取的特征在模型看来相似,那么在源特征上训练的分类器将更可能很好地泛化到目标特征。
这些方法明确尝试最小化由网络中间层计算得出的源特征与目标特征分布之间的统计距离度量。
最大均值差异 (MMD): MMD衡量可再生核希尔伯特空间 (RKHS) 中分布之间的距离。直观地说,如果源数据和目标数据的均值嵌入在此高维空间(由核函数 ϕ 诱导)中接近,则这些分布被认为是相似的。目的是添加一个损失项,最小化源特征 fθ(xs) 和目标特征 fθ(xt) 之间的平方MMD:
LMMD=∣∣ns1i=1∑nsϕ(fθ(xis))−nt1j=1∑ntϕ(fθ(xjt))∣∣H2此损失项促使特征提取器 fθ 生成根据MMD度量无法区分的分布。
相关性对齐 (CORAL): CORAL不使用核方法,而是旨在对齐源特征和目标特征分布的二阶统计量(协方差矩阵)。CORAL损失衡量源特征和目标特征的协方差矩阵之间差异的平方Frobenius范数:
LCORAL=4d21∣∣Cov(Fs)−Cov(Ft)∣∣F2其中 Fs 和 Ft 是源特征和目标特征(批量特征)的矩阵,d 是特征维度。最小化此损失促使特征提取器生成在不同域中具有相似协方差结构的特征。
受生成对抗网络(GANs)启发,这些方法使用域判别器网络来区分从源图像和目标图像中提取的特征。特征提取器网络随后被对抗性地训练以欺骗此判别器,从而学习到域不变特征。
域对抗神经网络 (DANN): DANN是一种常用的对抗性方法。它引入了一个连接到特征提取器的域分类器分支。此分类器被训练来预测输入特征的域标签(源=0,目标=1)。尤其值得注意的是,一个**梯度反转层(GRL)**被插入到特征提取器和域分类器之间。在反向传播过程中,GRL将梯度不变地传递给域分类器(使其学习区分域),但在将其传递给特征提取器之前反转梯度的符号。这种反转意味着特征提取器被更新以生成最大化域分类器误差的特征,从而有效地使特征在不同域之间无法区分。整个网络同时在源标签预测任务和对抗性域分类任务上进行训练。
域对抗神经网络(DANN)的架构。特征提取器通过梯度反转层试图欺骗域分类器来学习域不变特征,同时通过标签预测器学习正确分类源样本。
对抗性判别域适应 (ADDA): ADDA采取了略微不同的方法。它首先在源域上训练一个特征提取器。然后,它初始化一个独立的目标特征提取器(通常具有相同的架构),并将其与域判别器进行对抗性训练。目标提取器试图生成与源特征(由固定的源提取器生成)无法区分的特征,而判别器则试图区分它们。然后将源标签预测器应用于适应后的目标特征。
这些方法通常涉及向模型添加辅助重构任务(例如使用自编码器)。想法是,学习重构输入图像(无论是源还是目标)有助于学习捕获基本数据特性的特征,这可能对域偏移更具韧性。重构损失可以与基于差异或对抗性损失结合使用。
选择和应用DA方法需要仔细考量:
“域适应提供了一套方法,使预训练模型在数据分布变化的场景中更有效。通过解决源域和目标域之间的偏移,DA使我们能够弥合差距并提高对新的、未曾见过的环境的泛化能力,通常无需在目标域进行大量标注工作。理解这些方法对于部署计算机视觉系统很重要。”
这部分内容有帮助吗?
© 2026 ApX Machine Learning用心打造