大模型对语言有自己的理解!MIT论文揭示大模型”思维过程“ | ICML 24

💡 原文中文,约3000字,阅读约需7分钟。
📝

内容提要

MIT的研究发现,大模型通过学习代码文本逐渐掌握了其背后的含义,表明大模型有希望更深入理解语言和世界。研究者通过构建合成数据集训练了一个标准Transformer架构的模型,发现模型经历了胡言乱语、语法习得和语义习得三个阶段。实验结果排除了探测器自己学会语义映射的可能性,进一步证实了生成模型的确掌握了代码的含义。

🔎

延伸解读

三阶段训练揭示模型能力跃迁

研究将训练过程划分为胡言乱语、语法习得和语义习得三个阶段。前50%训练步中,模型输出重复且准确率低;50%到75%时,程序多样性提高,困惑度下降,但准确率仅从10%升至25%;最后25%准确率急剧提升至90%以上。这一非线性跃迁表明,模型对代码语义的掌握并非渐进积累,而是在语法结构稳固后突然涌现,为理解大模型能力发展提供了具体案例。

探测器实验排除“自我学会”可能

为验证模型是否真正编码语义,作者设计了语义探测干预实验,通过“flip”反转部分指令含义或“adversarial”随机打乱所有指令语义。若隐藏状态仅含句法,探测器应能同等提取新语义;但结果显示探测器性能显著下降,尤其在对抗模式下更明显。这有力排除了探测器自行学会语义映射的可能,证实生成模型的隐藏状态确实编码了程序的实际语义,而非仅统计相关性。

隐藏状态包含未来规划信息

实验发现,探测器不仅能从当前隐藏状态预测同时间步的执行状态,还能预测后续时间步的状态。例如,在生成“move”时,隐藏状态已包含下一步“turnLeft”将导致机器人朝向改变的信息。这表明模型在生成每一步时,已对后续操作有所预期和规划,展现出初步的面向未来的推理能力,而不仅仅是对已生成内容的被动编码。

❓

Q&A

MIT的研究发现大模型如何理解语言的?

MIT的研究发现,大模型通过学习代码文本逐渐掌握其背后的含义,表明它有能力更深入理解语言和现实世界。

大模型的训练过程分为哪几个阶段?

大模型的训练过程分为胡言乱语、语法习得和语义习得三个阶段。

在语义习得阶段,大模型的表现如何?

在语义习得阶段,模型的准确率大幅提升,能够准确完成给定任务,表现出较强的语义理解能力。

研究中使用了什么样的合成数据集?

研究中构建了一个由程序代码及其对应输入输出组成的合成数据集,使用Karel语言编写程序代码。

探测器在研究中起到了什么作用?

探测器用于预测程序执行状态,显示模型具备初步推理能力,并帮助验证模型是否真正理解代码的语义。

研究结果如何排除了探测器自己学会语义映射的可能性?

通过改变程序操作的语义解释规则进行实验,探测器性能显著下降,证明其性能提升是因为生成模型掌握了代码的含义。

🏷️

标签

➡️

继续阅读