In Context Learning(ICL)个人记录

In Context Learning(ICL)简介

In Context Learning(ICL)的关键思想是从类比中学习。上图给出了一个描述语言模型如何使用 ICL 进行决策的例子。首先,ICL 需要一些示例来形成一个演示上下文。这些示例通常是用自然语言模板编写的。然后 ICL 将查询的问题(即你需要预测标签的 input)和一个上下文演示(一些相关的 cases)连接在一起,形成带有提示的输入prompt,并将其输入到语言模型中进行预测。

其中I表示任务 。值得注意的是,与需要使用反向梯度更新模型参数的训练阶段的监督学习不同,ICL 不需要参数更新,并直接对预先训练好的语言模型进行预测。我们希望该模型学习隐藏在演示中的模式,并据此做出正确的预测。

OpenAI 的一篇长达 70 多页的论文《Language Models are Few-Shot Learners》中提到,ICL 包含三种分类:

  • Few-shot learning,允许输入数条示例和一则任务说明;
  • One-shot learning,只允许输入一条示例和一则任务说明;
  • Zero-shot learning,不允许输入任何示例,只允许输入一则任务说明。

论文:Rethinking the Role of Demonstrations: What Makes In-Context Learning Work?

提出:In-Context Learning模型是如何学习的,以及演示的哪些方面有助于最终任务的性能 

探索了cases的四个方面是否是是最终任务性能的关键驱动因素

(1)标签yi是否正确

(2)输入文本的分布。x1 x2...xk是否来自同一个分布

(3)标签空间。y1 y2...y3是否来自同一个标签空间

(4)序列的整体格式。

文章挑选了6个模型26个数据集,

其中Public表示模型参数是否开源,Meta-trained表示模型是否进行多任务训练。 

标签

分成了三种不同的标签数据:

(1) 无标签:没有任何的标签,直接输入输出即可。

(2) 正确标签。

(4)随机标签:把标签和数据打乱。

其中蓝色列是无标签,正确标签是橘红色,随机标签是红色。看结果会分析出红色的部分比橘红色的,没有低多少,也就意味着即使label是随机打乱的,对于结果的影响也很小

其中蓝色列是无标签,正确标签是橘红色,随机标签是红色。看结果会分析出一个很有意思的观点,那就是红色的部分比橘红色的,没有低多少,也就意味着即使label是随机打乱的,对于结果的影响也很小,这点是为什么呢?

下面进一步探索错误标签所占的比重对预测影响的情况

  • 正确样本数量对模型性能几乎没有什么影响;
  • 宁愿使用错误的标签样本,也比完全不使用demonstration要好;

 验证不同样本数量 k 的选择对上述两个结论的影响情况

  • 使用demonstration example依然比不使用的效果好;
  • 使用random label在不同k的条件下效果下降很小;
  • 有趣的发现,随着K增大,并非效果也是持续增大的,这与标准fine-tune事实不同。

输入x分布

给定 k个demonstration sentence,这 k个句子是从别的task的语料(不同于当前task) 随机采样得到的,而标签空间和demonstration的format保持不变。此时,输入句子的分布是与当前task不同的。

  • 观察红色(Input都是同一个数据集分布的)和紫色(Input来自不同于当前任务的数据集分布)两个图,可以发现大多数任务上差异很大。说明选择不同分布的Input对ICL的性能影响很大。

 输出y的分布

本部分探索标签 yi的分布是否有影响。例如测试样本为SST-2情感分析,但是挑选的In-Context Example的标签来自是其他类型的任务,例如主题分类、QA等。为了方便实验,我们使用Random Labels来表示。

  • Glod labels比Random Labels高,但是差异非常小,说明标签是否来自于同一个分布并不重要;

format

修改demonstration的模式(format)

  •  去掉format后,发现与no demonstrate相比没有明显的提升,说明format是很重要的(即label和input text 缺一不可) 

补充

LM在测试时不会学习新任务,这点在随机的label种有所体现。我们的分析表明,模型可能会忽略演示定义的任务,而是使用来自预训练的先验知识。然而,学习新任务可以更广泛地解释:它可能包括适应特定的输入和标签分布以及演示所建议的格式,并最终更准确地进行预测。

一个关键发现是,在不使用任何标记数据的情况下,通过将每个未标记的输入与随机标签配对并将其用作演示,几乎可以达到k-shot性能。这意味着零样本基准水平比以前预想的要高得多。未来的工作可以通过放宽对未标记训练数据的假设来进一步提高零样本性能。

待更:  

In-context Learning学习笔记 - 知乎

【论文笔记】A Survey on In-context Learning_supervised in-context training-CSDN博客 

大语言模型的预训练[5]:语境学习、上下文学习In-Context Learning:精调LLM、Prompt设计和打分函数(Scoring Function)设计以及ICL底层机制等原理详解_大模型上下文学习-CSDN博客 

参考 :In-context Learning学习笔记 - 知乎 

【In-Context Learning】Rethinking the Role of Demonstrations: What Makes In-Context Learning Work?-CSDN博客

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++牛客周赛题目分享(2)小红叕战小紫,小红的数组移动,小红的素数合并,小红的子序列求和

目录 ​编辑 1.前言 2.四道题目 1.小红叕战小紫 1.题目描述 2.输入描述 3.输出描述 4.示例 5.题解与思路 2.小红的数组移动 1.题目描述 2.输入描述 3.输出描述 4.示例 5.题解与思路 3.小红的素数合并 1.题目描述 2.输入描述 3.输出描述 4.示例 5.题解与思…

华东政法大学公布2024《负面清单期刊目录》,附目录

近日,华东政法大学公布2024《负面清单期刊目录》,包括《齐齐哈尔大学学报(哲学社会科学版)》《景德镇学院学报(社科)》《九江学院学报(社科)》《北京印刷学院学报》《江西电力职业技术学院学报》《中国多媒体与网络教学学报》《吉林省教育学院学报》《开…

pyqt动画效果放大与缩小

pyqt动画效果放大与缩小 QPropertyAnimation介绍放大与缩小效果代码 QPropertyAnimation介绍 QPropertyAnimation 是 PyQt中的一个类,它用于对 Qt 对象的属性进行动画处理。通过使用 QPropertyAnimation,你可以平滑地改变一个对象的属性值,例…

【新手入门】Github与Git使用教程

Github与Git 一、Github基础教程 1.1 基本操作 点击代码文件可以直接查看文件的内容,支持在线修改文件,只需要点击(文件内容)右上角的编辑按钮即可进行编辑。 README.md一般介绍项目的功能,用法,注意事项;有时还有…

二、安装、使用Grafana

目录 一、安装Grafana 二、使用grafana 一、安装Grafana 官网:https://grafana.com/ 账号:admin 密码:xxxxxx [rootrabbitmq_2 prometheus]# [rootrabbitmq_2 prometheus]# wget https://dl.grafana.com/enterprise/release/grafana-enter…

kubernetes集群开启ipvs模式

1) 需要在所有节点机器安装ipvsadm: apt install ipvsadm 2) 加载ipvs模块 modprobe ip_vs modprobe ip_rr modprobe ip_wrr modprobe ip_sh修改k8s集群内的kube-proxy cm kubectl edit cm kube-proxy -n kube-system修改模式为ipvs: 如图 …

重大升级 | OpenSCA SaaS全面接入供应链安全情报!

结合社区用户反馈及研发小伙伴的积极探索, OpenSCA 项目组再次发力,SaaS版本重大升级啦! 用户的需求是OpenSCA前进的动力,欢迎更多感兴趣的朋友们积极试用和反馈~ 更 新 内 容 1.全面接入云脉XSBOM供应链安全情报 2.强大的资产…

太速科技-基于VU3P的双路100G光纤加速计算卡

基于VU3P的双路100G光纤加速计算卡 一、板卡概述 基于Xilinx UltraScale16 nm VU3P芯片方案基础上研发的一款双口100 G FPGA光纤以太网PCI-Express v3.0 x16智能加速计算卡,该智能卡拥有高吞吐量、低延时的网络处理能力以及辅助CPU进行网络功能卸载的能力…

【董晓算法】竞赛常用知识之字符串2

前言: 本系列是学习了董晓老师所讲的知识点做的笔记 董晓算法的个人空间-董晓算法个人主页-哔哩哔哩视频 (bilibili.com) 动态规划系列(还没学完) 【董晓算法】动态规划之线性DP问题-CSDN博客 【董晓算法】动态规划之背包DP问题&#xff…

通往糊涂之路 The road to serfdom

最近被推送了一本书,哈耶克的............ 试一试,看看能不能看懂,也许是通往糊涂之路。

AI游戏外挂为何违法?

尊敬的读者们,大家好!今天我想和大家探讨一个备受争议的话题——AI游戏外挂的合法性。近年来,随着人工智能技术的飞速发展,AI外挂逐渐成为游戏领域的一大毒瘤。那么,为什么AI游戏外挂会被视为违法行为呢?本…

vue3延迟加载(异步组件​)defineAsyncComponent

最简单用法 Index.vue: <script setup> import { onMounted, defineAsyncComponent } from vue import ./index.cssconst Child defineAsyncComponent(() > import(./Child.vue))onMounted(() > {}) </script><template><div class"m-home-w…

前端XHR请求数据

axios封装了XHR(XMLHttpRequest) 效果 项目结构 Jakarta EE9&#xff0c;Web项目。 无额外的maven依赖 1、Web页面 index.html <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title&…

网络编程套接字详解

目录 1. 预备介绍 2.网络字节序 3.udp网络程序 4.地址转换函数 5.udp网络编程 1.预备介绍 1.1源IP地址和目标IP地址 举个例子: 从北京出发到上海旅游, 那么源IP地址就是北京, 目标IP地址就是上海. 1.2 端口号 作用: 标识一个进程, 告诉OS这个数据交给那个进程来处理; (1)…

炫酷渐变官网源码

炫酷渐变官网源码 效果图部分代码领取源码下期更新预报 效果图 部分代码 <!DOCTYPE html> <html lang"en"><head><meta charset"utf-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><title…

Vue3 动态引入图片: require is not defined报错

问题&#xff1a;在 Vue3 项目中&#xff0c;使用 require 引入图片&#xff0c;报错 require is not defined 原因&#xff1a; Vue3 使用的是 vite&#xff0c;而 require 是 Webpack 的方法。 官网说明&#xff1a; 解决代码&#xff1a; <template><div v-fo…

C++ string类的模拟实现

目录 0.前言 1.string类的常用接口说明&#xff08;续&#xff09; c_str find rfind find_first_of find_last_of find_first_not_of find_last_not_of substr compare 2.常见拷贝辨析 2.1浅拷贝 2.2深拷贝 2.3写时拷贝 3.string的模拟实现 3.1构造与析构函数…

【Ubuntu永久授权串口设备读取权限“/dev/ttyUSB0”】

Ubuntu永久授权串口设备读取权限 1 问题描述2 解决方案2.1 查看ttyUSB0权限&#xff0c;拥有者是root&#xff0c;所属用户组为dialout2.2 查看dialout用户组成员&#xff0c;如图所示&#xff0c;普通用户y不在dialout组中2.3 将普通用户y加入dialout组中2.4 再次查看dialout用…

【C++】详解STL的适配器容器之一:优先级队列 priority_queue

目录 堆算法 概述 向下调整建堆 向上调整建堆 建堆算法 仿函数 概述 使用介绍 emtpy size top push pop 模拟实现 仿函数 框架 向下调整算法 向上调整算法 pop push empty top 要理解优先级队列&#xff0c;需要有如下知识 STL容器之一的vector&#xf…

品鉴中的盲品挑战:如何凭借感官判断红酒的类型与品质

盲品挑战是一种品鉴方式&#xff0c;通过蒙住品鉴者的眼睛&#xff0c;仅凭感官来判断红酒的类型和品质。这种方式考验品鉴者的感官敏锐度和经验&#xff0c;也是提升品鉴能力的一种有趣方式。那么&#xff0c;如何在盲品挑战中凭借感官判断雷盛红酒的类型与品质呢&#xff1f;…