DeepConf:基于置信度的深度思考方法

DeepConf:基于置信度的深度思考方法

DeepConf:基于置信度的深度思考方法

Deep Think with Confidence — 提升大语言模型推理效率与准确性的创新方法

Meta AI & 加州大学圣地亚哥分校 | Yichao Fu, Xuewei Wang, Yuandong Tian, Jiawei Zhao

lightbulb引言

DeepConf(Deep Think with Confidence)是由Meta AI与加州大学圣地亚哥分校联合提出的一种创新方法,旨在通过利用模型内部的置信度信号来显著提升大语言模型(LLM)在测试时的推理效率和性能。该方法不需要额外的模型训练或超参数调整,可以无缝集成到现有的服务框架中,在保持高质量推理的同时,大幅减少计算资源消耗。

psychology核心原理

DeepConf的核心思想是让大模型在推理过程中实时监控置信度,动态淘汰低置信度路径,并对高置信度路径进行加权投票,从而兼顾准确率与效率。具体原理包括:

  • check_circle利用模型内部置信度信号评估每条推理路径的可靠性
  • check_circle通过滑动窗口评估推理路径的整体置信度,特别关注最后几步的置信度
  • check_circle记录推理链中最差的一步,如果中间有明显错误,则降低该路径的置信度
  • check_circle基于置信度过滤低质量路径,并对高置信度路径进行加权投票

推理路径置信度可视化

低置信度路径(被淘汰)
高置信度路径(保留)

architecture系统架构

DeepConf支持两种工作模式,分别适用于不同的应用场景:

离线模式

在推理路径完全生成后,根据置信度筛选已完成的推理路径,然后根据质量对投票进行加权。这种方法能最大化提升答案的准确性。

Python伪代码
def offline_deepconf(paths, threshold=0.1):
    # 计算每条路径的置信度分数
    confidence_scores = [calculate_confidence(p) for p in paths]
    
    # 筛选置信度最高的前90%路径
    filtered_paths = [p for i, p in enumerate(paths) 
                     if confidence_scores[i] > np.percentile(confidence_scores, threshold*100)]
    
    # 基于置信度加权投票
    weighted_votes = {}
    for p in filtered_paths:
        answer = extract_answer(p)
        confidence = calculate_confidence(p)
        weighted_votes[answer] = weighted_votes.get(answer, 0) + confidence
    
    # 返回得票最高的答案
    return max(weighted_votes.items(), key=lambda x: x[1])[0]

在线模式

在推理过程中实时评估置信度,当置信度降至阈值以下时立即停止生成,避免浪费计算资源。这种方法能边走边筛选,提升效率甚至精度。

Python伪代码
def online_deepconf(model, prompt, stop_threshold):
    # 离线预热阶段
    initial_paths = [model.generate(prompt) for _ in range(16)]
    confidence_scores = [calculate_confidence(p) for p in initial_paths]
    threshold = np.percentile(confidence_scores, stop_threshold*100)
    
    # 在线生成阶段
    final_paths = []
    for _ in range(num_paths):
        path = []
        for token in model.generate_stream(prompt):
            path.append(token)
            # 实时计算当前路径的置信度
            current_confidence = calculate_confidence(path)
            if current_confidence < threshold:
                break
        final_paths.append(path)
    
    return final_paths

insights设计思想

DeepConf的设计思想源于对大语言模型推理过程的深入理解:

  • auto_awesome置信度作为关键指标:大语言模型在生成过程中实际上"知道"自己何时不确定,DeepConf充分利用这一内在信号
  • auto_awesome实时监控与干预:不同于传统方法在完整生成后才评估置信度,DeepConf在生成过程中就捕捉推理错误
  • auto_awesome平衡准确率与效率:通过动态过滤低置信度路径,既提高了最终答案的准确性,又减少了无效计算
  • auto_awesome通用性与即插即用:无需额外训练或超参数调整,可无缝集成到现有框架中

trending_up性能表现

DeepConf在多个基准测试中展现出卓越的性能:

99.9%
AIME 2025准确率
84.7%
Token减少量
10%
平均准确率提升
  • star在AIME 2025上达到99.9%的准确率(基线为97%)
  • star在5个模型×5个数据集上实现普适性增益
  • star在线模式在所有基准测试中节省33%-85%的token
  • star使用GPT-OSS-120B. 在减少85%的token消耗下,仍达到97.9%的准确率

code技术实现

DeepConf的技术实现主要包括以下几个关键组件:

置信度评估方法

置信度计算
def calculate_confidence(path):
    # 1. 滑动窗口平均置信度
    window_size = 5
    window_confidences = []
    for i in range(len(path) - window_size + 1):
        window = path[i:i+window_size]
        window_confidences.append(np.mean([token.confidence for token in window]))
    
    # 2. 最后几步的置信度权重更高
    final_steps_weight = 0.4
    final_confidence = np.mean(window_confidences[-int(len(window_confidences)*final_steps_weight):])
    
    # 3. 记录最差的一步
    worst_step = min([token.confidence for token in path])
    
    # 4. 综合置信度分数
    combined_confidence = 0.6 * final_confidence + 0.4 * (1 - worst_step)
    
    return combined_confidence

过滤与投票机制

过滤与加权投票
def filter_and_vote(paths, filter_percentile=0.1):
    # 计算每条路径的置信度
    confidences = [calculate_confidence(p) for p in paths]
    
    # 确定过滤阈值
    threshold = np.percentile(confidences, filter_percentile * 100)
    
    # 过滤低置信度路径
    filtered_paths = [(p, c) for p, c in zip(paths, confidences) if c >= threshold]
    
    # 提取答案并加权投票
    answer_votes = {}
    for path, confidence in filtered_paths:
        answer = extract_answer(path)
        if answer not in answer_votes:
            answer_votes[answer] = 0
        answer_votes[answer] += confidence
    
    # 返回得票最高的答案
    return max(answer_votes.items(), key=lambda x: x[1])[0]

apps应用场景

DeepConf适用于多种大语言模型和任务场景:

  • check_circle_outline模型适用性:适用于从8B到120B参数规模的各种开源模型
  • check_circle_outline数学推理:在AIME、HMMT等数学竞赛中表现出色
  • check_circle_outline代码生成:提高代码生成任务的准确性和效率
  • check_circle_outline逻辑推理:增强复杂逻辑问题的解决能力
  • check_circle_outline资源受限环境:在计算资源有限的情况下提供高性能推理

DeepConf已成功集成到vLLM等推理框架中,仅需约50行代码即可实现完整功能,为实际应用提供了便捷的部署方案。

发表评论

人生梦想 - 关注前沿的计算机技术 acejoy.com 🐾 步子哥の博客 🐾 背多分论坛 🐾 知差(chai)网 🐾 DeepracticeX 社区 🐾 老薛主机 🐾