ChatGPT原理剖析:InstructGPT详解


❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️

👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博相关......)👈

InstructGPT

(封面图由ERNIE-ViLG AI 作画大模型生成)

ChatGPT原理剖析:InstructGPT详解

1. InstructGPT原理

GPT-3是一种预训练的语言模型,它在多种自然语言处理任务上都表现出了很好的性能。然而,GPT-3仍然存在一些局限性,例如它不能够直接根据提示生成特定任务的响应,需要通过微调才能够完成。微调是指在特定任务上针对预训练模型进行的有监督学习,以此来调整模型的权重,使其在该任务上的表现更好。

在许多应用中,人们需要GPT-3模型完成一些特定的任务,例如翻译、摘要、回答问题等。传统的方法是通过人工标注数据集来训练模型,在特定任务上进行微调。然而,这种方法需要大量的人力和时间,并且可能存在标注数据集的不准确性等问题。

为了解决这些问题,OpenAI提出了InstructGPT模型。InstructGPT的原理是利用人类的反馈对语言模型进行微调,使其更能符合用户的意图和指示。它使用了一个叫做指令-回答对的数据集,其中包含了各种任务和场景下的问题和答案。它还使用了一个叫做指令-评价对的数据集,其中包含了语言模型生成的输出和人类给出的评分。通过这两个数据集,InstructGPT可以学习如何根据不同的指令生成更有用、更真实、更友好的输出。

InstructGPT模型通过让人工编写提示来引导GPT-3生成特定任务的响应,从而省去了标注数据集的过程。具体来说,InstructGPT模型要求标注者编写三种类型的提示:

  • 简单提示:标注者提出一个任意任务,同时确保任务具有足够的多样性。

  • Few-shot提示:标注者提出一条指令,以及该指令的多个查询/响应对。

  • 基于用户提示:根据OpenAI API的候选名单申请中陈述的许多用例来提供提示。

通过这些提示,InstructGPT模型生成了三个不同的数据集,用于微调过程。这些数据集分别是:

  • SFT数据集:带有用于训练SFT模型的标签器演示。

  • RM数据集:带有用于训练模型输出的标签器排名。

  • PPO数据集:没有任何人工标签,用作RLHF微调的输入。

在筛选标注者上,与供应商紧密合作,通过入职流程、为每个任务提供详细的说明、有个聊天室帮助回答问题等等来帮助标注者们在同个任务下有同样的偏好。在有监督微调(SFT)方面,使用了有监督学习在标签演示中微调GPT-3。

2. InstructGPT的训练步骤

InstructGPT

  • 监督微调 (SFT):使用一个包含各种指令-回答对的数据集,对GPT-3进行监督学习,使其能够根据不同的指令生成合理的回答。
  • 奖励模型 (RM) 训练:使用一个包含各种指令-评价对的数据集,训练一个奖励模型,使其能够根据人类给出的评分,给语言模型生成的输出打分。
  • 强化学习 (RL):使用近端策略优化 (PPO) 算法,对语言模型进行强化学习,使其能够最大化奖励模型给出的分数。

2.1 监督微调 (SFT)

InstructGPT监督微调的过程是这样的:

  • 首先,收集一些人类提供的问题和回答,作为反馈数据集。
  • 然后,用这个数据集对语言模型进行监督学习,使其能够生成与人类回答相似的输出。
  • 最后,评估语言模型在不同的任务上的表现,如对话、摘要、翻译等,并给出反馈指令,如“更简洁”、“更友好”、“更准确”等。

这个过程可以重复多次,以提高语言模型的质量和适应性。

InstructGPT监督微调的数据量取决于语言模型的规模和任务的复杂度。一般来说,越大的语言模型需要越多的数据来发挥其潜力。例如,GPT-3使用了45TB的原始未处理数据,而InstructGPT使用了约10万个问题和回答对。

不过,并不是数据量越多越好,因为数据的质量和多样性也很重要。如果数据存在噪声、偏见或重复,那么语言模型可能会学习到错误或有害的信息。因此,InstructGPT在收集数据时也要注意筛选和平衡。

InstructGPT保证数据的质量和多样性的方法有以下几点:

  • 使用多种来源的数据,如网页、新闻、社交媒体等,以增加数据的覆盖面和代表性。
  • 使用人类标注员对数据进行筛选和评估,以去除噪声、错误或有害的内容。
  • 使用不同的反馈指令来调整语言模型的输出,以增加数据的多样性和灵活性。
  • 使用强化学习来优化语言模型的参数,以适应不同的任务和场景。

InstructGPT监督微调后的效果有以下几点:

  • 语言模型能够更好地遵循用户的意图,生成与反馈指令一致的输出。
  • 语言模型能够更真实地回答问题,减少虚假或误导性的信息。
  • 语言模型能够更友好地进行对话,降低有害或冒犯性的内容。
  • 语言模型能够更灵活地适应不同的任务和场景,提高生成质量和多样性。

2.2 奖励模型 (RM) 训练

InstructGPT奖励模型 (RM) 训练过程有以下几个步骤:

  • 使用监督微调 (SFT) 后的语言模型,根据不同的反馈指令生成多个候选输出。
  • 雇佣人类标注员,根据输出的质量和与反馈指令的一致性,对每个候选输出打分或排序。
  • 使用打分或排序作为标签,训练一个回归模型,该模型与语言模型共享参数,但在最后一层添加了一个线性层。
  • 使用训练好的回归模型作为奖励模型 (RM),为语言模型生成的输出提供奖励信号。

2.3 强化学习 (RL)

InstructGPT近端策略优化 (PPO) 过程有以下几个步骤:

  • 随机采样一个新的反馈指令,作为语言模型的输入。
  • 使用语言模型生成一个候选输出,使用奖励模型 (RM) 对其打分。
  • 使用PPO算法更新语言模型的参数,以最大化奖励模型 (RM) 的打分,并保持新旧策略间的差异不要太大123。
    重复上述过程,直到达到预设的迭代次数或收敛条件。

InstructGPT近端策略优化 (PPO) 与其他强化学习方法的区别主要有以下几点:

  • PPO是一种同轨策略(on-policy)算法,即它只使用当前策略生成的数据来更新参数,而不使用历史数据。
  • PPO通过引入一个裁剪函数,来约束新旧策略间的差异不要太大,从而避免了性能崩溃的风险。
  • PPO相比于其他同轨策略算法,如TRPO,具有更简单、更高效、更稳定的优点。

参考文献

[1] Training language models to follow instructions with human feedback https://arxiv.org/abs/2203.02155
[2] Deep reinforcement learning from human preferences https://arxiv.org/abs/1706.03741
[3] Learning to summarize from human feedback https://arxiv.org/abs/2009.01325


❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️

👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博相关......)👈

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ChatGPT原理简介

承接上文GPT前2代版本简介 GPT3的基本思想 GPT2没有引起多大轰动,真正改变NLP格局的是第三代版本。 GPT3训练的数据包罗万象,上通天文下知地理,所以它会胡说八道,会说的贼离谱,比如让你穿越到唐代跟李白对诗,不在一…

ChatGPT 原理解析:对ChatGPT的常见误解

本文目录: ChatGPT 原理解析:对ChatGPT 的常见误解 ChatGPT 原理解析:对ChatGPT 的常见误解 本文是台大李宏毅教授的深度学习课程的视频笔记。李宏毅教授的机器学习课程内行的都知道,大概是全世界最好、最完整的 Deep Learning 中…

ChatGPT原理简明笔记

学习笔记,以李宏毅的视频讲解为主,chatGPT的官方博客作为补充。 自己在上古时期接触过人工智能相关技术,现在作为一个乐子来玩,错漏之处在所难免。 若有错误,欢迎各位神仙批评指正。 chatGPT的训练分为四个阶段&#x…

ChatGPT原理解读

目录 GPT痛点基于人类反馈的强化学习机制(ChatGPT)step1:Fine-tune SFT模型step2:训练Reward模型step3:强化学习训练PPO模型 一些技术问题猜想ChatGPT的多轮对话能力ChatGPT的交互修正能力 GPT痛点 GPT作为一个通用大…

ChatGPT 基地

大家好,我是贺同学。 一直以来密切关注 ChatGPT 的趋势,最近相关的话题可谓是热度不减,并且相关的付费社群已经有雨后春笋般冒出来很多,但我最近发现一个比较独特的星球。 在这个星球里面,大家不搞噱头,而是…

关于安卓以及微软用户chatgpt上一篇文章如今第五点无法正常进入更新解决方法以及附加本地部署

目录 一、问题出现: 1、问题: 原因: 二、解决办法(本地部署chatgpt) 1、解决(国内网络使用真的chatgpt并非镜像)一次部署终生使用 第一步: ​编辑第二步: 三、实现结…

chatgpt赋能python:Python手机App开发:打包你的Python代码并在Android或iOS上运行

Python 手机App开发:打包你的Python代码并在Android或iOS上运行 Python是当今最受欢迎的编程语言之一,经过了十多年的发展,其用户群体已经非常庞大,和诸多行业广泛应用。从网站开发到机器学习和Data Science,Python都…

ChatGPT:如何使用正在改变一切的 AI 聊天机器人

转载自ChatGPT: How to use the AI tool thats changing everything | Digital Trends DownLoad 个人中心 ChatGPT 继续通过AI 生成的内容让互联网眼花缭乱,从一个新颖的聊天机器人转变为一项推动下一个创新时代的技术。不过,并不是每个人都参与其中&…

谷歌或被抛弃!ChatGPT 引爆手机市场新一轮洗牌:Android 手机销冠三星30亿美元大单欲改投 Bing...

点击上方“AI遇见机器学习”,选择“星标”公众号 第一时间获取价值内容 整理 | 褚杏娟 核子可乐 今年三月,谷歌员工突遭意外打击:韩国消费电子巨头三星正考虑用微软 Bing 取代谷歌搜索,作为其设备上的默认搜索引擎。 以 New Bing …

利用ChatGPT进行表格的数据分析!

第一步:既然是分析表格数据,我们就先让GPT来生成一组表格数据,提问问题如下,你也可以自己发挥 请给我生成10组表格数据,姓名,年龄,基本工资,全勤奖励,绩效奖金&#xff0…

chatgpt帮你制作excel表格

场景: 让chatgpt帮你制作工作表格方法 输入你的需求,让chatgpt帮你解答逐步添加需求

ChatGPT辅助处理excel表格数据

选择使用方法 找现成的工具。试了两个,有各种问题。比如比如北大团队出品的ChatExcel等。我的表格列比较多,上传文件后需要砍掉一部分。输入几个命令以后就识别不了了。即使识别到了,输出也受限制,还不如手工处理。另外&#xff…

让ChatGPT来制作Excel表格,ChatGPT实现文本和表格的相互转换

Office 三套件可以说是现代办公族必备的办公工具。其中,Excel 因为内置的计算函数、VBA 宏等高级功能又成为了非专业人士最头疼的 Office 组件。非财务专业人士,估计平常会用的 Excel 函数仅限于 SUM(), AVERAGE() 等,甚至这些都是通过界面点…

使用ChatGPT处理Excel表格-终极指南

ChatGPT是由OpenAI开发的人工智能聊天机器人,可用于各种Excel任务,以提高您的办公效率,无论您是会计师、金融分析师、经理、管理员还是其他企业专业人士。 我们将讨论ChatGPT在Excel中可以帮助您的顶级方法。您会惊叹于使用ChatGPT将办公室在…

这么方便吗?用ChatGPT生成Excel(详解步骤)

文章目录 前言使用过 ChatGPT 的人都知道,提示占据非常重要的位置。而 Word,Excel、PPT 这办公三大件中,当属 Excel 最难搞,想要熟练掌握它,需要记住很多公式。但是使用提示就简单多了,和 ChatGPT 聊聊天就…

ChatGPT使用技巧—如何快速制作表格?

一、背景: 在学习或工作中,时常会需要做一些表格进行数据统计、分析,通常我们会用word或者excel做出表格,然后把数据一个个复制进去,非常慢,用了ChatGPT之后,你会发现工作会变得如此简单…

使用ChatGPT做简单Excel表格及数据分析

解锁 ChatGPT 表格能力 如果我们想用ChatGPT做一些简单的表格 或者想让他具备编辑分析能力 只需要在提问的时候告诉 ChatGPT:请以表格的形式展示回复的内容 这么说... 可能有点抽象 下面我们就用一个完整的例子展开学习一下 举例 假如我们拿到了下面这组数据 希望…

Chatgpt使用技巧(一):Chatgpt处理python+excel+tableau的技巧。

#分享一个使用chatgpt处理pythonexceltableau的技巧。 首先需要一个chatgpt的账号,如果没有的话可以在csdn中使用。 其次(图一)中是我建的excel样本。 我通过询问(图二)chatgpt获取python跑取excel的代码。 然后绘制…

chatGPT是什么?最新需要了解的都在这

ChatGPT是什么? ChatGPT是一种基于人工智能的聊天机器人。它能够使用自然语言处理技术,与人类进行交互,并回答各种问题或提供帮助。ChatGPT的目的是为了让用户更容易地获取所需信息,并进行沟通。 ChatGPT是一款基于人工智能技术的…

ChatGPT更新说明(20230524)

原文传送门:ChatGPT — Release Notes 更新说明(5月24日) 简要:iOS应用在更多国家可用,Alpha测试中的共享链接,Bing插件,iOS上的历史记录禁用 ChatGPT iOS应用在更多国家可用 好消息&#xf…