USP技术提升大语言模型的零样本学习能力
大语言模型(LLMs)在零样本和少样本学习能力上取得了显著进展,这通常通过上下文学习(in-context learning, ICL)和提示(prompting)来实现。然而,零样本性能通常较弱,因为缺乏指导和难以应用现有的自动提示设计方法。论文提出了一种名为Universal Self-Adaptive Prompting(USP)的自动提示设计方法,旨在提升大语言模型(LLMs)在零样本学习(zero-shot learning)任务中的表现。USP通过使用少量未标记数据和仅推理的LLM生成伪示例(pseudo-demonstrations),从而在零样本设置中实现强大的性能提升。

自动提示设计方法是一种用于提高大语言模型(LLMs)在特定任务上性能的技术。这种方法特别适用于零样本(zero-shot)和少样本(few-shot)学习场景,其中模型需要在没有或只有很少的标注数据的情况下学习执行任务。自动提示设计通过生成或选择有效的提示(prompts),帮助模型更好地理解任务并生成适当的输出。

下面是USP方法的关键特点和步骤:
-
任务类型分类:USP首先将可能的自然语言处理(NLP)任务归类为三种类型之一:分类(CLS)、短文生成(SFG)和长文生成(LFG)。
- CLS (Classification):分类任务,涉及从有限的选项中选择正确答案。
- SFG (Short-form Generation):短文生成任务,通常涉及问答或补全任务,其中正确答案可能有多个。
- LFG (Long-form Generation):长文生成任务,如摘要生成,涉及生成较长的文本。
-
伪示例生成:在零样本设置中,USP使用未标记数据和推理-only的LLM生成伪示例。这些伪示例是从模型的输出中选择的,旨在模拟真实示例,帮助模型更好地学习任务。
-
自适应选择器:USP根据不同的任务类型使用相应的选择器来挑选最合适的查询和模型生成的响应作为伪示例。选择器通过评分函数来量化模型对每个候选伪示例的置信度。
-
两阶段过程:
- 第一阶段:LLM在零样本方式下被提示生成一组候选响应。
- 第二阶段:将选定的伪示例作为上下文信息,与测试查询拼接,然后再次提示LLM以获得最终预测。
-
评分函数设计:USP为每种任务类型设计了不同的评分函数,以选择高质量的伪示例。例如:
- 分类任务:使用负熵作为评分函数,以量化模型对分类标签的置信度。
- 短文生成任务:使用归一化熵和多样性指标来评估模型生成的响应的置信度。
- 长文生成任务:使用响应之间的平均成对ROUGE分数来衡量置信度。

-
成本分析:USP在计算上是高效的,因为它只需要少量的额外LLM查询。
除了USP,还有其它一些自动提示设计方法,如AutoCoT和Z-ICL,它们也使用模型生成的输出作为伪示例,但在选择过程和适用性方面存在差异。这些方法通常需要更多的LLM查询,并且可能需要对特定任务类型进行特定的设计。
在论文中,作者们设计了一系列实验来验证Universal Self-Adaptive Prompting (USP) 方法的有效性。这些实验在以下模型上进行:
- PaLM-540B:一个具有540亿参数的大型语言模型。
- PaLM-62B:一个具有62亿参数的大型语言模型。
- PaLM 2-M:PaLM 2模型的一个变种,该模型在多语言和推理任务上具有更强的能力。
实验涉及的任务类型包括:
- CLS (Classification)、SFG (Short-form Generation)、LFG (Long-form Generation)。
在这些任务上,USP与以下几种基线方法进行了比较:
- 标准零样本提示:传统零样本学习方法,没有使用任何示例。
- AutoCoT:一种自动化的提示设计方法,使用聚类来选择伪示例。
- 随机示例:随机选择示例的方法,作为USP方法的一种简化版本进行比较。
- 标准少样本提示:使用少量标注数据进行学习的少样本学习方法。
实验结果表明,USP在多个任务上都取得了显著的性能提升。具体来说:
- USP在生成任务(SFG和LFG)上的性能提升尤为显著,这可能是因为生成任务通常具有更大的行动空间,因此更依赖于示例提供的指导。
- 在更大或更先进的模型(如PaLM 2-M)中,USP的性能提升也更为明显,这表明模型的规模和训练技术的进步使得它们能够更好地利用高质量的示例进行学习。

此外,作者们还测试了USP的少样本变体(USPfs),这是在只有少量标注数据可用的情况下使用USP的一个变种。在PaLM 2-M模型上,USPfs在BBH (BIG-bench Hard) 任务上也展现了良好的性能。BBH任务是一组设计来挑战模型推理和逻辑能力的复杂任务。USPfs通过生成额外的伪示例来增强标注数据,从而在这些任务上取得了性能提升。
这些实验结果证明了USP方法在零样本和少样本学习场景下的有效性,特别是在处理复杂的NLP任务时,USP能够显著提高模型的性能。
论文链接:http://arxiv.org/pdf/2305.14926
相关文章:
USP技术提升大语言模型的零样本学习能力
大语言模型(LLMs)在零样本和少样本学习能力上取得了显著进展,这通常通过上下文学习(in-context learning, ICL)和提示(prompting)来实现。然而,零样本性能通常较弱,因为缺…...
前端安全防护实战:XSS、CSRF防御与同源策略详解(react 案例)
前端安全防护实战中,主要涉及三个方面:XSS (Cross-Site Scripting) 攻击的防御、CSRF (Cross-Site Request Forgery) 攻击的防御,以及浏览器的同源策略。以下是这三个方面的详细说明: XSS 防御详解 XSS 概述 XSS攻击是一种让攻…...
2024C题生物质和煤共热解问题的研究 详细思路
背景 随着全球能源需求的不断增长和对可再生能源的追求,生物质和煤共热解作为一种潜在的能源转化技术备受关注。生物质是指可再生能源,源自植物和动物的有机物质,而煤则是一种化石燃料。** 在共热解过程中,生物质和煤在高温和缺氧…...
智慧旅游引领未来风尚,科技助力旅行更精彩:科技的力量推动旅游业创新发展,为旅行者带来更加便捷、高效和智能的旅行服务
目录 一、引言 二、智慧旅游的概念与特点 (一)智慧旅游的概念 (二)智慧旅游的特点 三、科技推动旅游业创新发展 (一)大数据技术的应用 (二)人工智能技术的应用 (…...
十.吊打面试官系列-Tomcat优化-通过压测Tomcat调优实战
前言 上一篇文章我们讲解了一下Tomcat底层的结构和执行原理,我们需要重点去掌握的是Tomcat的高内聚低耦合的设计,以及责任链模式,以及Tomcat NIO编程模式,这些是Tomcat比较核心的点,本篇文章我们将对Tomcat的参数做一…...
JVM调优—减少FullGC
背景 最近负责了一个审批流程新项目,带领了几个小伙伴,哼哧哼哧的干了3个月左右,终于在三月底完美上线了,好消息是线上客户用的很丝滑,除了几个非常规的业务提单之外,几乎没有什么大的问题,但是…...
力扣 256. 粉刷房子 LCR 091. 粉刷房子 python AC
动态规划 class Solution:def minCost(self, costs):row, col len(costs), 3dp [[0] * col for _ in range(row 1)]for i in range(1, row 1):for j in range(col):dp[i][j] costs[i - 1][j - 1]if j 0:dp[i][j] min(dp[i - 1][1], dp[i - 1][2])elif j 1:dp[i][j] m…...
C++STL细节,底层实现,面试题04
文章目录 19. STL19.1. 序列容器19.1.1. vector19.1.1.1. 底层实现和特点19.1.1.2. 常用函数19.1.1.3. emplace_back() vs push_back() 19.1.2. array19.1.2.1. 底层实现和特点19.1.2.2. 常用函数 19.1.3. deque19.1.3.1. 底层实现和特点19.1.3.2. 常用函数 19.1.4 list19.1.4.…...
Linux查看Oracle数据库的环境变量
Linux查看Oracle数据库的环境变量 在Linux上查看Oracle数据库的环境变量,通常涉及检查当前shell会话中已设置的环境变量。这些环境变量可能包括ORACLE_HOME、ORACLE_SID、PATH(可能包含Oracle二进制文件的路径)等。 以下是几种方法来查看这…...
pg数据库学习知识要点分析-1
知识要点1 对象标识OID 在PostgreSQL内部,所有的数据库对象都通过相应的对象标识符(object identifier,oid)进行管理,这些标识符是无符号的4字节整型。数据库对象与相应oid 之间的关系存储在对应的系统目录中…...
【Web】CTFSHOW 七夕杯 题解
目录 web签到 easy_calc easy_cmd web签到 CTF中字符长度限制下的命令执行 rce(7字符5字符4字符)汇总_ctf中字符长度限制下的命令执行 5个字符-CSDN博客7长度限制直接梭了 也可以打临时文件RCE import requestsurl "http://4ae13f1e-8e42-4afa-a6a6-1076acd08211.c…...
react native 设置屏幕锁定
原生配置 android 在android/app/src/main/AndroidManifest.xml在这个文件里的入口activity里添加 android:screenOrientation"portrait" <activityandroid:name".MainActivity"android:label"string/app_name" …...
探索 IPv6 协议:互联网的新一代寻址
目录 一.概述 IPv4 的问题和 IPv6 的新特性 IPv6 协议体系 二.IPv6 寻址架构:巨大的地址空间与灵活的寻址模式 IPv6 寻址概述 地址表示方法 地址前缀与地址类型标识 单播地址 任播地址 多播地址 特殊的 IPv6 地址 IPv6 主机与路由器寻址 地址分配 三.I…...
Ubuntu意外断电vmdk损坏--打不开磁盘“***.vmdk”或它所依赖的某个快照磁盘。
背景:电脑资源管理器崩溃卡死,强行断电重启,结果虚拟机打不开了,提示打不开磁盘“***.vmdk”或它所依赖的某个快照磁盘。 删除lck文件:失败vmware-vdiskmanager修复 :提示无法修复最终用 VMFS Recovery挂载…...
202466读书笔记|《一天一首古诗词》——借问梅花何处落,风吹一夜满关山
202466读书笔记|《一天一首古诗词》——借问梅花何处落,风吹一夜满关山 上册下册 《一天一首古诗词》作者李锡琴,蛮早前加入书架的已购买书籍,这次刚好有点时间,利用起来读完。 赏析没有细看,只读了诗词部分࿰…...
如何调用本地ollama的http请求接口
http://127.0.0.1:11434/api/generate 使用http post请求,参数 { "model": "qwen", "prompt": "为什么天空是蓝色?", "stream": false } 返回结果如下: {"model": "qwen",…...
【C】190 颠倒二进制位
颠倒给定的 32 位无符号整数的二进制位。 提示: 请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因…...
蓝桥杯备战5.图书管理员
[NOIP2017]图书管理员 (nowcoder.com) #include<bits/stdc.h> #define endl \n #define int long long using namespace std; const int N 2e510,M1e310; int a[N]; int n,q; int check(int l,int x) {int tmppow(10,l);for(int i1;i<n;i){if(a[i]%tmpx){cout<&…...
微型显示器可以实时监测大脑活动
美国团队开发基于LED的设备,以可视化大脑活动,在脑外科手术中指导神经外科医生 来自加州大学圣地亚哥分校和马萨诸塞州总医院的工程师和医生开发了一种薄膜显示设备,该设备结合了电极网格和特殊的GaN LED,可以在手术过程中实时跟…...
移动端适配方案
移动端适配 方案 1:rem html font-size 方案 2:vw rem html font-size rem 是相对于 html 元素的 font-size 来设置的单位,通过在不同屏幕尺寸下动态修改 html 元素的 font-size 可达到适配效果 在开发中,我们只需要考虑两个…...
CTF show Web 红包题第六弹
提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...
通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...
遍历 Map 类型集合的方法汇总
1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...
可靠性+灵活性:电力载波技术在楼宇自控中的核心价值
可靠性灵活性:电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中,电力载波技术(PLC)凭借其独特的优势,正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据,无需额外布…...
江苏艾立泰跨国资源接力:废料变黄金的绿色供应链革命
在华东塑料包装行业面临限塑令深度调整的背景下,江苏艾立泰以一场跨国资源接力的创新实践,重新定义了绿色供应链的边界。 跨国回收网络:废料变黄金的全球棋局 艾立泰在欧洲、东南亚建立再生塑料回收点,将海外废弃包装箱通过标准…...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...
深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...
AspectJ 在 Android 中的完整使用指南
一、环境配置(Gradle 7.0 适配) 1. 项目级 build.gradle // 注意:沪江插件已停更,推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...
Linux --进程控制
本文从以下五个方面来初步认识进程控制: 目录 进程创建 进程终止 进程等待 进程替换 模拟实现一个微型shell 进程创建 在Linux系统中我们可以在一个进程使用系统调用fork()来创建子进程,创建出来的进程就是子进程,原来的进程为父进程。…...
【C++特殊工具与技术】优化内存分配(一):C++中的内存分配
目录 一、C 内存的基本概念 1.1 内存的物理与逻辑结构 1.2 C 程序的内存区域划分 二、栈内存分配 2.1 栈内存的特点 2.2 栈内存分配示例 三、堆内存分配 3.1 new和delete操作符 4.2 内存泄漏与悬空指针问题 4.3 new和delete的重载 四、智能指针…...
