文献阅读:LIMA: Less Is More for Alignment

news2025/1/12 20:49:37
  • 文献阅读:LIMA: Less Is More for Alignment
    • 1. 内容简介
    • 2. 实验设计
      • 1. 整体实验设计
      • 2. 数据准备
      • 3. 模型准备
      • 4. metrics设计
    • 3. 实验结果
      • 1. 基础实验
      • 2. 消解实验
      • 3. 多轮对话
    • 4. 结论 & 思考
  • 文献链接:https://arxiv.org/abs/2305.11206

1. 内容简介

这篇文章是Meta在今年5月发的一篇文章,算是对LLM进行的一个黑盒分析吧。核心来说,这篇文章就是想要探究一下为什么LLM能够拥有如此强大的能力。

众所周知,自打从BERT开始,NLP大模型的范式就是大语料预训练加小数据集finetune。虽然GPT3短暂的抛弃了finetune而倡导直接的zero-shot learning,但是从FLAN开始,后期的InstructGPT,ChatGPT以及现今还没有公开技术细节的GPT4,无一不是走的两阶段训练:第一阶段进行大数据上的预训练,第二阶段做instruct learning或者RLHF。

但是,具体到两个阶段具体都产生了多大的贡献,事实上还算是一个黑盒,尽管直觉上我们都知道,真正产生核心作用的必然是大数据的预训练过程,不过后续的finetune过程到底可以产生多大的影响却不是很确定,文中就是对这个点进行了细致地考察,然后初步得到结果如下:

  • LLM的核心还是在于预训练,后续只需要用少量的高质量标注数据进行LLM的finetune就能够获得堪比SOTA的模型效果。

下面,我们来具体看一下文章的细节。

2. 实验设计

1. 整体实验设计

首先,我们来看一下文中的实验整体设计。

由于文中要考察的是finetune对模型整体效果的影响,因此文中整体的实验设计思路就是减小finetune数据集,用一个精选的小数据集进行模型的finetune,即文中的LIMA模型,然后和现有的一些常用的大模型进行效果比较,检查这个方法训练得到的模型能否大幅提升模型的效果,以及能够抗衡现有的常见大模型。

2. 数据准备

因此,这里对于finetune使用的数据的质量的要求就很高。文中也是用了一个章节来介绍数据的构造方式。

首先,我们给出文中的总的finetune数据分布如下:

在这里插入图片描述

可以看到:

  • 文中的finetune主要使用了1000条数据
  • 其中,这一千条数据当中,有200条是人工写作的,剩下的800条来自于网上的高质量数据集中的高分数据。

3. 模型准备

然后,关于模型的准备方面,文中主要是使用Meta自己的LLaMa 65B模型然后进行finetune。具体就是使用上述提到的1000条数据进行15个epoch的finetune。

而作为对照模型,文中主要使用了如下几个模型作为对照组:

  1. Alpaca 65B
  2. Davinci003
  3. Bard
  4. Claude
  5. GPT4

4. metrics设计

最后,关于实验的metrics设计方面,文中其实给的比较简单,基本就是300个样本交给标注员进行side by side比较。

除此之外,考虑到人工标注的不稳定性,文中还使用GPT4来进行side by side比较判断,从而增加结论的可靠性。

3. 实验结果

下面,我们来看一下文中的具体实验结果。

1. 基础实验

我们首先给出基础的实验结果如下:

在这里插入图片描述

可以看到:

  • LIMA模型击败了Alpaca 65B以及Davinci003模型
  • 虽然LIMA模型没有击败BARD模型,但是有58%(人工标注)和53%(GPT4标注)的概率可以生成不差于BARD模型的结果
  • 模型效果逊于Claude模型以及GPT4模型

而除了考察LIMA模型和其他模型的比较之外,文中还考察了一下LIMA自身回答的好坏,抽样50个样本之后,人工分析其效果如下:

在这里插入图片描述

可以看到:

  • 只有12%的样本没有通过测试,而获得优秀评价的样本占比达到了50%。

最后,关于safety问题,LIMA通过了80%的safety测试,但是依然会出现差错,尤其当文本描述并不直接的时候。

下面,我们给出一些LIMA的具体case如下:

在这里插入图片描述

2. 消解实验

然后,文中还做了一些消解实验,研究了一下LIMA为何使用如此小量的数据就能获得如此好的效果。

具体而言,文中做了下面三个维度的消解实验:

  1. 标注数据的prompt的diversity
  2. 标注数据的质量
  3. 标注数据的数量

给出文中的实验结果如下:

在这里插入图片描述

可以看到:

  • prompt的diversity以及数据本身的质量会显著影响模型的效果;
  • 相对的,标注数据的数量方面却没有表现出明显的变化,从2k到32k的数据,模型效果都相差无几。

3. 多轮对话

最后,文中还考察了多轮对话当中LIMA的效果。

由于前期的实验当中并没有涉及多轮对话的训练语料,所以这里新增了30条多轮对话的数据进行模型训练,然后考察finetune前后在10个测试集上的测试结果如下:

在这里插入图片描述

可以看到:

  • 经过少量多轮对话进行finetune之后,模型在多轮对话上的表现明显提升。

下面是文中给出的一个具体的case展示:

在这里插入图片描述

4. 结论 & 思考

综上,我们可以看到:

  • 对于LLM而言,其所有的知识基本上都是在预训练阶段就已经完成了,finetune阶段的作用更多的是导出LLM在特定方向上的能力,而非是增加其知识。
  • 因此,对于LLM的finetune而言,数据质量的影响远高于数据量的影响,少量高质量的数据就足以令模型在特定领域发挥出足够优秀的效果。
  • 不过,数据量少的代价也就是效果的不稳定,这一点在文中的讨论部分也有提及,少量数据虽然可以优化对应任务上的效果,但是会弱化模型的泛化能力。

Anyway,这些讨论的前提都是LLM可以载入并且进行finetune,这一点可能就劝退大部分人了,因此这篇文章可能也就是看看了,围观一下大佬们的实验结论就是了……

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

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

相关文章

面试算法13:二维子矩阵的数字之和

题目 输入一个二维矩阵,如何计算给定左上角坐标和右下角坐标的子矩阵的数字之和?对于同一个二维矩阵,计算子矩阵的数字之和的函数可能由于输入不同的坐标而被反复调用多次。例如,输入图2.1中的二维矩阵,以及左上角坐标…

SAP 操作:怎么设定屏幕前台字段显示/编辑

文章目录 前言一、步骤设定方式 前言 SAP将字段放进群组,通过对群组进行控制。 一、步骤 后勤常规-物料主数据-字段选择 设定方式 点击后面绿色按钮2.

map和set模拟实现

本期我们来对map和set进行模拟实现,此处需要红黑树基础,没有看过红黑树的小伙伴建议先去看看红黑树,如果没了解过map和set的小伙伴也建议先去看一看,博客链接我都放在这里了 C红黑树_KLZUQ的博客-CSDN博客 C-map和set_KLZUQ的博客…

stl案例二——员工分组

案例描述 公司今天招聘了10个员工,10名员工进入公司之后,需要指派员工在那个部门工作 员工信息有:姓名 工资组成;部门分为:策划、美术、研发 随机给10名员工分配部门和工资 通过multimap进行信息的插入 key(部门编号)value(员工…

能跑通的mmdet3d版本

能跑通的mmdet3d版本 1.0版本 2.0版本

Java项目:SSM的网上书城系统

作者主页:Java毕设网 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文末获取源码 一、相关文档 1、关于雅博书城在线系统的基本要求 (1)功能要求:可以管理个人中心、用户管理、图书分类管理、图书信息管理、…

C++入门知识

Hello,今天我们分享一些关于C入门的知识,看完至少让你为后面的类和对象有一定的基础,所以在讲类和对象的时候,我们需要来了解一些关于C入门的知识。 什么是C C语言是结构化和模块化的语言,适合处理较小规模的程序。对…

PTE 做题方法 Summarise Written Text and Write Essay

目录 Summarise Written Text 如何辨别关键点 Summarize Written Text #2 - 连接关键点 确定主语 SWT常见错误 SWT时间安排 Write Essay #1 - 评分规则 & 文章规划 Write Essay #2 - 范文学习 Write Essay #3 - 训练方法 Essay时间安排 you should get into your…

公众号迁移多久可以完成?

公众号账号迁移的作用是什么?只能变更主体吗?长期以来,由于部分公众号在注册时,主体不准确的历史原因,或者公众号主体发生合并、分立或业务调整等现实状况,在公众号登记主体不能对应实际运营人的情况下&…

【每日一题】1993. 树上的操作

文章目录 Tag题目来源题目解读解题思路方法一:深度优先搜索 写在最后 Tag 【深度优先搜索】【树】【设计数据结构】【2023-09-23】 题目来源 1993. 树上的操作 题目解读 本题是一个设计类的题目,对于设计类的题目就一步步的实现题目要求的成员方法即可…

Red Hat 8 重置root管理员密码

Linux系统:Red Hat Enterprise Linux release 8.8 (Ootpa) 确定你的Linux系统是否为RHEL 8(Red Hat 8)系统,在RHEL 8中,选择“活动”–>“终端”命令,然后在打开的终端中输入如下命令: [ro…

2023华为杯数学建模D题-域碳排放量以及经济、人口、能源消费量的现状分析(如何建立指标和指标体系1,碳排放影响因素详细建模过程)

可能建立的指标如下: 经济指标: 地区生产总值(GDP)人均GDP;第一产业(农林部门)产值;第二产业(能源供应和工业部门)产值;第三产业(建筑和交通部门…

js中的类型转换

JavaScript 中有两种类型转换:隐式类型转换(强制类型转换)和显式类型转换。类型转换是将一个数据类型的值转换为另一个数据类型的值的过程。 隐式类型转换(强制类型转换): 隐式类型转换是 JavaScript 自动…

【解决】Unity3D中无法在MQTT事件中执行Animator

问题原因: 解决方法: 解决过程 1、在 Unity 中创建一个名为 MainThreadDispatcher 的脚本,用于处理主线程操作。 using System.Collections.Generic; using UnityEngine;public class MainThreadDispatcher : MonoBehaviour {private stati…

基于springboot+vue的华山旅游网(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…

【java】【SpringBoot】【四】原理篇 bean、starter、核心原理

目录 一、自动配置 1、bean加载方式(复习) 1.1 加载方式-xml方式生命bean 1.2 加载方式-xml注解方式声明bean 1.3 注解方式声明配置类 1.4 FactoryBean 1.5 proxyBeanMethod属性 1.6 使用Import注解导入 1.7 使用上下文对象在容器初始化完毕后注…

(第三百篇BLOG记录)写于博士毕业与入职之初-20230924

启 由于若干原因(包括但不限于紧锣密鼓的完成博士毕业的一系列实验和论文撰写、学习各种百花齐放的有意思的领域、完成人生身份的重大转变),导致卡在299篇博客已经很久了,不过算了一下还是在一个较长时间维度上可以基本保持每周一…

CompletableFuture-FutureTask

2. CompletableFuture 语雀 2.1 Future接口理论知识复习 Future接口(FutureTask实现类)定义了操作异步任务执行一些方法,如获取异步任务的执行结果、取消异步任务的执行、判断任务是否被取消、判断任务执行是否完毕等。 举例:…

github pages 部署单页面

github pages介绍 GitHub Pages是一个免费的托管服务,可以直接从GitHub存储库中创建和托管网站。可以使用GitHub Pages来构建自己的网站或为项目生成网站。每个GitHub帐户和组织都可以拥有一个站点,以及无限的项目站点。 主站点的地址就是用户名.githu…

基于springboot+vue的云南旅游网(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…