【论文阅读】Learing to summarize from human feedback

news2024/11/19 8:48:39

前言

更多关于大模型的文章可见:ShiyuNee/Awesome-Large-Language-Models: Papers about large language models (github.com)

  • 该仓库持续更新

Abs

通过训练模型来向着人类偏好优化可以显著提高摘要质量。

Method

High-level methodology

在这里插入图片描述

从一个在摘要数据集上使用SFT微调好的初始模型开始,然后经过以下三个步骤:

  • 从已有的模型中收集一些样本,利用人工来进行对比
    • 对一个 Reddit post,从不同模型(当前模型,初始模型,原有的参考摘要以及其他baselines)中收集summaries。之后,将一批成对的摘要送给人工评估,人工被要求对一个Reddit post选择其最好的摘要
  • 从人类对比的结果中学一个reward model
    • reward model用来对<post, summary>打分,分数越高说明summary越好,该模型打分需要和人类偏好保持一致,及人工认为越好的摘要应该得到更高的分数
  • 针对reward model训练一个policy
    • 利用reward model对policy生成的结果进行打分,使用强化学习用该分数来优化当前policy

Dataset and task

  • 数据:从TL;DR数据集中过滤得到,包含123169个posts,5%用来validation
    • 为什么不用更常用的CNN/DM数据集?
      • 因为这个数据集太简单,简单的提取式模型都能做的很好
  • 任务:训练一个模型,生成小于48token的摘要,模型效果要好

Models

所有模型都是GPT-3架构,用1.3B和6.7B的GPT-3进行 human feedback实验

  • 预训练模型:自回归形式的GPT-3

  • 监督baselines:用过滤后的TL;DR微调的GPT-3,用来初始化policy、RM,也用来采集摘要pair,以及作为评估的baseline。在最后的人工评估中,对所有模型使用T=0的采样方式(贪婪搜索),因为发现这样效果最好

  • Reward models:用上面的监督baseline来初始化,加了一个随机初始化的线性层来输出一个标量分数,该模型在两个摘要 ( y 0 , y 1 ) (y_0, y_1) (y0,y1)中判断哪个更好,如果 y 1 y_1 y1 更好,loss可以写成:

    在这里插入图片描述

  • Human feedback policies:用上面的监督baseline初始化,基于上面的RM,我们采用RL的方式,用PPO算法来训练一个policy。在reward中添加了一个惩罚项(学到的policy和原始的监督模型之间的KL散度)

    在这里插入图片描述

Discussion

Limitations:训练以及数据收集都非常耗时,因此没办法上到更大的模型

Future directions:

  • 可以应用到各种能比较样本的任务上
  • 希望能扩展到人类不能轻易评估模型输出的任务上
  • 使用除了二分比较的其他形式的human feedback

Broader impacts:本文探索的是通用技术,可以用在各种机器学习应用上。

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

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

相关文章

剑指offer(C++)-JZ3:数组中重复的数字(算法-排序)

作者&#xff1a;翟天保Steven 版权声明&#xff1a;著作权归作者所有&#xff0c;商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处 题目描述&#xff1a; 在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的&#xff0c;但不知道有几…

攻防世界-web-Web_python_template_injection

题目描述&#xff1a;只有一句话&#xff0c;翻译出来时python模板注入 1. 思路分析 1.1 什么是python模板注入&#xff1f; 做这道题之前我也不知道什么是python模板注入&#xff0c;问了下chatgpt&#xff0c;回答是这样的&#xff1a; 回答很简洁&#xff0c;举个例子&…

AUTOSAR 架构下的SPI模块的理解

一、SPI模块 1、模块简介 SPI处理程序/驱动程序为单片SPI [串行外设接口]处理程序/驱动程序提供功能和API。该软件模块包括处理和驱动功能。这种单片SPI处理器/驱动器的主要目标是充分利用每个微控制器的功能&#xff0c;并根据静态配置实现优化&#xff0c;以尽可能地满足ECU…

医疗虚拟仿真和虚拟现实有什么区别?哪个更好?

随着我们在仿真教育中越来越多地使用新技术&#xff0c;区分虚拟模式的类型很重要。虚拟仿真是一个统称&#xff0c;用来概括术语来描述各种基于仿真的体验&#xff0c;从基于屏幕的平台到沉浸式虚拟现实。然而&#xff0c;各虚拟平台在保真度、沉浸感和临场感的水平上有很大差…

java 调用 opencv 识别图片

前言 opencv 的 github 地址 opencv 官网 本文介绍如何使用 java 来调用 opencv 下载opencv opencv下载 页面根据自己电脑操作系统下载最新的安装包&#xff0c;我这里下载的是 4.7.0 版本。 &#xff08;4.7.0 版本里的 opencv-470.jar 包是使用 jdk11 编译的&#xff0c…

从0到1ES集群搭建实践

ES集群搭建实践 创建虚拟机 创建Linux新用户elastic 必须信息 使用elasticsearch账号操作&#xff1a;启动&#xff0c;关闭等 配置网卡信息 vi /etc/sysconfig/network-scripts/ifcfg-ens33TYPE"Ethernet" PROXY_METHOD"none" BROWSER_ONLY"no…

pytorch笔记:transformer

来自B站视频&#xff0c;API查阅&#xff0c;TORCH.NN seq2seq 可以是 CNN&#xff0c;RNN&#xff0c;transformer nn.Transformer 关键源码&#xff1a; encoder_layer TransformerEncoderLayer(d_model, nhead, dim_feedforward, dropout,activation, layer_norm_eps, ba…

Github官网进不去怎么办?Github无法访问怎么办?

1.操作方法&#xff1a; 打开hosts文件&#xff0c;可能需要管理员权限。 win10 hosts位置&#xff1a;C:\Windows\System32\drivers\etc 在末尾新建一行&#xff0c;添加如下内容&#xff1a; 2.1方法一 Host文件追加 140.82.112.26 alive.github.com140.82.114.25 live.…

【electron】 客户端调试小技巧

1、谷歌浏览器输入&#xff1a;chrome://inspect打开开发者工具 可以方便拦截electron内的请求&#xff0c;也可以通过f12的开发者工具中的source打断点。 虽然在electron客户端内也能审查元素。 PS&#xff1a;但是其有局限性&#xff0c;如果是窗体套窗体(webview)&#xff…

Android——基本控件(十)

1. 图片视图&#xff1a;ImageView 1.1 知识点 &#xff08;1&#xff09;掌握ImageView组件的使用&#xff1b; &#xff08;2&#xff09;掌握图片的保存&#xff1b; 1.2 具体内容 之前我们讲过了RadioGroup是提供了一个存放RadioButton的一个容器&#xff0c;ImageVie…

STM32速成笔记—中断

文章目录 一、什么是中断二、中断的相关概念2.1 中断优先级2.2 中断嵌套2.3 中断服务函数2.4 中断标志位 三、外部中断EXIT四、中断程序配置4.1 设置中断分组并使能中断4.2 初始化EXIT4.3 编写中断服务函数 五、注意事项 一、什么是中断 首先介绍一下什么是中断。在实际开发过…

OpenCV 笔记_2

文章目录 笔记_2图像尺寸变换resize 图像缩放 &#xff08;重置图像大小)flip 图像翻转hconcat 横向连接vconcat 纵向连接 图像方式变换warpAffine 仿射变换函数&#xff1a;矩阵M&#xff08;2*3&#xff09;getRotationMatrix2D 获取图像旋转矩阵M&#xff1a;矩阵M&#xff…

电脑出现MSVCP100.dll丢失错误怎么办?

MSVCP100.dll是一个Windows系统文件&#xff0c;它可以确保Windows程序正确平稳运行&#xff0c;如果该文件安装不正确、丢失或损坏&#xff0c;则使用该文件的应用程序将无法正常启动&#xff0c;会出现“无法启动此程序&#xff0c;因为计算机中丢失MSVCP100.dll”的错误提示…

OpenCV 笔记_4

文章目录 笔记_4图像细化thinning 图像细化函数 轮廓检测findContours 轮廓检测函数drawContours 轮廓绘制函数contourArea 计算轮廓面积&#xff1a;返回值 double类型arcLength 计算轮廓长度&#xff1a;返回值 double类型 轮廓外接多边形boundingRect 给定轮廓的外接矩形min…

Hook攻防之InlineHook

什么是InlineHook Inline Hook&#xff0c;又称为超级Hook&#xff0c;是一种强大而又灵活的Hook技术。 Inline Hook的主要思想就是直接修改目标函数的代码&#xff0c;通常是在目标函数的开头插入一个跳转指令&#xff08;jmp&#xff09;。这个跳转指令会将程序的执行流跳转…

PPT写作要义:信息效率

PPT写作的要义&#xff1a;信息效率 抖音里一个有货的讲师的总结 花里胡哨的PPT一定偏离了初衷 这点上要像互联网公司学习 其实有些PPT制作的初衷&#xff0c;就是搞神秘感 故意让人听不懂 趣讲大白话&#xff1a;大道至简 【趣讲信息科技198期】 ****************************…

基于Java绿色农产品推广应用网站设计实现(源码+lw+部署文档+讲解等)

博主介绍&#xff1a; ✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战 ✌ &#x1f345; 文末获取源码联系 &#x1f345; &#x1f447;&#x1f3fb; 精…

CRC原理

文章目录 简介 CRC思想错误检测基本思想多项式运算没有进位的二进制计算 CRC计算方式发送方计算接收方校验多项式选择 CRC实现原理CRC8整体处理数据单个处理数据与整体数据处理比较使用查找表加速计算 扩展到CRC16整体处理数据单个处理数据与整体数据处理比较使用查找表加速计算…

项目管理中,如何实现有效的项目预算管理?

在《PMBOK指南》第七版中&#xff0c;变化较大的一点是从以成果为导向演变为以价值为导向&#xff0c;其十二项指导原则之一——“聚焦于价值”也阐述了价值是项目的最终成功指标和驱动因素。在这一指导原则下&#xff0c;项目经理就不能只关注在范围、进度、成本三重要素约束下…

UmiJs - 拆包优化

UmiJs - 拆包优化 前言一. 如何拆包&#xff0c;怎么拆1.1 分析自己项目的编译产物结构1.2 开始拆包 二. 有哪些注意点2.1 样式丢失2.2 存在需单独打包的页面 前言 我们在写前端代码的时候&#xff0c;难以避免的是&#xff0c;我们可能引入的依赖越来越多。那么随之而来的&am…