变压器语言模型在算法学习上的限制

💡 原文中文,约1600字,阅读约需4分钟。
📝

内容提要

多项研究探讨Transformer大语言模型在复合任务上的局限,发现其多步推理实为线性子图匹配,任务越复杂性能下降越快。设计决策影响组合泛化能力,生成中间输出、数据增强及辅助任务可提升泛化,部分方法在COGS等基准上达最先进水平。

🔎

延伸解读

多步推理的本质:线性子图匹配

文章指出,Transformer模型的多步推理实际上被简化为线性子图匹配,而非真正的系统性解决问题。这意味着模型可能只是匹配训练中见过的模式,而非理解推理步骤。因此,当任务复杂度增加时,性能会快速下降。这一发现提醒我们,模型在简单任务上的成功不一定能推广到更复杂的场景。

设计决策与组合泛化能力

通过探索Transformer的设计空间,研究发现某些设计决策能显著影响模型的归纳偏差,并提高组合泛化能力。例如,生成中间输出、数据增强和辅助任务等方法被证明有效,部分方法在COGS和PCFG基准上达到了最先进水平。这表明,除了模型规模,架构和训练策略对泛化也至关重要。

长度泛化与训练数据需求

文章提到,Transformer在算法任务上的长度泛化能力有限,且在某些任务中需要大量训练数据才能泛化。例如,在关系推理任务中,回归任务需要大量数据,而下一个令牌预测任务甚至出现“反比例尺律”:随着嵌入维度增加,泛化能力反而下降。这提示我们,模型容量与泛化之间可能存在权衡。

改进方向:中间输出与数据增强

多项研究表明,通过生成中间输出、数据增强和辅助任务可以提升Transformer的组合泛化能力。例如,在SCAN数据集上,辅助序列预测任务提高了模型理解命令组合结构的能力;在CLEVR-CoGenT和COGS上,数据增强方法也取得了最先进的结果。这些方法为克服模型局限性提供了实用途径。

❓

Q&A

Transformer大语言模型在解决复合任务时有什么根本性局限?

研究发现,Transformer模型虽然多步推理性能出色,但其解决复合任务的方式是将多步推理化简为线性子图匹配,并未发展出系统性的问题解决方法。随着任务复杂度增加,模型性能会快速下降。

哪些设计决策能提升Transformer的组合泛化能力?

通过探索Transformer的设计空间,发现一些设计决策对模型的归纳偏差有很大影响,可以显著提高组合泛化能力,并在各种复合任务中实现比文献报道更好的泛化结果,在COGS和PCFG基准上达到最先进水平。

如何提高Transformer模型在算术运算上的准确性?

研究提出通过分解数字的方法,称为“Calculon”,并与GPT-3在加减乘任务上对比。在五位数加法任务上,Calculon的准确率提高了63%。

生成中间输出对Transformer组合泛化有什么作用?

通过生成中间输出来组合函数,比不生成中间输出更有效地推广到未见过的组合。此外,训练数据对模型组合未见过的函数的能力有显著影响,模型后半部分的注意力层对组合性至关重要。

Transformer在关系推理任务中的泛化表现如何?

对于回归任务,Transformer在训练时具有泛化性,但需要大量训练数据;对于具有符号标签的下一个令牌预测任务,存在“反比例尺律”:随着嵌入维度增加,Transformer无法泛化。通过每个头部添加两个可训练参数可减少所需数据量。

有哪些数据增强方法可以改善Transformer的组合泛化?

研究提出基于数据分布的组合建模通用框架,证明针对任何可分解任务都存在数据转换函数,可在训练数据上产生新的正确例子。即使未知组合函数,也能识别这些转换并对普通RNN和Transformer进行数据增强,在CLEVR-CoGenT和COGS上取得优异结果。

🏷️

标签

➡️

继续阅读