利用人类反馈优化文本摘要质量

news2024/9/20 9:38:50

人工智能咨询培训老师叶梓 转载标明出处

精准评估和提升模型生成文本的质量,尤其是自动文摘的质量,成为了一个日益突出的挑战。传统的评估方法,如ROUGE指标,虽然在一定程度上能够衡量摘要的相关性,但往往无法全面反映人类对摘要质量的真实感受。为了弥补这一缺陷,OpenAI的研究团队提出了一种训练方法。该方法通过直接利用人类对摘要的偏好反馈来指导模型学习,旨在训练出能够生成更符合人类评价标准的高质量摘要。这一研究不仅推动了自然语言处理技术的进步,也为未来人工智能的发展方向提供了新的视角。图 1展示了在 TL;DR 数据集上,人类更倾向于选择本模型生成的摘要而不是人类生成的参考摘要的百分比。

论文链接:​https://arxiv.org/pdf/2009.01325​

方法和实验细节

研究团队采用了与之前研究相似的方法,但进行了批量处理的适配。整个过程从通过监督学习在目标数据集(本研究中为Reddit的TL;DR摘要数据集)上微调初始策略开始。该过程包括三个可以重复迭代的步骤:

  • 步骤1:从现有策略中收集样本,并将比较发送给人类评估。对于每个Reddit帖子,研究者从包括当前策略、初始策略、原始参考摘要和各种基线等多个来源中采样摘要。然后,他们将摘要对批量发送给人类评估员,由评估员选择给定Reddit帖子的最佳摘要。

  • 步骤2:从人类比较中学习奖励模型。给定一个帖子和一个候选摘要,训练一个奖励模型来预测这个摘要是否是更好的一个,这是根据标注者的判断来的。

  • 步骤3:针对奖励模型优化策略。将奖励模型的logit输出作为奖励,使用强化学习中的PPO算法进行优化。

图2为人类反馈、奖励模型训练和策略训练的流程图。在这个图中,我们可以看到:

  • 一个Reddit帖子从Reddit TL;DR数据集中被采样出来。
  • 使用各种策略从该帖子中采样出一组摘要。
  • 从中选出两个摘要进行评估。
  • 人类评估员判断哪一个摘要更好地概括了帖子。

对于每对由人类评估过的摘要,这些摘要被送入奖励模型中。奖励模型计算每个摘要的奖励值,基于这些奖励和人类标签来计算损失,并用于更新奖励模型。

最后,从数据集中采样出一个新的帖子。奖励模型为该帖子的摘要计算一个奖励值,然后使用PPO算法根据这个奖励更新策略。

研究者使用了TL;DR摘要数据集,该数据集包含了约300万个Reddit帖子,覆盖了多种主题(子论坛),以及原始发帖者撰写的帖子摘要。研究者对数据集进行了筛选,以确保质量,包括使用一个子论坛白名单,确保这些内容对普通人群是易于理解的。此外,他们还筛选出了人类撰写的摘要包含24到48个token的帖子,以最小化摘要长度对质量的潜在影响。

为了提高人类数据的质量,研究者实施了两项改变。他们完全转向离线设置,交替发送大批量的比较数据给人类评估员,并在累积收集的数据上重新训练模型。另外他们与评估员保持密切的合作关系:他们通过详细的指令引导评估员,在一个共享聊天室中回答他们的问题,并定期提供关于他们表现的反馈。他们训练所有评估员,以确保与研究者的判断达成高度一致,并在整个项目过程中持续监控评估员与研究者之间的一致性。

通过他们的程序,研究者获得了评估员与研究者之间高度的一致性:在比较任务的一个子集上,评估员与研究者的一致性为77% ± 2%,而研究者之间的一致性为73% ± 4%。

所有模型都是基于Transformer解码器构建的,风格类似于GPT-3。研究者在参数数量为13亿(1.3B)和67亿(6.7B)的模型上进行了人类反馈实验。

  • 预训练模型:与之前的研究类似,研究者从预训练模型开始,这些模型被训练为在大型文本语料库中自回归预测下一个token。他们使用这些模型作为“零次射击”基线,通过在上下文中填充来自数据集的高质量摘要示例。

  • 监督基线:接下来,研究者通过监督学习对这些模型进行微调,以预测过滤后的TL;DR数据集的摘要。他们使用这些监督模型来采样初始摘要,用于收集比较,初始化他们的策略和奖励模型,并作为评估的基线。

  • 奖励模型:为了训练奖励模型,研究者从上面描述的监督基线开始,然后添加一个随机初始化的线性头部,输出一个标量值。他们训练这个模型来预测哪个摘要y是更好的,这是基于人类的判断。

  • 人类反馈策略:研究者希望使用上面训练的奖励模型来训练一个策略,生成被人类判断为更高质量的输出。他们主要通过强化学习来实现这一点,将奖励模型的输出作为奖励,使用PPO算法进行最大化。

以上研究者能够训练出在给定Reddit帖子上生成高质量摘要的模型,这些摘要在人类评估中优于原始参考摘要以及仅使用监督学习训练的更大模型。

想要掌握如何将大模型的力量发挥到极致吗?叶老师带您深入了解 Llama Factory —— 一款革命性的大模型微调工具。9月22日晚,实战专家1小时讲解让您轻松上手,学习如何使用 Llama Factory 微调模型。

加助理微信提供直播链接:amliy007,29.9元即可参加线上直播分享,叶老师亲自指导,互动沟通,全面掌握Llama Factory,关注享粉丝福利,限时免费CSDN听直播后的录播讲解。
 

LLaMA Factory 支持多种预训练模型和微调算法。它提供灵活的运算精度和优化算法选择,以及丰富的实验监控工具。开源特性和社区支持使其易于使用,适合各类用户快速提升模型性能。

结果

实验结果表明,与那些更大尺寸的监督学习策略相比,通过人类反馈训练的策略更受偏好。如图1所示,通过人类反馈训练得到的策略在生成摘要的质量上,明显优于监督学习基线。具体而言1.3B参数的人类反馈模型在与参考摘要的比较中,获得了61%的偏好率,而相比之下,一个比它大10倍的监督模型只有43%的偏好率。

6.7B参数的模型进一步超越了1.3B模型,这表明使用人类反馈进行训练也能从模型规模的增加中受益。值得注意的是,两种人类反馈模型都被认为优于数据集中用于训练的人类示范摘要。

在评估摘要质量时,长度是一个混杂因素。摘要的目标长度隐含在摘要任务中;根据简洁性和覆盖度之间的期望权衡,更短或更长的摘要可能更好。由于模型学习生成更长的摘要,长度可能占据了我们质量改进的很大一部分。研究发现,在控制了长度之后,人类反馈模型相对于参考摘要的偏好率下降了约5%;即便如此,6.7B模型的摘要仍有约65%的时间被偏好。

为了更好地理解模型摘要与参考摘要以及监督基线摘要的质量,研究者进行了额外的分析,其中人类评估员使用7点Likert量表对摘要质量进行了四个维度(或“轴”)的评估。评估员根据覆盖度(从原始帖子中覆盖了多少重要信息)、准确性(摘要中的陈述在帖子中陈述的程度)、连贯性(摘要本身阅读的容易程度)和整体质量对摘要进行了评分。结果(见图3)表明,人类反馈模型在每个质量维度上都优于监督基线,尤其是在覆盖度方面。尽管人类评估员给出完美的整体评分标准很高,但6.7B PPO模型有45%的时间获得7/7的整体评分,而6.7B监督基线和参考摘要分别为20%和23%。

人类反馈模型也能在没有进一步训练的情况下生成优秀的CNN/DM新闻文章摘要(见图4)。人类反馈模型显著优于通过监督学习在TL;DR上训练的模型和仅在预训练语料库上训练的模型。实际上,6.7B人类反馈模型的表现几乎与在CNN/DM参考摘要上微调过的6.7B模型一样好,尽管生成的摘要要短得多。由于人类反馈模型转移到CNN/DM的摘要长度分布与在CNN/DM上训练的模型几乎没有重叠,平均大约只有一半的token,因此它们很难直接比较。因此,图4中的评估使用了7点Likert量表对四个质量维度进行了评估。图4b显示了在不同摘要长度下的平均总体得分,这表明如果人类反馈模型生成更长的摘要,它们的性能甚至会更好。从质量上看,人类反馈模型生成的CNN/DM摘要始终是文章的流畅和合理的代表。

对于奖励模型学到了什么的问题:优化针对本奖励模型本应使策略与人类偏好保持一致。但奖励模型并非完美代表评估员的偏好,因为它的容量有限,并且只看到了来自相对狭窄摘要分布的少量比较数据。目前尚不清楚在它开始给出无用评估之前,可以对奖励模型进行多少优化。为了回答这个问题,研究者创建了一系列针对早期版本的奖励模型优化的不同强度的策略,并要求评估员将它们的样本与参考摘要进行比较。图5显示了在一系列KL惩罚系数下的PPO结果。在轻度优化下,模型(根据评估员的说法)有所改进。然而,随着进一步优化,真实的偏好与预测相比下降,最终奖励模型与人类偏好变得反相关。尽管这显然是不可取的,但值得注意的是,过度优化也发生在ROUGE上。在机器人领域的学习奖励函数中也观察到了类似的行为。

对于奖励建模如何随着模型和数据规模的增加而扩展的问题研究者进行了消融研究,以确定数据量和模型大小对奖励建模性能的影响。他们训练了7个奖励模型,参数从1.6亿到130亿不等,使用数据集中的8k到64k人类比较。他们发现,训练数据量翻倍可以使奖励模型验证集准确率提高约1.1%,而模型大小翻倍可以使准确率提高约1.8%(见图6)。

对于奖励模型学到了什么的问题,研究者通过在几个验证集上评估奖励模型来探究它。他们发现,他们的奖励模型泛化到评估CNN/DM摘要,与评估员偏好一致的时间分别为62.4%和66.5%(对于1.3B和6.7B模型)。6.7B奖励模型几乎与评估员之间的一致性值66.9%相匹配。他们还发现,他们的奖励模型对摘要中的小但语义上重要的细节很敏感。他们通过让评估员对摘要进行最小的编辑以改进它们,构建了另一个验证集。他们的RMs几乎和另一组人类评估员一样频繁地偏爱编辑过的摘要(1.3B为79.4%,6.7B为82.8%)。另外当比较参考摘要与参与者角色颠倒的扰动摘要时,他们的模型可靠地选择原始摘要(1.3B为92.9%,6.7B为97.2%)。然而,他们的RMs对较长的摘要有偏见:他们的6.7B RM只有62.6%的时间偏爱使摘要更短的改进编辑(相比之下人类为76.4%)。

研究者研究了各种自动指标作为人类偏好预测因子的表现,并将其与他们的RMs进行了比较。他们检查了ROUGE、摘要长度、从帖子中复制的数量,以及在基线监督模型下的对数概率。他们发现,他们学到的奖励模型即使在从未训练过的CNN/DM数据集上,也始终优于其他指标。他们还发现,随着模型的改进,ROUGE未能跟踪样本质量。当比较来自本监督基线模型的样本时,ROUGE与评估员的一致性约为57%,而对于来自人类反馈模型的样本,这一数字下降到约50%。类似地,对数概率与人类的一致性在比较来自本人类反馈模型的样本时下降到≤50%,而RMs仍然表现在偶然之上(62%)。扩大监督模型的大小并不能可靠地提高对数概率与评估员的一致性。

图7展示了使用简单的优化方案优化ROUGE并不一致地提高质量。优化针对ROUGE的峰值不仅更早,而且在质量率上也远低于针对我们奖励模型的优化。

实验证明,训练语言模型时,应更多关注训练损失如何影响模型行为。通过优化人类偏好,可以在保持摘要质量的同时,减少对特定数据集的依赖,提高模型的泛化能力。

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

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

相关文章

Java算法:最大间距

前言 在处理数据密集型应用时,提高查询性能显得尤为关键。 解决最大间隔问题——即确定一组数值中最宽的相邻元素距离——是此类任务中的一大挑战。 该问题不仅在算法竞赛中常见,也是软件工程师面试的一个焦点,解决方法多样,包…

【B题第三套完整论文已出】2024数模国赛B题第三套完整论文+可运行代码参考(无偿分享)

基于多阶段优化的电子产品质量控制与成本管理研究 摘要 随着现代制造业和智能化生产的发展,质量控制和生产优化问题成为工业管理中的重要研究课题。本文针对电子产品生产过程中质量控制和成本优化中的问题,基于系统优化和决策分析思想,通过…

【C++ Primer Plus习题】12.1

大家好,这里是国中之林! ❥前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。有兴趣的可以点点进去看看← 问题: 解答: main.cpp #include <iostream> #include "Cow.h" u…

空气能热泵热水器

空气能热泵热水器压缩机把低温低压气态冷媒转换成高压高温气态&#xff0c;压缩机压缩功能转化的热量为q1&#xff0c;高温高压的气态冷媒与水进行热交换&#xff0c;高压的冷媒在常温下被冷却、冷凝为液态。这过程中&#xff0c;冷媒放出热量用来加热水&#xff0c;使水升温变…

机器学习数学公式推导之降维

文章目录 降维线性降维-主成分分析 PCA损失函数SVD 与 PCoASVD 的基本形式SVD 的计算p-PCA 小结 P22 (系列五) 降维1-背景 本文参考 B站UP: shuhuai008 &#x1f339;&#x1f339; 降维 我们知道&#xff0c;解决过拟合的问题除了正则化和添加数据之外&#xff0c;降维就是最…

数据链路层与ARP协议

一.认识识以太网 "以太网" 不是一种具体的网络, 而是一种技术标准; 既包含了数据链路层的内 容, 也包含了一些物理层的内容. 例如: 规定了网络拓扑结构, 访问控制方式, 传输速率等; 以太网中的网线必须使用双绞线; 传输速率有 10M, 100M, 1000M 等; 以太网是当前应用…

【最新华为OD机试E卷-支持在线评测】机器人活动区域(100分)多语言题解-(Python/C/JavaScript/Java/Cpp)

🍭 大家好这里是春秋招笔试突围 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-E/D卷的三语言AC题解 💻 ACM金牌🏅️团队| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 🍿 最新华为OD机试D卷目录,全、新、准,题目覆盖率达 95% 以上,…

2024年【金属非金属矿山(露天矿山)安全管理人员】考试题及金属非金属矿山(露天矿山)安全管理人员最新解析

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 金属非金属矿山&#xff08;露天矿山&#xff09;安全管理人员考试题参考答案及金属非金属矿山&#xff08;露天矿山&#xff09;安全管理人员考试试题解析是安全生产模拟考试一点通题库老师及金属非金属矿山&#xf…

Java魔板游戏软件(含代码)

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏…

【第0007页 · 数组】数组中重复的数据(如何实现数组的原地修改)

【前言】本文以及之后的一些题解都会陆续整理到目录中&#xff0c;若想了解全部题解整理&#xff0c;请看这里&#xff1a; 第0007页 数组中重复的数据 今天&#xff0c;我们来看一个在实际工作中运用不多&#xff0c;但是对于一些算法题还是有必要的奇技淫巧——数组的原地修…

基于开源链动 2 + 1 模式、AI 智能名片与 S2B2C 商城小程序的用户忠诚度计划

摘要&#xff1a;本文深入探讨了在商业环境中执行用户忠诚度计划的创新途径。通过整合开源链动 2 1 模式、AI 智能名片以及 S2B2C 商城小程序等先进元素&#xff0c;从提供福利、解决问题和创造赚钱机会三个核心方面展开详细阐述。研究表明&#xff0c;这些新技术和新模式的有…

LLM大模型:将爬虫与大语言模型结合

摘要 Web自动化是一种重要技术&#xff0c;通过自动化常见的Web操作来完成复杂的Web任务&#xff0c;可以提高运营效率并减少手动操作的需要。 传统的实现方式&#xff0c;比如包装器&#xff0c;当面对新的网站时&#xff0c;面临着适应性和可扩展性的限制。 另一方面&…

国内短剧系统怎么搭建以及都需要那些资质?

聊到国内短剧&#xff0c;相信大家都不陌生&#xff0c;在各大短视频平台可谓是火的一批&#xff0c;您或许有想加入进来的想法&#xff0c;或是已经有规划还未实现的&#xff0c;请停下脚步&#xff0c;耐心看完该文章&#xff0c;相信一定会对你有所帮助的。本文介绍短剧平台…

C语言中结构体struct和联合体union的区别

C语言 文章目录 C语言前言一、什么是结构体二、什么是联合体三、结构体和联合体的区别 前言 一、什么是结构体 在C语言中&#xff0c;结构体指的是一种数据结构&#xff0c;是C语言中聚合数据类型的一类。结构体可以被声明为变量、指针或数组等&#xff0c;用以实现较复杂的数…

单调栈的实现

这是C算法基础-数据结构专栏的第二十四篇文章&#xff0c;专栏详情请见此处。 引入 单调栈就是满足单调性的栈结构&#xff0c;它最经典的应用就是给定一个序列&#xff0c;找出每个数左边离它最近的比它大/小的数。 下面我们就来讲单调栈的实现。 定义 单调栈就是满足单调性…

SnapGene 5.3.1下载安装教程百度网盘分享链接地址

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 SnapGene介绍 SnapGene 5.3.1下载安装教程百度网盘分享链接地址&#xff0c;SnapGene 是一款由美国公司开发&#xff08;后被收购&#xff09;的分子生物学软件&#xff0c;…

Deepspeed框架学习笔记

DeepSpeed 是由 Microsoft 开发的深度学习优化库,与PyTorch/TensorFlow等这种通用的深度学习框架不同的是,它是一个专门用于优化和加速大规模深度学习训练的工具,尤其是在处理大模型和分布式训练时表现出色。它不是一个独立的深度学习框架,而是依赖 PyTorch 等框架,扩展了…

Vue 向标签中传入 this

我曾经问过 chatgpt 这个问题&#xff0c;chatgpt 说不行&#xff01; 但是&#xff0c;chatgpt 说的就算吗&#xff1f; 来试试吧&#xff1a; https://andi.cn/page/621733.html 当然是可以的&#xff01;

apk反编译修改教程系列-----修改apk 解除软件限制功能 实例操作步骤解析_6【二十五】

目前很多软件都需要票票才可以使用完全的功能。纯免费的功能性app已经很少见了。 今天继续以一款app为大家来演示如何去除软件的限制功能。教程的目的主要是学习反编译的基础修改方法,了解app的修改步骤以及基础的入门修改常识。每个使用修改方法不一定适用于所有app。只是给你…

springboot、flowable 生成图片发布到Docker乱码问题

flowable自带的方法生成图片时&#xff0c;如设置字体为宋体&#xff0c;则本地测试没有问题&#xff0c;因为windows自带宋体字体库&#xff0c;但是如果发布到Docker&#xff0c;则会出现乱码问题&#xff0c;因为大部分Docker并不包含宋体字体库&#xff1b; 通过Java代码&a…