RLHF对LLM泛化性和多样性的影响

paper:Understanding the effects of RLHF on LLM generalisation and diversity

0 背景知识

标准的RLHF finetuning pipeline一般包含3个阶段:

  1. supervised fine-tuning (SFT)。对预训练的模型进行用language modeling的方式进行微调。
  2. reward modeling (RM)。对预训练模型用predict human preferences的方式微调。
  3. reinforcement learning (RL)。结合上述两个模型用on-policy RL算法(如PPO)进行微调。

在这里插入图片描述

1 Motivation

虽然目前RLHF(reinforcement learning from human feedback)成为LLM训练不可缺少的一部分。但目前并没有详细研究RLHF到底对LLM哪一方面有益 or 有害。为了提升对RLHF不同阶段收益的认知,本文从实验上系统探究了RLHF的三个阶段supervised fine-tuning (SFT), reward modeling(RW), RLHFLLM泛化性(generalisation)和生成多样性(diversity)的影响。

2 实验设置

实验的基座模型:LLaMA7B和OPT

不同stage的训练方法:

stage训练方法
SFT给定input-ouput pair用language modeling的方式进行微调。input是context,cross-entry loss作用做output。
RW用(Stiennon et al., 2022).的方法进行训练。
RLHF用PPO算法训练

由于reward-model(RW)的输出是一个score,作者用best-of-N(BoN)来作为RW的输出。简单来说BoN就是:先从SFT模型生成N个结果,然后用RW模型对这N个结果进行打分,取分数最大的一个。作者的实验设置 N = 16 N=16 N=16,采样的temperature为 0.7 0.7 0.7

数据集

作者在两类任务评估generalisation和diversity。其中in-domain数据都用来训练。

in-domainout of domain
summaryTL;DR datasetCNN/DailyMail
Instruction FollowingAlpacaFarmAlpaca Eval/0 Sequential Instructions

3 Result

3.1 generalisation的评测结果

作者用GPT4来评估summary的好坏。用到的prompt如下所示,简单来说就是同时将输入、参考答案、不同模型的summary放入到prompt中,让GPT4对结果进行排序。

<|im_start|>system You are a helpful assistant, that ranks models by the quality of their answers.
<|im_end|> 
<|im_start|>user 
Which of the following summaries does a better job of summarizing the most important points in the given news article, without including unimportant or irrelevant details? A good summary is both precise and concise.
Post: """{instruction}""" 
Summary A: { "model": "model_1", "summary": """{output_1}""" } 
Summary B: { "model": "model_2", "summary": """{output_2}""" } 
Now please rank the models by the quality of their summaries, so that the model with rank 1 has the best summary. Then return a list of the model names and ranks, i.e., produce the following output: 
[ {’model’: <model-name>, ’rank’: <model-rank>}, {’model’: <model-name>, ’rank’: <model-rank>}
] 
Your response must be a valid Python dictionary and should contain nothing else because we will directly execute it in Python. Please provide the ranking that the majority of humans would give.
<|im_end|>

3.1.1 summary任务的generalisation能力评估

在这里插入图片描述

从结果可见summary任务的generalisation的排序是:

in domain dataset(TL;DR): BoN > RLHF > SFT

out of domain dataset: BoN > RLHF > SFT

从中可以看出做了RLHF能有效提升SFT模型的泛化能力,但还比不上基于RW的BoN。其实挺好奇RLHF的BoN指标,作者并没有给出。

3.1.2 Instruction Following任务的generalisation能力评估

在这里插入图片描述

从结果可见,不论是in-domain还是out-of-domain数据集generalisation的排序都是RLHF>BoN>SFT,明显感受到RLHF对指令的理解更具优势。

3.2 diversity的评测结果

作者用distinct N-grams、Sentence-BERT embedding cosine similarity和NLI diversity作为diversity的评估指标。简单介绍一下:

指标名称计算方式
distinct N-grams计算中不重复n-gram与所有n-gram的比值。文中作者分别计算n=1,2,…,5再对结果取平均
Sentence-BERT embedding cosine similarity分别将同一个prompt的多个输出,送入到sentence-BERT中提取embedding。两两计算embedding的相似性,随后用1减去作为diversity的评估。
NLI(natural language inference) diversity分别将同一个prompt的多个输出组成pair送入到NLI模型中来预测是entailments还是contradictions。contradiction越多说明多样性越强

作者只在summary任务中评估diversity能力。这是因为作者在Instruction Following任务中没有看到meaningful difference。作者猜测,这是由于设置的diversity指标偏好相对短的模型输出,但Instruction Following的输出都相对较长,并且SFT和RLHF的输出长度偏好也不同(RLHF倾向更长的输出),导致计算的diversity不够准确。

  • 作者原话
    • We ran some initial experiments evaluating diversity for the instruction-following models, but we did not see any meaningful differences. We hypothesise this is due to the diversity metrics we use being designed for settings where the model output is relatively short (e.g. a single sentence), whereas in the instruction-following setting outputs are generally much longer.

3.2.1 summary任务的diversity能力评估

实验用了N个prompt,每个prompt生成K条数据。(N=500, K=16)

指标进一步定义:

  • EAD称之为syntactic diversity,其综合考虑上述3个指标
  • Sent BERT称之为semantic diversity,只考虑Sentence-BERT embedding cosine similarity
  • NLI称之为logical diversity,只考虑NLI指标。

统计方法:

  • Per-input diversity:所有的样本的指标取平均。
  • cross-input diversity: 每个N取最大的值进行统计。

在这里插入图片描述

在这里插入图片描述

从上述结果可知:

经过RLHF微调后,多样性会降低。

小结

  • SFT后用RW+BoN进行推理多样性和泛化性都较好。但需要推理多次,开销大。
  • RLHF的泛化性能比SFT好,但多样性会有所降低。

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

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

相关文章

【湖仓一体尝试】MYSQL和HIVE数据联合查询

爬了两天大大小小的一堆坑&#xff0c;今天把一个简单的单机环境的流程走通了&#xff0c;记录一笔。 先来个完工环境照&#xff1a; mysqlhadoophiveflinkicebergtrino 得益于IBM OPENJ9的优化&#xff0c;完全启动后的内存占用&#xff1a; 1&#xff09;执行联合查询后的…

AI时代Python量化交易实战:ChatGPT引领新时代

文章目录 《AI时代Python量化交易实战&#xff1a;ChatGPT让量化交易插上翅膀》关键点内容简介作者简介购买链接 《AI时代架构师修炼之道&#xff1a;ChatGPT让架构师插上翅膀》关键点内容简介作者简介 赠书活动 《AI时代Python量化交易实战&#xff1a;ChatGPT让量化交易插上翅…

Python深度学习028:神经网络模型太多,傻傻分不清?

文章目录 深度学习网络模型常见CNN网络深度学习网络模型 在深度学习领域,有许多常见的网络模型,每种模型都有其特定的应用和优势。以下是一些广泛使用的深度学习模型: 卷积神经网络(CNN): 应用:主要用于图像处理,如图像分类、物体检测。 特点:利用卷积层来提取图像特…

pvk2pfx.exe makecert.exe 文件路径

文件路径 C:\Program Files (x86)\Windows Kits\10\bin\XXXXX\x86

GBASE南大通用数据库在Windows和Linux中创建数据源

Windows 中数据源信息可能存在于两个地方&#xff1a;在 Windows 注册表中&#xff08;对 Windows 系统&#xff09;&#xff0c; 或在一个 DSN 文件中&#xff08;对任何系统&#xff09;。 如果信息在 Windows 注册表中&#xff0c;它叫做“机器数据源”。它可能是一个“用 …

产品原型设计软件 Axure RP 9 mac支持多人写作设计

axure rp 9 mac是一款产品原型设计软件&#xff0c;它可以让你在上面任意构建草图、框线图、流程图以及产品模型&#xff0c;还能够注释一些重要地方&#xff0c;axure rp汉化版可支持同时多人写作设计和版本管理控制&#xff0c;这款交互式原型设计工具可以帮助设计者制作出高…

软件工程中关键的图-----知识点总结

目录 1.数据流图 2.变换型设计和事务型设计 3.程序流程图 4.NS图和PAD图&#xff1a; 5.UML图 1.用例图 2.类图 3.顺序图 4.协作图 本文为个人复习资料&#xff0c;包含个人复习思路&#xff0c;多引用&#xff0c;也想和大家分享一下&#xff0c;希望大家不要介意~ …

PCL配置记录

PCL配置记录 1. Windows10vs2019pcl win10vs2019pcl 1.11.1 1.下载与安装 https://github.com/PointCloudLibrary/pcl/releases ) 双击exe安装 注意&#xff1a; ( ) 解压 “pcl-1.11.0-pdb-msvc2019-win64.zip”&#xff0c;将解压得到的文件夹中的内容添加“…\PCL…

基于JAVA的厦门旅游电子商务预订系统 开源项目

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 景点类型模块2.2 景点档案模块2.3 酒店管理模块2.4 美食管理模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 学生表3.2.2 学生表3.2.3 学生表3.2.4 学生表 四、系统展示五、核心代码5.1 新增景点类型5.2 查询推荐的…

TYPE C 接口知识详解

1、Type C 概述 Type-C口有4对TX/RX分线&#xff0c;2对USBD/D-&#xff0c;一对SBU&#xff0c;2个CC&#xff0c;另外还有4个VBUS和4个地线。 当Type-C接口仅用作传输DP信号时&#xff0c;则可利用4对TX/RX&#xff0c;从而实现4Lane传输&#xff0c;这种模式称为DPonly模式…

Leetcode 435 无重叠区间

题意理解&#xff1a; 给定一个区间的集合 intervals 要求需要移除区间&#xff0c;使剩余区间互不重叠 目标&#xff1a;最少需要移除几个区间。 解题思路&#xff1a; 采用贪心思路解题&#xff0c;什么是全局最优解&#xff0c;什么是局部最优解。 全局最优解&#xff0c;删…

使用Java语言判断一个年度是不是闰年

一、 代码说明 引入Scanner函数&#xff0c;将类命名为Judge类&#xff0c;使用try语句和catch语句将整体代码包围起来&#xff0c;使用if语句来判断是否为闰年&#xff0c;输入年份&#xff0c;然后得到相应的结论。 二、代码 import java.util.Scanner; public class Judg…

叮咚,微信年度聊天报告(圣诞节版)请查收~丨GitHub star 16.8k+

微信年度聊天报告——圣诞节特别版&#xff0c;快发给心仪的ta吧~ 开源地址 GitHub开源地址&#xff1a;https://github.com/LC044/WeChatMsg 我深信有意义的不是微信&#xff0c;而是隐藏在对话框背后的一个个深刻故事。未来&#xff0c;每个人都能拥有AI的陪伴&#xff0c;…

Microsoft Store 里有哪些好用的软件?

Windows 应用商店还是有不少干货软件的。 下面给大家推荐 12 款 Windows 应用商店里优秀实用的 UWP 应用软件&#xff0c;无广告、不流氓、体验好&#xff0c;强烈建议收藏&#xff01; 而且经过商店审核和限制&#xff0c;也更加安全、干净&#xff0c;不用担心有乱七八糟的…

内存管理学习

内存管理 在计算系统中&#xff0c;通常存储空间分为两种&#xff1a;内部存储空间和外部存储空间。 内部存储空间通常访问速度比较快&#xff0c;能够按照变量地址随机访问&#xff0c;也就是我们通常所说的RAM&#xff08;随机存储器&#xff09;&#xff0c;可以把它理解为…

Unity 问题 之 ScrollView ,LayoutGroup,ContentSizeFitter 一起使用时,动态变化时无法及时刷新更新适配界面的问题

Unity 问题 之 ScrollView ,LayoutGroup,ContentSizeFitter 一起使用时&#xff0c;动态变化时无法及时刷新更新适配界面的问题 目录 Unity 问题 之 ScrollView ,LayoutGroup,ContentSizeFitter 一起使用时&#xff0c;动态变化时无法及时刷新更新适配界面的问题 一、简单介绍…

Yolov5水果分类识别+pyqt交互式界面

Yolov5 Fruits Detector Yolov5 是一种先进的目标检测算法&#xff0c;可以应用于水果分类识别任务。结合 PyQT 框架&#xff0c;可以创建一个交互式界面&#xff0c;使用户能够方便地上传图片并获取水果分类结果。以下将详细阐述 Yolov5 水果分类识别和 PyQT 交互式界面的实现…

基于ssm智能社区管理系统的设计与实现+vue论文

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本智能社区管理系统就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处理完毕庞大的数据信息…

unity脚本API中OnCollisionEnter()、OnTriggerEnter()二者的区别

Unity中的OnCollisionEnter和OnTriggerEnter两个函数在日常的开发中很常见但也容易混淆&#xff0c;下面说一说两者的区别。 碰撞器&#xff08;Collider&#xff09;与触发器&#xff08;Trigger&#xff09;的概念 碰撞器&#xff08;Collider&#xff09;和触发器&#xff…

nodejs+vue+ElementUi医院预约挂号系统3e3g0

本医院预约挂号系统有管理员&#xff0c;医生和用户。该系统将采用B/S结构模式&#xff0c;使用Vue和ElementUI框架搭建前端页面&#xff0c;后端使用Nodejs来搭建服务器&#xff0c;并使用MySQL&#xff0c;通过axios完成前后端的交互 管理员功能有个人中心&#xff0c;用户管…