单GPU训练一天,Transformer在100位数字加法上就达能到99%准确率

乘法和排序也有效。自 2017 年被提出以来,Transformer 已成为 AI 大模型的主流架构,一直稳站 C 位。但所有钻研者都不得不承认的是,Transformer 在算数任务中表现非常糟糕,尤其是加法,这一缺陷在很大程度上源于 Transformer 无法跟踪大范围数字中每一个数字的确切位子。为了处理这个课题,来自马里兰大学、CMU 等机构的钻研者向这一课题发起了挑战,他们通过在每一个数字中添加一个嵌入来处理这个课题,该嵌入编码数字相对于开头的位子。该钻研发现,只用一天时间在单个 GPU 上训练 20 位数字

乘法和排序也有效。

自 2017 年被提出以来,Transformer 已成为 AI 大模型的主流架构,一直稳站 C 位。

但所有钻研者都不得不承认的是,Transformer 在算数任务中表现非常糟糕,尤其是加法,这一缺陷在很大程度上源于 Transformer 无法跟踪大范围数字中每一个数字的确切位子。

为了处理这个课题,来自马里兰大学、CMU 等机构的钻研者向这一课题发起了挑战,他们通过在每一个数字中添加一个嵌入来处理这个课题,该嵌入编码数字相对于开头的位子。该钻研发现,只用一天时间在单个 GPU 上训练 20 位数字,就可以达到最新的功能水平,100 位数字加法课题高达 99% 的准确率。

单GPU训练一天,Transformer在100位数字加法上就达能到99%准确率

论文地址:https://arxiv.org/pdf/2405.17399

项目地址:https://github.com/mcleish7/arithmetic

标题:Transformers Can Do Arithmetic with the Right Embeddings

具体而言,钻研者建议对数据表示进行一个简单的修改,就能处理这个缺点。他们提出了 Abacus 嵌入用于编码每一个数字符号 token 范围内的位子。将 Abacus 嵌入与规范位子嵌入结合运用后,该钻研观察到 Transformer 在算数任务上的准确率有显著提升,以至于最多只训练了 20 位数操作数的模型可以泛化到 120 位数操作数的课题。这一数字代表了 6 倍的 SOTA 泛化因子,而以前的最先进的泛化因子也只有 2.5 倍。据了解,这是迄今为止被证明的最长的学习加法序列。

此外,本文还钻研了几种其他方法来改善 transformer 在算术和泛化方面的功能,他们发现结合输出注入(input injection),即在输出层和每一个解码器层之间插入跳跃连接,可以在 Abacus 嵌入基线上减少 50% 的泛化误差。本文还发现,与嵌入结合运用的 looped transformer 架构可以在加法课题上实现几乎完美的泛化。

本文的贡献可以总结如下:

本文提出了一种新的位子嵌入,称为 Abacus 嵌入,以更好地捕获每一个数字的重要性,从而实现近乎完美的分布内泛化;

钻研表明,当将 Abacus 嵌入与输出注入和 looped transformer 相结合时,功能会进一步提升,分布外准确率从 92.9% 提升到 99.1%,与单独运用规范架构的嵌入相比,误差降低了 87%;

钻研者将这些发现扩展到更复杂的课题,包括乘法和排序,在这些领域也展现出了长度泛化。

实现加法的长度泛化

作家钻研了一系列方法,旨在提升从头开始训练的语言模型在算术能力上的表现。他们主要关注两个假设:1)数字内各个位数的位子信息正在丢失;2)轮回可以提升 Transformer 架构在多步算术推理课题上的推理能力。在详细描述每项改进之前,作家简要讨论了训练和评估设置。

实验设置

作家训练了仅包含解码器的因果语言模型来处理加法课题。

他们考虑了两种规范 transformer 架构。首先,他们运用一个规范的自回归 transformer 模型,多个解码器层以前馈方式堆叠。其次,他们通过输出注入(input injection)增强了这一规范 transformer 模型,即把嵌入的输出添加到每一个解码器层的输出中。作家在图 20 中直观地描述了这些架构。

单GPU训练一天,Transformer在100位数字加法上就达能到99%准确率

Abacus 嵌入帮助对齐数字

通过之前的钻研和初步实验,作家发现,即使输出的数字是先显示最不重要的数字,训练数据是分层的、丰富的(几百万个例子),规范 transformer 也很难学习多位数加法。他们还观察到,人类在进行长加法运算时,会先将数位相同的数字排列成列。因此,作家的第一个假设是,对于 transformer 来说,每一个数字的数位并不容易表示,而且这个子课题比实际加法本身带来的障碍更大。

为了处理 transformer 在表示位子信息方面的局限性,作家设计了一种特殊的位子嵌入,它可以编码每一个数字相对于当前数字起始位子的位子。作家将其称之为 Abacus 嵌入。他们将相同的位子嵌入应用于所有具有相同数位的数字,从而提供一个显式的信号,供模型用于对齐数字,如图 2 所示。

单GPU训练一天,Transformer在100位数字加法上就达能到99%准确率

Abacus 嵌入处理加法课题

对于规范 transformer 架构,Abacus 嵌入可将泛化功能提升到 100 位及以上。在图 3(左)中,作家强调了 Abacus 嵌入与规范 transformer 架构和嵌入相比,在进行加法运算时所具有的比较优势,取三种模型在所有情况下的平均准确度。

单GPU训练一天,Transformer在100位数字加法上就达能到99%准确率

图 1 还显示了运用 FIRE 和 Abacus 训练的规范 transformer 模型的准确度结果,这些模型经过了域内 (ID) 和域外 (OOD) 测试。单GPU训练一天,Transformer在100位数字加法上就达能到99%准确率

Transformer 中的轮回提升了功能

在处理位子嵌入课题后,接下来作家探讨了轮回架构能否进一步提升 transformer 执行多位数加法的能力。他们运用「轮回块(recurrent block)」一词来指一组具有不同权重的解码器层,而「轮回(recurrence)」则指轮回块的重复次数。作家运用有效深度(effective depth)一词来指 transformer 中运用的层数,无论其权重是否唯一。除非另有说明,否则他们运用的是最大轮回架构,即只轮回一个唯一层来达到有效深度。他们还采用了输出注入、 残差连接的方式,将输出的副本传播到网络中的每一层。

轮回的优势

在图 3(右)中,作家比较了运用 FIRE 和 NoPE 嵌入对操作数多达 40 位的加法进行训练的所有架构变体。尽管参数数量仅相当于其他模型的 1/10,但可以看到,looped transformer(轮回的、有输出注入和渐进损失)在运用任何一种位子嵌入时都取得了最佳的分布外功能。在图 8 中,作家展示了这一结果在多种训练数据规模下的稳健性。

单GPU训练一天,Transformer在100位数字加法上就达能到99%准确率

对于轮回模型,可以选择在训练时改变每次前向传递的轮回次数。这往往会提升模型测试时对较难任务的泛化能力,这也被称为渐进损失计算(progressive loss computation)。这个损失函数是两个前向传递的损失值的凸组合,一个运用字面上的轮回数(1 × 16 模型为 16),另一个运用随机的较小轮回数。

接下来,作家探讨了在保持有效深度固定的同时改变轮回块大小的效果。他们将轮回块中的层数减半,轮回次数增加一倍,从块中有 16 层、轮回次数只有一次(16 × 1,即规范 transformer)的模型,过渡到块中只有一层、轮回次数有 16 次(1 × 16)的模型。

通过图 4 分析这些结果,作家发现在某些情况下,结合轮回和 Abacus 嵌入可以进一步提升功能。具体来说,在 OOD 课题上,有两个轮回的模型(8 × 2)产生的误差是纯非轮回模型(16 × 1)的一半,而在 100 + 的 OOD 课题上,其准确率也有所提升。

最后,在附录 A.7.3 中,作家改变了模型的有效深度,以分析参数数量对这项任务的影响,包括 Abacus、FIRE 和 NoPE 嵌入。虽然图 4 中的实验是对不同深度的公平比较,但纯粹的规范 transformer 模型比相应的轮回模型拥有更多的参数。在附录的表 3 中,作家记录了最接近百万的参数量。

单GPU训练一天,Transformer在100位数字加法上就达能到99%准确率

单GPU训练一天,Transformer在100位数字加法上就达能到99%准确率

实验

钻研者不仅对加法课题进行了探讨,还对乘法和排序进行了钻研。

整数乘法

图 5 展示了 Abacus 嵌入模型在 15 位数乘法的分布内准确率超过了之前的工作,且不需要用零将每一个操作数填充到相同长度。特别地,该钻研强调,与仅运用 FIRE 的基线相比,将 Abacus 嵌入与 FIRE 相结合也提升了分布课题中最难的分布准确率 (右下)。

单GPU训练一天,Transformer在100位数字加法上就达能到99%准确率

数组排序

表 1 展示了运用不同嵌入 ——FIRE、Abacus 及其组合 —— 训练的规范 transformer(八层)的功能。结果显示,组合嵌入方法增强了模型的泛化能力。

单GPU训练一天,Transformer在100位数字加法上就达能到99%准确率

如表 2 所示,钻研者观察到在将 Abacus+FIRE 嵌入组合与不同的模型架构(有效深度为 8)配对时,结果表现出混合性。

单GPU训练一天,Transformer在100位数字加法上就达能到99%准确率

Abacus 和相关嵌入

图 6 展示了将 Abacus 嵌入整合到更通用系统中的真正潜力,显示出 Abacus 嵌入与 FIRE 结合可以解锁远超 FIRE 嵌入处理课题的能力。 

单GPU训练一天,Transformer在100位数字加法上就达能到99%准确率

更多钻研细节,请参考原论文。

给TA打赏
共{{data.count}}人
人已打赏
工程

2D头像生成3D假造人开视频会,google新作让人难绷

2024-5-31 15:13:00

工程

高效、可泛化的高斯重修框架,只需3张视图即可快速推理,45秒便可完成优化

2024-6-3 15:13:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
搜索