摘要
大量未标注数据的涌现以及自监督学习(Self-Supervised Learning, SSL)技术的快速发展,使得SSL在众多迁移学习场景中成为首选方法。随着SSL方法的持续快速演进,实践中涌现出大量针对特定任务或领域训练的模型,这迫切需要一种能够有效预测新任务或新领域迁移性能的方法。目前,线性探测(linear probing)通常被用作此类性能估计器——即在冻结的特征提取器之上训练一个线性分类器。然而,本文指出线性探测存在一个显著缺陷:其性能与端到端微调(end-to-end finetuning)模型的实际表现相关性较弱,而后者往往是迁移学习的最终目标;在某些情况下,线性探测甚至会严重误判模型的潜在性能。为此,本文提出一种改进方案:通过解冻并联合微调批量归一化(batch normalization)层与分类头,构建一个显著更优的代理任务(proxy task)。在ResNet-50模型上,该方法仅需额外训练模型参数的0.16%,即可实现以下优势:(i)与端到端微调性能具有更强的相关性;(ii)在多样本(many-shot)和少样本(few-shot)学习场景中均优于传统线性探测;(iii)在某些情况下,其性能甚至超越线性探测和端到端微调,达到病理学数据集上的当前最优水平。最后,本文分析并讨论了批量归一化层微调对特征分布带来的变化,探讨其可能成为性能提升的关键原因。相关代码已开源,地址为:https://github.com/vpulab/bn_finetuning。