一文读懂ChatGPT中的强化学习

原创 陈芝麻 2023-10-20 07:54

ChatGPT基于OpenAI的GPT-3.5创造,是InstructGPT的衍生产品,它引入了一种新的方法,将人类反馈纳入训练过程中,使模型的输出与用户的意图更好地结合。在openAI的2022年论文《通过人类反馈训练语言模型以遵循指令》中来自人类反馈的强化学习(RLHF)进行了深入描述

创建者将监督学习和强化学习相结合来微调ChatGPT,强化学习组件是ChatGPT的独到之处。研究人员使用了 “根据人类反馈强化学习(Reinforcement Learning from Human Feedback ,RLHF)”的特殊技术,在训练环路中使用人类反馈来尽量减少有害的、不真实的和/或有偏差的输出。

该方法包括以下三个步骤:

第一步:带监督的微调,预训练语言模型对由标注人员管理的相对较少的演示数据进行微调,以学习监督策略(SFT模型),根据选定的提示列表生成输出,这表示基线模型。

第二步:“模仿人类偏好” :要求人员对相对较多的SFT模型输出进行投票,创建一个由比数据组成的新数据集。在数据集上训练一个新的奖励模型(RM)。

第三步:近端策略优化(PPO):对奖励模型进一步微调改进SFT模型。这一步的结果就是所谓的策模型。

步骤1只进行一次,而步骤2和步骤3可以连续迭代:在当前的最佳策略模型上收集更多的比较数据,训练出一个新的奖励模型,然后在此基础上再训练出一个新的策略。

带监督的微调(SFT)模型

首先是收集演示数据,以训练一个带监督的策略模型,称之为SFT模型。

· 数据收集:选择一份提示列表,要求一组人工标注人员写下预期的输出响应。ChatGPT使用了两种不同的提示来源:一些是直接从标注人员或开发人员那里获取到的的,一些是从OpenAI的API请求中取样的(即来自GPT-3客户)。整个过程速度缓慢并且代价昂贵,输出结果是一个相对较小的、高质量的管理数据集(大概大约有12-15k个数据点),将利用该数据集微调预先训练的语言模型。

· 模型选取:开发人员选择了在GPT-3.5系列中选择一个预训练模型,而不是对原来的GPT-3模型进行微调。可使用最新的基线模型——text-davinci-003,这也是一个GPT-3模型,对主要的编程代码进行微调。

由于这一步的数据量有限,在此过程之后获得的SFT模型很可能输出用户不太关注的文本,而且往往会出现错位的问题。这里的问题是,监督学习这一步存在很高的可扩展性成本。

为了克服上述问题,利用人工标记创建一个更大的数据集,这个速度缓慢而代价昂贵的过程,采用一个新的策略,为人工标记的SFT模型输出创建一个奖励模型——在下面的内容中进行更详细的解释。

奖励模型

在步骤 1 中训练 SFT 模型后,该模型会对用户提示生成更一致的响应。接下来是训练奖励模型,其中模型输入是一系列提示和响应,输出是一个缩放值,称为奖励。需要奖励模型以利用强化学习,在强化学习中模型学习产生输出以最大化其奖励。

直接从数据中学习出一个目标函数(奖励模型)。这个函数的目的是给SFT模型的输出给出一个分值,这一分值与人类对输出的可取程度成比例。在实践中,这将反映出选定的标记人员群体的具体偏好和他们同意遵循的准则。最后,这一过程将从数据中提取出一个模仿人类偏好的自动回答系统。其工作原理如下:

选择一个提示列表,SFT模型为每个提示生成多个SFT 模型输出(在4个到9个之间)。

标注人员将输出从好到坏进行排序,结果是生成一个新的标记数据集,其中的排名是标记。这个数据集的大小大约是SFT模型数据集的10倍。

利用这些新数据训练一个奖励模型(RM)。该模型将某些SFT模型输出作为输入,并根据人类偏好对它们进行排序。

对于标注者来说,对输出进行排序比从头开始生成它们要容易得多,因此这个过程的缩放效率会更高。在实践中,从30-40k个提示符(prompts)中生成一个数据集,要求将这些输出从最好到最差进行排名,创建输出排名组合。在排名阶段,将不同标注的输出呈现给不同的提示符。

利用近端策略优化(PPO)算法微调SFT模型

接下来,利用强化学习微调SFT策略,让它优化奖励模型。模型会收到随机提示并返回响应。响应是使用模型在步骤 2 中学习的“策略”生成的。策略表示机器已经学会使用以实现其目标的策略;在这种情况下,最大化其奖励。基于在步骤 2 中开发的奖励模型,然后为提示和响应对确定缩放器奖励值。然后奖励反馈到模型中以改进策略。所使用的算法为近端策略优化(PPO)算法,而微调后的模型称为PPO模型。

2017 年,舒尔曼等人。引入了近端策略优化 (PPO),该方法用于在生成每个响应时更新模型的策略。PPO 包含来自 SFT 模型的每个代币 Kullback–Leibler (KL) 惩罚。KL 散度衡量两个分布函数的相似性并对极端距离进行惩罚。在这种情况下,使用 KL 惩罚会减少响应与步骤 1 中训练的 SFT 模型输出之间的距离,以避免过度优化奖励模型和与人类意图数据集的偏差太大。PPO算法的具体实现已经在前文4.4 节中进行了描述,这种方法的要点:

· PPO是一种用于训练强化学习中智能体的算法,为策略算法,正如DQN(深度q网络)等算法一样,它直接从当前策略中学习和更新策略,而非从过去的经验中学习算法。PPO根据智能体所采取的行动和它所获得的奖励,不断地调整当前的政策。

· PPO使用置信区间优化方法对策略进行训练,它将策略的变化限制在与先前策略的一定距离内,以确保稳定性。这与其他策略梯度方法相反,其他策略梯度方法有时会对策略进行大量更新,从而使学习不稳定。

· PPO使用价值函数来估计给定状态或动作的预期回报。利用价值函数计算优势函数,它表示期望回报和当前回报之间的差值,使用优势函数通过比较当前策略所采取的动作与先前策略的本应采取的动作来更新策略,PPO能够根据动作的估计值对策略进行更明智的更新。

在该步骤中,由SFT模型初始化PPO模型,由奖励模型初始化价值函数。该环境是一个强盗环境( bandit environment),它显示一个随机的提示符,并期望对该提示符作出响应。给出提示和反响应之后,会生成奖励(由奖励模型决定)。在每个标注的SFT模型中添加各个标记的KL惩罚,以优化奖励模型。

结论:

ChatGPT引入了强化学习近端策略优化(PPO)算法微调SFT模型,将人类反馈纳入模型训练过程中,从而大幅度提高了模型训练的准确度。

 扫码有惊喜:

陈芝麻 Altium Designer 22 电路设计与仿真实战从入门到精通一书作者
评论
  • 作为优秀工程师的你,已身经百战、阅板无数!请先醒醒,新的项目来了,这是一个既要、又要、还要的产品需求,ARM核心板中一个处理器怎么能实现这么丰富的外围接口?踌躇之际,你偶阅此文。于是,“潘多拉”的魔盒打开了!没错,USB资源就是你打开新世界得钥匙,它能做哪些扩展呢?1.1  USB扩网口通用ARM处理器大多带两路网口,如果项目中有多路网路接口的需求,一般会选择在主板外部加交换机/路由器。当然,出于成本考虑,也可以将Switch芯片集成到ARM核心板或底板上,如KSZ9897、
    万象奥科 2024-12-03 10:24 68浏览
  • 当前,智能汽车产业迎来重大变局,随着人工智能、5G、大数据等新一代信息技术的迅猛发展,智能网联汽车正呈现强劲发展势头。11月26日,在2024紫光展锐全球合作伙伴大会汽车电子生态论坛上,紫光展锐与上汽海外出行联合发布搭载紫光展锐A7870的上汽海外MG量产车型,并发布A7710系列UWB数字钥匙解决方案平台,可应用于数字钥匙、活体检测、脚踢雷达、自动泊车等多种智能汽车场景。 联合发布量产车型,推动汽车智能化出海紫光展锐与上汽海外出行达成战略合作,联合发布搭载紫光展锐A7870的量产车型
    紫光展锐 2024-12-03 11:38 101浏览
  • 光伏逆变器是一种高效的能量转换设备,它能够将光伏太阳能板(PV)产生的不稳定的直流电压转换成与市电频率同步的交流电。这种转换后的电能不仅可以回馈至商用输电网络,还能供独立电网系统使用。光伏逆变器在商业光伏储能电站和家庭独立储能系统等应用领域中得到了广泛的应用。光耦合器,以其高速信号传输、出色的共模抑制比以及单向信号传输和光电隔离的特性,在光伏逆变器中扮演着至关重要的角色。它确保了系统的安全隔离、干扰的有效隔离以及通信信号的精准传输。光耦合器的使用不仅提高了系统的稳定性和安全性,而且由于其低功耗的
    晶台光耦 2024-12-02 10:40 120浏览
  •         温度传感器的精度受哪些因素影响,要先看所用的温度传感器输出哪种信号,不同信号输出的温度传感器影响精度的因素也不同。        现在常用的温度传感器输出信号有以下几种:电阻信号、电流信号、电压信号、数字信号等。以输出电阻信号的温度传感器为例,还细分为正温度系数温度传感器和负温度系数温度传感器,常用的铂电阻PT100/1000温度传感器就是正温度系数,就是说随着温度的升高,输出的电阻值会增大。对于输出
    锦正茂科技 2024-12-03 11:50 106浏览
  • 遇到部分串口工具不支持1500000波特率,这时候就需要进行修改,本文以触觉智能RK3562开发板修改系统波特率为115200为例,介绍瑞芯微方案主板Linux修改系统串口波特率教程。温馨提示:瑞芯微方案主板/开发板串口波特率只支持115200或1500000。修改Loader打印波特率查看对应芯片的MINIALL.ini确定要修改的bin文件#查看对应芯片的MINIALL.ini cat rkbin/RKBOOT/RK3562MINIALL.ini修改uart baudrate参数修改以下目
    Industio_触觉智能 2024-12-03 11:28 84浏览
  • TOF多区传感器: ND06   ND06是一款微型多区高集成度ToF测距传感器,其支持24个区域(6 x 4)同步测距,测距范围远达5m,具有测距范围广、精度高、测距稳定等特点。适用于投影仪的无感自动对焦和梯形校正、AIoT、手势识别、智能面板和智能灯具等多种场景。                 如果用ND06进行手势识别,只需要经过三个步骤: 第一步&
    esad0 2024-12-04 11:20 50浏览
  • 11-29学习笔记11-29学习笔记习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记
    youyeye 2024-12-02 23:58 71浏览
  • 概述 说明(三)探讨的是比较器一般带有滞回(Hysteresis)功能,为了解决输入信号转换速率不够的问题。前文还提到,即便使能滞回(Hysteresis)功能,还是无法解决SiPM读出测试系统需要解决的问题。本文在说明(三)的基础上,继续探讨为SiPM读出测试系统寻求合适的模拟脉冲检出方案。前四代SiPM使用的高速比较器指标缺陷 由于前端模拟信号属于典型的指数脉冲,所以下降沿转换速率(Slew Rate)过慢,导致比较器检出出现不必要的问题。尽管比较器可以使能滞回(Hysteresis)模块功
    coyoo 2024-12-03 12:20 108浏览
  • 最近几年,新能源汽车愈发受到消费者的青睐,其销量也是一路走高。据中汽协公布的数据显示,2024年10月,新能源汽车产销分别完成146.3万辆和143万辆,同比分别增长48%和49.6%。而结合各家新能源车企所公布的销量数据来看,比亚迪再度夺得了销冠宝座,其10月新能源汽车销量达到了502657辆,同比增长66.53%。众所周知,比亚迪是新能源汽车领域的重要参与者,其一举一动向来为外界所关注。日前,比亚迪汽车旗下品牌方程豹汽车推出了新车方程豹豹8,该款车型一上市就迅速吸引了消费者的目光,成为SUV
    刘旷 2024-12-02 09:32 119浏览
  • RDDI-DAP错误通常与调试接口相关,特别是在使用CMSIS-DAP协议进行嵌入式系统开发时。以下是一些可能的原因和解决方法: 1. 硬件连接问题:     检查调试器(如ST-Link)与目标板之间的连接是否牢固。     确保所有必要的引脚都已正确连接,没有松动或短路。 2. 电源问题:     确保目标板和调试器都有足够的电源供应。     检查电源电压是否符合目标板的规格要求。 3. 固件问题: &n
    丙丁先生 2024-12-01 17:37 100浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦