相关文章推荐
爽快的野马  ·  bootstrap ...·  1 年前    · 
宽容的大白菜  ·  JAVA ...·  1 年前    · 

编者按:本文探讨了语言模型为何会比视觉模型的参数数量大得多的原因,并详细介绍了传统ViT训练方法在扩展时出现不稳定性的问题。

为此,本文介绍了如何改进架构以实现扩展,并讨论了实现模型最优状态的方法。同时,如何在扩展模型时不产生“偏见”,也是本文重点关注的问题。

很可能,我们很快就可以看到更大型的ViT(单独或作为多模态模型的组成部分)出现。

以下是译文,Enjoy!

| Salvatore Raieli

近年来,我们看到Transformers的参数数量快速增加。但仔细观察会发现,主要是语言模型(LLMs)的参数在不断增加,现在已经高达惊人的540亿参数[1]。 为什么这种情况没有出现在视觉模型呢?

对于文本模型(text models), 增加数据集大小、使用可随时延展的架构(scalable architectures)和新的训练方法都可能使参数数量增长 。如此不仅提高了模型在完成特定任务(如分类等)时的性能,而且随着参数数量的增加,我们还看到了 “涌现” 的出现。

各阶段主流NLP模型的参数大小随时间变化的趋势图。训练这些模型所需的浮点运算数量正以指数方式增长。 [2]

此外,由于大模型可作为迁移学习和微调的基础,因此人们对研发高性能模型的兴趣不断增长。虽已大模型成功应用于多种任务,但许多图像分析任务仍需要专门的模型。

Transformer的 自注意力机制(self-attention) 其优势已经得到证明,成为2016年以来的主要模型架构。因此,一些团队已经训练了用于图像处理的Transformer模型(vision transformer, ViT)。目前,最强的ViT仅有150亿个参数。造成这一现象的原因是什么?

最近一项研究中,谷歌成功地训练了一个具有220亿参数的模型,并揭示了扩展ViT存在困难的原因。

内容提纲: 1.解释了为什么传统ViT训练方法在扩展时出现不稳定性的原因。 2.介绍了如何改进架构以实现扩展,以及模型达到最优状态的方法。 3.同时,还探讨了如何在扩展模型时提高公平性(fairness)。

什么是vision transformers?

Transformers本质上是不变的,但不能处理网格结构(grid-structured)数据(只能处理序列数据)。因此, 为了使用Transformer处理图像,我们需要将图像转换成序列数据。 具体如何实现呢?

将图像转换成一系列片段(patches) ,称为图像块(image patches)。这些图像块基本上是我们需要的tokens(类似于经典Transformer中的words)。然后,这些 图像被“压平”(flatten)并转换为低维度嵌入 (这样可以保留信息但减少维度)。此外,像原始Transformer一样,我们 使用位置编码(positional encoding),以便模型知道图像块在图像中的位置。

为什么难以扩展ViT,如何解决这个问题?

在引入ViTs之前,卷积网络(convolutional networks)一直是完成计算机视觉任务的标准。在《A ConvNet for the 2020s》[3]一文中,作者指出有效扩展模型规模这一问题仍未解决。

另一方面,我们仍尚未扩大ViTs的规模。因为 在Transformers中,模型的规模扩大会导致出现无法预知的行为,这是一个严重的问题。

作者指出, 超过8B参数后,训练过程中会出现不稳定性,在训练数千steps后出现了不收敛的训练损失。 这是由于attention logits中的极大值造成的,导致(几乎是独热编码(one-hot))的注意力权重接近于零熵(near-zero entropy)。为了解决这个问题,作者在点积计算(dot-product)之前给Queries和Keys添加了层归一化(layer-normalization)。

在下面这幅图中,展示了用这一方法如何改善训练效果。

第二种方法是通过 修改架构 。在传统的Transformer中,在经过自注意力(self-attention)之后输出的是一个多层感知机(multi-layer-perceptron, MLP[4])。相反,这里的自注意模块(self-attention blocks)与MLP并行处理,这种操作不会降低性能,甚至可以将训练速度提升15%(如谷歌的另一个大型模型PaLM所示,这个操作基本上是将矩阵乘法(matrix multiplications)合并为单个运算)。

此外,在注意力机制的投影操作中不再使用偏置项(bias term)(如此也不会降低性能但可以缩短训练时间)。

在图中展示了实施这些措施后的新注意力模块:

针对训练过程也进行了优化。谷歌采用了JAX[5](其已成为谷歌的重点项目,相比之下,TensorFlow则不太受关注)。他们还使用了一些技巧( 异步并行线性操作(asynchronous parallel linear operations)、模型参数切片(parameter sharding) )来确保使得模型针对TPU(张量处理单元)进行了优化。

作者使用了一个约40亿张图像组成的数据集,这些图像被半自动地划分为30,000个类别。有一点需要注意,在ViT中,图像被划分成多个部分(称为“patches”),然后与位置(位置编码)一起转换为序列(sequence)。每张图像(224 x 224)被划分成14 x 14个patches,因此一张图像最终由256个tokens表示。

对ViT进行扩展是否值得?

模型训练好后,在ImageNet数据集(一百万张图片和一千个类别)上进行了测试,主要是为了测试其分类能力。结果表明:相比其他模型,这个frozen model(即无需进行微调的模型)的性能相当。

另一方面,大模型最常见的用途之一就是进行迁移学习(transfer learning)。毕竟,人们通常使用小数据集对大模型进行微调,以完成不同于训练任务的任务。按照作者的说法:

密集预测(dense prediction)的迁移学习尤为重要,因为进行像素级标注可能代价高昂。在本节中,作者调查了ViT-22B模型(使用图像级分类目标(image-level classification objective)进行训练)在语义分割(semantic segmentation)和单目深度估计(monocular depth estimation)任务上获取几何和空间信息的质量。(来源:

为测试该模型,作者使用了三个语义分割基准数据集( ADEK20k、Pascal Context、Pascal VOC )。此外,他们还测试了使用有限数据进行迁移学习时的情况。

ViT-22在数据量较少时表现较佳 ,这非常有用,因为通常获取图像及其分割掩码(segmentation mask)的代价非常昂贵,因此相较于其他模型,该模型需要的示例数量要更少。

此外,该模型在Waymo Open数据集上展示了卓越的单眼深度估计(monocular depth estimation)能力。

视频分类结果。我们通过冻结骨干网络,并训练一个小型Transformer来汇聚冻结的每一帧表征(representations.)来评估 ViT-22B 的表现。ViT-22B 胜过了之前包含 40 亿参数的最大视觉骨干网络 ViT-e。(source: 这个模型的公平性如何?

AI模型容易受到偏见的影响。许多偏见存在于训练数据集中,导致模型放大、学习了 虚假相关性和不一致误差(spurious correlation and error disparities) 。由于预训练模型会用于其他任务,错误的偏见会一直延续。

作者认为,对模型进行扩展可以减少这些偏见,并通过使用“ 群体均等(demographic parity ) ”(DP)作为公平性的度量标准来进行测试。

作者解释了他们的方法:

我们使用CelebA(Liu等人,2015)数据集,选取二元的性别(仅有男和女)作为敏感属性(sensitive attribute),而目标是“有吸引力(attractive)”或“微笑(smiling)”。需要注意这些实验仅用于验证技术要求,不应被认为其支持这类与视觉相关的任务。我们选择这些属性(性别)是因为这个模型展现了与性别相关的偏见,如图15所示。(source: “在没有偏见减少的情况下,模型中的DP通常反映了数据中的DP。在这个图中,二元的性别是敏感属性,使用预训练特征在CelebA数据集上训练linear heads来预测其他属性。”

(source:

如文献所述,扩大模型的规模提供了一个更有利的权衡,即“ 在任何指定偏差约束(bias constraint)下,性能随模型规模的增加而提升 ”。其次,所有子组(subgroups)受益于这种改进,而扩大模型的规模可以减少不同子组(subgroups)间性能上的差异。

“顶部图:每个DP级别的ViT变体在消除偏见后的ACC。中部图:CelebA中的每个子组在去除偏见之前的ACC。底部图:y轴为女性和男性两个子组之间性能差异的绝对值。与较小的ViT架构相比,ViT-22B拥有更公平的表现。”

(source: 模型看到了什么? 计算机视觉模型主要关注纹理,而人类更多地依赖形状。

人类在看一个物体时,具有96%的形状偏好和4%的纹理偏好。相比之下,ViT-22B-384的形状偏好达到了87%,这是前所未有的,而纹理偏好仅为13%。这一结果非常有趣,因为大多数模型都具有20-30%的形状偏好(shape bias)和70-80%的纹理偏好(texture bias)。同时,这种偏好也是为什么通过改变图像的纹理,即使形状是可识别的,模型也会被欺骗,从而误判图像并错误地标记它的原因之一。

形状偏好:许多视觉模型具有较低的形状偏好和较高的纹理偏好,而在ImageNet上微调的ViT-22B(图中的红色、绿色、蓝色均使用4B张图像进行训练(如模型名称后方的括号所示)),具有迄今为止在机器学习模型中记录的最高形状偏好数值,使其更接近于人类的形状偏好。(source: 理解模型看到了什么的另一种方法是获得显著图(saliency maps)(基于梯度的特征归因方法)

我们推出了ViT-22B,这是目前最大的视觉Transformer模型,其参数量达到了220亿。通过对原始结构进行小但关键的修改,我们可以实现较好的硬件利用率(hardware utilization)和训练稳定性(training stability),从而得到在多个基准测试中领先的模型。(source:

除了模型的规模和基准测试结果外,该模型还是更大型模型的基础。事实上, 在此之前要成功扩展ViT模型是非常困难的, 因为 在训练过程中会出现不稳定性 。不过据作者说, 通过修改架构可以解决这些问题。

大型模型可以作为不同任务的预训练脚手架(pre-trained scaffolds)(计算机视觉模型可以用于许多生活中的任务)。此外,还出现了一些意想不到的行为[6]( 这些行为在小型模型中不存在,并且不能通过模型规模来预测其规律 )。此外,这些模型可以集成到多模态模型中(并可能影响其中的“涌现(emergent)”行为[7])。

ViT-22B展示了模型扩展在公平性(fairness)方面已经得到了改善 。该模型也更加 具有鲁棒性(robust) 更符合人类视觉(即不太依赖纹理,而更多地依赖形状)

很可能,我们很快将看到更大型的ViT(单独或作为多模态模型的组成部分)出现。

https://ai.googleblog.com/2022/04/pathways-language-model-palm-scaling-to.html

本文经原作者授权,由Baihai IDP编译。如需转载译文,请联系获取授权。

原文链接

白海科技致力于帮助开发者和企业解决AI落地过程中的效率、性能、成本等问题。提供模块化架构的新一代云原生AI平台IDP,便捷轻量地满足AI开发生产全流程需求,并极大提升AI计算性能和资源利用率。基于IDP平台构建IDP LM — 一站式专属大模型构建与应用加速平台,帮助企业快速构建自有可控大模型。

注册时间: 2023-01-03

16805

广播电视节目制作经营许可证(京) 字第1234号 中国互联网协会会员