第一部分:如何训练 GPT 助手

训练过程分为4个阶段,其中第一个阶段属于 PreTrain,而后面3个阶段属于微调 FineTune。,在FineTune的3个阶段(Supervised FineTuning + Reward Modeling + Reinforcement Learning),模型按SFT->RM->RL的方向进化
第一阶段 Pretraining 预训练
所有计算工作基本发生的地方,是训练计算时间的 99%。
在实际训练数据之前,还需要经过一个预处理步骤即标记化

第二阶段:Supervised Finetuning
在有监督的微调阶段,我们将收集少量但高质量的数据集。在这种情况下,将要求人工承包商收集及时和理想响应形式的数据,将收集很多,通常是上万个
第三阶段 Reward Modeling
进入 RLHF,从人类反馈中强化学习,包括奖励建模和强化学习。在奖励建模中,是讲数据收集转变为比较形式
transformer 会根据prompt的完成程度预测一些奖励,所以它对每个完成的质量进行了猜测。我们将其制定为损失函数,并训练模型做出与来自所有承包商比较的基本事实一致的奖励预测,这使我们能够对提示的完成程度进行评分

奖励模型本身作为助手不是很有用,但是对于下面的强化学习阶段非常有用。因为有了奖励模型,所以可以对任何给定提示的任意完成的质量进行评分
第四阶段 Reinforcement Learning
针对奖励模型进行强化学习

summary


基础模型有很多熵

伯克利的一个团队做的排名:

第二部分:如何有效的应用在您的应用程序

人在写作的时候,有一个独立的过程,几乎是在检查正在写的东西,并判断它是否好,然后也许删除了,也许重新构造,也许对结果感到满意,有很多的内心独白
但是,在训练 GPT 的时候,这样的句子是什么样的?
从 GPT 的角度,只是一个标记序列(tokens)。当GPT在接收到一个输入,比如你给出的主题。它会生成一段与输入相关的文本,GPT的目标是预测下一个词,所以它会连续生成一串词,形成一段连贯的文本。
他们不知道他们不知道什么,不知道自己擅长什么、不擅长什么,不检查任何东西。它不会纠正自己的错误,它只是产生抽样的标记序列

但他们确实有认知优势,拥有大量基于事实的知识涵盖大量领域。
prompt 只是弥补了这两种架构之间的认知差异。
一些技巧可以提升GPT的表现:
1.如果任务需要推理,不能指望 transformer 对每个标记进行太多推理,必须将推理分散到越来越多的标记上。
设定步骤来引导GPT展示其工作过程(Chain of Though)

此外可以通过说“let's think step by step”,使得transformer 有点像展示它的工作

2.可以问它:“你完成任务了吗”,来推动它进行检查。
人类的工作里,可以开始写,没有成功,可以再试一次;多次尝试,选择一个最好的
而 transformer遇到死胡同则会继续走下去,即使他们知道会失败

3.LLM 不想成功,只想模仿,但你想要成功,所以你要要求它
transformer知道低质量解决方案和高质量解决方案,但无法区分。
下面这个例子,更好的提示方法是“让我们一步一步解决这个问题,确定我们有正确的答案”:

所以,寻求一个强有力的解决方案,说出你是该主题的领先专家之类的话、假装你有 120的智商……
但不要试图要求太多,如果你要求 400 的智商,可能会在数据分布之外,更糟糕的是,可能会在一些科幻的数据分布中,它会开始进行一些科幻角色扮演或类似的事情
应用建议:

将他们始终与人工监督结合起来,用作灵感和建议的来源