大语言模型系列-GPT-3.5(ChatGPT)

文章目录

  • 前言
  • 一、GPT-3.5的创新点
  • 二、GPT-3.5的训练流程
    • SFT数据集
    • RM数据集
    • PPO数据集
  • 三、ChatGPT的诞生
  • 总结


前言

《Training language models to follow instructions with human feedback,2022》

前文提到了GPT-3的缺点,其中最大的问题是:语言模型更大并不能从本质上使它们更好地遵循用户的意图,大型语言模型可能生成不真实、有害或对用户毫无帮助的输出。

GPT-3.5正是基于此问题进行的改进,它通过对人类反馈进行微调,使语言模型与用户在广泛任务中的意图保持一致,专业术语是对齐(Alignment)。

ps:ChatGPT和InstructGPT是一对兄弟模型,是在GPT-4之前发布的预热模型,有时候也被叫做GPT-3.5。ChatGPT和InstructGPT在模型结构,训练方式上都完全一致,即都使用了指示学习(Instruction Learning)和人工反馈的强化学习(Reinforcement Learning from Human Feedback,RLHF)来指导模型的训练,它们不同的仅仅是采集数据的方式上有所差异。


一、GPT-3.5的创新点

  1. 指示学习(Instruct Learning)和提示学习(Prompt Learning)

ps:指示学习和提示学习的目的都是去挖掘语言模型本身具备的知识。

  • finetune需要大量数据集,会更新梯度,比较耗时
  • Prompt用于激发语言模型的补全能力,针对某个具体任务的,泛化能力不如指示学习。
  • Instruct用于激发语言模型的理解能力,它通过给出更明显的指令,让模型去做出正确的行动。
    在这里插入图片描述
    在这里插入图片描述
  1. 使用了基于人工反馈的强化学习(Reinforcement Learning from Human Feedback,RLHF),使结果对齐。

ps:

  • 强化学习通过奖励(Reward)机制来指导模型训练,奖励机制可以看做传统模型训练机制的损失函数。奖励的计算要比损失函数更灵活和多样(AlphaGO的奖励是对局的胜负),这带来的代价是奖励的计算是不可导的,因此不能直接拿来做反向传播。强化学习的思路是通过对奖励的大量采样来拟合损失函数,从而实现模型的训练。
  • 同样人类反馈也是不可导的,那么我们也可以将人工反馈作为强化学习的奖励,基于人类反馈的强化学习便应运而生。
    在这里插入图片描述

二、GPT-3.5的训练流程

InstructGPT/ChatGPT都是采用了GPT-3的网络结构,通过指示学习构建训练样本来训练一个反应预测内容效果的奖励模型(RM),最后通过这个奖励模型的打分来指导强化学习模型的训练。InstructGPT/ChatGPT的训练流程如下所示:

  1. 收集演示数据并进行监督训练
  2. 收集对比数据,训练奖励模型
  3. 使用PPO针对奖励模型优化策略
    请添加图片描述
    具体一点可以看如下例子:
    在这里插入图片描述
    以上三个步骤采用的数据集是不同的

SFT数据集

SFT数据集是用来训练第1步有监督的模型,即使用采集的新数据,按照GPT-3的训练方式对GPT-3进行微调。因为GPT-3是一个基于提示学习的生成模型,因此SFT数据集也是由提示-答复对组成的样本。SFT数据一部分来自使用OpenAI的PlayGround的用户,另一部分来自OpenAI雇佣的40名标注员(labeler)。并且他们对labeler进行了培训。在这个数据集中,标注员的工作是根据内容自己编写指示,并且要求编写的指示满足下面三点:

简单任务:labeler给出任意一个简单的任务,同时要确保任务的多样性;
Few-shot任务:labeler给出一个指示,以及该指示的多个查询-响应对;
用户相关的:从接口中获取用例,然后让labeler根据这些用例编写指示。

RM数据集

RM数据集用来训练第2步的奖励模型,我们也需要为InstructGPT/ChatGPT的训练设置一个奖励目标,要尽可能全面且真实的对齐我们需要模型生成的内容。很自然的,我们可以通过人工标注的方式来提供这个奖励,通过人工对可以给那些涉及偏见的生成内容更低的分从而鼓励模型不去生成这些人类不喜欢的内容。InstructGPT/ChatGPT的做法是先让模型生成一批候选文本,让后通过labeler根据生成数据的质量对这些生成内容进行排序。

PPO数据集

InstructGPT的PPO数据没有进行标注,它均来自GPT-3的API的用户。即有不同用户提供的不同种类的生成任务,其中占比最高的包括生成任务(45.6%),QA(12.4%),头脑风暴(11.2%),对话(8.4%)等。

三、ChatGPT的诞生

请添加图片描述


总结

ChatGPT的优缺点如下:

优点:

  1. 参数更小,真实性更强
  2. 无害性提升
  3. 编码能力强

缺点:

  1. 会降低模型在通用NLP任务上的效果
  2. 仍可能给出错误结论
  3. 对指示非常敏感
  4. 对简单概念的过分解读
  5. 对有害的指示可能会输出有害的答复

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ZYNQ linux笔记 --- Linux UIO框架下调用HLS ip核

目标 编写了 HLS IP核,实现对图像的缩放,已通过HLS 仿真验证和裸机验证,想在Linux端调用该IP 工程构建 简单描述一下,vdma出来连接 resize ip核,resize ip核后面接 vid_out ip resize ip核的 interrput 接口通过 xlconcat ip 连接到PS端中断接口IRQ,这一点很重要! 导…

vue接入百度地图获取经纬度

通过城市名称和城市中心经纬度来获取当前所在地图,当前经纬度中心获取可以通过后端获取 静态文件包,替换baidu.html中的ak值,ak值通过百度地图官方网站申请 申请:百度地图API申请步骤 - 知乎 代码示例文件: 链接&a…

wpf prism左侧抽屉式菜单

1.首先引入包MaterialDesignColors和MaterialDesignThemes 2.主页面布局 左侧菜单显示在窗体外&#xff0c;点击左上角菜单图标通过简单的动画呈现出来 3.左侧窗体外菜单 <Grid x:Name"GridMenu" Width"150" HorizontalAlignment"Left" Ma…

网络学习:数据的封装与解封装

目录 一、数据的封装与解封装 1. 数据的封装过程 2. 数据的解封装过程 二、数据的传输过程 1. 相关概念 2. 网络传输过程中数据封装和解封装模拟 一、数据的封装与解封装 1. 数据的封装过程 数据封装过程&#xff0c;在这里我们举例说明&#xff0c;以两台主机的通信为…

平面纯弯梁单元Matlab有限元编程 |欧拉梁单元| 简支梁|悬臂梁|弯矩图 |变形图| Matlab源码 | 视频教程

专栏导读 作者简介&#xff1a;工学博士&#xff0c;高级工程师&#xff0c;专注于工业软件算法研究本文已收录于专栏&#xff1a;《有限元编程从入门到精通》本专栏旨在提供 1.以案例的形式讲解各类有限元问题的程序实现&#xff0c;并提供所有案例完整源码&#xff1b;2.单元…

NLP:自定义模型训练

书接上文&#xff0c;为了完成指定的任务&#xff0c;我们需要额外训练一个特定场景的模型 这里主要参考了这篇博客&#xff1a;大佬的博客 我这里就主要讲一下我根据这位大佬的博客一步一步写下时&#xff0c;遇到的问题&#xff1a; 文中的cfg在哪里下载&#xff1f; 要不…

Python 浅复制与深复制(Shallow Copy Deep Copy)

在Python中&#xff0c;赋值语句的意义是在对象与变量之间建立引用关系&#xff0c;相当于给对象起了名字。对于复合类型对象&#xff0c;由于其可以保存其他类型对象的引用&#xff0c;而在复制时即引出了“仅复制引用关系”或“同时复制引用对象”两种选择&#xff0c;即浅复…

C++ 哈希表OJ

目录 1、1. 两数之和 2、面试题 01.02. 判定是否互为字符重排 3、217. 存在重复元素 4、 219. 存在重复元素 II 5、49. 字母异位词分组 频繁查找某一个数的时候可以使用哈希表&#xff0c;哈希表可以使用容器&#xff0c;也可以使用数组模拟&#xff0c;当元素是字符串中的字…

SoundTouch对音频处理(Android)

SoundTouch对音频处理&#xff08;Android&#xff09; SoundTouch介绍 SoundTouch 是一个用于音频处理的开源库&#xff0c;主要用于改变音频的速度、音调和音量等特征。您可以在项目中使用 SoundTouch 库来实现音频处理的功能&#xff0c;比如变速播放、音高变化、混响效果…

上海亚商投顾:沪指震荡微涨 AI手机、军工板块集体走强

上海亚商投顾前言&#xff1a;无惧大盘涨跌&#xff0c;解密龙虎榜资金&#xff0c;跟踪一线游资和机构资金动向&#xff0c;识别短期热点和强势个股。 一.市场情绪 沪指昨日低开后震荡回升&#xff0c;黄白二线分化明显&#xff0c;银行等权重板块走势较强。AI手机概念股持续…

基于yolov5的柿子成熟度检测系统,可进行图像目标检测,也可进行视屏和摄像检测(pytorch框架)【python源码+UI界面+功能源码详解】

功能演示&#xff1a; 基于yolov5的柿子成熟度检测系统&#xff0c;系统既能够实现图像检测&#xff0c;也可以进行视屏和摄像实时检测_哔哩哔哩_bilibili &#xff08;一&#xff09;简介 基于yolov5的柿子成熟度检测系统是在pytorch框架下实现的&#xff0c;这是一个完整的…

JavaWeb----MySQL

一&#xff1a;JavaWeb相关介绍 Web&#xff1a;全球广域网&#xff0c;也称为万维网&#xff08;www&#xff09;&#xff0c;能够通过浏览器访问的网站 JavaWeb&#xff1a;是用Java技术来解决相关Web互联网领域的技术栈 JavaWeb流程 1.网页&#xff1a;展现数据 2.数据…

BI财务实战:毛利分析怎么做?终于有人讲透了

在上两篇&#xff0c;我们分享了 今天&#xff0c;我们将开启财务分析系列的第三篇&#xff0c;深入研究真实业务背景&#xff0c;并通过详细的分析思路和实际操作步骤&#xff0c;探讨如何在多种因素的交织影响下&#xff0c;准确定位毛利变化的关键要素。通过这一深入剖析&a…

docker 部署prometheus+grafana

首先进行部署docker 配置阿里云依赖&#xff1a; curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo # 配置centos 7的镜像源 yum install -y yum-utils device-mapper-persistent-data lvm2 # 安装一些后期或需要的的一下依…

AI制作PPT软件有哪些?亲测并推荐10款PPT制作AI工具!

在信息爆炸的时代&#xff0c;我们都渴望找到一种最佳方式&#xff0c;可以让我们的思想和观点更有效地传达出去。其实最适合的表达工具&#xff0c;就在我们身边——很多人熟悉的PPT工具&#xff0c;就是这样一个强大的媒介。 不过&#xff0c;面对市场上琳琅满目的PPT制作工…

学会这样回复客户,高效又便捷!

如何高效的回复客户信息是广大企业及商户需关注的议题。以下介绍几个实用小妙招&#xff0c;能够促进客户体验&#xff0c;提高工作效率。 1. 客户分级&#xff1a;根据重要性对客户进行分类&#xff0c;先处理重要客户的信息&#xff0c;提升他们的满意度。 2. 自动回复&#…

elementui 去掉el-input中textarea的右下角标、关闭高度调整功能

1、示例图 2、实现代码 ::v-deep .el-textarea {.el-textarea__inner {resize: none; // 去除右下角图标} }

如何提高项目成功率?分享20 种项目管理工具、技术和软件

本文将分享20种项目管理常用的工具、技术和软件&#xff0c;比如项目管理软件 PingCode、Worktile、Redmine、Jira、SAP、PrimaveraSystems等&#xff1b;项目计划阶段工具和技术WBS、甘特图、PERT图、风险评估矩阵等等。 项目管理是确保项目成功交付的关键&#xff0c;它涉及到…

龙蜥社区成立系统安全 SIG,助力系统安全生态

随着数字化时代的到来&#xff0c;云计算、大数据、人工智能等技术的广泛应用&#xff0c;操作系统承载越来越多的关键业务和数据&#xff0c;其安全性对于信息系统的运转和发展具有至关重要的作用。因此&#xff0c;加强操作系统安全防护、提高安全意识和防范能力是数字化时代…

电商API 接口列表|包含淘宝|京东|1688商品接口

电商API 接口列表 整理了一些 API 接口&#xff0c;可以用于 Vue、React、UniApp、微信小程序等项目实践练习。 为了方便调用&#xff0c;大多使用GET方式请求&#xff0c;传参采用混合 params 和 query方式。 所有接口仅供学习交流使用&#xff0c;不保证实时更新&#xff0c;…