ChatGPT背后的技术:人类反馈强化学习RLHF

news2024/11/24 22:33:35

文章目录

    • 前言
    • Chat GPT是如何基于RLHF进行训练的
    • RLHF 技术分解
      • 预训练语言模型
      • 训练奖励模型
      • 强化学习微调预训练模型
    • 局限性
    • 参考

前言

随着OpenAI推出的Chat GPT火热出圈,Chat GPT背后的技术原理之一,人类反馈强化学习RLHF (Reinforcement Learning from Human Feedback) 也被大众熟知。那么RLHF是什么呢?看看Chat GPT的回答。
在这里插入图片描述
强化学习是一种机器学习技术,其目的是教给智能体在给定的环境中通过不断的试验和错误,学习如何最大限度地完成任务。强化学习的核心思想是在环境中运行智能体,智能体会基于反馈奖励和惩罚信号来更新其策略和行动。在强化学习中,智能体通过试错的方法学习行动策略,从而逐渐改进自己并最小化行动的错误。在这种情况下,反馈通常是来自环境的信息,例如得分或奖励。与之相反,在RLHF中,反馈来自人类专家,这可以加快学习速度和提高性能。此外,在RLHF中,人类专家可以提供更多种类的反馈和指导,例如告诉系统哪些行为是正确的,或者提供示例行为来帮助系统更好地理解任务。

Chat GPT是如何基于RLHF进行训练的

ChatGP是InstructGPT的姊妹模型,使用与InstructGPT相同的方法,侧重点不同,InstructGPT侧重于教育和学习领域;ChatGPT侧重于人机对话交互,所以数据集的收集设置上也略微不同。
在这里插入图片描述
ChatGPT是基于RLHF进行训练的,它是从GPT-3.5系列中的一个模型进行微调的。具体步骤描述如下:

  1. ChatGPT使用监督微调训练一个初始模型。人类人工智能训练者提供对话,他们在对话中扮演用户和人工智能助手。将这些新的对话数据集与InstructGPT数据集混合,并将其转换成对话格式。
  2. 收集由两个或者多个按照质量排序的模型生成组成的comparison data,然后创建强化学习的奖励模型。为了收集这些数据,OpenAI让AI trainer与chatbot进行聊天对话,然后随机选择一条模型书写的信息,并让AI trainer对其进行排名。
  3. 使用这些奖励模型,OpenAI使用近端策略优化PPO算法对模型进行微调
    在这里插入图片描述

RLHF 技术分解

RLHF 是一项涉及多个模型和不同训练阶段的复杂概念,这里我们按三个步骤分解:

  1. 预训练一个语言模型 (LM) ;
  2. 聚合问答数据并训练一个奖励模型 (Reward Model,RM) ;
  3. 用强化学习 (RL) 方式微调 LM。

预训练语言模型

第一步是需要一个预训练语言模型。目前存在的已知的预训练模型有BERT系列,GPT系列等等,这些模型都在大量的文本数据上进行预训练,这些模型的算法思路和实现方式不同,但都具有较强的表现能力,可适用于广泛的人工智能应用领域。还有可选的Human Augmented Text,就是使用额外的文本或者条件对语言模型进行微调。
在这里插入图片描述

训练奖励模型

接下来,训练奖励模型RM。奖励模型接受一系列文本并返回一个标量奖励,数值上对应人的偏好。

  • 在模型选择方面,奖励模型可以是另一个经过微调的语言模型,也可以是根据偏好数据从头开始训练的语言模型。
  • 在训练文本方面,奖励模型的提示-生成文本从预定义数据集中采样生成,并用初始的语言模型给这些提示生成文本。
  • 在训练奖励数据方面,需要人工对语言模型生成的回答进行排名。如果直接对文本标注分数来训练奖励模型,由于标注者自身的差异性会导致标注分数充满主观性。通过排名可以比较多个模型的输出并构建更好的规范化数据集。至于如何进行排名?一种成功的方式是对不同语言模型在相同提示下的输出进行比较,然后使用Elo系统建立一个完整的排名。这些不同的排名结果会被归一化为用于训练的标量奖励值。

在这里插入图片描述

强化学习微调预训练模型

长期以来,由于工程和算法等原因,人们认为用强化学习训练语言模型是不可行的。现在,很多组织机构寻找到的解决方案是:使用策略梯度强化学习算法(Policy Gradient RL)、近端策略优化算法(Proximal Policy Optimization,PPO)微调初始语言模型的部分或者全部参数。

首先将微调任务表述为强化学习问题:

  • 策略(policy) 是一个接受提示并返回一系列文本或者文本的概率分布的语言模型
  • 策略的行动空间(action space) 是语言模型的此表对应的所有词元。
  • 观察空间(action space) 是可能的输入词元序列
  • **奖励函数(reward function)**是偏好模型(preference model )和策略转变约束(constraint on policy shift)的结合

奖励函数是指系统将上述讨论过的模型组合成一个RLHF过程。给定一个提示 x x x,将提示输入初始语言模型和微调的语言模型,分别得到输出文本 y 1 y_{1} y1 y 2 y_{2} y2。将来自当前策略的文本传递给偏好模型,返回一个”preferability“标量概念, r θ r_{\theta} rθ。将该文本与初始模型中的文本进行比较,计算一个表示两者差异的惩罚值。在多个来自于OpenAI, Anthropic, and DeepMind的论文中,将此惩罚值设置为输出词分布序列之间的KL散度的缩放,即 r K L r_{KL} rKL。KL散度用来惩罚强化学习策略在每个训练批次中生成大幅偏离初始预训练模型,这对确保模型输出合理连贯的文本片段是有用的。如果去除这个惩罚项,可能会导致模型在优化中生成乱码文本愚弄奖励模型提供高奖励值。在实际应用中,KL散度通过从两个分布中采样近似得到,发送到强化学习的最终奖励是 r = r θ − λ r K L r = r_{\theta} - \lambda r_{KL} r=rθλrKL

一些RLHF系统会向奖励函数中添加额外的术语。例如,OpenAI在InstructGPT中成功地将额外的预训练梯度混合到PPO的更新规则中。最后,**更新规则(update rule)**来自于PPO的参数更新,它最大化了当前一个批次数据的最大奖励指标。PPO是一种信任域优化算法,它使用对梯度的约束来确保更新步骤不会破坏学习过程的稳定。
在这里插入图片描述

局限性

尽管RLHF已经取得一定的成果和关注,它仍然存在一些局限性。

  1. 模型仍然会不确定性地输出有害或者不真实的文本。
  2. 收集人类偏好数据的质量和数量决定了RLHF系统性能的上限。

参考

  1. Illustrating Reinforcement Learning from Human Feedback (RLHF)
  2. ChatGPT 背后的“功臣”——RLHF 技术详解
  3. Introducing ChatGPT

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

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

相关文章

Matplotlib 网格线

我们可以使用 pyplot 中的 grid() 方法来设置图表中的网格线。 grid() 方法语法格式如下: matplotlib.pyplot.grid(bNone, whichmajor, axisboth, ) 参数说明: b:可选,默认为 None,可以设置布尔值,true…

prometheus实战之二:使用常见指标

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是《prometheus实战》系列的第二篇,在《prometheus实战之一:用ansible部署》一文咱们部署了prometheus服务&#xff0c…

防护服穿戴检测识别算法 yolov8

防护服穿戴检测识别系统基于yolov8网络模型图片数据识别训练,算法模型自动完成对现场人员是否按照要求穿戴行为实时分析。YOLOv8 算法的核心特性和改动可以归结为如下:提供了一个全新的 SOTA 模型,包括 P5 640 和 P6 1280 分辨率的目标检测网…

【开发工具】 我居然可以使用Office Tool Plus 安装上Office 真的是太不可思议了

🚀 个人主页 极客小俊 ✍🏻 作者简介:web开发者、设计师、技术分享博主 🐋 希望大家多多支持一下, 我们一起进步!😄 🏅 如果文章对你有帮助的话,欢迎评论 💬点赞&#x1…

【开发工具】 Office Tool Plus 居然也可以部署 Office 365 我的天 真的是太厉害了

🚀 个人主页 极客小俊 ✍🏻 作者简介:web开发者、设计师、技术分享博主 🐋 希望大家多多支持一下, 我们一起进步!😄 🏅 如果文章对你有帮助的话,欢迎评论 💬点赞&#x1…

人不成熟的五大特征-读后感

原文地址:人不成熟的五大特征-百度经验 1 立即要回报 1 所有简单的快的,别人也能做,这并不能使你超过别人。 2 做出别人做不出来的复杂成果,需要较长的时间和持续的学习,得到就得付出,时间,资源…

Windows10本地搭建网站教程 - 内网穿透发布公网访问

文章目录 概述1. 搭建一个静态Web站点2. 本地浏览测试站点是否正常3. 本地站点发布公网可访问3.1 安装cpolar内网穿透3.2 创建隧道映射公网地址3.3 获取公网URL地址 4. 公网远程访问内网web站点5. 配置固定二级子域名5.1 保留二级子域名5.2 配置二级子域名 6. 测试访问二级子域…

【Java笔试强训 30】

🎉🎉🎉点进来你就是我的人了博主主页:🙈🙈🙈戳一戳,欢迎大佬指点! 欢迎志同道合的朋友一起加油喔🤺🤺🤺 目录 一、选择题 二、编程题 🔥最难的问…

家乡特色推荐系统~java~mysql

摘 要 在Internet高速发展的今天,我们生活的各个领域都涉及到计算机的应用,其中包括家乡特色推荐的网络应用,在外国家乡特色推荐系统已经是很普遍的方式,不过国内的管理网站可能还处于起步阶段。家乡特色推荐系统采用java技术&…

常用半导体器件

(1)N 型半导体 在纯净的半导体硅或锗中掺入适量的五价磷元素,可形成带负电 的自由电子(又称多数载流子)参与导电。 (2)P 型半导体 在纯净的半导体硅或锗中掺入适量的三价硼元素,可形…

JavaEE初阶 - 文件/IO

一、认识文件 我们先来认识狭义上的文件(file)。针对硬盘这种持久化存储的I/O设备,当我们想要进行数据保存时,往往不是保存成一个整体,而是独立成一个个的单位进行保存,这个独立的单位就被抽象成文件的概念,就类似办公…

Docker持久化固定容器IP

基于Docker引擎创建Docker容器,在默认条件下创建容器是bridge桥接模式,启动容器IP地址是DHCP随机分配并且递增的,而且容器之间可以互相通信,网段也是固定的。 当Docker容器一旦关闭再次启动,就会导致容器的IP地址再次重…

C#,生信软件实践(01)——序列文件(如FASTA)合并工具的源代码

1 生物信息学简介 生物信息学(BioInformatics)是研究生物信息的采集、处理、存储、传播,分析和解释等各方面的学科,也是随着生命科学和计算机科学的迅猛发展,生命科学和计算机科学相结合形成的一门新学科。它通过综合…

Photoshop如何使用通道之实例演示?

文章目录 0.引言1.利用通道调整图像的颜色2.给风景照替换天空3.制作故障艺术效果4.使用通道抠取复杂图像 0.引言 因科研等多场景需要进行绘图处理,笔者对PS进行了学习,本文通过《Photoshop2021入门教程》及其配套素材结合网上相关资料进行学习笔记总结&a…

Linux命令集

一、Linux常用的目录处理命令集 1、ls命令(用来查看目录和文件) (1)ls -a(查看所有文件包括隐藏文件) (2)ls -l (以长格式显示目录下的内容列表) &#xff0…

【小样本分割 2022 ECCV】DCAMA

文章目录 【小样本分割 2022 ECCV】DCAMA摘要1. 简介2. 网络2.1 整体架构2.2 特征提取与掩模制备2.3 多尺度多层交叉注意加权掩码聚合。2.4 掩码特性混合器。 3. 代码 【小样本分割 2022 ECCV】DCAMA 论文题目:Dense Cross-Query-and-Support Attention Weighted Ma…

【分布式】路由配置服务

在之前我们将路由表以及分组信息一直存储在网关中,如下图: 显然这样设计并不合理: 网关应该只负责对用户的信息进行解析并根据类型进行转发,最大限度减少其他的负荷网关作为一个单点,在出现故障后,我们希…

CH32V307V-EVT-R1 简单上手入门

文章目录 〇、前言一、开发板展示以及介绍二、开发环境配置与搭建2.1 IDE 介绍2.2 IDE 环境搭建2.3 IDE 配置2.3.1 语言切换(汉化?不存在的) 三、初次烧录与体验四、简单总结与心得🔗 链接直达 〇、前言 运气不错,前几…

Oracle的存储结构

Oracle数据库的存储结构分为物理存储结构和逻辑存储结构两种。 物理存储结构:主要用于描述在 oracle 数据库外部数据的存储,即在操作系统层面中如何组织和管理数据,与具体的操作系统有关。 逻辑存储结构:主要描述oracle 数据库…

TryHackMe-EnterPrize(boot2root)

EnterPrize 端口扫描 循例nmap Web枚举 进到enterprize.thm gobuster扫 到处扫了一段时间,ffuf扫vhost扫到个maintest 进到maintest,是typo3 /typo3conf下有些文件 在LocalConfiguration.old有一个key,它应该就是提示当中所说的 在谷歌找到…