跳转至

DeepMind的最新算法实现了训练效率的巨大提升,相较于以往,效能提升了惊人的13倍,同时能源消耗减少了10倍,堪称能耗优化的突破性进展。

编辑日期:2024年07月07日

全球能源消耗巨头ChatGPT每日耗电量惊人,超过50万度电,这相当于近1.7万个美国普通家庭的日常电力消耗总和。

然而,能源消耗在大型模型中所扮演的角色远比这更为显著。据国际能源署预测,自2022年至2026年,数据中心的电力消耗预计将增长一倍。

deepmind的最新算法实现了训练效率

随着人工智能运算需求的急剧增长,冷却计算设备对水的需求也日益增加。据研究显示,微软在2021年至2022年间,水消耗量猛增了34%。值得注意的是,ChatGPT在应对5到50条提示时,会消耗将近半升的水。

是否存在更优的解决方案来应对这一情境呢?

最近,谷歌DeepMind的研究人员开发出了一种创新的AI训练加速技术——结合多模态对比学习与精选联合示例(JEST)。这项新方法显著降低了对计算资源的需求,并极大地缩短了训练时间。

先进的模型在迭代次数和计算量上远逊于 JEST,JEST 实现了仅需其十分之一的迭代和计算,就能超越现有最佳水平!

deepmind的最新算法实现了训练效率

预先训练的基准模型已经掌握了甄别“高质量”或“有价值”数据的本领。接着,该模型会指导数据挑选过程,倾向于使用那些经过精细挑选的小规模数据集。

这一探索揭示了数据筛选精度可作为一个评估 Scaling Law 的新颖视角。

网友们热情洋溢地评论道:“真是出乎意料,这一切来得如此迅速。模型能自主挑选训练数据是一项重大的进步,因为它极大地简化了训练过程,你不必再费尽心思去辨别哪些是优质的训练数据。现在,你拥有一个能够‘领悟’何种数据对其自身学习最有益的模型。”

deepmind的最新算法实现了训练效率

曾任谷歌和苹果软件工程师的人士赞叹道,这项研究展现出了非凡的成就。

deepmind的最新算法实现了训练效率

数据的质量对于预训练模型的效能来说至关重要,无论涉及语言、视觉还是多模式的模型。以Phi-3和Gemma 2等模型为例,它们的成功表明,使用精挑细选的少量高质量数据,甚至可能达到更出色的性能表现。

构建高效的数据管道是确保获取优质数据的关键任务。目前,主要的策略可概括为两类:一是手工操作,通过人工干预来精心挑选数据;二是运用模型驱动的数据管理,即利用训练中的模型特性来鉴别并选取高质量的数据。

deepmind的最新算法实现了训练效率

前者由于高成本和扩展难度大而受限,而后者则预示着多模态LLM可以遵循Scaling Law实现扩展。

当前的策略忽视了一个重要的现实,那就是

仅仅基于单个数据点进行筛选会忽略整个数据集和批次的综合构成。毕竟,训练过程中数据是按批次处理的,各个数据点之间的关联性不容忽视。

大量计算机视觉领域的研究证实,困难负例(在特征空间中相似但类别不同的样本)相比于普通的易解数据聚类,能产生更为有力的学习指示。

如何使模型以批量方式处理数据呢?

JEST 算法的提出旨在应对这一挑战,其理念简洁明了:它直接从庞大的“超级批处理”中挑选出小型的“子批处理”。

数学上,这个问题可表示为从一个规模为B的“超批量”𝒟中选择出与学习过程最密切相关的子批量ℬ={𝒙𝑖|i∈[1,…,𝑏]},其子批量的筛选比例可表示为𝑓=1−𝑏/𝐵。

传统的优先采样方法依赖于模型评估的分数来为每个数据点赋值,随后依据这些分数进行比例采样。然而,JEST创新性地对整个子批次进行评分,接着按照批次级别的评价标准进行采样。

一种直观的启发式策略是直接针对现有模型参数 𝜃,挑选导致损失值最大的 batch,这通常被称为「硬学习」(hard learner),它仅仅聚焦于优化困难的数据样本。

这种方法具备忽略不重要信息的优势,已被证实对小型且规范的数据集尤为有效;然而,当面对大规模、杂乱无章的数据集时,其弊端可能超过好处,因为仍然无法避免捕获到噪声数据。

另一种常见策略应用于多模态场景,是通过具备参数 𝜃∗ 的基准模型来为预训练模型生成样本,其简易表示为 𝑠^easy⁢(ℬ|𝜃∗)=−ℓ⁢(ℬ|𝜃∗)。然而,这种方法被作者批评,因为它不能直观地体现模型的实时状态,可能过分依赖于所选择的基准模型,并且在扩展性方面存在困难。

最终,本研究采纳了ICML 2022年一项研究中的策略,将这两部分的评价统一起来,形成了一个综合指标:𝑠^learn⁢(ℬ|𝜃,𝜃∗)=𝑠hard⁢(ℬ|𝜃)+𝑠^easy⁢(ℬ|𝜃∗)=ℓ⁢(ℬ|𝜃)−ℓ⁢(ℬ|𝜃∗),并将这种方法命名为「学习性评分」(learnability score)。

deepmind的最新算法实现了训练效率

在该情境下,批量数据上的损失函数ℓ⁢(ℬ|𝜃)是通过将各个数据点相加得出的,采用了Sigmoid对比损失函数进行计算。这是因为Sigmoid对比损失相比于Softmax对比损失,具备更好的可扩展性。

由于批处理中的对比损失能够拆分为每个样本的条件损失的总和,学习性评分可以相应地拆解为各个单独样本的学习性评分𝑠⁢(𝒙|𝜃,𝜃∗,ℬ) 的累加,表示为:

deepmind的最新算法实现了训练效率

deepmind的最新算法实现了训练效率

受到块 Gibbs 采样的灵感,我们采用了顺序采样策略。在第 n 轮迭代中,针对第 B_n 个批次进行采样时,我们按照特定的概率分布对块 {X_k} 实施不放回采样。

deepmind的最新算法实现了训练效率

逐步将X_k模块整合到B_n中,以不断更新批量采样的内容,直到达到总的迭代次数n=N才会停止。整个算法的操作过程可概括为以下图表所示:

deepmind的最新算法实现了训练效率

研究发现,设置迭代次数为 N=16,并在每次迭代时独立抽取 b/N=2048 个样本,就能有效地重构出具有高度学习能力的批量数据。

在评估学习性能时,通常会借助参照模型对数据点进行评分。以往的策略常常依赖于额外的微型模型,然而这会在每次迭代中提升计算需求,从而削弱总体的FLOP运算效率提升。

于是,该论文采纳了在线模型近似策略及高效能的 FlexiViT 框架,通过仅采用分辨率减半的 32×32 像素块来估算“超大批次”,此举成功将计算量降低了 72%,并将实际运行时间减少了 67% 相比于使用全分辨率和 16×16 像素块的方法。

该研究还创新性地引入了多分辨率训练策略。每个批次的数据被随机均分为两部分,分别采用不同的分辨率进行编码,随后再进行拼接。这一方法有效地优化了评分流程和训练效率。

下文提供的是全分辨率JEST和多分辨率Flexi-JEST方法的伪代码实现的详尽描绘。

deepmind的最新算法实现了训练效率

所有JEST实验都在WebLI数据集上执行,该数据集蕴含着经过初步筛选的十亿级英语言图对。为了训练基准模型,我们选用了一个精挑细选、规模为100M的高质量子集,即所谓的WebLI精选集。

作者在WebLI的基础上更进一步,从互联网中搜集了多达6亿条图文信息,并施以同等严格的筛选,构建了WebLI-curated++数据集。以此为依托,他们训练了一个基准模型,并发展出了JEST++/FlexiJEST++策略,旨在深入研究数据管理的扩展性。

报告的论文平均性能涵盖了四个多模态标准测试平台:ImageNet 的零样本和十样本分类,以及COCO的图像到文本和文本到图像的一级检索。

图1的展示清晰地揭示了JEST或FlexiJEST方法的核心优势,那便是显著的效率提升。

在左图所示的对比中,JEST++ 显示出显著优势,它能在训练数据缩减至原先的1/13.1的情况下,依旧保持与SigLIP基线模型相同的精度水平。而且,就算计入额外的评分成本,其FLOP效率也提高了将近10倍,这一点在中图中清晰可见。

右图对比了JEST++/FlexiJEST++(以绿色呈现)与先前技术(呈灰色)的表现,揭示了它在降低计算成本的同时,也显著提升了性能,超越了CLIP和EVA-CLIP的经典模型。

deepmind的最新算法实现了训练效率

研究人员首要任务是检验 JEST 在挑选可学习批次时的表现。

为便于直观把握这种方法,作者们选择了将学习矩阵的可学习性进行可视化展示,具体表现为在批量数据中,学习模型与参照模型之间的各个样本对损失差异。

JEST策略依据示例子矩阵的学习性总量进行采样。鉴于矩阵明显的非对称特性(如图2,左图所示),单独选择的方法显然不是最优的。

在仅进行了少量迭代(相当于使用 N=16 的块来填充批次)后,研究者观察到子批次的学习能力迅速提升,这与需要数千次迭代的传统吉布斯采样(Gibbs sampling)才能达到的批次学习效果相当(图 2,中部)。

当采用过滤比例为0.5、0.8和0.9时,他们分别从包含65,536、163,840和327,680个样本的大型batch中选取32,768个样本来构建子batch。

研究人员在图2的右侧观察到,随着过滤比例的增大,子批次的学习能力呈现出增强的趋势。

简而言之,JEST 算法是一种在训练期间能够智能挑选最具学习潜力批次的优化策略,它以高效和实用著称。

deepmind的最新算法实现了训练效率

随后,研究者运用了 JEST 算法挑选的可学习批次来评估训练模型的性能。

所有实验均借助于在 WebLI-curated 数据集上训练的基准模型,该模型融合了 ViT-B / 16 与 Bert-B 构建的图像-文本双编码器,其在多达 30 亿个训练样本上进行了优化,并采用了 sigmoid 对比损失函数。

图3(左)呈现了训练期间多个下游任务的平均效果,包括ImageNet的0-Shot和10-Shot准确率以及COCO的图像到文本和文本到图像检索性能。

研究揭示,JEST 在提升学习效率方面表现出显著的效果。

当采用过滤比例为50%、80%和90%时,分别仅需2亿、1亿和6700万的训练样本来实现与30亿样本基准相当的最终性能。

在提高过滤标准后,我们发现训练过程中的稳定性有所下降,类似于增大批量大小时的情况。为了解决这个问题,我们调整了 Adam 优化器的参数(将 β2 设为 0.95),以确保训练的稳定性。这说明 JEST 的数据选择机制实际上可以等效于增大了有效的批量大小。

deepmind的最新算法实现了训练效率

在性能的最终衡量中,当排除掉90%的数据时,JEST展现出了6%的明显优越性(见图3,中部,蓝色曲线)。

值得注意的是,性能提升的这种scaling现象在独立样本选择策略中并未显现出来。(图3,中部,橙色曲线)

研究人员最后还考察了JEST是否对除了学习能力之外的其他首要标准也有所提升。

图3的右侧部分呈现了基于easy-reference策略筛选的模型在各种过滤率下的表现情况。

遵循学习性优先的原则,JEST的表现依然超越独立样本选择,特别是在严格的筛选比例下,此时独立样本选择的性能会出现下滑。

优先选取损失最大的数据带来的收益较低,而且在排除更多数据时,性能下降速度加快(图10)。

研究者在后续的实验中选择了 JEST,因为它展现出了最佳的可学习性 scaling 行为,因此成为了标准。

随着数据批处理中过滤比例的提高,基于学习性评分的JEST系统展现出更高的效率。

然而,评估分数的过程将明显增加成本:筛选掉 80% 的超级 batch 数据会使每次迭代的浮点运算量相比 IID 训练增加至其 4 倍,若是在存储模型评分时,则会增至 2.3 倍。

尽管JEST在提升训练循环次数的效率方面取得了明显的进步(我们称之为“训练效率”),但增加的评分浮点运算导致其相对于IID基准的计算效率出现下降(图1,左侧对比右侧)。

于是,作者提出了一种名为 Flexi-JEST 的优化方法,该方法运用多尺度训练和低分辨率评估,成功地将总体成本降低至仅比基准增加 10%(见图 4,左侧)。

这些近似策略对效率产生了什么影响?

Flexi-JEST 的性能在每次迭代中确实不如 JEST,但出乎意料地,它仍然对 IID 显示出明显的速度提升(图 1 左;图 4 中)。

考虑到总运算量的显著降低,每轮迭代效率的轻微牺牲显得尤为值得:最佳的 Flexi-JEST 模型在保持与 40B Siglip 相同的平均性能的同时,浮点运算量降低了 9.9 倍,比完整的 JEST 模型更是少了近一倍(图 1 右侧,图 4 中间)。

这些研究揭示了多尺度训练与联合样本选择间的协同作用,其中前者为后者提供了快速而精确的评估能力,进而实现加速优化。

研究发现揭示了数据策划策略的帕累托最优边界。

通过牺牲一定的计算资源以优化训练速度或效率,全分辨率JEST方法相较于同类IID训练操作,能够实现高达13倍的加速提升。

deepmind的最新算法实现了训练效率

可学习性评估的关键在于,利用人类精选的小规模数据集训练出的基准模型,其性能表现。

JEST 的性能在实施各种筛选策略时如何波动,特别是在质量与数量之间的取舍上?

除了探究 JEST 训练的优化是否直接影响参照模型的表现之外,我们还需考虑这些指标是否存在独立性?

掌握质与量的平衡至关重要

科学家们对三种不同规模的数据筛选进行了深入研究,这些都源于原始的WebLI数据集的子集:

在十亿级别的数据筛选中,我们采用了一种称为图像-文本对齐(ITA)的过滤机制,它能有效地筛选并仅返回相关结果。

在3亿级别的规模下,我们实施中度筛选,采用ITC过滤器或者文本品质(TQ)过滤器进行操作。

在大规模的1亿级别筛选过程中,我们整合了TQ、ITA以及独特的图像品质(美学)评估标准,只保留最优秀的结果。

作者将这个精选的强过滤子集命名为「网络知识库精选」。

接着,他们在四个WebLI子集中分别训练了标准SigLIP编码器10个周期,并将这些训练后的模型作为参照,用于整个WebLI数据集上的JEST训练。

在各种数据筛选策略中,参照模型的表现与 JEST 的表现似乎呈现脱钩状态(甚至可能呈负相关;见图 5,左侧)。

尽管缩小数据集并通过筛选会削弱模型的性能,但有趣的是,当这些方法应用于JEST预训练的基准模型时,结果却截然相反:

deepmind的最新算法实现了训练效率

文本内容:在数据分析过程中,我们经常需要对大量信息进行精细筛选,以获取最有价值的部分。为此,可以采用扩展数据筛选方法,它能帮助我们从复杂的数据集中提取出特定的、所需的信息,从而忽略不相关的内容。这种方法允许我们设置更复杂的条件,比如组合条件、逻辑运算等,以达到更精准的筛选效果。

重写后:在探索数据的旅程中,我们时常面临海量信息的甄选挑战,旨在提炼出至关重要的知识碎片。此时,扩展数据筛选技术大显身手,它巧妙地从庞大的数据丛中捕获定制化的关键信息,将无关噪音悄然屏蔽。此工具赋予我们构建多维度筛选规则的能力,如嵌套条件与布尔逻辑,确保筛选结果的精确无误。

普遍认为,模型性能与JEST表现的独立性可能仅仅是由于数据集规模限制下的特定数据选择影响造成的。

为探究此效应,研究者利用WebLI-curated数据集训练了五个基准模型,逐步调整了它们接触的总体样本数量,范围从2.5亿至30亿不等。

在这种情境下,图5的右侧清晰地揭示了优化后的基准模型与卓越的JEST预训练之间的明显正相关性。

这证明了“解耦”现象主要源于参照模型在数据筛选后导致的训练集规模减小而引发的饱和状态。

研究人员观察到,当数据集达到极限状态时,图5(右)所示的相关性开始减弱,这发生在训练经过10个周期或接触了10亿个样本之后。

这些发现提示我们,JEST 有可能通过增加参考数据集的筛选范围来获得更多的优势。

考虑到通过WebLI-curated++对数据的增强处理能有效提升基准模型的表现,作者引发了是否应当在原始WebLI数据集上预先训练的讨论。

评估过程中发现,尽管该参考模型在两个特定的下游任务上表现出比WebLI预训练更优的性能,但在其余六个任务中,以及综合平均表现上,它的性能显著弱于WebLI预训练模型(见表5)。

deepmind的最新算法实现了训练效率

最终,该研究使用JEST++在公开的LAION-2B数据集上进行了预训练,排除了所有不安全的图像和文本对,但未执行任何其他前期筛选步骤。

JEST++ 在数据规模上比最先进的 SOTA 方法 DBP 缩减了四倍,但它仍然显著超越了所有先前的离线数据管理技术。

deepmind的最新算法实现了训练效率

先前已述及,WebLI-curated 是源自 WebLI 数据集的精选版本,经过精心筛选,旨在保留高质素的图像与文本对应关系。

如表3所示,离线数据管理流程对于IID(独立同分布)训练方法的效能具有决定性影响,然而,JEST++展示出了对预过滤步骤的强健适应性。即使省略了过滤阶段,JEST++的性能仍能保持稳定,显著降低了对基础数据集的依赖。

deepmind的最新算法实现了训练效率

总的来说,JEST 策略揭示了数据质量提升(data quality enhancement)的潜在威力,它通过运用精心挑选的小型数据集来指引对大规模无监管数据集的学习。

最近的探索揭示,当无法预先得知具体应用任务时,对静态数据集的筛选可能制约模型的效能。本文的发现提出,通过在线构建批次的方式而非单独挑选样本来进行预训练,能有效提升效率。

利用JEST参照模型预先评估数据集,或借助学习性评分机制按需灵活调整,都可作为提升基础数据集效率的优选策略。

作者在论文结尾部分也指出了该方法的局限性。尽管JEST成功地达到了性能提升和训练成本下降,但它仍然需要依赖于小规模且经过精心管理的参考数据集,这些数据集定义了在更大、未管理的数据集中的优先处理分布。

因此,未来的研究可以致力于开发一种策略,以揭示特定下游任务对参考数据集结构和分布的内在需求。

参考资料:

本文来自微信公众号:新智元(ID:AI_era)

大家在看

京ICP备20031037号-1 | AI之家 | AI资讯 | Python200 | 数据分析