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

Uncert-CoT: 计算不确定性判断是否启用CoT

论文标题

Uncertainty-Guided Chain-of-Thought for Code Generation with LLMs

论文地址

https://arxiv.org/pdf/2503.15341

作者背景

北京大学

动机

CoT方法将问题分解为一系列中间步骤,从而模拟人类的推理过程。这在许多复杂的推理任务中表现优异,尤其是在代码生成领域。然而,它最明显的缺点是可能会“过度思考”——在简单问题上进行了大量不必要的反思与推理,不仅浪费了计算资源,还可能导致生成的代码错误。

在这里插入图片描述

为了解决这个问题,本文提出了不确定性感知的链式思维(UnCert-CoT)方法,通过在生成过程中实时评估不确定性,来判断何时进行推理,何时直接生成代码

本文方法

UnCert-CoT通过引入不确定性评估来解决“过度思考”问题。其核心思想是,在LLM生成每一行代码时,首先计算当前的不确定性值。如果不确定性较高,则启动CoT推理,生成多条推理路径并选择最有可能正确的代码行;如果不确定性较低,则直接生成代码,避免冗余的推理过程。

在这里插入图片描述

如上图所示,限定每次调用LLM时只生成一行代码,生成完成后基于解码的概率分布计算不确定性。作者采用了两种不确定性计算方法:

  • 基于熵的方法 :通过计算生成预测的熵值来衡量不确定性。如果熵值较高,说明模型对预测的结果不确定

  • 基于概率差异的方法 :通过计算模型预测的最高概率与次高概率之间的差异来判断不确定性。如果两者差异较小,表示模型对当前预测的信心较低

实验结果

一、与其他CoT方法比较

在这里插入图片描述

对照组说明:

  • Base Model :使用贪婪搜索方法生成最终结果。

  • Zero-shot CoT :直接将需求输入LLMs,添加“# Let’s think step by step.”后生成代码。

  • Self-planning :提供几个示例以帮助LLMs生成正确的代码。

  • CoT-Decoding :使用Zero-shot CoT生成多个样本,并选择置信度最高的答案作为最终结果

二、不同Code模型上的表现

UnCert-CoT在不同LLMs上均表现出显著的性能提升,证明了此方法的鲁棒性

在这里插入图片描述

三、不同的不确定性阈值

在这里插入图片描述
在这里插入图片描述

相关文章:

  • Slidev使用(一)安装
  • MySQL的sql语句后/G是什么作用?
  • Mysql增删改查
  • 怎样实现CAN数据的接收和发送?
  • 基于Python的3D贴图制作技术研究与实践
  • 数据库基础知识点(系列五)
  • 深入了解 Git Merge:用法、类型与合并冲突处理
  • GPT Researcher 的win docker安装攻略
  • Postman 下载文件指南:如何请求 Excel/PDF 文件?
  • 递归、搜索与回溯第四讲:floodfill算法
  • ​macro-F1(宏平均F1)​和micro-F1(微平均F1)
  • 在kali linux中配置hive(mysql元数据库)
  • 现阶段高校的人工智能方案培训如何?
  • MVC基础概念及相应代码示例
  • Nextjs15 - middleware的使用
  • LeetCode算法题(Go语言实现)_11
  • (每日一道算法题) K 个一组翻转链表
  • 2025宠物智能喂养设备全栈开发方案:Python驱动的高效实现路径
  • IntelliJ IDEA创建Maven工程
  • Ardupilot开源无人机之Geek SDK进展2025Q2
  • 印度外交秘书:“朱砂行动”不针对军事设施,无意升级事态
  • 上任后首访,德国总理与法国总统举行会晤
  • 上市不足一年,吉利汽车拟私有化极氪并合并:整合资源,杜绝重复投入
  • 超燃!走过莫斯科街头的“中国排面”
  • 马上评|不再提“智驾”,新能源车企回归理性
  • 陈雯出任外交部离退休干部局局长,此前为外交部办公厅副主任