PromptBreeder---针对特定领域演化和发展提示词的方法

原文地址:promptbreeder-evolves-adapts-prompts-for-a-given-domain

论文地址:https://arxiv.org/pdf/2309.16797.pdf

2023 年 10 月 6 日

提示方法分为两大类

  • 硬提示是由人工精心设计的文本提示,包含离散的输入令牌;其缺点是创建一个有效的提示需要大量的努力。
  • 软提示是可学习的张量,与输入嵌入连接起来,可以针对数据集进行优化;其缺点是它们不便于人类阅读,因为你没有将这些"虚拟令牌"与实际单词的嵌入相匹配。

退一步来看,大型语言模型(LLMs)需要被编程,而现在我们有一种编程方式,即提示工程(Prompt Engineering)。提示工程可以在三个阶段进行:训练时、生成时或使用增强工具时。

无梯度(Gradient-Free)实现是指使用不同的措辞技术和操作方法来构成和提供提示的实例。这些方法被称为无梯度,因为它们以任何方式都不改变或微调基础的大型语言模型。所有列在无梯度下的提示工程方法通常都是非常通用的,并且是手工设计的。

梯度(Gradient)方法更像是机器学习方法,可以看作是更自动化的;但与此同时,它也是一种不透明的方法,没有纯提示工程方法那样的透明度。

像PromptBreeder这样的梯度方法是一个自动的自我改进过程,并且可以适应手头的特定领域。

PromptBreeder这样的方法直接对连续提示表示进行微调。

需要注意的是,任何更新大型语言模型的所有或部分参数的方法,随着模型变得越来越大,将无法扩展,而且对于越来越多的隐藏在API后面的大型语言模型来说,这种方法也将无法工作。

回到PromptBreeder

PromptBreeder基于软提示的概念,这些软提示是在提示调整过程中创建的。

对于某些实现,与硬提示不同,软提示不能以文本形式查看和编辑。提示通常由一个嵌入组成,这是一串数字,从更大的模型中获取知识。

对于某些实现,软提示的一个缺点是缺乏可解释性。AI发现了对特定任务有意义的提示,但不能解释为什么选择了这些嵌入。与深度学习模型本身一样,软提示是不透明的。

软提示充当了额外训练数据的替代品。研究人员最近估计,一个好的语言分类器提示相当于数百到数千个额外的数据点。

PromptBreeder由一个大型语言模型支持,并在评估基于训练集的提示的同时,演化出面向任务的提示集合。

这个过程经过多代迭代来演化任务提示。

关键的是,这些任务提示的变异是由大型语言模型生成的变异提示所控制的,这些变异提示在整个演化过程中以自我参照的方式得到生成和改进。

根据DeepMind的说法,PromptBreeder在常用的算术和常识推理基准上,表现优于最先进的提示策略,如Chain-of-Thought和Plan-and-Solve提示。

以上是PromptBreeder的概述。给定一个问题描述和一组初始的通用思考风格和变异提示,PromptBreeder生成了一组进化的单元,每个单元通常由两个任务提示和一个变异提示组成。

任务提示的适应性是通过评估它在随机批次训练数据上的表现来确定的。在多代过程中,PromptBreeder使用五种不同的变异算子来变异任务提示和变异提示。

重点是自我参照地演化出适应特定领域的任务提示,以及越来越有用的变异提示。

PromptBreeder是一个通用目的的、自我参照的、自我改进机制,它演化并适应特定领域的提示。

考虑到上述图像,存在多种自我参照提示演化的版本。

(a) 直接:直接使用LLM生成提示策略P的变体P'。

(b) 变异提示引导:使用变异提示M,可以明确提示LLM产生变体。

(c) 超变异:通过使用超变异提示H,我们还可以演化变异提示本身,使系统成为自我参照的。

(d) PromptBreeder:通过从一组种子思考风格T、变异提示M以及问题领域D的高层次描述生成初始的提示策略种群,来改善演化的提示和变异提示的多样性。

相关推荐
手写码匠13 小时前
Android 17 适配实战指南:新特性解读、隐私变更与迁移全攻略
人工智能·深度学习·算法·aigc
YueJoy.AI13 小时前
创业团队如何管理远程工作
人工智能·ai·语言模型
端平入洛13 小时前
单个感知机为何无法解决异或问题?
人工智能·深度学习
卷卷说风控13 小时前
【卷卷观察】Google I/O 炸场背后:AI 行业正在经历一场“越南战争“
人工智能
SLD_Allen13 小时前
AI-Infra双轨战略:承托当下GPU算力,布局未来CPU替代
人工智能·gpu算力·ai-infra
wait13 小时前
Vibe Coding 开发技巧
前端·javascript·人工智能
bloxed13 小时前
【AI大模型--NumPy-06】随机数生成与蒙特卡洛模拟
人工智能·numpy
szxinmai主板定制专家13 小时前
基于ZYNQ MPSOC图像采集与压缩系统总体设计方案
linux·arm开发·人工智能·嵌入式硬件·fpga开发
水木流年追梦13 小时前
大模型入门-大模型的推理策略
开发语言·python·算法·正则表达式·prompt
GOTXX13 小时前
SenseNova U1 实战体验:API 调用 + OpenClaw 接入全流程
服务器·网络·人工智能·语言模型