探索大规模预学习模型的极限!
三个要点
✔️ 通过大量实验调查大规模预学习模型的下游任务表现
✔️ 证明上游任务准确性的提高会导致下游任务准确性的饱和
✔️ 详细调查上述饱和现象
Exploring the Limits of Large Scale Pre-training
written by Samira Abnar, Mostafa Dehghani, Behnam Neyshabur, Hanie Sedghi
(Submitted on 5 Oct 2021)
Comments: ICLR2022
Subjects: Machine Learning (cs.LG); Artificial Intelligence (cs.AI); Computer Vision and Pattern Recognition (cs.CV); Machine Learning (stat.ML)
code:![]()
本文所使用的图片要么来自论文、介绍性幻灯片,要么是参考这些图片制作的。
介绍。
目前机器学习领域的政策往往是在上游任务(如ImageNet)中进行大规模的预训练,然后将模型适应于下游任务。然而,把预训练模型做大或提高上游任务的表现,是否一定会导致下游任务的表现更好?
在这篇文章中,我们在Vision Transformer、MLP-Mixer和ResNet上进行了4800多次大规模实验,参数范围从1000万到100亿,研究了模型缩放、超参数架构选择和下游之间的关系对任务表现之间的关系进行了详细的调查。
研究结果显示了与现有研究不同的有趣发现,如提高上游任务的表现会使下游任务的表现饱和。(本文已被ICLR 2022接受(焦点))。
实验装置
实验包括在一个有大量数据的上游任务中进行预训练,以及在一个有少量学习和微调的下游任务中进行性能评估。上游任务使用JFT-300M,由303M图像和18k类组成,或ImageNet21K,由14M图像和21k类组成。下游的任务如下。
关于培训的更多细节,见原始文件附录G。
实验结果
下游任务准确性的饱和现象。
首先,进行实验以了解上游任务的性能改进如何影响下游任务的性能。在上游任务(JFT)上进行预训练,并在下游任务上进行评估的情况下,对上游(US)和下游(DS)任务性能的评估结果显示如下。
上游任务(US)和下游任务(DS)的表现结果也如下所示,当时在上游任务(JFT,ImageNet)上进行了预训练,并在下游任务上进行了少量拍摄(1张或25张)的评估。
让$e_{DS},e_{US}$分别表示下游和上游任务的误差(1-精度),以下关系成立。
饱和值定义为$e_{IR}$,其中$e_{IR}$是上游任务误差为零时的下游任务误差值(精度为1)。k,\alpha$是常数。从上图中的1-e_{IR}$图可以看出,上游和下游任务表现之间的关系不是线性的,下游任务表现在某个点(1-e_{IR}$)低于1时就会饱和。
在下面的章节中,将进一步研究这个$e_{IR}$。
e_{IR}$与上游和下游任务之间的关系。
在上图中,性能因下游任务的类型和拍摄次数的不同而有很大差异。这里,$e_{IR}$随拍摄次数的变化如下。
$k,alpha,e_{IR}$与各种上游和下游任务的拍摄次数之间的关联性如下。
一般来说,$k,e_{IR}$被发现与射击次数呈负相关,而$alpha$呈正相关。
缩放的影响。
然后进行实验,看下游和上游的任务如何随数据集大小、模型大小和历时数的变化而变化。结果如下。
更多下游任务的结果也显示在下面。
一般来说,数据集大小、模型大小和历时数的变化对上游任务准确性有影响,但这些参数对下游任务准确性的直接影响似乎不大。这表现在当三个参数变化时,下游任务准确性图位于几乎相同的曲线上。
和以前的实验一样,随着上游任务准确性的提高,下游任务的准确性有饱和的趋势,而饱和的程度取决于下游任务的类型。
上游和下游任务准确性之间的关系。
以前的实验表明,不同的饱和度取决于下游任务。我们现在考虑为什么饱和度在某些下游任务中比在其他任务中更早发生。首先,上游和下游任务准确性之间的Spearman等级相关系数如下。
可以看出,UC-Merced和col_hist,下游任务准确性的饱和开始得较早,往往与上游任务准确性的相关系数值相对较低。另一方面,当不同的表示层被用于下游任务时,下游任务的准确度结果如下(上游任务是JFT)。
这里,绿色的圆圈对应于三个参数(数据集大小、模型大小和历时数)变化的图。
这些数字表明,对于与上游任务类似的下游任务(如ImageNet),层的表示越晚,下游任务的准确性越高,而对于饱和度发生较早的下游任务,如UC-Merced和col_hist,最后的层表示并不总是最佳的。鉴于以前的研究认为下层捕获的是不同数据集/任务中的共同特征,下游任务中的性能饱和可能是由于在上游任务中预训练的网络缺乏下游任务中良好性能所需的特征。这似乎是由于。
摘要
用Vision Transformer、MLP-Mixer和ResNet进行的大量实验表明,随着上游任务性能的提高,下游任务的准确性也会饱和。这种在下游任务中准确率的饱和度并不因数据集大小、模型大小或历时数的选择而有明显变化,而且似乎很难获得一个在所有下游任务中都表现良好的预训练模型。研究还发现,饱和程度因下游任务而异,在与上游任务准确性相关度较低的下游任务中,饱和倾向于提前发生。因此可以说,专注于与上游任务结果接近的单一下游任务的表现是不可取的,应该选择在广泛的下游任务中提高表现。(如果感兴趣,也请参考原始论文,因为它包含更多的表格、数字和对实验结果的讨论)。
与本文相关的类别