CPO:隐含于CoT与ToT两者间的推理平衡

自OpenAI推出o1以来,随着reasoning scaling law的大行其道‌,很多研究者都将目光聚焦在“reasoning”之上,而在仅reasoning维度上,确实存在着非常深邃且让人着迷的可探索空间,毕竟这意味着围绕system2展开的下一轮认知范式的开启。

众所周知,CoT与ToT作为当前两种流形的链式思维框架,在诸多复杂长链推理场景中不管是通过早期的prompt还是通过搭载agent方式,均取得了惊艳的效果。

但我想,CoT与ToT两种框架在宏观的reasoning范式以及对于模型自身的inference来讲,两者似乎存在着一些本质的差异:即CoT通过上下文提示激活了模型内隐变量参数化推理模式,ToT则通过多步探索与推理显式的连续表征并泛化了长链的联合概率分布。

在推理过程中使用ToT方式可以增加推理性能,但由于增加了推理次数,导致耗时过大。目前待解决的问题是如何能在推理时既保持很好的推理能力,又保持推理耗时不会过大。

结合近期看到的这篇文章提出了CPO(Chain of Preference Optimization)方式,已期达到CoT与ToT两种推理范式在效率与探索、在train-time与test-time compute间的的平衡。

1a10fb27b70943e29aa991f6a0492934.jpg

该方法使用ToT方式来探索推理路径并得到一批数据集,并结合DPO方式进行微调训练,从而让模型在推理时候能直接输出与采用ToT相近的效果的推理能力。

采用CPO获取数据的大致过程:

- 生成思考:对于每个推理步骤,生成多个思考内容。

- 状态评价:让LLM去进行二分类评估这个思考是否有助于回答问题,并对结果进行从1—10的打分评价。

- 搜索和收集:使用BFS来选择路径,保留评价分数最高的n个思考并进行下一步思考,当生成的内容包含“最终答案,结束搜索并返回路径。

1784c7f84b2a40a4ac5c95aa1b906527.jpg

值得注意的本文创新点在于:

采用CPO方式构建数据集时,将选择的步骤数据和未选择的步骤数据都保留了下来。之前的工作是只保留了正确的步骤数据,然后进行SFT的微调训练。但本文认为未选择的步骤数据也是一种信息,和选择的步骤数据一起构成偏好数据集对增强推理能力可能会更有效果,并在实验中得到验证。

而我认为上述在探索推理中的错误步骤甚至导致的错误结果对于模型内隐变量参数化推理下的泛化性表征意义重大。

这也再一次让我回忆起去年给了我关于RL与LLM融合思想重要提示的AD算法与AoT框架思想。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/56533.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

利用Excel数据合并到Word功能,官方名为“Word邮件合并”

### 利用Excel数据合并到Word功能,官方名为“Word邮件合并”简介 #### 引言 在日常办公场景中,我们经常需要将Excel中的数据批量插入到Word文档中,比如制作员工工资条、邀请函或是客户信息表等。传统的手工操作不仅耗时耗力,还容易…

Javascript 构造http请求

构造HTTP请求有多种方式,此种为使用javascript 构造http请求的方法 构造HTTP请求_vscode post 请求-CSDN博客 web/static/js/user/login.js ; var user_login_ops {init:function(){this.eventBind();},eventBind:function(){$(".login_wrap .do-login"…

博科测试IPO上市丨为行业提供智能测试综合解决方案

近年来,汽车制造、大型基础设施建设以及新能源开发等领域,对高精度、高效率的测试解决方案需求迫切。为推动行业发展,博科测试通过多年的技术积累以及自主创新,围绕伺服液压测试和汽车测试试验领域,积累了多项核心技术…

Java枚举封装状态值与类型转换

前言 在许多应用中,我们需要处理具有固定数量的状态或选项的数据。例如,在库存管理系统中,产品可以有不同的状态,如“入库”、“出库”等。通过使用 Java 的枚举(enum),我们可以有效地表示这些…

Golang | Leetcode Golang题解之第486题预测赢家

题目: 题解: func PredictTheWinner(nums []int) bool {return total(nums, 0, len(nums) - 1, 1) > 0 }func total(nums []int, start, end int, turn int) int {if start end {return nums[start] * turn}scoreStart : nums[start] * turn total…

AI 视频工具合集

🐣个人主页 可惜已不在 🐤这篇在这个专栏AI_可惜已不在的博客-CSDN博客 🐥有用的话就留下一个三连吧😼 目录 前言: 正文: ​ 前言: AI 视频,科技与艺术的精彩融合。它借助先进的人工智能技术,为影像创…

SLAM评估工具evo学习

参考链接 官方github:https://github.com/MichaelGrupp/evo 一、 指令分析 1.1 tum数据集,evo_ape指令 evo_ape {kitti,tum,euroc,bag} -h evo_ape tum -h(1) 终端输入: evo_ape tum -h (2) 终端打印: usage: evo_ape tum …

Android Framework AMS(07)service组件启动分析-1(APP到AMS流程解读)

该系列文章总纲链接:专题总纲目录 Android Framework 总纲 本章关键点总结 & 说明: 说明:本章节主要解读应用层service组件启动的2种方式startService和bindService,以及从APP层到AMS调用之间的打通。关注思维导图中左侧部分即…

ISO 21434标准下汽车软件开发的网络安全核心要求

ISO 21434《道路车辆——汽车网络安全工程》是一个针对汽车网络安全的国际标准,它对汽车软件开发提出了明确的要求,以确保车辆在整个生命周期内的网络安全。 以下是ISO 21434网络安全标准对汽车软件开发的主要共同要求: 1. 安全意识与设计 …

microsoft edge浏览器卡死问题

win11经常遇到microsoft edge浏览器卡死的情况,有时候是一会没用浏览器就全部卡死,有时候是锁屏或者电脑休眠浏览器就不能用,找了很多的办法都没好使,用以下方法好使了: edge浏览器中打开 edge://settings/system 把 …

Cornerstone3D Tools对影像进行交互(中篇)-注释类工具使用

🏄‍♀️ 前言 这里是关于Cornerstone3D Tools对影像进行交互(中篇 )- 注释类工具的使用介绍。在 Cornerstone3D Tools对影像进行交互(上篇)-基础交互工具及同步器 一文中主要介绍了一下基础交互类工具的使用,感兴趣的小伙伴可以…

【优先算法】--双指针1

“一念既出,万山无阻。”加油陌生人! 目录 1.双指针--移动零 2.双指针-复写零 ok,首先在学习之前,为了方便大家后面的学习,我们这里需要补充一个知识点,我这里所谓的指针,不是之前学习的带有…

Linux系统移植

目录 一、简介 嵌入式Linux系统移植组成部分: 二、搭建交叉开发环境 选择交叉开发环境的原因: 1.Ubuntu和Windows下的文件互传 2.Ubuntu 下 NFS和 SSH服务开启 3.Ubuntu 交叉编译工具链安装 3.1修改环境变量 3.2安装相关库 三、bootloader的选择和移植 编译U-boot 总…

中大型企业网络架构和建设方案

1. 需求分析 (1)用户需求: 员工访问:支持内部员工通过有线和无线网络访问企业资源。 远程访问:支持远程办公员工通过VPN安全访问企业内部资源。 合作伙伴和客户访问:允许外部合作伙伴和客户通过受控渠道访问…

Linux 外设驱动 应用 2 KEY 按键实验

2 按键 2.1 按键介绍 按键是指轻触式按键开关,也称之为轻触开关。按键开关是一种电子开关,属于电子元器件类,最早出现在日本,称之为:敏感型开关,使用时以满足操作力的条件向开关操作方向施压开关功能闭合…

东方通 TongWebV7 Docker 部署与 Spring Boot 集成指南

东方通 TongWebV7 Docker 部署与 Spring Boot 集成指南 文章目录 东方通 TongWebV7 Docker 部署与 Spring Boot 集成指南一 TongWeb V7二 Spring Boot JAR 配置文件三 修改 maven 依赖四 docker compose 启动项目五 查看 docker 信息 本文详细讲解了如何在 Docker 环境中将东方…

【笔记】Day2.5.1查询运费模板列表(未完

(一)代码编写 1.阅读需求,确保理解其中的每一个要素: 获取全部运费模板:这意味着我需要从数据库中查询所有运费模板数据。按创建时间倒序排序:这意味着查询结果需要根据模板的创建时间进行排序&#xff0…

嵌入式学习-IO进程-Day02

嵌入式学习-IO进程-Day02 标准IO函数接口 fread,fwrite 文件指针偏移函数 文件IO 概念 文件IO的特点 文件描述符 文件IO的函数接口 open 打开文件 close 关闭文件 read 读函数 write 写函数 lseek 移动文件指针 标准IO和文件IO对比 目录操作函数 opendir 打开目录 c…

套接字Socket

套接字 在网络中通过 IP 地址来表示和区别不同的主机,通过端口号来标识和区分一台主机中的不同应用进程,端口号拼接到 IP 地址即构成套接字 Socket。在网络中采用发送方和接收方的套接字来识别端点。套接字,实际上是一个通信端点&#xff0c…

C语言初阶小练习2(三子棋小游戏的实现代码)

这是C语言小游戏三子棋的代码实现 test.c文件是用来测试的部分 game.h文件是用来声明我们说写出的函数 game.c文件是用来编写我们的功能实现函数部分 1.test.c #define _CRT_SECURE_NO_WARNINGS 1 #include"game.h" void menu() {printf("***************…