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方法的关键特点和步骤:

  1. 任务类型分类:USP首先将可能的自然语言处理(NLP)任务归类为三种类型之一:分类(CLS)、短文生成(SFG)和长文生成(LFG)。

  •  CLS (Classification):分类任务,涉及从有限的选项中选择正确答案。
  • SFG (Short-form Generation):短文生成任务,通常涉及问答或补全任务,其中正确答案可能有多个。
  • LFG (Long-form Generation):长文生成任务,如摘要生成,涉及生成较长的文本。
  1. 伪示例生成:在零样本设置中,USP使用未标记数据和推理-only的LLM生成伪示例。这些伪示例是从模型的输出中选择的,旨在模拟真实示例,帮助模型更好地学习任务。

  2. 自适应选择器:USP根据不同的任务类型使用相应的选择器来挑选最合适的查询和模型生成的响应作为伪示例。选择器通过评分函数来量化模型对每个候选伪示例的置信度。

  3. 两阶段过程

    • 第一阶段:LLM在零样本方式下被提示生成一组候选响应。
    • 第二阶段:将选定的伪示例作为上下文信息,与测试查询拼接,然后再次提示LLM以获得最终预测。
  4. 评分函数设计:USP为每种任务类型设计了不同的评分函数,以选择高质量的伪示例。例如:

    • 分类任务:使用负熵作为评分函数,以量化模型对分类标签的置信度。
    • 短文生成任务:使用归一化熵和多样性指标来评估模型生成的响应的置信度。
    • 长文生成任务:使用响应之间的平均成对ROUGE分数来衡量置信度。
  5. 成本分析: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

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

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

相关文章

【数据结构(邓俊辉)学习笔记】列表03——有序列表

文章目录 0. 概述1. 唯一化2. 查找2.1 实现2.2 顺序查找2.3 复杂度 0. 概述 介绍下有序列表。 若列表中所有节点的逻辑次序与其大小次序完全一致,则称作有序列表(sorted list)。为保证节点之间可以定义次序,依然假定元素类型T直接…

WebAssembly 入门教程 c++、python编译wasm

WebAssembly 入门 了解 wasm 使用场景,复杂对象传递和经验法则。 简介 WebAssembly 是一种新的编码方式,可以在现代的网络浏览器中运行。它是一种低级的类汇编语言,具有紧凑的二进制格式,可以接近原生的性能运行,并…

AI大模型探索之路-训练篇13:大语言模型Transformer库-Evaluate组件实践

系列篇章💥 AI大模型探索之路-训练篇1:大语言模型微调基础认知 AI大模型探索之路-训练篇2:大语言模型预训练基础认知 AI大模型探索之路-训练篇3:大语言模型全景解读 AI大模型探索之路-训练篇4:大语言模型训练数据集概…

【算法小白周赛1A】分析 - 题解与代码

题目链接:https://www.starrycoding.com/problem/155 题目描述 小可可最近在学数学运算!他希望考考你,给你两个整数 A , B A,B A,B,询问 A B A\times B AB 是否是偶数。 注意,可能存在前导 0 0 0,比如…

OpenCV | 入门

OpenCV | 入门 安装 参考教程 基础知识 V G A 640 480 VGA 640 \times 480 VGA640480 H D 1280 720 HD 1280 \times 720 HD1280720 F H D 1920 1080 FHD 1920 \times 1080 FHD19201080 4 K 3840 2160 4K 3840 \times 2160 4K38402160 这些都表示了固定的像素…

大语言模型教程与实践(开源)

1.简介 大语言模型(Large Language Models, LLMs)的兴起确实始于OpenAI在2018年发布的GPT(Generative Pre-trained Transformer),这一开创性工作引领了自然语言处理领域的新纪元。随后,2022年底ChatGPT的横…

代码随想录算法训练营DAY40\DAY41|C++动态规划Part.3|343.整数拆分、96.不同的二叉搜索树

DAY40休息日,本篇为DAY41的内容 文章目录 343.整数拆分思路dp含义递推公式(难点)初始化遍历顺序打印 CPP代码数学方法归纳证明法 96.不同的二叉搜索树思路dp含义递推公式初始化遍历顺序打印 CPP代码题目总结 343.整数拆分 力扣题目链接 文章…

Windows系统下安装Mosquitto的步骤(7)

接前一篇文章:Windows系统下安装Mosquitto的步骤(6) 本文内容参考: Windows下搭建MQTT服务器_mqtt服务器软件-CSDN博客 Enable SSL/TLS Connection | EMQX Enterprise Docs 特此致谢! 上一回讲解了使用MQTTX图形界面…

C/C++开发,opencv-ml库学习,K近邻(KNN)应用

目录 一、k近邻算法 1.1 算法简介 1.2 opencv-k近邻算法 二、cv::ml::KNearest应用 2.1 数据集样本准备 2.2 KNearest应用 2.3 程序编译 2.4 main.cpp全代码 一、k近邻算法 1.1 算法简介 K近邻算法(K-Nearest Neighbor,KNN)基本原理是…

uniapp 微信开发工具上访问正常,真机调试一直跨域报错

微信小程序真机调试时,出现跨域问题,需要同时在后端设置多种允许跨域的设置: // 指定允许其他域名访问 header(Access-Control-Allow-Origin:*); // 响应类型 header(Access-Control-Allow-Methods:GET,POST,OPTION); // 响应头设置 header(…

【实验】根据docker部署nginx并且实现https

环境准备 systemctl stop firewalld setenforce 0 安装docker #安装依赖包 yum -y install yum-utils device-mapper-persistent-data lvm2 #设置阿里云镜像 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo #安装最新版…

Unity 编辑器工具 - 资源引用查找器

在Unity项目开发过程中,管理和维护资源之间的引用关系是至关重要的。当然我们项目也是需要这个功能 毕竟项目大了之后查找资源引用还是交给 资源引用查找器 比较好。 功能概述 资源引用查找器允许开发者选择一个目标资源,并在整个项目中查找引用了该资…

记录vue报错问题 in ./node_modules/axios/lib/platform/index.js

今天这个问题困扰了我许久 报错内容如下: 最初一直以为是我没装axios,又重新装了一次,后面才发现是axios版本原因,真的总是被版本的原因困住真的很烦 解决方法如下: 将axios的版本改为1.5.0 1、打开项目的文件夹“…

wireshark的安装使用及相关UDP、TCP、 ARP

初步了解: 进入wireshark后如图: 从图中可以看到很多网络连接在操作的时候我们需要监测哪些 我们可以直接在本地的运行框中输入ipconfig来查看 如图: 从以上图片中我们可以清楚地看到哪些网络连接已经连接的我们只需要按需监测他们即可 但…

JSP与JavaBean

目录 一、JavaBean是什么 二、创建JavaBean 三、在JSP中使用JavaBean 1、按照Java语法直接使用 2、<jsp:useBean>动作 Bean的加载原理 scope属性的不同取值 3、<jsp:setProperty>动作 设置为一个表达式的值或字符序列 通过表单的参数的值来设置Bean的相应…

【C++】STL — List的接口讲解 +详细模拟实现

前言&#xff1a; 本章我们将学习STL中另一个重要的类模板list… list是可以在常数范围内在任意位置进行插入和删除的序列式容器&#xff0c;并且该容器可以前后双向迭代。list的底层是带头双向循环链表结构&#xff0c;双向链表中每个元素存储在互不相关的独立节点中&#xf…

论文笔记ColdDTA:利用数据增强和基于注意力的特征融合进行药物靶标结合亲和力预测

ColdDTA发表在Computers in Biology and Medicine 的一篇一区文章 突出 • 数据增强和基于注意力的特征融合用于药物靶点结合亲和力预测。 • 与其他方法相比&#xff0c;它在 Davis、KIBA 和 BindingDB 数据集上显示出竞争性能。 • 可视化模型权重可以获得可解释的见解。 …

三种滤波(EKF、UKF、CKF)的对比,含MATLAB源代码

使用MATLAB模拟三维的滤波,包含扩展卡尔曼滤波EKF、无迹卡尔曼滤波UKF、容积卡尔曼滤波CKF。 状态更新和观测更新均为非线性的,模拟一定强度的机动性,可用于卡尔曼滤波方法的对比学习,自己修改成需要的运动模型后,可以用于组合导航(GPS+DVL形式)。 运行结果 真值的三轴…

Unity UGUI Image 点击事件忽略空白像素区域

我们会遇到图片不是方形的不规则图片。这个时候我们希望只有点击到图像内容本身才算点击&#xff0c;点击空白区域则不算点击。而UGUI对图片的处理是整个图片都会算作点击区域&#xff0c;这样不能满足于我们的使用需求了。 首先我们需要把图片本身的Read/Write 选项打开 然后…

Meta Llama 3 使用 Hugging Face 和 PyTorch 优化 CPU 推理

原文地址&#xff1a;meta-llama-3-optimized-cpu-inference-with-hugging-face-and-pytorch 了解在 CPU 上部署 Meta* Llama 3 时如何减少模型延迟 2024 年 4 月 19 日 万众期待的 Meta 第三代 Llama 发布了&#xff0c;我想确保你知道如何以最佳方式部署这个最先进的&…