四、什么是强化学习(RLHF)
RLHF 是一种训练方式,并不是类似 Lora 这种的训练方法,RLHF 可以分为三阶段:
1)Language Model,LM:一个预训练语言模型 LM,对基础模型微调得到一个微调后的模型
- 使用人工标注的数据对预训练模型进行监督微调,以获得初始版本的生成模型。
2)Reward Model,RM:训练一个奖励模型 RM:训练一个奖励模型(Reward Model),用于评估生成模型的输出质量。
-
收集生成模型输出及其对应的人类反馈。这些反馈可以是评分、选择最佳输出、直接修改等形式。
-
使用这些反馈数据训练奖励模型,使其能够对生成的输出进行评分。
-
奖励模型通常是一个监督学习模型,通过最小化预测评分与人类反馈评分之间的差距进行训练。
3)Reinforcement Learning,RL:用强化学习 RL 方式微调 LM :使用强化学习算法(如 PPO(Proximal Policy Optimization))进一步优化第一步中生成的模型,使其输出更符合人类反馈的期望。
-
PPO 是一种强化学习算法,旨在平衡探索和利用,通过限制每次更新的幅度,确保稳定性和效率。
-
算法优化生成模型的策略,使其输出在奖励模型的评分下不断提升。
-
使用初始生成模型产生输出,并通过奖励模型评估这些输出的质量
-
使用 PPO 算法,根据奖励模型的评分更新生成模型的参数。
-
反复进行生成、评估、优化的循环,逐步提高生成模型的性能。
相比于 RLHF 现在好像 DPO 比较火
五、如何训练垂直领域大模型?
1)选择Base模型还是 Chat 模型?
对模型进行微调,都有可能触发灾难性遗忘。
在进行领域任务的 SFT 时,模型会重新调整对话任务相关的参数,而这些调整可能会干扰或破坏模型原先在通用对话任务上所学到的知识。这种现象就是灾难性遗忘。
即:灾难性遗忘 会导致模型通用能力降低。
因为 Chat 模型就是在 Base 模型基础上做了微调以适应对话任务,掌握了生成对话内容的能力的 SFT 模型,因此再对 Chat 模型做 SFT 触发 灾难性遗忘 风险就比较高,相比之下 Base 因为没经过微调,因为触发 灾难性遗忘 的风险会比较低。
因此选择哪种模型取决于我们的场景:
-
选 Base 模型:当您希望领域任务效果提升,同时不希望牺牲通用能力时,选择 Base 模型作为基座模型更为合适。
-
选 Chat 模型:如果您的领域任务与通用任务相关性不大,并且只追求领域任务的效果,可以选择 Chat 模型。
2)是否需要继续预训练(Continue PreTraining)?
-
必要性:如果领域任务的数据集与预训练时的数据集差异较大,例如您的数据源自公司内部,而预训练数据无法覆盖这些领域,建议进行继续预训练。这样可以让模型更好地适应领域特定任务。
-
数据量考虑:当领域任务的数据量较大(例如 1B 以上的 token),增量预训练是必要的。
因此,一般有两种选择:
1)青春版:Chat 模型 + SFT
- 资源消耗少、模型通用能力有所降低
2)完整版:Base 模型 + 增量预训练(Continue PreTraining) + SFT
- 资源消耗大、模型通用能力完整保留
在此基础上,还可以通过强化学习进一步提升模型效果。
那么,最终一个完整的训练垂直领域大模型可以分为以下三步:
1)Continue PreTraining(增量预训练): 一般垂直大模型是基于通用基座大模型进行二次的训练,为了给模型注入领域知识,就需要用领域内的语料进行继续预训练。
2)SFT( Supervised Finetuning,有监督微调): 通过 SFT 可以激发大模型理解领域内的各种问题并进行回答的能力(在有召回知识的基础上)
3)强化学习:一般是二选一
-
RLHF(奖励建模、强化学习训练): 通过 RLHF 可以让大模型的回答对齐人们的偏好,比如行文的风格。
-
DPO(直接偏好优化)
六、小结
1)大模型训练流程
- 1)预训练(Pre Training,PT)
- 2)监督微调(Supervised Fine-Tuning, SFT)
- 3)强化学习(Reinforcement Learning from Human Feedback, RLHF)
2)微调
- 微调根据参数分类:
- 全量参数更新 Full Fine-tuning(FFT):即对预训练模型的所有参数进行更新,训练速度较慢,消耗机器资源较多。
- 参数高效微调 Parameter-Efficient Fine-Tuning(PEFT) :只对部分参数做调整,一般指的就是 PEFT。
- 主流的微调方法:Prompt Tuning、Prefix Tuning、LoRA、QLoRA。
- 微调框架:peft、ms-swift、LLaMAFactory
3)SFT 最佳实践
- 数据集准备:10000 条左右高质量数据集
- 超参调整
- Epochs
- Learning Rate
- Global batch_size
4)强化学习 RLHF
-
Reward Model,RM:训练一个奖励模型 RM:训练一个奖励模型(Reward Model),用于评估生成模型的输出质量。
-
Reinforcement Learning,RL:用强化学习 RL 方式微调 LM :使用强化学习算法(如 PPO(Proximal Policy Optimization))进一步优化第一步中生成的模型,使其输出更符合人类反馈的期望。
5)如何训练垂直领域大模型
-
1)Continue PreTraining(增量预训练): 一般垂直大模型是基于通用基座大模型进行二次的训练,为了给模型注入领域知识,就需要用领域内的语料进行继续预训练。
-
2)SFT( Supervised Finetuning,有监督微调): 通过 SFT 可以激发大模型理解领域内的各种问题并进行回答的能力(在有召回知识的基础上)
-
3)强化学习:一般是二选一
-
RLHF(奖励建模、强化学习训练): 通过 RLHF 可以让大模型的回答对齐人们的偏好,比如行文的风格。
-
DPO(直接偏好优化)
七、如何学习大模型?
学习AI大模型是一个系统的过程,需要从基础开始,逐步深入到更高级的技术。
这里给大家精心整理了一份全面的AI大模型学习资源,包括:AI大模型全套学习路线图(从入门到实战)、精品AI大模型学习书籍手册、视频教程、实战学习、面试题等,资料免费分享!
1. 成长路线图&学习规划
要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。
这里,我们为新手和想要进一步提升的专业人士准备了一份详细的学习成长路线图和规划。可以说是最科学最系统的学习成长路线。
2. 大模型经典PDF书籍
书籍和学习文档资料是学习大模型过程中必不可少的,我们精选了一系列深入探讨大模型技术的书籍和学习文档,它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。(书籍含电子版PDF)
3. 大模型视频教程
对于很多自学或者没有基础的同学来说,书籍这些纯文字类的学习教材会觉得比较晦涩难以理解,因此,我们提供了丰富的大模型视频教程,以动态、形象的方式展示技术概念,帮助你更快、更轻松地掌握核心知识。
4. 大模型项目实战
学以致用 ,当你的理论知识积累到一定程度,就需要通过项目实战,在实际操作中检验和巩固你所学到的知识,同时为你找工作和职业发展打下坚实的基础。
5. 大模型面试题
面试不仅是技术的较量,更需要充分的准备。
在你已经掌握了大模型技术之后,就需要开始准备面试,我们将提供精心整理的大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。
全套的AI大模型学习资源已经整理打包,有需要的小伙伴可以微信扫描下方CSDN官方认证二维码,免费领取【
保证100%免费
】
如有侵权,请联系删除