竟然不知道?还可以这样提升大语言模型的推理规划能力

一、前言

以 ChatGPT 为代表的大语言模型在问题回答、文稿撰写、代码生成、数学解题等任务上展现出了强大的能力,引发了研究人员广泛思考如何利用这些模型开发各种类型的应用,并修正它们在推理能力、获取外部知识、使用工具及执行复杂任务等方面的不足。此外,研究人员还致力于如何将文本、图像、视频、音频等多种信息结合起来,实现多模态大模型,这也成了一个热门研究领域。鉴于大语言模型的参数量庞大,以及针对每个输入的计算时间较长,优化模型在推理阶段的执行速度和用户响应时长也变得至关重要。

二、推理规划

随着语言模型规模的不断扩大,其也具备了丰富的知识和强大的语境学习能力。然而,仅仅通过扩大语言模型的规模,并不能显著提升推理(Reasoning)能力,如常识推理、逻辑推理、数学推理等。通过示例(Demonstrations)或者明确指导模型在面对问题时如何逐步思考,促使模型在得出最终答案之前生成中间的推理步骤,可以显著提升其在推理任务上的表现。这种方法被称为思维链提示(Chain-of-Thought Prompting)

同样地,面对复杂任务或问题时,大语言模型可以展现出良好的规划(Planning)能力。通过引导模型首先将复杂的问题分解为多个较为简单的子问题,然后逐一解决这些子问题,可使模型得出最终解答,这种策略被称为由少至多提示(Least-to-Most Prompting)。本节将重点介绍如何利用思维链提示和由少至多提示这两种方式,提升大语言模型的推理规划能力。

2.1、思维链提示

语言模型在推理能力方面的表现一直未能令人满意,一些研究人员认为这可能是因为此前的模式是直接让模型输出结果,而忽略了其中的思考过程。人类在解决包括数学应用题在内的、涉及多步推理的问题时,通常会逐步书写整个解题过程的中间步骤,最终得出答案。 如果明确告知模型先输出中间的推理步骤,再根据生成的步骤得出答案,是否能够提升其推理表现呢? 针对这个问题,Google Brain 的研究人员提出了思维链(Chain-of-Thought,CoT)提示方式,除了将问题输入模型,还将类似题目的解题思路和步骤输入模型,使得模型不仅输出最终结果,还输出中间步骤,从而提升模型的推理能力。研究人员甚至提出了零样本思维链(Zero-shot Chain-of-Thought,Zero-shot CoT)提示方式,只需要简单地告知模型“让我们一步一步思考(Let’s thinkstep by step)”,模型就能够自动输出中间步骤。

思维链提示(Chain-of-Thought Prompting)方式如下图所示,标准少样本提示(StandardFew-shot Prompting)技术在给模型的输入里面提供了 k 个[问题,答案] 对,以及当前问题,由模型输出答案。

然而,通过实验发现,使用由不同人员编写的符号推理范例在准确率上存在高达28.2%的差异,而改变范例的顺序在大多数任务中则只产生了不到2% 的变化。因此,如果能够自动构建具有良好问题和推理链的范例,则可以大幅度提升推理效果。

仅通过搜索相似问题并将其对应的推理过程作为范例对于效果提升而言作用十分有限,但是问题和推理链示例的多样性对于自动构建范例至关重要。因此,上海交通大学和Amazon Web Services 的研究人员提出了Auto-CoT方法,通过采集具有多样性的问题和生成推理链来构建范例。Auto-CoT 算法的整体过程如下图 所示。Auto-CoT 包括以下两个主要阶段。

  • (1)问题聚类:将给定数据集中的问题划分为几个簇(Cluster)。

  • (2)范例采样:从每个簇中选择一个代表性问题,并基于简单的启发式方法使用Zero-shotCoT 生成问题的推理链。

由于基于多样性的聚类可以降低相似性带来的错误,因此Auto-CoT 算法对于给定的问题集合 Q 首先进行聚类。使用Sentence-BERT为 Q 中的每个问题计算一个向量表示。然后,使用K-means 聚类算法根据问题向量表示生成K 个问题簇。对于簇i 中的问题,按照到簇中心的距离升序排列,并将排序后的列表表示为

在聚类的基础上,需要为问题生成推理链,采样生成符合选择标准的范例。对每个簇 i 构建一个范例 d(i),包括问题、解释和答案。对于簇i,根据排序列表

迭代选择问题,直到满足条件为止。

此外,还有一些研究人员提出了对思维链提示的改进方法,例如从训练样本中选取推理最复杂的样本来形成示例样本,被称为Complex-CoT。 也有研究者指出可以从问题角度考虑优化思维链提示,通过将复杂的、模糊的、低质量的问题优化为模型更易理解的、高质量的问题,进一步提升思维链提示的性能,这一方法被称为Self-Polish。

2.2、由少至多提示

当面对复杂任务或问题时,人类通常倾向于将其转化为多个更容易解决的子任务/子问题,并逐一解决它们,得到最终想要的答案或者结果。这种能力就是通常所说的任务分解(Task Decomposition)能力。基于这种问题解决思路,研究人员们提出了由少至多提示(Least-to-Most Prompting)方法。这种方法试图利用大语言模型的规划能力,将复杂问题分解为一系列的子问题并依次解决它们。 由少至多提示流程如图所示,主要包含两个阶段:问题分解阶段和逐步解决子问题阶段。在问题分解阶段中,模型的输入包括k×[原始问题,子问题列表] 的组合,以及要测试的原始问题;在逐步解决子问题阶段中,模型的输入包括k×[原始问题,m×(子问题,子答案)] 元组,以及要测试的原始问题和当前要解决的子问题。

如何学习AI大模型?

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。

不如成为「掌握AI工具的技术人」,毕竟AI时代,谁先尝试,谁就能占得先机!

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高

针对所有自学遇到困难的同学们,我帮大家系统梳理大模型学习脉络,将这份 LLM大模型资料 分享出来:包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉[CSDN大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)]()👈

学习路线

在这里插入图片描述

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

在这里插入图片描述

👉学会后的收获:👈

• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

在这里插入图片描述

1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

  • 18
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值