参数高效微调(PEFT)技术,如低秩适应(LoRA),可以有效地将大型预训练基础模型适应到下游任务,只使用原始可训练权重的很小一部分(0.1%-10%)。PEFT一个未被深入探索的问题是,在无监督标签的情况下扩展预训练阶段; 也就是说,作者能否通过在这个新领域上进行有效的自监督预训练,来适应一个预训练的基础模型?在这项工作中,作者介绍了ExPLoRA,这是一种在领域偏移下显著提高预训练视觉 Transformer (ViTs)迁移学习效果的高效技术。 在大型自然图像数据集(如DinoV2或MAE)上使用预训练权重初始化ViT,ExPLoRA在新领域上继续无监督的预训练目标。在这个扩展的预训练阶段,ExPLoRA只解冻1-2个预训练的ViT块和所有归一化层,然后用LoRA调整所有其他层。最后,作者仅用LoRA在这个新领域上进行监督学习的微调。 作者的实验表明,在卫星图像上取得了最先进的结果,甚至超过了完全预训练和微调的ViTs。使用DinoV2训练目标,作者在下游任务的线性检测top-1准确度上实现了高达7%的改进,同时使用的参数数量不到先前完全调整的最先进方法的10%。 作者的消融研究确认了作者的方法在包括PEFT和仅解冻更多 Transformer 块在内的其他 Baseline 上是有效的。
1 Introduction
预训练基础模型[1]用于自然语言和自然图像在历史上一直是计算密集型的,通常仅限于拥有大量资源的组织。然而,近期参数高效微调(PEFT)技术的进步,包括低秩适应(LoRA)等,激发了极大的兴趣。这些方法旨在基于这样的假设:对预训练模型的必要权重更新具有“低内在秩”,或者通过利用矩阵结构可以实现有效更新,使用模型可训练权重的很小一部分(0.1%-10%)将基础模型适应于下游监督学习任务。
在本文中,作者关注于如MAE或DinoV2[7; 6]这样的视觉基础模型,这些模型在大规模自然图像数据集上进行训练,并通过线性检测或KNN分类测量其在下游任务上的鲁棒泛化能力。尽管在开发用于自然图像的此类模型上投入了大量资源,但它们在应用于其他视觉数据域(例如,医学或遥感图像)时表现不佳。例如,在卫星图像分类任务上,将预训练于自然图像的模型进行微调,不如在卫星图像上预训练的模型有效。为了弥补这一差距,现行方法在新的域上投入类似规模的计算资源来预训练基础模型,这些方法受到为自然图像开发的技术的启发。
在这项工作中,作者挑战了这一范式(图1),询问在每个新域上从零开始预训练是否真的必要,因为这样做既昂贵(在计算和时间上),又阻止了从自然图像的知识转移。相反,作者希望更高效、更有效地利用自然图像视觉基础模型中编码的大量语义信息,将它们适应到新域。作者提出的解决方案通过自我监督学习进行域适应,采用PEFT技术来解决这些问题。
作者引入了ExPLoRA,它通过使用参数高效技术扩展预训练阶段,将视觉基础模型泛化到新域。作者用来自大型自然图像数据集(如MAE或DinoV2)的预训练权重初始化视觉 Transformer (ViT)[28]。选择性地解冻最后或第一和最后变换块,用LoRA调整剩余权重,并在新域上继续无监督预训练。随后在新域上使用线性检测或LoRA进行监督学习的微调,在训练不到原始权重的5%-10%的情况下,超过了先前的最优(SoTA)方法。例如,在卫星图像上,作者在线性检测top-1准确率上展示了超过7%的改进,甚至超过了之前的SoTA完全预训练和微调技术。作者在RGB、时序和多光谱卫星图像上进行了广泛的研究,要么与之前使用从零开始的全秩预训练的方法持平,要么超越它们。作者的消融研究证实了作者的方法优于其他替代方案。作者还证明了在WILDS[29]基准上的野生动物图像和医学图像等不同域上的泛化能力。作者的贡献包括:
- 引入ExPLoRA,这是一种新颖的参数高效方法,它通过在目标域上扩展无监督预训练,使用原始ViT权重的很小一部分,实现了最优的监督学习性能。
- 对卫星图像进行了全面案例研究,展示了线性检测top-1准确率的改进,并在fMoW等数据集上超过了现有技术。作者还展示了在野生动物和医学图像等其他域上的泛化能力。
2 Related Work
视觉基础模型视觉基础模型(VFM),如DinoV2或 Mask 自动编码器(MAE),在诸如分类或语义分割等下游任务上已经显示出卓越的性能[1, 6, 7]。然而,也出现了越来越多的特定领域VFM,如SatMAE,这是为了处理时间序列或多光谱卫星图像[22]而设计的。这些模型包含数亿个参数,对下游任务的高效适配已经成为研究的关键焦点。
PeftPEFT方法已经广泛被采用,用于高效地将大型模型适配到各种下游任务,通过只更新部分参数来减轻完全模型调优的禁止性成本。例如,LoRA学习对冻结权重的低秩权重更新,而其他方法修改每层的可训练参数的频率或数量。Lialin等人引入了LoRA通过多个低秩矩阵之和进行预训练,但需要一个“热启动”的全参数调优。一些方法使用乘法正交权重更新冻结权重,有效保持预训练知识。尽管作者的ExPLoRA方法可以配置LoRA微调用于下游任务,但它补充了现有的PEFT方法,而不是取代它们,特别是在无监督领域适配的情况下。
领域适配领域适配的核心问题是处理训练和测试数据之间的分布偏移。领域适配方法从几个角度探索了这个问题[34]。基于差异的方法使用差异度量[35, 36, 37]最小化源领域和目标领域特征分布之间的差异,用于领域损失。对抗性方法旨在放大领域混淆,同时严格训练以识别和区分不同领域[38, 39, 40]。组DRO旨在在领域适配的背景下最小化最坏情况领域的损失,特别是针对子群体偏移,在这种情况下数据分布不同,但可能有一些重叠[41, 42]。
3 Background
Mask 自编码器(MAE)[7]是一种有效的用于ViTs的自监督学习技术。它在一个图像(高度、宽度、通道)上利用非对称的编码器-解码器架构,在这些图像块被ViT编码器处理之前先对其进行 Mask 。然后,使用较小的ViT解码器重建可见的嵌入块,训练目标是对可见像素的均方误差损失。MAE已经在包括卫星图像[22]、视频[43]和其他模态[44, 45]在内的各个领域得到了广泛应用。然而,将ViTs预训练为MAEs通常需要后续对下游任务进行完全微调,这使得它们计算量很大。
DinoV2DinoV2 [6] 是一种用于ViTs的健壮自监督学习技术。与MAE不同,DinoV2特征已经显示出很强的零样本性能,即使使用冻结的ViT Backbone 网络也能适应下游任务。在预训练期间,DinoV2保持了两个ViT编码器的副本:一个是可训练的学生(student)版本,另一个是教师(teacher)版本,通过学生参数的指数移动平均进行更新。训练目标结合了来自Dino [11]的全局、图像级损失和来自iBOT [8]的基于块的损失。包括KoLeo正则化[46]和Sinkhorn-Knopp中心化[10]在内的各种技术得到了应用,具体描述见[6]。
LoRALow-rank adaptation(LoRA)[14]假设将一组无监督预训练权重更新为有监督微调权重的过程存在于一个低秩子空间中,
其中是最终、特定任务的微调权重,是预训练权重,是将预训练权重转换为微调权重所需的权重更新。关键在于,其中和。也就是说,和构成了的低秩分解,其中秩。
4 Problem Setup
考虑一组图像域 以及每个域 的关联数据分布 ,其中图像 。这里 , 和 分别表示每个域图像的通道、高度和宽度维度。设 是代表预训练和微调数据分布的域集合 (例如:互联网规模的自然图像数据)和 (例如:卫星数据),分别。接下来,每个域 的微调联合分布是 ,其中 是监督学习的标签。
作者假设有以下访问权限:(i) 预训练权重 ,由预训练域集合 索引,这些权重已经通过无监督学习获得 (ii) 来自新域 的 未标注 图像的样本,从分布 中抽取 (iii) 一组目标数据集 ,从新域 的分布 中抽取。因此,作者希望以参数高效的方式为每个监督学习数据集学习最优权重 ,同时利用存储在 中的知识。
LoRA 以以下方式解决这个问题:
作者的目标是:作者是否仍然可以利用中编码的丰富语义信息,并以参数高效的方式学习新领域的?具体来说,作者希望将分解如下:
其中,是来自原始领域的数据分布的预训练权重,是捕获新领域和原始领域差异的权重更新,而是针对每个数据集的个性化更新。这种方法可以避免为每个新领域从头开始预训练的昂贵计算成本。
其中 是为精细调整域集合 学习的额外更新矩阵。作者对 的关键要求是:(i) 必须通过在 上的无监督预训练来学习 (ii) 只需学习构成 的 参数的一小部分。
请注意,成功学习 将消除否则必需用于完全训练新领域的基础模型的巨大计算资源。重要的是,作者强调以 无监督 的方式学习 ,以便生成的模型 保持预训练基础模型的好处,例如特征提取,有效的线性检测,以及对进一步下游任务的泛化。
5 Method
为了学习 ,作者提出了ExPLoRA(即扩展预训练与LoRA)。令 表示所有L个ViT块(或层)的集合。对于ViT-Large(ViT-L),。ExPLoRA方法如下:
图2:ExPLoRA概述。L个ViT块的集合 被划分为两个集合:,表示其参数完全解冻的块,以及,表示经过LoRA调整的块(仅限于注意力矩阵)。请注意,所有块中的规范化层始终是解冻的。
- 使用来自大型预训练数据集(例如:DinoV2或MAE权重)的初始化ViT。
- 解冻集合 中所有块的参数。通常, 或 。
- 对于所有其他块 ,冻结所有参数并在注意力层的和权重上使用秩为的LoRA。同时解冻这些块的规范化层。
- 在新领域的 未标注 图像 上训练得到的模型,使用与相同的无监督目标(例如:DinoV2或MAE训练目标)。在符号表示上,D-ExPLoRA-[L]- 将表示一个用DinoV2权重初始化的ViT(相对于使用MAE权重的M),其中 ,并且在 中每个注意力层的矩阵上使用LoRA秩32。这样,只需要ViT原始参数的5-10%,并且作者展示了它学习到的无监督表示可以与甚至超过直接从零开始通过完全预训练学习的表现。
针对DinoV2的ExPLoRA在作者的实验中,作者使用没有寄存器的DinoV2 ViT-L模型作为。作者解冻了ViT的第24块,并在所有其他块的每个注意力层的 Query 和价值矩阵上使用LoRA。作者还解冻了网络中的规范化层(这些层需要的参数非常少)。作者完全训练了Dino、iBOT和Koleo的线性头,没有任何冻结的参数。
针对MAE的ExPLoRA作者使用预训练权重初始化MAE编码器和解码器。作者只解冻了ViT编码器的最后一个块,并用LoRA调整所有其他块(包括解码器的所有块)的矩阵。
对于在[22]中引入的多光谱MAE,作者需要解冻每组通道的路径嵌入层(因为这些不能从初始化,因为只考虑3通道RGB输入)。作者发现,在使用ExPLoRA时,解冻块1和L是成功实现领域转移的必要条件。
微调在微调DinoV2时,作者丢弃了用于预训练损失组件的线性头(第3节),并加载所有其他模型权重。对于MAE,作者也丢弃了解码器权重。然后作者初始化一个用于分类或分割的线性头或解码器,它们都是完全可训练的。冻结所有ViT编码器权重后,作者在每个注意力层的矩阵上使用LoRA-。作者发现,在微调时,drop-path增强[48]特别有用,对于ViT-L模型,作者使用值为0.2。
6 Experiments
作者的实验结果首先包括对卫星图像的一个案例研究(第6.1节),并在第6.1.2节中进行了一项消融研究。然后作者在第6.1.3节、6.1.4节和6.2节进一步评估了下游任务。训练细节包括超参数和计算配置在附录B中提及。作者的结果在竞争激烈的fMoW-RGB基准测试上达到了新的SoTA top 1准确度79.1%(1.3%),在使用6%的ViT编码器参数的同时,超过了完全预训练和微调的模型。作者在同一数据集上的线性检测准确度也提高了7.3%。在其他的卫星数据集上,作者与完全预训练的前沿方法持平,并且在WiLDS基准数据集上也展示了有竞争力的性能。
Case Study: Satellite Imagery
作者首先研究卫星图像,这主要是因为越来越多的研究通过从零开始预训练来为卫星图像开发基础模型[22, 23, 24, 25],并且它们与自然图像相比有显著的领域变化。因此,作者将研究分为几个部分:(i)在RGB卫星图像上评估ExPLoRA,包括线性检测和PEFT微调(ii)展示ExPLoRA处理从自然图像到多光谱和时间序列卫星输入的领域变化的能力,这是一个更具挑战性的转换。(iii)评估在下游卫星数据集上使用ExPLoRA进行预训练的模型。
6.1.1 RGB Satellite Images
数据集作者首先考虑了配对有62个分类标签的高分辨率卫星图像的功能性世界地图(fMoW)数据集[49]。这个数据集被用作多个卫星图像基础模型的基准。
作者在表1中将作者的结果与先前的全预训练SoTA基础模型以及应用在MAE和/或DinoV2权重预训练的ViTs上的PEFT技术进行了比较。作者的结果显示,D-ExPLoRA-[L]-在fMoW-RGB平均准确度方面达到79.15%,是SoTA水平。ExPLoRA在仅使用原始ViT编码器参数的6%的情况下,优于需要在fMoW上全预训练ViTs的技术。作者还注意到,在与drop-path正则化技术结合时,原始的LoRA配置优于其他PEFT技术。例如,作者发现BOFT与drop-path结合效果不佳,反而与自定义的乘法性辍学技术配合效果最佳。作者在表1的每一行中包含了最佳超参数配置的结果。
使用作者性能最强的变体(即带有DinoV2的ExPLoRA),作者研究了在fMoW-RGB上与先前SoTA方法相比的线性检测性能,详见表2。线性检测代表冻结 Backbone 网络,然后在冻结的 Backbone 网络上训练一个线性头,这作为提取嵌入质量的一个理想指标。作者的结果显示,与先前SoTA方法相比,top 1平均准确度提高了超过7.3%,这表明ExPLoRA在不进行昂贵的从头开始预训练的情况下,为目标领域学习了健壮的无监督表示。重要的是,ExPLoRA还优于特定领域的先前SoTA解决方案(第1-4行),以及DinoV2,这表明通过利用在自然图像上进行预训练的知识,在目标领域成功进行了转移学习。
6.1.2 Ablation study
图3:线性检测准确度与训练迭代次数的关系,展示了即使在少数预训练更新中ExPLoRA的效率。
作者对fMoW-RGB的线性检测性能进行了一项消融研究(表3),以确定作者提出的配置是否表现最优。一个自然的问题是,性能的提升主要来自于解冻块,还是来自于对剩余ViT进行LoRA调整。作者通过在第一行(无LoRA)解冻块L,L-1,并与第6行的ExPLoRA-L-进行比较来研究这个问题。如所见,解冻额外的块几乎需要双倍的参数数量,但未能带来相同的性能提升。因此,简单地增加解冻块的数量可能会提高性能,但不会像ExPLoRA那样有效,并且会显著且急剧地降低参数效率。如图3所示,ExPLoRA还使得与解冻更多块(红色)相比,在更少的训练迭代中实现更快的收敛(蓝色)。
接下来,作者研究了在所有ViT层上使用高LoRA秩(即所有注意力机制和MLP矩阵,不仅仅是)是否有益。令人惊讶的是,这显著损害了学习(第3行)。实际上,这比仅在所有块的矩阵上使用LoRA-要差得多(第2行)。然而,第2行和第3行在参数效率上远低于ExPLoRA(第4-6行)。
选择也很重要。如第4行与倒数第二行比较所见,对于DinoV2目标,不如有效,在其他条件相同的情况下。作者还注意到,在ViT中冻结规范化层会导致准确度略有下降,如第5行所示。
最后,作者研究了LoRA秩对ExPLoRA的影响。将秩从8更改为32略有改进,但从32更改为64带来了更大的改进,仅相对增加了可训练参数的数量。这表明在预训练过程中,为了在新领域进行有效的学习,需要更高的秩。关于将解冻块与LoRA调整配对的有效性的一种假设是,对ViT Backbone 的 低秩更新"推动"来自的嵌入视觉标记序列变为表示的序列,这进而使解冻的ViT块能够有效压缩来自新领域的数据。
6.1.3 Multi-Spectral Satellite Images
数据集接下来,作者考虑在[22]中使用的大型Sentinel-2图像数据集fMoW-Sentinel。每张图像包含13个光谱波段,并与62个类别中的一个配对。
通过fMoW-Sentinel,作者旨在评估从自然图像到多光谱、低分辨率卫星图像的领域转移的可行性。与fMoW-RGB相比,这提出了一个重大挑战,因为中的任何自然图像数据集都不包括除了可见光RGB波段之外的传感器信息。作者利用[22]中引入的组通道ViT-L SatMAE模型,使用自然图像领域的MAE自监督权重进行初始化。由于 Patch 嵌入层与MAE的不同,作者在ExPLoRA预训练期间解冻并从头开始训练它们,从而使得参数数量增加最小。
表4:在fMoW-Sentinel验证集上的结果。“预训练#参数”和“微调#参数”指的是在新领域,即多光谱卫星图像上所需的训练参数。“MAE-[1, 2, L-1, L]”指的是使用MAE权重初始化组通道SatMAE模型,解冻ViT-L的1、2、23、24块,然后在fMoW-Sentinel上继续预训练。
从表4中,作者观察到了从自然图像到多光谱卫星图像的领域转移的挑战,如第5节所述。即使完全从MAE权重进行微调,准确率也会下降近10%(第2行)。仅从MAE权重进行LoRA调整的性能甚至更差(第4行)。通过初始化MAE权重并在预训练期间只解冻4个转换块(第6行)进行消融实验,不足以弥合领域差距。值得注意的是,使用ExPLoRA,解冻第一和最后一个转换块可以获得出人意料的好结果,甚至超过了从头开始完全预训练(使用LoRA进行微调)。
这些实验不仅展示了“多光谱卫星图像的灵活性”,还提供了对卫星图像更细致的理解。
fMoW-Temporal同样源自fMoW-RGB [49],每个输入是同一地点的最多3张时间分布的图像序列,并与62个类别之一配对。由于输入现在是时间序列,作者从[22]中初始化了时间MAE架构,并用MAE权重进行预训练,在数据集的训练图像(无标签)上用和LoRA秩32进行预训练。作者的LoRA调整后的模型随后在PEFT方面超越了领域特定的SatMAE(表5),证明了在少量预训练参数下的迁移学习成功,而时间SatMAE是在这个数据集上完全预训练并完全微调的。
EuroSAT该数据集包含27,000张13波段卫星图像,分为10个类别[50],来源于Sentinel-2。对于ExPLoRA,作者不在这个数据集的训练集上进行预训练,而是从表4第8行的预训练权重开始使用LoRA微调。作者展示了与DinoV2相比的改进性能,并且与在fMoW-Sentinel上完全预训练并在EuroSAT上完全微调的领域特定SatMAE的性能相匹配(表6)。这证明了作者的扩展预训练模型在更下游的数据集上的成功应用。
SpaceNet-v1这个数据集包含高分辨率的卫星图像,每张都配有建筑物的分割 Mask [51]。训练集和测试集分别由5000和1940张图像组成。对于ExPLoRA,作者在训练集上进行预训练。数据中有很大一部分是包含大量黑色区域的图像,表示没有有意义视觉信息的区域。考虑到这个限制和小数据集的大小,尚不清楚额外的预训练是否有效。作者发现,尽管如此,ExPLoRA与LoRA调整后的DinoV2模型相当,并且与完全预训练并完全微调的领域特定模型保持竞争力(表7)。
Camelyon17WILDS Camelyon17数据集包含有癌细胞组织和非癌细胞组织的图像,按标签和无标签分割组织。作者使用“train-unlabeled”分割对ExPLoRA进行预训练,并在标签分割的训练集上使用LoRA微调或线性检测。作者报告了二分类问题的准确性,并与使用 未标注 数据的WILDS排行榜上的条目进行比较。作者在表9中的结果显示,在克服领域差距方面,作者的性能优于领域特定方法和DinoV2。
iWildcam分类任务要求在给定一张图片的情况下识别出182种动物物种中的一种。作者在iWildcam分类任务的训练集上进行预训练,发现这比在额外的 未标注 集上进行预训练表现更好。在表10中,作者发现在使用LoRA- PEFT时,相比于DinoV2有所改进。令人惊讶的是,与DinoV2相比,ExPLoRA的线性检测性能有所下降,这表明可能由于较小的领域差距导致知识转移损失。
7 Conclusion and Discussion
在本文中,作者介绍了ExPLoRA,一种新颖的预训练策略,用于将针对自然图像预训练的ViT基础模型适应到其他视觉领域,如卫星图像或医疗数据。作者挑战了为每个新的视觉领域从零开始进行昂贵预训练的常见范式,提供了一种既参数高效又有效的知识迁移解决方案(甚至能超越特定领域的基础模型)。
作者希望ExPLoRA能够进一步使用基础模型在除自然图像之外的领域,而无需为预训练投入巨大的计算资源。
虽然有效,但ExPLoRA有许多方面值得进一步研究。解冻少量块的策略与PEFT技术(如LoRA)结合得非常好——作者希望未来的工作能更详细地研究背后的原因。
未解决的问题还包括,在预训练期间,是否有其他参数高效的技术可能更适合与ExPLoRA一起工作。进一步评估ExPLoRA在自然语言领域的价值是有益的,同时也应探讨是否可以完全取消解冻 Transformer 块。
参考
[1].ExPLoRA: Parameter-Efficient Extended Pre-Training to Adapt Vision Transformers under Domain Shifts.