什么是Prompt Tuning?

本文是观看视频What is Prompt Tuning?后的笔记。

在这里插入图片描述

大语言模型(如ChatGPT )是基础模型,是经过互联网上大量知识训练的大型可重用模型。 他们非常灵活,同样的模型可以分析法律文书或撰写文章。 但是,如果我们需要用其解决专门的任务,目前最好的方法是使用微调(fine tuning)

通过微调,你可以收集并标记目标任务的大量示例,然后你可以微调您的模型,而不是从头开始训练一个全新的模型。 但现在出现了一种更简单、更节能(指不需要消耗太多GPU)的技术来代替微调,这就是提示调整(prompt tuning)

提示调整可以使用有限的数据,针对非常特定的任务定制大模型。 并且不需要像微调那样收集数千个带标签的示例。 在提示调整中,优质准确的提示将被输入到AI 模型中,为其提供特定于任务的上下文。 提示可以是人类引入的额外单词,更常见的则是引入模型嵌入层的人工智能生成的数字,以指导模型做出所需的决策或预测。

使用提示来指导大语言模型的输出,这就是提示工程(prompt engineering),即开发提示来指导大语言模型执行特定任务的任务。例如,希望大语言模型翻译英语为中文,我可以通过设计(engineer)提示来实现。

首先,我的第一个提示会是“将英语翻译成中文”。 这个提示是任务的描述。 然后,添加一些简短的示例。 例如,英语单词“bread”变成“面包”,将“butter”变成“黄油”。 然后,在提示的下一部分,我将添加接下来要翻译的单词:“cheese”。

由人类编写的提示发送给模型,然后模型从其巨大内存中检索适当的响应,模型的输出是就是它的预测。在本例中专门针对中文中的其他单词,输出为 “奶酪”。我们使用提示工程来训练模型来执行专门的任务,只需在推理时引入一个提示,而无需重新训练模型。

如果任务更复杂,需要成百上千的提示。那么我们可以用AI设计的提示(称为软提示)替代手工提示(由人类硬编码的,也称为硬提示)。软提示通常优于硬提示,人眼无法识别,每个提示都包含一个嵌入或一串数字(嵌入层的这一串数字要比人工编制成百上千的提示方便的多),他们可以从大模型中提取知识。

这些软提示可以是高级提示或特定于任务的提示,他们替代了额外的训练数据,对于引导模型得到所需输出非常有效。 不过,提示调整的缺点之一是缺乏可解释性。 这意味着人工智能会发现针对给定任务进行优化的提示,但它通常无法解释为什么选择这些嵌入。 就像深度学习模型本身一样,软提示也是不透明的。

假设我们有一个预先训练的大语言模型,现在,让我们考虑三种方法来使其可以完成特定任务。

  1. 微调(fine tuning)。 针对目标任务,我们将成千上万个样例数据补充到模型中,然后对模型进行调整即可。
  2. 提示工程(prompt engineering)。无需调整模型,只需给模型输入2个提示:即问题本身和人工编写的提示(硬提示,如前翻译的例子)。
  3. 提示调整(prompt tuning)。无需调整模型,只需给模型输入2个提示:即问题本身和AI编写的软提示。

提示调整可以在多个领域改变游戏规则。 例如在多任务学习中,建模者需要在任务之间快速切换,多任务提示调整等技术使模型能够快速适应,并且成本比重新训练小得多。 又如在持续学习领域,AI模型需要学习新任务和概念而不忘记旧的。 所以,提示调整可以让您比微调和提示工程更快地使模型适应专门任务,从而更容易发现和修复问题。

所以这篇文章要点是什么呢。

  • 通用模型变专用模型,可以用微调和提示2种技术,提示更轻量级些。
  • 提示又分为提示工程和提示调整2类。前者是人工的,称为硬提示;后者是软件的,称为软提示,更自动化。
  • 提示涉及嵌入,这又和向量数据库产生了关系。

提示工程和提示调整的区别,可参见文章Prompt Engineering vs Prompt Tuning: A Detailed Explanation

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

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

相关文章

欧拉操作系统安装opengauss高斯数据库加postgis

怎么在openeuler20.03 x86_64上的opengauss 5.0安装yukon Issue #I8XT22 openGauss/Yukon - Gitee.com 1、拉取镜像 docker pull registry.cn-beijing.aliyuncs.com/supermap/yukon:2.0-opengauss5.0.0-amd64 2、运行加载 mkdir -p /Yukon/opengauss docker run --name Y…

浅析机器学习的步骤与方法

一、引言: 机器学习是人工智能的分支之一,旨在研究如何使计算机系统自主地从数据中学习,并能够根据以往的经验做出预测或决策。现代机器学习主要使用统计学、概率论和优化算法来构建模型和训练算法。 应用场景: 机器学习在众多领…

cocos3.0 关于UI组件学习

Sprite 图片:官方文档 Size Mode: 1.Raw:原始大小 2.TRIMMED: 默认,会裁切原始图片透明像素 3.Custom:自定义,只要修改ContentSize,会自动设置 Type 1.Simple:普通,会铺满,一张图。 2.Sliced…

Python:json.dumps()

json.dumps() 是Python中json模块提供的一个方法,用于将Python对象(如字典、列表、字符串等)转换为其JSON编码的字符串。其最常用于将Python数据结构转换成JSON格式的数据,这进而可以作为HTTP响应发送给前端,或者保存在…

力扣热门算法题 89. 格雷编码,92. 反转链表 II,93. 复原 IP 地址

89. 格雷编码,92. 反转链表 II,93. 复原 IP 地址,每题做详细思路梳理,配套Python&Java双语代码, 2024.03.24 可通过leetcode所有测试用例。 目录 89. 格雷编码 解题思路 完整代码 Python Java 92. 反转链表…

C++之STL整理(2)之vector超详用法整理

C之STL整理(2)之vector用法(创建、赋值、方法)整理 注:整理一些突然学到的C知识,随时mark一下 例如:忘记的关键字用法,新关键字,新数据结构 C 的vector用法整理 C之STL整…

苹果智能戒指专利获批,Find My功能为智能穿戴提供智能防丢

根据美国商标和专利局(USPTO)近日公示的清单,苹果公司获得了一项关于智能戒指的专利,展示了多种交互手势,不仅支持捏合、画圈等,而且支持玩“石头剪刀布”游戏。 这项新专利名为“皮肤间接触检测”&#xf…

解决“ValueError: negative dimensions are not allowed”错误的全面指南

一、问题背景与错误描述 在使用numpy库进行数组操作时,有时会遇到一个常见的错误:“ValueError: negative dimensions are not allowed”。这个错误通常发生在尝试创建或者调整numpy数组的形状时,提供的维度(shape)参数…

南京观海微电子---Vitis HLS设计流程介绍——Vitis HLS教程

1. 传统的FPGA设计流程 传统的RTL设计流程如下图所示: 传统的FPGA RTL设计流程主要是采用VHDL、VerilogHDL或System Verilog进行工程的开发,同时也是通过硬件描述语言来编写测试案例(Test Bench)对开发的工程进行仿真验证。 随后…

第十六节 JDBC PrepareStatement对象执行批量处理实例

以下是使用PrepareStatement对象进行批处理的典型步骤顺序 - 使用占位符创建SQL语句。使用prepareStatement()方法创建PrepareStatement对象。使用setAutoCommit()将自动提交设置为false。使用addBatch()方法在创建的Statement对象上添加SQL语句到批处理中。在创建的Statement…

基于单片机热电偶智能体温检测系统设计

**单片机设计介绍,基于单片机热电偶智能体温检测系统设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机热电偶智能体温检测系统设计概要 一、引言 本系统旨在通过单片机实现对人体体温的智能检测&#…

SpringBoot集成FreeMarker时访问不到.ftl文件

代码如下: RestController public class HelloController {RequestMapping("index")public String index(HttpServletRequest request){request.setAttribute("msg","这是freemarker页面........");return "index";} } 结…

一文教你学会用群晖NAS配置WebDAV服务结合内网穿透实现公网同步Zotero文献库

文章目录 前言1. Docker 部署 Trfɪk2. 本地访问traefik测试3. Linux 安装cpolar4. 配置Traefik公网访问地址5. 公网远程访问Traefik6. 固定Traefik公网地址 前言 Trfɪk 是一个云原生的新型的 HTTP 反向代理、负载均衡软件,能轻易的部署微服务。它支持多种后端 (D…

电缆故障测试仪的原理和组成部件分别是什么?

电缆故障测试仪是专为检测电缆线路中的各种故障而设计制造的精密电子设备,广泛应用于电力、通信、石油化工、航空航天等领域。这类仪器的工作原理和组成相对复杂,下面将详细阐述。 电缆故障测试仪的工作原理 电缆故障测试仪的核心原理通常涉及电磁波反…

【C语言】 gets()puts()fgets()fputs()字符串输入输出函数的用法

文章目录 C语言中的字符串输入输出函数:gets、puts、fgets与fputsgets函数puts函数fgets函数fputs函数 C语言中的字符串输入输出函数知识点总结结语 C语言中的字符串输入输出函数:gets、puts、fgets与fputs 在C语言中,处理字符串的输入和输出…

SpringBoot -- 自动配置机制

使用SpringBoot框架可以让我们快速的构建一个web项目并能成功运行,而之前的SSM则需要我们大量的配置。那么,SpringBoot为什么可以如此神奇,这是怎么做到的呢?那就要介绍一下SpringBoot的自动配置机制。那么,SpringBoot…

用系统观念打造智慧公厕,引领智慧城市的发展

智慧公厕,作为智慧城市建设的一部分,具有重要意义。在高度发达的科技条件下,如何打造高质量的智慧公厕是一个值得思考的问题。本文将以智慧公厕源头实力厂家广州中期科技有限公司,大量精品案例项目现场实景实图实例,探…

Java I/O

什么是 IO流? 存储和读取数据的解决方案 I: input O: output 流:像水流一样传输数据 IO流的作用? 用于读写数据(本地文件,网络) IO流从 传输方式 分类 字符是给人看的,字节是给计算机看的。 …

【SpringBoot】了解简单原理 Bean管理 配置优先级

文章目录 一、配置优先级1.1 命令行设置端口号1.2 打包后修改端口号1.3 优先级 小结 二、Bean的管理2.1 获取Bean2.2 Bean作用域2.3 第三方Bean 三、剖析Springboot的底层原理3.1 起步依赖3.2 自动配置3.2.1 第三方类装配3.2.2 原理分析 总结Web后端开发总结:源码跟…

计算机专业学习单片机有什么意义吗?

玩单片机跟玩计算机区别还是很大的, 单片机有众多的种类,每一种又可能有很多个系列.可以说单片机就是为了专款专用而生的.这样来达到产品成本的降低,这就是现在身边的很多的电子产品价格一降再降的原因之一.在开始前我有一些资料,是我根据网友给的问题精心整理了一…