GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF
GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF
文章目录
- GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF
- Pretraining 预训练阶段
- Supervised FineTuning (SFT)监督微调阶段
- Reward Modeling 奖励评价建模
- Reinforment Learning RLHF 强化学习
大模型常遇到一些概念性的问题,比如: 什么预训练?什么是pretraining?什么是Base model,什么是SFT model?
CPT和ChatGPT是一样的吗?
以GPT为例,LLM训练流程分为4个阶段:预训练,监督微调训练,奖励评价训练,强化学习。分别生成预训练模型(Base model,基础模型),如GPT3,GPT4;监督精调模型SFT模型,RM奖励评价模型,和最后的生成模型,如ChatGPT。
Andrej Karpathy的这张总结的很好,下面以此作为阐述。

Pretraining 预训练阶段
预训练阶段通过互联网的海量数据,训练一个算法基本原型,获得自然语言隐含的大量通用特征。可以理解第一步是粗调,相当于从粗矿中炼矿,从原油中炼油。
| 训练数据: |
|---|
| 来自互联网的大量文本数据,具有低质量,数量巨大特点,TB级别。以LLaMA模型为例,训练数据共1.4T tokens。 数据来源种类也多样化,绝大部分是互联网抓取公开的数据,还有github,wikipedia,arXiv等专业网站数据。 |
| 模型类型: |
| 自然语言建模,生成模型,预测下一个token(算法的处理单位,可以是词语,符号,短语,句子等) |
| 训练结果: |
| base model 基本模型 |
| 计算资源: |
| 算力需要很大,1000块以上的GPU; |
| 训练周期: |
| 训练时间耗费几个月,占据训练时间的99% |
| 代表模型: |
| 预训练模型代表,如GPT,LLaMA等等 |
Supervised FineTuning (SFT)监督微调阶段
预训练的训练数据良莠不齐,直接用到业务场景效果不是很好,接下来需要对模型进行精调。因此训练数据中,问题覆盖应该具有多样性,而且问题可能有很多种回答。也可以用辅助模型的最佳的回应作为引导标注,满足监督训练的条件。
| 训练数据: |
|---|
| 训练数据需要人工标注,人工编写的问题和回答,形成问答对。数据质量高,但数量少。在10~100K量级。 |
| 模型类型: |
| 自然语言建模,预测下一个token。基于base model建模的,生成SFT 模型。 |
| 训练结果: |
| SFT model SFT精调模型 |
| 计算资源: |
| 算力根据模型和场景,1-100块的GPU资源; |
| 训练周期: |
| 训练以天为单位,几天到几十天。 |
Reward Modeling 奖励评价建模
在监督微调阶段,获得精调的自然语言模型,一个问题有多种回答,到底哪种最符合呢?这就需要建立明确的价值观体系,好坏之分的标准。在标准尺度的基础上,进一步判别不同回答的优劣,根据训练者的价值,筛选和奖励最好的回答。这个阶段的关键是评价。
增加答案的价值观判断,本质上是选择最佳路径,在多种回答中,按分数排序,选择最好的问题答案。
| 训练数据: |
|---|
| 训练数据需要标注,人工编写的问题和答案,形成具有价值观偏好的问答对,要训练模型哪个是好的,哪个是不好的回答。数量质量高,但数量少。在10-1000K的量级。 |
| 模型类型: |
| 二值分类评价模型,区分好和不好的回答。基于SFT模型,生成RM模型。 |
| 训练结果: |
| RM模型,奖励评价模型不能单独部署。 |
| 计算资源: |
| 算力根据模型和场景,1-100块的GPU资源; |
| 训练周期: |
| 训练以天为单位,几天到几十天。 |
Reinforment Learning RLHF 强化学习
在SFT和RM模型基础上,用强化学习模型,根据人工编写问题答案对,和奖励评价模型,对SFT精调模型进行强化训练。多种路径中选择最佳路径,多种答案中,选择最大奖励的答案。
| 训练数据: |
|---|
| 训练数据和前面一样需要标注,通过价值观偏好RM模型获得评分。数量质量高,但数量少。在10-100K量级。 |
| 模型类型: |
| 强化学习模型,预训练模型一样结果形式,奖励最大的,生成下一个token。 |
| 训练结果: |
| 带价值观判断的生成模型,代表模型:如:ChatGPT,Claude等。 |
| 计算资源: |
| 算力根据模型和场景,1-100块的GPU资源。 |
| 训练周期: |
| 训练以天为单位,几天到几十天。 |
点个赞 点个赞 点个赞
觉得有用 收藏 收藏 收藏
End
GPT专栏文章:
GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF
GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(二)
GPT实战系列-P-Tuning本地化训练ChatGLM2等LLM模型,到底做了什么?(一)
GPT实战系列-ChatGLM3本地部署CUDA11+1080Ti+显卡24G实战方案
GPT实战系列-ChatGLM2模型的微调训练参数解读
GPT实战系列-如何用自己数据微调ChatGLM2模型训练
GPT实战系列-ChatGLM2部署Ubuntu+Cuda11+显存24G实战方案
GPT实战系列-Baichuan2本地化部署实战方案
决策引擎专栏:
Falcon构建轻量级的REST API服务
决策引擎-利用Drools实现简单防火墙策略
相关文章:
GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF
GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHF 文章目录 GPT实战系列-GPT训练的Pretraining,SFT,Reward Modeling,RLHFPretraining 预训练阶段Supervised FineTuning (SFT&#x…...
电子学会C/C++编程等级考试2022年03月(三级)真题解析
C/C++等级考试(1~8级)全部真题・点这里 第1题:和数 给定一个正整数序列,判断其中有多少个数,等于数列中其他两个数的和。 比如,对于数列1 2 3 4, 这个问题的答案就是2, 因为3 = 2 + 1, 4 = 1 + 3。 时间限制:10000 内存限制:65536输入 共两行,第一行是数列中数的个数…...
理解 JUnit, JaCoCo 到 SonarQube 的过程及 Maven 配置
Java 项目需要产生单元测试及代码覆盖率的话一直都是走的 JUnit 单元测试,JaCoCo 基于测试产生测试覆盖率,然后送到 SonarQube 去展示这条路子。当然 SonarQube 还可以帮我们进行代码的静态分析。但对其中的具体使用及过程知晓的并不深,基本就…...
人工智能关键技术决定机器人产业的前途
人工智能(Artificial Intelligence,AI)是指让计算机或机器具有类似于人类的智能和学习能力的技术。人工智能技术与机器人技术的结合将改变传统的机器人行业格局,就像智能手机对传统手机的颠覆一样。本文从人工智能技术的发展趋势、…...
2023华为ICT网络初赛试题回顾
所有题目都只能用来学习交流,禁止用于非法不公平的使用,如有侵权,该文章立刻删除。 1、某机房没有合适长度的网线,现需手工制作一个568B标准的双纹线,那么应按照以下哪一线序进行制作? A.绿白,绿,蓝&#…...
Hands-on Machine Learning with Scikit-Learn,Keras TensorFlow
读书记录(缓慢更新) 目录 Part 1. The Fundamentals of Machine Learning The Content of The Machine Learning Landscape The Machine Learning Landscape Part 1. The Fundamentals of Machine Learning The Content of The Machine Learning Landscape Part 1. The F…...
242. 有效的字母异位词
这篇文章会收录到 :算法通关村第十二关-白银挑战字符串经典题目-CSDN博客 242. 有效的字母异位词 描述 : 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。 注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t …...
TUP通信——与多个客户端同时通信
一,概括:可以通过多线程思想每加一个客户端由线程池中的主线程交给一个子线程管理 二,案例 (1),线程池 (2),服务端 (3),客户端...
基于helm的方式在k8s集群中部署gitlab - 备份恢复(二)
接上一篇 基于helm的方式在k8s集群中部署gitlab - 部署(一),本篇重点介绍在k8s集群中备份gitlab的数据,并在虚拟机上部署相同版本的gitlab,然后将备份的数据进行还原恢复 文章目录 1. 备份2. 恢复到虚拟机上的gitlab2.…...
B树与B+树的对比
B树: m阶B树的核心特性: 树中每个节点至多有m棵子树,即至多含有m-1个关键字根节点的子树数属于[2, m],关键字数属于[1, m-1],其他节点的子树数属于 [ ⌈ m 2 ⌉ , m ] [\lceil \frac{m}{2}\rceil, m] [⌈2m⌉,m]&am…...
关键路径-STL版/拓扑排序 关键路径【数据结构】
关键路径-STL版 题目描述 给定有向图无环的边信息,求每个顶点的最早开始时间、最迟开始时间。 输入 第一行图的顶点总数 第二行边的总数 第三行开始,每条边的时间长度,格式为源结点 目的结点 长度 输出 第一行:第个顶点的最早…...
最新AI创作系统ChatGPT系统运营源码,支持GPT-4图片对话能力,上传图片并识图理解对话,支持DALL-E3文生图
一、AI创作系统 SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI创作ChatGPT?小编这里写一个详细图文教程吧!本系统使用NestjsVueTypescript框架技术,持续集成AI能力到本系统。支持OpenAI DALL-E3文生图,…...
小航助学题库蓝桥杯题库stem选拔赛(21年3月)(含题库教师学生账号)
需要在线模拟训练的题库账号请点击 小航助学编程在线模拟试卷系统(含题库答题软件账号)_程序猿下山的博客-CSDN博客 需要在线模拟训练的题库账号请点击 小航助学编程在线模拟试卷系统(含题库答题软件账号)_程序猿下山的博客-CSD…...
[python]离线加载fetch_20newsgroups数据集
首先手动下载这个数据包 http://qwone.com/~jason/20Newsgroups/20news-bydate.tar.gz 下载这个文件后和脚本放一起就行,然后 打开twenty_newsgroups.py文件(在fetch_20newsgroups函数名上,右键转到定义即可找到) 之后运行代码即…...
Python与设计模式--代理模式
5-Python与设计模式–代理模式 一、网络服务器配置白名单 代理模式是一种使用频率非常高的模式,在多个著名的开源软件和当前多个著名的互联网产品后 台程序中都有所应用。下面我们用一个抽象化的简单例子,来说明代理模式。首先,构造一个网…...
ubuntu挂载磁盘,以及开机自动挂载磁盘
1. 挂载临时磁盘(关机自动取消挂载) 在Ubuntu上挂载磁盘涉及到几个步骤,其中包括查看可用磁盘、创建挂载点、编辑 /etc/fstab 文件以确保在系统启动时自动挂载等。以下是一般的步骤: **查看可用磁盘和分区:**可以使用…...
Jetpack Compose中适应性布局的新API
Jetpack Compose中适应性布局的新API 针对大屏幕优化的新组合件。 使用新的Material适应性布局,为手机、可折叠设备和平板电脑构建应用程序变得更加简单!市场上各种不同尺寸的Android设备的存在挑战了构建应用程序时对屏幕尺寸的通常假设。开发者不应该…...
小航助学题库蓝桥杯题库stem选拔赛(22年1月)(含题库教师学生账号)
需要在线模拟训练的题库账号请点击 小航助学编程在线模拟试卷系统(含题库答题软件账号)_程序猿下山的博客-CSDN博客 需要在线模拟训练的题库账号请点击 小航助学编程在线模拟试卷系统(含题库答题软件账号)_程序猿下山的博客-CSD…...
蓝桥杯第100 题 九宫幻方 DFS 全排列 C++ 解题思维
题目 九宫幻方https://www.lanqiao.cn/problems/100/learning/?page1&first_category_id1&name%E4%B9%9D 思路和解题方法 一 (DFS) 首先,定义了一些全局变量和数组。vis数组用于标记已经出现过的数字,a数组用于存储数独的初始状态…...
NOI / 1.10编程基础之简单排序 提问05:分数线划定 c语言 结构体
描述 世博会志愿者的选拔工作正在 A 市如火如荼的进行。为了选拔最合适的人才,A市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试。面试分数线根据计划录取人数的150%划定,即如果计划录取m名志愿者,则面试…...
YimMenu终极指南:5分钟学会GTA5最强安全增强工具
YimMenu终极指南:5分钟学会GTA5最强安全增强工具 【免费下载链接】YimMenu YimMenu, a GTA V menu protecting against a wide ranges of the public crashes and improving the overall experience. 项目地址: https://gitcode.com/GitHub_Trending/yi/YimMenu …...
人声分离实战指南:从UVR、Demucs到Spleeter的模型选型与场景适配
1. 人声分离技术入门:为什么我们需要它? 第一次接触人声分离技术是在去年帮朋友做婚礼视频的时候。当时需要把现场嘈杂的背景音和人声分开,试了各种音频编辑软件都没法完美解决,直到发现了这些开源工具。简单来说,人声…...
智能应急灯V16:多场景照明解决方案
目录 一、方案概述 二、硬件方案设计 2.1 硬件整体架构 2.2 核心模块选型与设计 2.2.1 主控模块(核心单元) 2.2.2 电源管理模块(供电核心) 2.2.3 照明驱动模块 2.2.4 状态监测模块 2.2.5 通信模块(可选&#…...
全开源同城论坛小程序:打造本地生活服务新入口
在本地生活服务赛道愈发火热的当下,一款功能完备、开源可定制的同城论坛小程序,无疑是开发者和创业者的得力工具。今天要给大家分享的这套全开源同城论坛小程序源码,不仅涵盖二手交易、房屋出租两大高频本地需求,还集成了LBS定位与…...
UG NX 在曲面上生成文字
在UG NX中,在曲面上生成文字通常有两种方法:“面上”文本(直接贴合)和“曲线”文本投影。方法一:使用“面上”文本(直接生成,最常用) 这种方法生成的字是直接“长”在曲面上的&#…...
抖音视频批量下载工具全攻略:从效率提升到合规应用
抖音视频批量下载工具全攻略:从效率提升到合规应用 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support.…...
告别B站资源无法保存的烦恼:BiliTools跨平台工具箱完整使用指南
告别B站资源无法保存的烦恼:BiliTools跨平台工具箱完整使用指南 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliToo…...
Skills一站式搜索、安装、管理工具,支持一键同步40款AI工具!
文章目录 📖 介绍 📖 🏡 演示环境 🏡 📒 Skill一站式搜索、安装、管理工具 📒 🔍 解决什么痛点 🚀 快速上手 🔄 功能一:迁移整理现有Skill 🔎 功能二:搜索安装Skill 🔔 功能三:同步分发到多工具 📋 支持的工具列表 ⚙️ 配置说明 🤔 优缺点分析 ⚓…...
基于微电网的小信号建模下垂控制稳定性的根轨迹分析
基于小信号建模的下垂控制稳定分析,文章完全浮现。 关键词:微电网,下垂控制,小信号模型,根轨迹,稳定性。一、程序核心目标 本程序通过小信号建模方法,构建微电网下垂控制的数学模型,…...
两种方案深度解析:如何免费解锁WeMod专业功能
两种方案深度解析:如何免费解锁WeMod专业功能 【免费下载链接】Wand-Enhancer Advanced UX and interoperability extension for Wand (WeMod) app 项目地址: https://gitcode.com/gh_mirrors/we/Wand-Enhancer 游戏玩家常常面临一个困境:想要使用…...
