XoT:一种新的大语言模型的提示技术

这是微软在11月最新发布的一篇论文,题为“Everything of Thoughts: Defying the Law of Penrose Triangle for Thought Generation”,介绍了一种名为XOT的提示技术,它增强了像GPT-3和GPT-4这样的大型语言模型(llm)解决复杂问题的潜力。

当前提示技术的局限性

LLM的最新进展通过将复杂的问题分解成更易于管理的“思想”,然后通过自然语言提示表达出来,从而实现了解决问题的新方法。但是大多数现有的提示技术都有局限性:

输入-输出(IO)提示仅适用于具有单步解决方案的简单问题,缺乏灵活性。

思维链(CoT)能够逐步解决问题,但仅限于线性思维结构,限制了灵活性。

思维树(ToT)和思维图(GoT)允许更灵活的思维结构,如树或图。但是它们需要LLM本身来评估中间思想,通过多个LLM调用产生大量的计算成本。

从本质上讲,当前的提示技术面临着“彭罗斯三角”约束——它们最多可以实现两个属性(性能、效率、灵活性),但不能同时实现这三个属性。

XOT

为了解决这些限制,微软开发了一种新的提示技术,称为XOT (Everything of Thoughts)。XOT集成了强化学习和蒙特卡罗树搜索(MCTS),将外部知识注入提示过程。这增强了llm的功能,并同时实现了更高的性能、效率和灵活性。

XOT的关键组件有:

MCTS模块-使用轻量级策略和价值网络,通过模拟有效地探索任务的潜在思想结构。

LLM求解器-利用LLM的内部知识对MCTS的思想进行提炼和修正。这种协作过程提高了“思维”质量。

XOT框架包括以下关键步骤:

预训练阶段:MCTS模块在特定任务上进行预训练,以学习有关有效思维搜索的领域知识。轻量级策略和价值网络指导搜索。

思想搜索:在推理过程中,预训练的MCTS模块使用策略/价值网络来有效地探索和生成LLM的思想轨迹。

思想修正:LLM审查MCTS的思想并识别任何错误。修正的想法是通过额外的MCTS模拟产生的。

LLM推理:将修改后的想法提供给LLM解决问题的最终提示。

下面的图表说明了XOT框架:

MCTS模块针对特定任务进行预训练,使用策略和价值网络来指导搜索和学习领域知识。

在思想搜索过程中,预训练的MCTS利用策略网络和价值网络有效地探索搜索空间并生成思想轨迹。这包括迭代地选择、展开、计算和反向传播节点。

思想轨迹提供给LLM作为提示。

LLM利用其内部知识来检测思想中的任何错误。如果发现错误,则使用MCTS模块通过额外的模拟来修改思想。

这个过程不断重复,直到LLM使用修改后的高质量思想解决问题。

XOT的一个示例

下面我们使用XOT解决Pocket Cube问题(一个2x2x2的魔方)来作为示例来介绍它是如何运作的

选择:算法从根节点开始,在当前状态下从可用的单步思想生成集中选择一个动作。这个过程一直持续到到达当前树中的一个叶节点。选择以PUCT算法为指导,目标是最大化上置信度界(UCB)。

评估和扩展:在到达先前未选择的叶节点时,会扩展到下一步进行新思想探索的状态。这种展开涉及到对状态的值和动作概率的评估,用θ参数化的神经网络建模,即(Pθ(s), vθ(s)) = fθ(s)。其中Pθ(s)是s上所有动作的先验概率,vθ(s)表示其预测状态值。这两个值被保留和存储用于备份,状态被标记为“已访问”。

反向传播:随着叶子节点在上述阶段的扩展(可以是未探索状态,也可以是终端状态),算法继续通过反向传播更新所有Q(s, a)值。对于未探索的节点,这种更新涉及计算其估计值vθ的平均值,而对于终止的节点,它是基于真实奖励r。这些更新发生在信息沿着轨迹反向传播到后续节点时。这里每个状态-操作对的访问计数也会增加。

思想推理:在MCTS完成搜索后,思想被提取并提供给LLM。LLM随后会对这些想法进行审查和提炼,如果需要,继续MCTS搜索过程,最终通过将这些外部想法与他们的内部知识相结合,形成最终的答案。

重复这个过程,直到问题得到解决或达到预定义的迭代次数。

XOT的优点

与之前的提示技术相比,XOT提供了以下优点:

性能:MCTS探索将领域知识注入思想,增强LLM能力。协同修订过程进一步提高了思维质量。

效率:轻量级策略/价值网络引导MCTS,最大限度地减少昂贵的LLM调用。在推理过程中只需要1-2个调用。

灵活性:MCTS可以探索不同的思维结构,如链、树、图,使创造性思维。

XOT克服了其他提示范例的“彭罗斯三角”限制,同时实现这三个属性。

实验结果

研究人员对《Game of 24》、《8-Puzzle》和《Pocket Cube》等需要长期规划的复杂任务进行了XOT评估:

在所有任务中,XOT的准确率明显优于IO、CoT、ToT和GoT等基线。

经过思想修正,XOT在Game of 24中仅使用1-2个LLM调用就实现了高达90%的准确率,显示出高效率。

XOT高效地为问题生成多种不同的解决方案,展示了灵活性。

对于像8-Puzzle和Pocket Cube这样的空间推理任务,XOT使llm能够解决他们以前遇到的问题。

这些结果突出了XOT如何通过有效和灵活的提示释放llm解决复杂问题的潜力。

总结

XOT提示技术代表了在激发大型语言模型的能力方面的重大进步。通过将MCTS和LLM知识协同结合,XOT与之前的提示范例相比具有更好的性能、效率和灵活性。XOT产生的灵活的思维结构能够创造性地解决问题,而协作修订过程以最少的LLM交互产生高质量的解决方案。

论文地址:

https://avoid.overfit.cn/post/491c60ff00884f06adff77b0025e162d

作者:Raphael Mansuy

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

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

相关文章

如何让组织的KPI成为敏捷转型的推手而不是杀手 | IDCF

作者:IDCF学员 伍雪锋 某知名通讯公司首席敏捷教练,DevOps布道者。2020年到2021年小100人团队从0-1初步完成敏捷转型,专注传统制造业的IT转型,研发效能提升。 一、前言 在公司我们常常听见这么一个流传的故事,只要…

HCIA-经典综合实验(二)

经典综合实验(二) 实验拓扑配置步骤配置Eth-Trunk聚合链路第一步 配置二层VLAN第二步 配置MSTP生成树第三步 配置相关IP地址第四步 配置DHCP及DHCP中继第五步 配置三层的网关冗余协议 VRRP及OSPF第六步 配置静态路由,NAT地址转换及其他配置完善 配置验证…

Linux Ubuntu系统中添加磁盘

在学习与训练linux系统的磁盘概念、文件系统等,需要增加磁盘、扩展现有磁盘容量等,对于如何添加新的磁盘,我们在“Linux centos系统中添加磁盘”中对centos7/8版本中如何添加、查看、删除等,作了介绍,而对Ubuntu版本中…

解决k8s通过traefik暴露域名失败并报错:Connection Refused的问题

我敢说本篇文章是网上为数不多的解决traefik暴露域名失败问题的正确文章。 我看了网上太多讲述traefik夸夸其谈的文章了,包含一大堆复制粘贴的水文和还有什么所谓“阿里技术专家”的文章,讲的全都是错的!基本没有一个能说到点子上去&#xf…

解决:element ui表格表头自定义输入框单元格el-input不能输入问题

表格表头如图所示&#xff0c;有 40-45&#xff0c;45-50 数据&#xff0c;且以输入框形式呈现&#xff0c;现想修改其数据或点击右侧加号增加新数据编辑。结果不能输入&#xff0c;部分代码如下 <template v-if"columnData.length > 0"><el-table-colu…

八股文-面向对象的理解

近年来&#xff0c;IT行业的环境相较以往显得有些严峻&#xff0c;因此一直以来&#xff0c;我都怀有一个愿望&#xff0c;希望能够创建一个分享面试经验的网站。由于个人有些懒惰&#xff0c;也较为喜欢玩乐&#xff0c;导致计划迟迟未能实现。然而&#xff0c;随着年底的临近…

智慧城市项目建设介绍

1. 项目建设背景 随着城市化进程的加速&#xff0c;城市发展面临着诸多挑战&#xff0c;如环境污染、城镇综合管理、经济发展布局等。为了应对这些挑战&#xff0c;智慧城市应运而生&#xff0c;成为城市发展的重要方向。智慧城市通过运用信息技术和智能化技术&#xff0c;实…

mmdetection安装与训练

一、什么是mmdetection 商汤科技&#xff08;2018 COCO 目标检测挑战赛冠军&#xff09;和香港中文大学最近开源了一个基于Pytorch实现的深度学习目标检测工具箱mmdetection&#xff0c;支持Faster-RCNN&#xff0c;Mask-RCNN&#xff0c;Fast-RCNN等主流的目标检测框架&#…

Linux 图形界面配置RAID

目录 RAID 1 配置 RAID 5配置 , RAID 配置起来要比 LVM 方便&#xff0c;因为它不像 LVM 那样分了物理卷、卷组和逻辑卷三层&#xff0c;而且每层都需要配置。我们在图形安装界面中配置 RAID 1和 RAID 5&#xff0c;先来看看 RAID 1 的配置方法。 RAID 1 配置 配置 RAID 1…

OpenGL的学习之路-3

前面1、2介绍的都是glut编程 下面就进行opengl正是部分啦。 1.绘制点 #include <iostream> #include <GL/gl.h> #include <GL/glu.h> #include <GL/glut.h>void myMainWinDraw();int main(int argc,char** argv) {glutInit(&argc,argv);glutIni…

基于谐波参数空间的卷积神经网络自动三维牙齿分割

论文连接&#xff1a;https://www.sciencedirect.com/science/article/abs/pii/S1524070320300151 机构&#xff1a; a英国卡迪夫大学计算机科学与信息学院 b中国科学院大学北京 c中国科学院计算技术研究所北京 d深圳大数据研究院&#xff0c;深圳518172 代码链接&#x…

Window MongoDB安装

三种NOSQL的一种,Redis MongoDB ES 应用场景: 1.社交场景:使用Mongodb存储用户信息,以及用户发表的朋友圈信息,通过地理位置索引实现附近的人,地点等功能 2.游戏场景:使用Mongodb存储游戏用户信息,用户的装备,积分等直接以内嵌文档的形式存储,方便查询,高效率存储和访问…

保姆级vue-pdf的使用过程

第一步 引入vue-pdf npm install --save vue-pdf 第二步 按照需求我们慢慢进行 01.给你一个pdf文件的url&#xff0c;需要在页面渲染 代码 <template><div><pdfref"pdf":src"url"></pdf></div> </template> <…

灰度图处理方法

做深度学习项目图像处理的时候常常涉及到灰度图处理&#xff0c;这里对自己处理灰度图的方式做一个记录&#xff0c;后续有更新的话会在此更新 一&#xff0c;多维数组可视化 将多维数组可视化为灰度图 img_gray Image.fromarray(img, modeL) # 实现array到image的转换,m…

深度学习 机器视觉 车位识别车道线检测 - python opencv 计算机竞赛

0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 深度学习 机器视觉 车位识别车道线检测 该项目较为新颖&#xff0c;适合作为竞赛课题方向&#xff0c;学长非常推荐&#xff01; &#x1f947;学长这里给一个题目综合评分(每项满分5分) …

使用 Electron 来替代本地调试线上代理的场景

Cookie Samesite 问题 https://developers.google.com/search/blog/2020/01/get-ready-for-new-samesitenone-secure?hlzh-cnhttps://www.chromium.org/updates/same-site/https://github.com/GoogleChromeLabs/samesite-exampleshttps://releases.electronjs.org/releases/s…

PieCloudDB Database 自研内存管理器 ASanAlloc:为产品质量保驾护航

内存管理是计算机科学中至关重要的一部分&#xff0c;它涉及到操作系统、硬件和软件应用之间的动态交互。有效的内存管理可以确保系统的稳定性和安全性&#xff0c;提高系统运行效率&#xff0c;帮助我们最大限度地利用有效的内存资源&#xff0c;合理分配和回收内存&#xff0…

【SQLite】的使用及指令| 编程操作(增删改查)

一、SQLite 使用和指令集 SQLite 的基本使用SQL 命令 二、常见的 SQL 数据类型 三、SQLite的命令用法 四、SQLite的编程操作 五、sqlite3_open函数 六、sqlite3_close函数 七、sqlite3_errcode函数 八、SQLite C Interface 九、sqlite3_exec函数 十、callback回调函数 十一、…

【游戏开发算法每日一记】使用随机prime算法生成错综复杂效果的迷宫(C#,C++和Unity版)

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;元宇宙-秩沅 &#x1f468;‍&#x1f4bb; hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 秩沅 原创 &#x1f468;‍&#x1f4bb; 收录于专栏&#xff1a;Uni…

Python小白之PyCharm仍然显示“No module named ‘xlwings‘”

Python小白之“没有名称为xlwings‘的模块”-CSDN博客文章浏览阅读8次。cmd 打开命令行&#xff0c;输入python出现>>>的提示格&#xff0c;输入import xlwings 回车&#xff0c;正常报错&#xff1a;No module named xlwings。输入python 回车后&#xff0c;再输入im…