增强 LLM 推理能力:揭示代码启示链路

提升 LLM 推理能力:揭示代码启示链路的秘密

主要要点

  • Code of Chain (CoC) 是一种与语言模型交互的新方法,通过代码编写与选择性代码仿真相结合来增强推理能力。
  • CoC 扩展了语言模型在逻辑、算术和语言任务中的能力,尤其是那些需要结合这些技能的任务。
  • 通过 CoC,语言模型可以编写代码并模拟其中无法编译的部分,提供了解决复杂问题的独特方法。
  • CoC 对大型和小型语言模型均显示出有效性。

关键思想是鼓励语言模型将语言子任务格式化为灵活的伪代码,并使编译器能够明确捕捉到未定义行为,并通过同一语言模型模拟(作为“LMulator”)来处理。

介绍

新的语言模型(LM)提示、通信和训练技术不断涌现以增强LM的推理和性能能力。其中之一是 Chain of Code (CoC)的发展,这是一种旨在提升语言模型中基于代码的推理的方法。这种技术结合了传统编码和创新的LM代码执行仿真,为解决复杂的语言和算术推理任务提供了强大的工具。

CoC 的特点是能够处理将逻辑、算术和语言处理相结合的复杂问题,而对于标准语言模型来说,这是一个长期以来一直困难的技能。 CoC 的有效性不仅限于大型模型,而且适用于各种大小的模型,展示了其在人工智能推理中的通用性和广泛适用性。

理解 Chain of Code

CoC 是语言模型功能上的一次范式转变;这不仅仅是一种增加从LM中获得所需响应的机会的简单提示策略。相反,CoC重新定义了LM处理上述推理任务的方法。

在其核心,CoC使LM能够不仅编写代码,还可以模拟其中的部分代码,特别是那些不能直接执行的部分。这种双重性使LM能够处理更广泛的任务范围,将语言细微差别与逻辑和算术问题解决相结合。CoC 能够将语言任务格式化为伪代码,有效地弥补传统编码与人工智能推理之间的差距。这种桥梁实现了灵活和更强大的复杂问题解决系统。LMulator 是 CoC 增强能力的主要组成部分,它能够模拟和解释代码执行的输出,这对于 LM 而言通常不直接可用。

CoC 已在不同基准测试中取得了显著的成功,明显优于 Chain of Thought 等现有方法,特别是在需要语言和计算推理相结合的情况下。

实验表明,Chain of Code 在多个基准测试中优于 Chain of Thought 和其他基线模型;在 BIG-Bench Hard 上,Chain of Code 达到 84%,比 Chain of Thought 高出 12%。

实施 Chain of Code

实施 CoC 需要一种独特的方法来处理推理任务,集成编码和仿真过程。CoC 鼓励 LM 将复杂推理任务格式化为伪代码,然后进行解释和解决。此过程包括多个步骤:

  1. 确定推理任务:确定需要推理的语言或算术任务
  2. 编写代码:LM编写伪代码或灵活的代码片段,概述解决方案
  3. 代码的模拟:对于不能直接执行的代码部分,LM模拟期望的结果,从而有效地模拟代码执行过程
  4. 合并输出:LM将实际代码执行和模拟的结果相结合,形成综合的问题解决方案

通过这些步骤,LM可以通过“以代码思考”来处理更广泛的推理问题,从而增强其问题解决能力。

LMulator作为CoC框架的一部分,能够在以下几个特定方面显著帮助优化代码和推理过程:

  • 错误识别和模拟:当语言模型编写的代码存在错误或非可执行部分时,LMulator可以模拟出代码运行时的行为,揭示逻辑错误、无限循环或边缘情况,并引导语言模型重新思考和调整代码逻辑。
  • 处理未定义行为:在代码涉及未定义或模棱两可的行为时,标准解释器无法执行,LMulator使用语言模型对上下文和意图的理解来推断输出或行为应该是什么,提供合理的、模拟的输出,传统执行会失败的情况下。
  • 改进代码的推理能力:在需要混合语言和计算推理的情况下,LMulator允许语言模型迭代自己的代码生成,模拟不同方法的结果,有效地通过代码’reasoning’(推理)获得更准确和高效的解决方案。
  • 边缘案例探索:LMulator可以通过模拟不同的输入来探索和测试代码如何处理边缘案例,这在确保代码健壮性和能够处理各种场景方面特别有用。
  • 学习的反馈循环:当LMulator模拟和识别代码中的问题或潜在改进时,这些反馈可以被语言模型用来学习和改进其编码和问题解决方法,这是一个持续的学习过程,随着时间的推移提高模型的编码和推理能力。

LMulator通过提供模拟和迭代改进的平台,增强了语言模型编写、测试和优化代码的能力。

结论

CoC技术是增强语言模型推理能力的一项进展。CoC通过将代码编写与选择性代码模拟相结合,拓宽了语言模型可以解决的问题范围。这种方法展示了人工智能处理更复杂、实际任务所需的细致思考的潜力。重要的是,CoC已被证明在小型和大型语言模型中均表现出色,为越来越多的小型模型提供了提升其推理能力和接近大型模型效果的途径。

若要了解更详细信息,请参阅完整论文Matthew Mayo@mattmayo13)拥有计算机科学硕士学位和数据挖掘研究生文凭。作为VoAGI的首席编辑,Matthew致力于使复杂的数据科学概念易于理解。他的专业兴趣包括自然语言处理、机器学习算法和探索新兴的人工智能。他的使命是在数据科学社区中使知识民主化。Matthew从6岁开始编码。