深入探索像ChatGPT这样的大语言模型-03-POST-Training:Reinforcement Learning

参考

【必看珍藏】2月6日,安德烈·卡帕西最新AI普及课:深入探索像ChatGPT这样的大语言模型|Andrej Karpathy

fineweb知乎翻译介绍

fineweb-v1原始连接
fineweb中文翻译版本
Chinese Fineweb Edu数据集

查看网络的内部结果,可以参考如下
https://bbycroft.net/llm
https://playground.tensorflow.org/

复现gpt2https://github.com/karpathy/llm.c/discussions/677

这些操作很多都是在云端操作

https://www.ai-galaxy.cn/
https://www.aliyun.com/product/ecs/gpu

首个大规模、可商用的中文指令数据开源

找出9.9<9.11的真正原因:《圣经》!神经元干预可免重训练修复

DeepSeek-R1: Incentivizing Reasoning Capability in LLMMs via

Reinforcement Learning

AIMIE竞赛题

人工智能工具聚合网站有哪些?

GPT等大模型是如何训练的

3.POST-Training:Reinforcement Learning

后训练:强化学习

reforcement learning强化学习是什么

exposition 介绍 <=> pretraining 预训练

background knowledge 背景知识

worked problems 工作问题 <=>supervised finetuning 监督微调

problem+demonstrated solution,for imitation 问题+演示的解决方案,用于模仿

practice problems练习题<=>reforcement learning强化学习

prompts to practice,trial & error until you reach the correct answer 提示练习,试错,直到你得到正确的答案

人类从书中获得知识,大概有三种方式。

1.概述部分,这部分有概念的定义等,我们阅读的过程就是一个预训练的过程

2.例题,这部分有问题,有专家提供的完整的解决方案,类似SFT部分

3.课后系统,这部分有描述,在书的后面也有正确答案,但没有计算过程,需要我们个界预训练的过程和SFT的过程,来获取解题步骤,并最终获得正确的结果。在获得正确结果的过程中,我们需要反复的练习尝试,才能得到专家级别的解决方案。

哪个思考过程是最好的?

对于一个问题,有四种思考过程,每个过程都得到了正确的答案,那么哪个是最佳的呢?作为人类标注者,我不知道。

作为人类标注者,可以理解的是,我们的token给入模型,会有有限的计算量,并得到结果。

因此(13-4)/3=3这个会鼓励在较少的token上进行大量的计算,会鼓励我们跳过计算过程,是不够好的,会导致心算出错。如果我们可以把计算分散到多个token上回好的多。

那么第一种列方程和第二种表述可能都是好的,但由于人类的难易和LLM的难易是不同的,所以无法知道哪个更好些。

有些对人类来说很容易的事情,对LLM可能有很大的跳跃。

这些思考过程会被转换为token,哪类token更好,我们不清楚。

因此我们期望LLM能自己发现合适的token序列,LLM能自己找到那种token序列可以让LLM更好的得到正确的答案。
采用一个2B的模型,提问一个问题,可能会得到一个正确的答案

多次运行,会有一个不一样的方案,

每次的方案都是token的不同分布。

多次重复这个问题,我们可以给每个抽样得到数千的独立解决方案。这些方案有正确的,也有错误的,我们需要鼓励那些正确的解决方案。

强化学习的过程

问一个问题,LLM会有很多种解决方案,其中绿色是好的正确的,红色是不正确的,我们鼓励正确的方案。模型会选择正确的方案,然后对其进行激励,就是基于这些正确的方案进行训练。这部分就像是学生看正确答案,然后发现这个思路是不错的。

尽管人类生成一些内容是困难的,但评价起来,还是很容易的,比如把绿色的正确答案中选择一个最好的标记为黄色。

这个过程可以是并行的,每个问题都有数以千计的过程,模型在学习的过程会学习到哪种序列可以得到更好的答案。

DeepSeek-R1在RL阶段的意义

SFT在RL阶段提供了一个初始化的模型

SFT阶段的训练,让模型理解了如何找到解决方案,列一个方程,让模型学会了如何接近正确的解决方案。

强化学习是让模型找到所有内容准确的地方。随着训练的进行,模型随着也变的更好。

这就是我们训练强化学习的过程,训练的过程,和训练一个孩子很类似。

预训练阶段,我们读了很多的书,和说明。

在SFT阶段我们学习了很多专家的方案,并了解了解决问题的思路,这个解决问题的过程目前是盲目的,我们试图类似统计的模拟专家的解题思路。

在RL阶段,我们找到很多的练习题,我们仅做练习题,

这个过程和训练孩子很类似。

预训练和SFT阶段已经使用了很多年,很多LLM都在使用。RL训练还在摸索中,很多内容还没有标注化,RL阶段也包含如何选择最佳方案,提示分布和如何设置使得训练过程更有效的。核心思想有很多细节和可调参数,因此确保细节的正确性并不容易。

这也是为什么《DeepSeek-R1: Incentivizing Reasoning Capability in LLMMs via

Reinforcement Learning
》DeepSeek-R1:通过

强化学习激励llmm的推理能力这篇论文十分重要的原因,因为这篇论文十分公开的讨论了强化学习微调。


AIMIE竞赛题

该数据集在AIMIE竞赛上表现很好,在对AIMIE的数据集进行大量训练时,模型正在发现如何解决问题。

论文中有一个现象很有意思,呈现了定性的效果。在优化的后期,模型的平均响应时长上升了,即模型可能用更多的token来提升准确度。

这是为什么,会发现在回答的过程中,会出现如下红色的回答

类似回顾,鼓励,反思等操作。这是导致响应膨胀的原因。

这个过程表名模型正在重新发现思考的方式,正在学习认知策略,即如何处理一个问题,从不同的角度出发,如何解决这个问题,这些都是通过强化学习发现的,学习到的思维链的过程。

这种优化师在训练中发现的,无需做任何的编码。我们提供正确的答案,强化学习单纯尝试正确解决问题。

我们可以问SFT和RL模型通一个问题,回答的差异如下:

Emily buys 23 apples and 177 oranges, Each orange costs $4. The

total cost of all the fruit is $869. What is the cost of each apple? 

Use code.

这些来自于强化学习过程,GPT-4O是SFT模型,GPT-O1是使用了强化学习的RL模型。

GPT也有推理模型,但got仅展示了思维的部分摘要。部分观点认为openai担心展示完全的推理过程,会有公司通过模仿这些推理思维连来恢复很多推理性能。

目前我们谈到了强化学习和思维在优化过程中的出现。当我们在许多具有可验证解决方案的数学和代码问题上运行RL时,达到良好的结果,我们把这种模型叫做think model。

强大的强化学习

强化学习在围棋领域已经有很高的成果

监督学习使得模型会接近人类的顶级水平,但无法突破,强化学习可以突破人类的顶级水平,李世石。

在alphogo与李世石对战中,有一个步骤魏move37,这个步骤人类专家基本不会这门下,但回顾起来,是一种绝妙的下法。强化学习发现了一种人类从来不会这么下的方法。那么以一种人类无法理解的方式解决问题意味着什么?意味着强化学习发现新的思维方式,可能发明自己的语言,不再使用英语,学习到超脱训练集的分布情况。

强化学习可以在无法验证的领域学习

我们只要有很多的练习题,然后LLM就很好的训练,通过LLM是很擅长评价哪个回答是最好的。

在一些无法验证的领域,给不同的方案打分是困难的,比如一些创造性的领域,写一首诗。

如下为:写一个关于鹈鹕的笑话。

针对多次的提问会生成多个回复,我们需要查看不同的生成的结果,如何给分呢?

可以让一个人看所有的效果,并给出结果。这种方式是可行的,但是实在太耗费人力,是一种不可拓展的策略。

为此 论文中提出了一种自动化的策略

Reinforcement Learning in un-verifiable domains

=> RLHF (Reinforcement Learning from Human Feedback)

Fine-Tuning Language Models from Human Preferences

翻译成中文

在不可验证领域中的强化学习

=> RLHF(基于人类反馈的强化学习)

根据人类偏好微调语言模型
假设我们有无限的人力和时间,那么我们就可以在这些无法验证的领域里执行强化学习。

论文中中提供一个方法

Naive approach:

按常规运行强化学习,进行1,000次更新,每次更新使用1,000个提示,每个提示进行1,000次滚动。

(成本:1,000,000,000个来自人类的评分)

RLHF approach:

步骤1:

取1,000个提示,进行5次滚动,按从最好到最差的顺序排列

(成本:5,000个来自人类的评分)

步骤2:

训练一个神经网络模拟器来模拟人类偏好("奖励模型")

步骤3:

按常规运行强化学习,但使用模拟器代替实际人类

每次奖励模型都会给输出一个评分,然后人类也可以对输出进行一个排序,排序比打分数要容易的多。然后通过监督学习的方式,奖励模型进行学习。

奖励模型不是一个语言模型,是一个评分模型,输入是提示词prompt和对应的响应。然后模型给出评分,再通过人类的排序结果进行比较,建立一个损失函数,不断更新参数。

举个例子,第2个笑话为0.8,人类也认为第2个更好笑,更新后,我们希望第2个笑话的评分是增长的,比如增长到0.81。第1个笑话,奖励模型给的分数比较低,人类给的比较高,我们希望更新后,第一个笑话的评分会高的多一些,如0.15.。

其它的也是如此,通过每次的更新,使得奖励模型预测的结果与人类靠近一些。

这样在可能5000次后,奖励模型学的就不错了。

然后用训练好的奖励模型进行模拟人类预测。

这就是RLHF的过程。

RLHF upside

RLHF 的优势

我们可以在任意领域运行强化学习!(甚至包括无法验证的领域)

这(经验上)提高了模型的性能,可能是由于"判别器-生成器差距":

在许多情况下,辨别比生成要容易得多。

例如,"写一首诗"与"这五首诗中哪一首最好?"

这个间接的方式可以把打分转换为排序这种更容易的任务,可以避免人们生成文章这种复杂的任务。

RLHF downslide

我们正在进行关于人类损失性模拟的强化学习。这可能会产生误导!

更微妙的是:

强化学习发现了"欺骗"模型的方法。

它发现了奖励模型的"对抗性示例"。

例如,在1000次更新后,关于鹈鹕的顶级笑话并不是你想要的,而是完全无意义的诸如"the the the the the the the the the"这样的内容。

这些"the the the the the the the the the"也可以被当作对抗样本。

神经网络的输入得到一个输出,输出为一个评分,我们总能找到一些输入,可以骗过神经网络,得到很高的评分,随着训练轮次的增加,这种输入样本是无限的。我们无法做到把所有的对抗样本都加入到数据集中,并给出极低的分数。
从本质上,评分模型就是一个神经网络,而强化学习很容易找到欺骗神经网络的方法。

RLHF的过程可能在初始时很好,迭代几百次也很好,但会出现到达某点之后,急剧下降,所有我们不能过度运行这个RLHF模型,需要适当的截断技术。
RLHF时RL,但不是神奇的RL需要我们手动去截断。

在可验证的区域,我们可以无限的运行RL,发现我们从没有相关的策略,在所有这些问题上表现良好,比如围棋中,不存在被欺骗和操纵

RLHF时不可无限运行的,是可以被欺骗的,更像是在微调的范围内,从这个意义上来说RLHF不是RL。

chatgpt-4o经过的RLHF训练,效果也好了一些,但不是可以无限提升的RL。
以上我们介绍了大模型的三个重要阶段,预训练,SFT,RL阶段,这个过程与我们教孩子学习是一样的。预训练是获得知识,SFT是看专家给出的习题解决方案,RL是自己做习题,并尽快能的做对。

在大模型心智上,有幻觉,我们不能完全信任,我们可以把大模型 称呼为瑞士奈娜的LLM能力模型,这个大模型在很多学科表现很好,但在某些独特的案例中,会随机失败

大模型可以解决奥林皮克问题,但在9.9和9.11谁大的问题时,会出现错误,这个就是瑞士奶酪的一个洞。大模型不是无懈可击的,我们可以用来做初稿,但要为自己的内容负责。

关于大模型的未来

预测即将到的未来

预览即将到来的事物

• 多模态(不仅仅是文本,还包括音频、图像、视频、自然对话)

• 多个单独的任务->代理智能体(长期的,连贯,纠错上下文)

• 普遍的,无形的(无人工程的人机比率,人类作为监督者)

• 使用计算机的

• 测试时训练等。

我们现在的内容时训练获得参数,然后部署,固定参数,推理开始的时候,就不再修改参数。

模型所接触到的唯一学习和测试时间学习时上下文窗口的动态调整。

这点与人类不同,人类能根据接触到的东西学习,在睡眠中更新参数,目前这些模型和工具中没有类似的对应物。

所以还要很多想法可以探讨,尤其时上下文的token时十分宝贵的。生成图和视频的token会非常的庞大,在调用多模态的api时,可以看到一次调用就需要10000个左右的tokens

我们当前唯一能够使用的策略时延长上下文的窗口,但这种方法本身并不适合实际的长期多模态任务。因此可以在这些学科的一些案例中需要新的想法。
在哪里找到最新的进展

• 参考 https://lmarena.ai/
https://lmarena.ai/?leaderboard

• 订阅 https://buttondown.com/ainews


在哪里可以找到这些大模型

• 专有模型:在LLM提供商的各自网站上

• 开源权重模型(DeepSeek,Llama):推理提供商,例如TogetherAI

• 在本地运行!LMStudio

模型提供商提供的多是SFT或RL模型,很少有提供base模型的,HyperBolic有提供llama3的base模型,如果需要使用的,可以测试下。

why?

当我们在chatgpt上问一个问题,并按回车时

发生了什么?

我们看到了什么?

我们在与谁交谈?

这是怎么运行的?

这个课程会让我们理解模型的训练过程

返回了什么?

首先,问题被分成了token,

然后token被放在了特殊的格式里,比如对话数据集的格式,然后转换为一维的序列token。

这一系列的token给入模型,模型会生成一系列的token。

这些token怎么来的,又是如何生成token的,所以讲了模型的三个阶段

预训练阶段

SFT阶段

RL阶段

相关推荐
牛奶11 分钟前
前端学AI:基于Node.js的LangChain开发-知识概念
前端·人工智能·aigc
扫地僧98522 分钟前
基于提示驱动的潜在领域泛化的医学图像分类方法(Python实现代码和数据分析)
人工智能·分类·数据挖掘
同学小张31 分钟前
Ollama有安全漏洞! 国家网络安全通报中心紧急通报
人工智能·gpt·学习·安全·web安全·aigc·agi
救救孩子把40 分钟前
智能笔记,智慧管理:Obsidian 与 DeepSeek 携手引领 AI 知识新时代
人工智能·笔记·大模型·deepseek
GIS小天42 分钟前
AI预测体彩排3新模型百十个定位预测+胆码预测+杀和尾+杀和值2025年3月4日第9弹
人工智能·算法·机器学习·彩票
晨航1 小时前
北京大学第四弹:《DeepSeek原理和落地应用》
人工智能·ai·prompt·aigc
地球空间-技术小鱼1 小时前
学习笔记-AMD CPU 命名
linux·服务器·人工智能·笔记·学习
azheng2222 小时前
构建自己的AI客服【根据用户输入生成EL表达式】
人工智能
Shockang2 小时前
机器学习数学通关指南
人工智能·数学·机器学习
CS创新实验室2 小时前
《机器学习数学基础》补充资料:描述性统计
人工智能·机器学习·机器学习数学基础