[阅读笔记18][CITING]LARGE LANGUAGE MODELS CREATE CURRICULUM FOR INSTRUCTION TUNING

这篇论文是23年10月提交到arxiv上的,也是用大模型蒸馏小模型的思路。

作者在这篇论文中提出了课程指令微调,大体流程如下图所示,教师模型给出一个问题,让学生模型回答一下,这时候学生回答大概率不够准确,这时候把学生的回答以及评价该问题的标准输入给教师模型,让教师模型给出一个修改后的回答,然后让学生根据修改过的回答进行微调,持续这个过程若干轮就能得到一个不错的学生模型。
作者的灵感来自于导师帮学生修改论文这个场景,学生把写好的论文发给导师,导师把修改版返回去,然后学生可以比较原版和修改版之间的差异,以此来提升自己的写作水平。
最终得到的小模型经过GPT-4评估,对比大部分模型都有70%以上的胜率。这些模型都是在LLaMA-7B的基础上训练得到的。

整个系统分为两部分,第一部分是根据教师LLM确定不同指令的评价标准,第二部分是对学生模型使用之前提到的课程指令微调。

对于第一部分确定不同指令评价标准时又分两步,首先是不同的指令众多,如果每个指令对应一个单独的标准是不现实的,作者将指令进行了分类,对于同一类指令使用相同的评价标准,分类这件事也是交给LLM处理的,使用的prompt如下图所示,顺便还让LLM把该类别标准一起生成了。
然后就是对于测试集中没见过的指令如果确定它的类别呢,这里使用sentence-BERT模型来对训练集中每条指令编码为embedding,然后新来的指令也同时编码为embedding,对于每个指令类都和其中每个指令计算内积,然后这条指令和每个类别的相似度就是内积的均值,最后这条指令类别就是相似度最高的那个类别。类别确定了那这条指令对应的标准也就确定了。

课程指令微调这部分直接看伪代码会好理解一些,上面那张图就是论文中的伪代码。一共有若干轮,每轮先直接让学生模型输出回答,然后把问题、标准还有学生回答拿给教师模型,让教师模型生成一个修改版的回答,再把问题、标准、学生回答还有教师回答拿给学生模型微调,教师生成回答和微调学生的prompt如下图所示。

这里展示了这篇论文的一些细节,这部分内容还是挺重要的。首先模型使用的是LLaMA-7B作为基座模型,然后使用了Alpaca数据集来训练,将划分训练集、验证集和测试集为8:1:1,然后在训练集和验证集上用LoRA框架微调学生模型得到SFT,之后就是抽取了1000条问题,以GPT-3.5为教师模型,逐步改进学生的回答。

最后是结果展示,作者在四个数据集上比较了CITING和SFT、RLHF、RRHF(Rank responses to align language models with human feedback without tears)和RAFT(Reward ranked finetuning for generative foundation model alignment)的胜率,由GPT-4给出从回答清晰度、回答深度和综合性三方面的得分。可以看到无论哪项比较CITING都保持着优势。

接下来是对于迭代轮数的消融实验,可以看到第四轮开始模型性能就开始退化了。作者解释到这是因为重复指令微调(毕竟一直是那1000个指令,如果每次重新抽样会不会好点?)导致了灾难性遗忘,微调后的模型忘记了最早的SFT的知识,导致模型性能下降。

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

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

相关文章

简化安卓操作:利用ADB命令返回主页、首页等操作

介绍: 在日常使用安卓设备时,经常需要返回到主页或者首页。虽然通过手动点击设备上的按钮可以轻松实现,但对于一些需要频繁进行此操作的场景,这种方式可能显得有些繁琐。幸运的是,利用ADB(Android Debug Br…

深度学习之图像分割从入门到精通——基于unet++实现细胞分割

模型 import torch from torch import nn__all__ [UNet, NestedUNet]class VGGBlock(nn.Module):def __init__(self, in_channels, middle_channels, out_channels):super().__init__()self.relu nn.ReLU(inplaceTrue)self.conv1 nn.Conv2d(in_channels, middle_channels, …

生态短讯 | Tapdata 与 TDengine 完成产品兼容性互认证,打造物联网实时数据生态

近月,深圳钛铂数据有限公司(以下简称钛铂数据)自主研发的实时数据平台(Tapdata Live Data Platform)与北京涛思数据科技有限公司(以下简称涛思数据)自主研发的大数据平台 TDengine,已…

【深度学习】Dropout、DropPath

一、Dropout 1. 概念 Dropout 在训练阶段会让当前层每个神经元以drop_prob( 0 ≤ drop_prob ≤ 1 0\leq\text{drop\_prob}\leq1 0≤drop_prob≤1)的概率失活并停止工作,效果如下图。 在测试阶段不会进行Dropout。由于不同批次、不同样本的神…

数据库管理-第171期 Oracle是用这种方式确保读一致的(20240418)

数据库管理171期 2024-04-18 数据库管理-第171期 Oracle是用这种方式确保读一致的(20240418)1 基本概念2 用处3 注意事项总结 数据库管理-第171期 Oracle是用这种方式确保读一致的(20240418) 作者:胖头鱼的鱼缸&#x…

MySQL中explain的用法

执行结果各字段的含义 EXPLAIN SQL语句 如: EXPLAIN SELECT * FROM test 执行结果: 列名描述id在一个大的查询语句中每个SELECT关键字都对应一个 唯一的idselect_typeSELECT关键字对应的那个查询的类型table表名partitions匹配的分区信息type针对单表…

P2P面试题

1)描述一下你的项目流程以及你在项目中的职责? 一个借款产品的发布,投资人购买,借款人还款的一个业务流程,我主要负责测注册,登录,投资理财这三个模块 2)你是怎么测试投资模块的&am…

前端nodead面试题

1.CSR和SSR分别是什么? CSR是客户端渲染,客户端访问网站时,服务器向客户端发送Html文档,让浏览器去渲染。其中像js,图片等还需要再次发请求。就是要啥给啥绝不多给。 缺点:不利于SEO,首次加载速度慢&…

HttpServlet,ServletContext,Listener它仨的故事

1.HttpServlet。 听起来是不是感觉像是个上古词汇,是不是没有阅读下去的兴趣了?Tomcat知道吧,它就是一个servlet容器,当用户向服务器发送一个HTTP请求时,Servlet容器(如Tomcat)会根据其配置找到…

【本地大模型】本地部署Llama3模型的极简教程

本地部署Llama3模型的极简教程 引言一、Llama3模型背景1、原理2、技术特点二、Ollama工具简介三、部署本地大模型(https://ollama.com/blog/llama3)1、安装Ollama四、运行Llama3模型五、Web UI的安装与配置1、安装open-webui2、启动Web UI3、解析本地文档六、整合使用1、Lang…

overflow(溢出)4个属性值,水平/垂直溢出,文字超出显示省略号的详解

你好,我是云桃桃。 一个希望帮助更多朋友快速入门 WEB 前端的程序媛。 云桃桃-大专生,一枚程序媛,感谢关注。回复 “前端基础题”,可免费获得前端基础 100 题汇总,回复 “前端工具”,可获取 Web 开发工具合…

解析 IP(IPv4)地址

IPv 4 地址 一、组成二、IPv4 的分类三、子网掩码四、特殊的地址五、私有 IP 地址六、全局 IP 地址七、私有 IP 地址和全局 IP 地址的关系八、广播地址九、网络地址十、IP 地址个数计算十一、查看电脑的 IP 地址(window)十二、手动设置电脑的 IP 地址 为…

面试十四、内存泄漏

1.内存溢出和内存泄漏是啥 内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory;比如申请了一个integer,但给它存了long才能存下的数,那就是内存溢出。 内存泄露 memo…

华为Pura 70系列,一种关于世界之美的可能

1874年,莫奈创作了《印象日出》的油画,在艺术界掀起了一场革命。当时的主流艺术,是追求细节写实,追求场面宏大的学院派。他们称莫奈等人是“印象派”,认为莫奈的画追求光影表达,追求描绘抽象的意境&#xf…

DRF: 序列化器、View、APIView、GenericAPIView、Mixin、ViewSet、ModelViewSet的源码解析

前言:还没有整理,后续有时间再整理,目前只是个人思路,文章较乱。 注意路径匹配的“/” 我们的url里面加了“/”,但是用apifox等非浏览器的工具发起请求时没有加“/”,而且还不是get请求,那么这…

天才简史——Sylvain Calinon

一、研究方向 learning from demonstration(LfD)领域的专家,机器人红宝书(Springer handbook of robotics)Robot programming by demonstration章节的合作者。主要研究兴趣包括: 机器人学习、最优控制、几…

[数据结构]——排序——插入排序

目录 ​编辑 1 .插入排序 1.基本思想: 2.直接插入排序: ​编辑 1.代码实现 2.直接插入排序的特性总结: 3.希尔排序( 缩小增量排序 ) 1.预排序 2.预排序代码 3.希尔排序代码 4.希尔排序的特性总结: 1 .插入排序 1.基本思…

从头开始构建自己的 GPT 大型语言模型

图片来源: Tatev Aslanyan 一、说明 我们将使用 PyTorch 从头开始构建生成式 AI、大型语言模型——包括嵌入、位置编码、多头自注意、残差连接、层归一化,Baby GPT 是一个探索性项目,旨在逐步构建类似 GPT 的语言模型。在这个项目中&#xff…

Linux 文件描述符

1、文件描述符 程序和进程的区别: 1、test.c:是一个程序,只占用磁盘空间,不占用内存空间 2、可执行文件 test:是一个程序,只占用磁盘空间,不占用内存空间 3、启动 可执行文件 test&#xff…

强固型工业电脑在码头智能化,龙门吊/流机车载电脑的行业应用

码头智能化行业应用 对码头运营来说,如何优化集装箱从船上到码头堆场到出厂区的各个流程以及达到提高效率。 降低成本的目的,是码头营运获利最重要的议题。为了让集装箱码头客户能够安心使用TOS系统来调度指挥码头上各种吊车、叉车、拖车和人员&#xf…