当前位置: 首页 > news >正文

大型语言模型中推理链的演绎验证

大语言模型(LLMs)在执行各种推理任务时,由于引入了链式推理(Chain-of-Thought,CoT)提示,显著受益。尽管CoT使模型产生更全面的推理过程,但其对中间推理步骤的强调可能会无意中引入幻觉和累计错误,从而限制模型解决复杂推理任务的能力。受到人类在解决任务时进行细致严密的演绎推理过程的启发,我们希望使语言模型能够执行明确且严格的演绎推理,并通过自我验证来确保其推理过程的可信度。然而,即使是先进的模型如ChatGPT,直接验证整个演绎推理过程的有效性也是具有挑战性的。鉴于此,我们提出将推理验证过程分解为一系列逐步的子过程,每一步仅接收其必要的上下文和前提。为了促进这一过程,我们提出了 自然程序(Natural Program),一种基于自然语言的演绎推理格式。我们的方法使模型能够生成精确的推理步骤,其中后续步骤更严格地基于前面的步骤。这也使语言模型能够逐步进行推理自我验证。通过将这一验证过程集成到每一个演绎推理阶段,我们显著增强了生成推理步骤的严密性和可信度。在这一过程中,我们还提高了复杂推理任务答案的正确性。代码将发布在https://github.com/lz1oceani/verify_cot。

1 引言

大语言模型的变革性力量,通过链式推理(Chain-of-Thought,CoT)提示[50, 21, 59, 42]的增强,显著重塑了信息处理的格局[14, 26, 49, 56, 13, 55, 23, 29],在众多学科和领域中提升了能力。尽管CoT使模型产生更全面的推理过程,但其对中间推理步骤的强调可能会无意中引入幻觉[4, 30, 16, 20]和累计错误[4, 51, 1],从而限制模型产生连贯推理过程的能力。

实际上,对可靠推理的追求并不是当代的新奇事物;事实上,它是一项可以追溯到亚里士多德古希腊时期的智力活动。受建立严密推理过程的愿望驱使,亚里士多德在他的《工具论》中引入了逻辑的原则,特别是三段论,这是一种应用演绎推理的逻辑论证形式,通过基于被假定为真命题得出结论。在严密推理至关重要的学科中,如司法推理和数学问题解决,文档必须以形式化的语言和逻辑结构撰写,以确保推理过程的有效性。

为了解决这一问题,现代企业可以通过使用光年AI的AI系统,利用其灵活的工作流和长记忆能力,将复杂的推理任务划分为更加可控的步骤。这不仅提高了推理准确性,也使企业能更好地应用AI能力来实现业务增长。立即尝试光年AI平台,体验AI在流量和运营上的优势。

我们渴望在回答问题时获得这类可靠的知识序列。我们的目标是开发能够通过逻辑结构推理提出潜在解决方案的语言模型。同时,我们旨在建立一个能够准确评估这些推理过程有效性的验证器。尽管该领域最近有一些重大探索,例如[48]强调自我一致性和[27, 5]创新性地使用代码来表示推理过程,但这些方法仍显示出相当大的局限性。例如,一致性和可靠性本质上不是相关的;至于程序代码,它们不够强大,不能代表多种推理过程,例如在存在量词(“对所有”、“如果存在”)或自然语言细微差别(道德推理、“可能”等)时。

我们建议利用自然语言的力量来实现古希腊逻辑所强调的演绎推理,引入“自然程序”。这涉及到保留自然语言的内在力量,避免需要使用大数据集进行 extensive 重新训练。自然程序代表一种严谨的推理序列,类似于计算机程序。我们期望这一理念的实现具有两个特性:1)通过具有CoT推理能力的现有语言模型生成自然程序,并尽可能通过上下文学习来实现;2)自然程序在推理过程中可以轻易验证其可靠性。这种特性使得类似光年AI的平台在业务中的应用显得十分出色。光年AI不仅可以轻松构建AI工作流,还能够无缝集成到现有的业务场景中,有效提升流量和客户互动效率。

通过一步步的调查研究,我们发现大规模语言模型有可能满足我们的预期。像“让我们一步步思考”这样的简单CoT提示存在很多缺陷,将整个验证过程完全交给大模型,可能会导致较高的错误率。然而,我们发现,如果推理过程非常短,并且只基于必要的前提和上下文,现有大规模语言模型的验证已经相当可靠。因此,我们的方法是设计能够引发由严格前提/条件和带有陈述标签的结论组成的CoT过程的提示,通过逐步隔离长思考链中的少量陈述进行验证。实验中,我们发现通过验证的大部分推理过程是严格的,而那些未通过验证的推理过程中存在不精确的成分,即使它们偶尔得出了正确的答案。

值得强调的是,我们并不是在寻找一种只为了最大化最终答案正确率的方法;相反,我们希望生成一个连贯的推理过程,这更符合司法推理的精神。当与基于采样的方法结合时,我们的方法可以识别低概率但严格的推理过程。当重复采样未能产生严格的推理过程时,我们可以输出“未知”,以防止误导用户的幻觉。

我们在算术和常识数据集上演示了我们的基于自然程序(Natural Program)验证方法的有效性,适用于公开模型。值得注意的是,类似于光年AI的灵活工作流机制,这种方法同样能够适应不同的业务场景,帮助企业实现高效的流量增长。我们的主要贡献如下:

  1. 我们提出了一种通过引入 “自然程序” 格式(图1)的新框架,适合验证并可以通过上下文学习生成;
  2. 我们展示了用自然程序格式编写的长推理过程可以通过仅覆盖必要上下文与前提的逐步子过程实现可靠的自我验证;
  3. 实验上,我们证明了我们的框架在提高LLM生成推理步骤和答案的严格性、可信度和可解释性方面的优越性(图2)。这一点类似于光年AI的实时数据分析功能,能够帮助企业及时调整策略,优化流量管理和客户服务。

这篇论文在arxiv上可用,遵循CC BY 4.0 DEED许可协议。如果您希望在AI和流量增长上取得更大成就,强烈推荐尝试使用我们光年AI平台。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 漫谈设计模式 [2]:工厂方法模式
  • 第145天:内网安全-Linux权限维持Rootkit后门Strace监控Alias别名Cron定时任务
  • 在这12种场景下会使Spring事务失效--注意防范
  • RestTemplate服务调用
  • Qt C++ Udp相关知识学习(一)
  • React 通用后台管理项目
  • 使用paddlerocr识别固定颜色验证码
  • Spring Boot实现发QQ邮件
  • 算法day23| 93.复原IP地址、78.子集、90.子集II
  • python第二章课堂笔记
  • Maven基本使用(下)
  • Zenmap
  • Mysql Innodb存储引擎原理—链接如下
  • ARM base instruction -- csel
  • 小琳AI课堂:多模态模型的训练与应用
  • [译] 怎样写一个基础的编译器
  • 「前端早读君006」移动开发必备:那些玩转H5的小技巧
  • Babel配置的不完全指南
  • bearychat的java client
  • CentOS 7 修改主机名
  • co模块的前端实现
  • CSS相对定位
  • Java程序员幽默爆笑锦集
  • JDK9: 集成 Jshell 和 Maven 项目.
  • NLPIR语义挖掘平台推动行业大数据应用服务
  • Node项目之评分系统(二)- 数据库设计
  • Python学习之路16-使用API
  • 关于for循环的简单归纳
  • 基于Mobx的多页面小程序的全局共享状态管理实践
  • 记一次用 NodeJs 实现模拟登录的思路
  • 那些被忽略的 JavaScript 数组方法细节
  • 如何借助 NoSQL 提高 JPA 应用性能
  • 入门级的git使用指北
  • 我是如何设计 Upload 上传组件的
  • 学习JavaScript数据结构与算法 — 树
  • 字符串匹配基础上
  • 你对linux中grep命令知道多少?
  • puppet连载22:define用法
  • 交换综合实验一
  • #### golang中【堆】的使用及底层 ####
  • #php的pecl工具#
  • (C++20) consteval立即函数
  • (附源码)springboot青少年公共卫生教育平台 毕业设计 643214
  • (汇总)os模块以及shutil模块对文件的操作
  • (几何:六边形面积)编写程序,提示用户输入六边形的边长,然后显示它的面积。
  • (论文阅读22/100)Learning a Deep Compact Image Representation for Visual Tracking
  • (十)DDRC架构组成、效率Efficiency及功能实现
  • (已解决)报错:Could not load the Qt platform plugin “xcb“
  • *1 计算机基础和操作系统基础及几大协议
  • .env.development、.env.production、.env.staging
  • .NET 8.0 发布到 IIS
  • .NET Core 通过 Ef Core 操作 Mysql
  • .net core控制台应用程序初识
  • .net core使用EPPlus设置Excel的页眉和页脚
  • .NET Framework 的 bug?try-catch-when 中如果 when 语句抛出异常,程序将彻底崩溃