喜欢此内容的⼈还喜欢
清华提出LogME,⽆需微调就能衡量预训练模型的下游任务表现!
以下⽂章来源于THUML ,作者游凯超
THUML
清华⼤学软件学院机器学习实验室,专注于迁移学习、深度学习、知识学习等基础理…
⽂ | 游凯超
源 | THUML
引⾔
在深度学习时代,神经⽹络的参数量越来越⼤,从头开始训练(train from scratch)的成本也越
来越⼤。幸运的是,在计算机视觉、⾃然语⾔处理等⼈⼯智能应⽤的主要领域,⼈们能够采⽤
迁移学习的预训练-微调范式来有效降低训练成本。迁移学习使得深度神经⽹络以预训练模型
的形式⾛进千家万户,不⽤上千块TPU,我们也能够使⽤BERT、EfficientNet等⼤型模型。
如今,对于深度学习框架来说,丰富的预训练模型库已经是标配了( 例如TensorFlow Hub,
Torchvision Models) 。在⼀些研究领域(⽐如2020年⾮常热⻔的⾃监督学习),研究成果最终
也是以预训练模型的⽅式呈现给社区。在深度学习社区⾥,⼀些热⻔领域已经积累了成百上千
个预训练模型。
⾯对众多预训练模型,我们在进⾏迁移时,该⽤哪⼀个好呢?这个重要问题很少有⼈研究,因
此⼈们⽬前只好使⽤⼀些简单粗暴的办法:
使⽤常⻅的预训练模型(例如ResNet50)
使⽤预训练指标(例如ImageNet准确率)⾼的模型
如果想要准确地选择最好的预训练模型,我们需要把每⼀个候选模型都做⼀遍微调。因为微调
涉及到模型训练,时间⾄少⼏个⼩时起步。有些预训练模型的微调还需要进⾏超参数搜索,想
要决定⼀个预训练模型的迁移效果就需要将近50个⼩时!
针对这⼀问题,我们进⾏了深⼊探究,提出了⼀种名为LogME的⽅法。它能极⼤地加速预训练
模型选择的过程,将衡量单个预训练模型的时间从50个⼩时减少到⼀分钟,疯狂提速三千倍!
⽬前该论⽂已被ICML2021接受。
论⽂标题:
LogME: Practical Assessment of Pre-trained Models for Transfer Learning
论⽂链接:
https://arxiv.org/abs/2102.11005
GitHub链接:
https://github.com/thuml/LogME
问题描述
预训练模型选择问题,就是针对⽤户给定的数据集,从预训练模型库中选择⼀个最适合的预训
练模型⽤于迁移学习。其流程可以简单概括为下图,核⼼就是要对每⼀个预训练模型进⾏迁移
性评估(Transferability Assessment),简单来说就是为每个模型打分,然后选择出打分最⾼
的预训练模型。
▲预训练模型选择问题
最直接的打分⽅法,就是将预训练模型在给定数据集上进⾏调参、微调,将最终的准确率或者
其它衡量指标作为预训练模型的分数。我们将这种⽅法称为ground-truth⽅法,它的选择效果
⽆疑是最好的,总是能选出最合适的预训练模型。然⽽,它的时间开销太⼤(每个预训练模型
需要50⼩时),因此⽆法实⽤。
⼀个好的打分标准,需要在保持与ground-truth打分的⾼度相关性的同时,尽可能降低时间开
销,才能满⾜实际使⽤的要求。除了ground-truth⽅法之外,⽬前还有两种打分⽅法(LEEP和
NCE),但是它们的使⽤范围⾮常有限,只能⽤于有监督预训练模型迁移到分类任务的场景,
如下表所示,⽽我们提出的LogME则能够胜任⼏乎所有常⻅的场景,覆盖了视觉、NLP、分
类、回归、有监督预训练模型、⽆监督预训练模型等⽅向。
▲应⽤场景⽐较,LogME能胜任⼏乎所有常⻅场景
LogME⽅法
LogME的优越性能来⾃于以下三个⽅⾯:(1)⽆须梯度计算;(2)⽆须超参数调优;(3)算法实现优
化。下⾯围绕这三个⽅⾯对LogME进⾏具体介绍。
为了加速预训练模型选择,我们仅将预训练模型视作特征提取器,避免更新预训练模型。这
样,只需要将预训练模型在给定数据集上前向传播⼀遍,就可以得到特征 和标
注 。于是,这个问题就转化成了如何衡量特征和标注之间的关系,也就是说,这些特征
能够多⼤程度上⽤于预测这些标注。
为此,我们采⽤⼀般性的统计⽅法,⽤概率密度 来衡量特征与标注的关系。考虑到微
调⼀般就是在预训练模型的特征提取层之上再加⼀个线性层,所以我们⽤⼀个线性层来建模特
征与标注的关系。
说到这⾥,很多⼈会想到,⼀种直观的⽅法是通过Logistic Regression 或者Linear
Regression得到最优权重 ,然后使⽤似然函数 作为打分标准。但是这样容易导
致过拟合问题,⽽且这些⽅法也有很多超参数需要选择,这使得它们的时间开销很⼤且效果不
好。
我们选⽤的是统计学中的证据(evidence,也叫marginalized likelihood)来衡量特征与标注的关
系。它不使⽤某个特定的 的值,⽽是使⽤的分布来得到边缘化似然的值
。它相当于取遍了所有可能的 值,能够更加准确地反映特征与
标注的关系,不会有过拟合的问题。其中, 与 分别由超参数 和 决定,但是它们
不需要grid search,可以通过最⼤化evidence来直接求解。于是,我们就得到了对数最⼤证
据(Log Maximum Evidence, 缩写LogME)标准来作为预训练模型选择的依据。具体数学细节
不在这⾥赘述,感兴趣的读者可以阅读底部的论⽂。算法的具体细节在下图中给出了。注意,
虽然LogME计算过程中将预训练模型 视作特征提取器,但是LogME可以⽤于衡量 被⽤于迁
移学习(微调)的性能。
▲LogME算法具体流程
值得⼀提的是,LogME算法涉及到很多矩阵分解、求逆、相乘操作,因此⼀不⼩⼼就容易使得
算法的复杂度很⾼(例如上图第9⾏,粗糙的实现⽅式)。我们在深⼊研究该算法后发现,很多
矩阵运算的开销可以通过巧妙的计算优化⼿段⼤⼤降低,因此将计算流程优化为上图第10⾏,
整体的计算复杂度降低了⼀个阶,从四次⽅降低为三次⽅(⻅下表),使得该算法在数秒内就能
处理常⻅情况。
▲优化前后复杂度对⽐,n是数据量,D是特征维度,K是类别数⽬
实验
在实验部分,我们⽤合成数据、真实数据等多种⽅式⽅式,测试了LogME在17个数据集、14
个预训练模型上的效果,LogME在这么多数据集、预训练模型上都表现得很好,展现了它优异
的性能。
合成数据
⾸先让我们看看,LogME给出的打分标准与⼈的主观感觉是否⼀致。我们为分类问题和回归问
题分别设计了⼀个toy实验,使⽤⽣成数据来测量LogME的值。从下图中可以看出,不管是分
类任务还是回归任务,当特征质量越来越差时,LogME的值也越来越低,说明LogME可以很
好地衡量特征与标注的关系,从⽽作为预训练模型选择的标准。
▲特征质量越来越差时,LogME也越来越低。
接下来,我们⽤LogME来进⾏预训练模型选择。我们使⽤若⼲个常⽤预训练模型,通过耗时的
微调过程得到它们的迁移性指标,然后衡量LogME与迁移性指标的相关性。相关性指标 为
加权肯达尔系数,它的取值范围是 。相关系数为 意味着如果LogME认为预训练模型
⽐ 好,那么确实 ⽐ 好的概率是 。也就是说, 越⼤越好。
有监督预训练模型迁移到分类数据集
我们将10个常⽤预训练模型迁移到9个常⻅分类数据集中,发现LogME与微调准确率有很⾼的
相关性(⻅下图),显著优于之前的LEEP和NCE⽅法。在这⼏个数据集中,LogME的相关系数
⾄少有0.5,⼤部分情况下有0.7或者0.8,也就意味着使⽤LogME进⾏预训练模型选择的准
确率⾼达85%或者90%。
▲有监督预训练模型迁移到分类数据集
值得注意的是,之前的LEEP和NCE⽅法只能⽤于这⼀种场景。接下来的实验(回归任务、⽆监
督预训练模型、NLP模型及任务),只有LogME能处理。
有监督预训练模型迁移到回归数据集
我们也做了回归任务相关的实验,可以看到LogME与MSE有明显的负相关性,⽽MSE是越低
越好,LogME是越⼤越好,结果符合预期。
▲有监督预训练模型迁移到回归数据集
⽆监督预训练模型
在2020年,视觉领域的重要进展之⼀就是⽆监督预训练模型。因此我们也尝试了使⽤LogME
来判断⽆监督预训练模型的质量。从下图的结果来看,不论是分类任务(Aircraft)还是回归任务
(dSprites),LogME都能准确衡量⽆监督预训练模型的质量。
▲使⽤LogME来衡量⽆监督预训练模型
⾃然语⾔处理任务
LogME并不局限于视觉模型与任务,我们还测试了它对NLP预训练模型的评价能⼒。可以看
到,在五个任务上,LogME完美地预测了四个预训练模型的表现的相对⼤⼩,在另外两个任务
上的表现也不错。
![LogME衡量NLP预训练模型]
时间加速
LogME⽅法不仅效果好,更难得的是它所需要的时间⾮常短,可以快速评价预训练模型。如果
将直接微调的时间作为基准,LogME只需要0.31‰的时间(注意不是百分号,是千分号),也就
是说加速了3000倍!⽽之前的⽅法如LEEP和NCE,虽然耗时更少,但是效果很差,适⽤范围
也很有限,完全不如我们的LogME⽅法。
▲各种⽅法耗时⽐较,LogME加速3000倍
值得注意的是,像LogME这种根据概率公式计算的⽅法,⼀般效果更好,但是耗时也更⾼。事
实上,如果我们采⽤简单粗暴的实现,评估⼀个模型就需要⼋百多秒。正是有了精⼼优化的版
本,我们才能够既有概率⽅法的优越效果,⼜有简单⾼效的实现。
展望
因为它的准确、快速、实⽤性,我们相信LogME除了能够⽤作预训练模型选择之外,还能够在
其它领域有所作为。例如,在⽆监督预训练中,评估⼀次预训练模型就需要在整个ImageNet
数据集上进⾏linear protocol evaluation,整个过程需要⼏个⼩时。若采⽤LogME,则只需
要⼀分钟不到,因此可以在训练过程中将LogME作为early stopping的准则。
后台回复关键词【⼊群】
加⼊卖萌屋NLP/IR/Rec与求职讨论群
后台回复关键词【顶会】
获取ACL、CIKM等各⼤顶会论⽂集!
若被制裁,中国AI会雪崩吗?
夕⼩瑶的卖萌屋
微信扫⼀扫
关注该公众号
2021-08-06 16: 58夕⼩瑶的卖萌屋