语言模型训练范式一、常见的训练阶段划分LLM都是怎么训练出来的以GPT为例1.pretrain2.SFT3.reward model4.PPOPretrainpretrain预训练内里包含大量的数学公式。不停的阅读大量资料然后学习如何使用文字。需要最大的数据量消耗最大的显卡算力。m百万b十亿t万亿eg. llama 3 使用了15t tokensllama 4 Scout使用了40t tokens大语言模型输出的每一话都需要学习人类语言后逐字表达计算下一个字在人类语言规范中的可能性然后结合训练和语境给出他的答案。本质上是一个续写的工具最初什么都不会怎么学呢这个时候逐字表达等于瞎蒙给他参考数据。段落联合概率让一个模型能一字不落的生成整个段落的概率。将所有的段落联合概率相乘已知第一个字求第二个字相匹配的概率、已知前两个字求第三个字相匹配的概率、已知前三个字求第四个字相匹配的概率.......依次相乘让模型学习人类的表达方式。对每一条数据得出的段落联合概率可以看出模型对人类语言和知识的掌握程度。不同的段落联合概率按照不同的要求调整LLM从而整体提升段落联合概率让他们达到一个可观的值 。SFT预训练模型说话像接话茬而不是在做任务希望做什么类型的任务就用什么样的数据做指令微调instruction tuning。SFT有监督的微调训练有监督使用有标签的数据进行训练学习过程叫做有监督学习。标签包括对文字的正负向判断、相似程度判断、排序等。使用无标签的数据进行训练学习过程叫做无监督学习。pretrain叫自监督自己进行训练pretrainSFT两个阶段组合起来就叫半监督不缺数据但缺标签、需要人工标注llama 3使用了15t tokensSFT阶段使用的数据量大概只有几十万条为预训练阶段的五千分之一数据量普遍不大。Reward Modelreward model训练一个奖励模型在旁边当教练。评估是一个很难的事情评估一个模型的整体能力评估一个问题回答的如何。如何判断大模型干的好不好需要我们事先训练一个教练进行打分。1、准备一系列prompt让模型给每个prompt生成多个response(几万到几十万2、设计一下如何标注打分、评级、排序3、招一批人来做标注工作训练出一个教练员。PPO强化学习PPO用上一步的教练模型对工作进行优化当优化趋于饱和之后再重新训练一个教练重复这两个步骤直到都难以取得进展。reward model和PPO不断循环的过程就是强化学习的过程叫做RLHF“对齐”给予人类反馈的强化学习。纯粹课程笔记。