人人都能懂大语言模型-大语言模型怎么训练
本文介绍了大语言模型训练的两个关键概念:Token和训练流程。Token是将文本转换为模型内部编码的基本单位,通过优化Token词表(如GPT-4使用100256个Token)提高编码效率。大语言模型训练分为三个阶段:预训练(Pretrain)使用海量数据学习语言模式,有监督微调(SFT)通过标注数据训练任务能力,强化学习(RL)利用奖励模型优化输出质量。文章还提供了大模型学习资源,包括路线图、教
在开始了解大语言模型训练之前,我们先来了解一下什么是Token。
1.Token是什么
大语言模型在处理用户的输入的时候,需要先把用户输入的文本转化为大语言模型内部的编码。
中文的有差不多20万汉字,但是常用汉字只有3500个。假如我们0001,0002,0003,0004,0005,0006 分别来表示“今”,“天”,“气”,“很”,“好”,“。”
那“今天天气很好。”这句话转化成LLM内部的编码就变成了“0001 0002 0002 0003 0004 0005 0006”。这里的0001就是一个Token。
但是,算法工程师为了尽量用少的token来表示所有的人类语言文字和符号,通常不会直接把每个文字或单词都用一个Token来表示。例如:“曱曱”这2个字基本上不会分开用,我们就可以用一个Token来表示,而不需要用2个Token。提手旁“扌”可以和其他的字组成很多新的字,就可以用一个单独的Token来表示“扌”,提手旁的Token和其他的Token结合在一起就可以代表其他很多的文字。
英文同理,比如:“subword”这个词,可以拆分成“sub”和“word”两个子词。把sub和word 2个词的Token拼在一起就可以表示“subword”这个词。
总之,算法工程师设计了一套token词表,用来表示人类语言中所有的文字符号。
-
2020年的GPT-3的Token词表有50257个Token。
-
2023年的GPT-4的Token词表有100256个Token。
-
2024年的Llama3的Token词表有128000个Token。
把一段文字,变成一组Token,就是词元化(Tokennization)。

OpenAI的官网上提到,1000 Tokens大概是750个英文单词,或者500个汉字。

2.大语言模型是怎么训练的
以GPT-3.5为例,大语言模型主要分为以下3个步骤:
1-预训练Pretrain
2-有监督微调SFT(Supervised Fine-Tuning)
3-强化学习RL(Reinforcement Learning)
-
预训练Pretrain
首先,大语言模型在训练开始前什么都不会!里面的1725B个参数也都是随机数。
大语言模型在预训练阶段不需要真正的输出“下一个字”,只需要输出所有“预选字”的概率清单。
假设我们现在用“今天天气真好”。这句话对LLM进行预训练。我们让大语言模型按顺序一个字一个字的计算概率,再把每个正确的字的概率乘起来,得到一个联合概率,就是大语言模型针对该段落的段落联合概率。

段落联合概率:让一个模型能一字不差的生成整个段落的概率。
预训练阶段,需要超级大量的人类文字资料作为训练数据。GPT-3.5在预训练阶段使用了大概300B(3000亿)Tokens的训练语料。假设我们以1000个Token作为一个段落,那就可以获得3亿条训练数据。

*GPT-3论文中关于预训练数据的说明
通过不断迭代调整LLM内部参数,不断提高3亿条数据的段落的联合概率,一般需要经过几百万到千万次的迭代,最终达到一个比较满意的结果。所以,Pretrain是LLM训练过程中最耗时间和算力的阶段。

Pretrain阶段在GPT-3.5的论文中描述如下:

-
有监督微调SFT(Supervised Fine-Tuning)
Pretrain结束后,LLM已经“阅读”了大量的人类文献资料,基本学会了人类语言的模式,可以按照人类语言的模式去根据当前输入进行后续的输出。但是这个时候LLM还不会做任务,只是会按照人类语言的模式去“接话茬”。接下来要进行SFT,有监督的微调。
有监督,就是有正确答案或者有标签。SFT阶段用到的训练数据,就是一问一答这样的数据,有问题,并且有正确答案,专业的叫法是Prompt和Response。例如:
商家送货速度棒棒的!->正向
送货速度可太慢了,差评。->负向
“这可太好吃了” “味道确实真不错” ->相似
“多吃水果对身体有好吃” “痛风病人不要吃海鲜” ->不相似
使用有标签的数据进行训练的过程叫做有监督学习。而Pretrain这种训练数据既是输入也是标准输出的训练模式,叫做无监督学习。
GPT-3.5的SFT大概用到了33000条有正确答案的数据,这些数据都是人类专家编写的,质量非常高的数据。包括对话任务、分类任务、判断任务、推理任务、代码生成任务等。
需要注意的是,SFT和Pretrain除了训练数据不一样之外,其他的过程都是一样的,也是不断调整大语言模型内部的参数,不断提高大语言模型输出正确答案的概率。
经过Pretrain和SFT之后,我们得到了一个会做各种任务的大语言模型,尤其是对话任务。但是会做任务,和能优秀的做任务,还是有很大的差距。于是进入强化学习阶段。
-
强化学习RL(Reinforcement Learning)
强化学习最初应用于游戏NPC的训练,NPC的每一步操作,都需要有一个教练对他这一步操作进行打分,这样NPC就会尽量提高高分数操作的概率,变得越来聪明。
而大语言模型的强化学习阶段,也需要一个这样的教练,对大语言模型的输出进行打分,这个教练叫做Reword Model(奖励模型)。
Reword Model是怎么来的?假定我们在Pretrain和SFT之后得到的模型为LLM0.8,LLM0.8会被拷贝一个副本LLM0.8',拿来做进一步的训练,得到一个Reword Model。那怎么基于LLM0.8训练得到Reword Model呢,大概分为以下几步:
1-给定一个Prompt,让LLM0.8输出多次,得到4个Response
2-人类对这4个Response进行打分,得到A>B>C>D的排序
3-这些标注数据(1个Prompt对应4个Response,并且每个Response有打分)作为Reword Model的训练数据,训练得到一个会给大模型输出进行打分的Reword Model

所以Reword Model的训练需要大量人类标柱的数据(一般需要几万到几十万条的标注数据),也是成本非常高的一个过程。得到Reword Model后,反过来作为LLM0.8的教练,对LLM0.8进行强化学习训练得到最终版本的LLM1.0。
整个SFT+Reword Model Training+RL强化学习的过程,统称为大语言模型的Post-Training(后训练)。GPT-3.5论文中对于Post-Training的描述过程如下图所示,GPT-3.5用的是PPO(Proximal Policy Optimization)这种强化学习策略。

自此,我们以GPT-3.5为例,了解到了大语言模型的整个训练的过程。其他模型包括GPT-4系列,开源的LLama系列,甚至DeepSeek,训练过程大差不差,只不过在这个训练过程的基础进行部分调整和创新。
如何学习大模型?
学习AI大模型是一个系统的过程,需要从基础开始,逐步深入到更高级的技术。
这里给大家精心整理了一份全面的AI大模型学习资源,包括:AI大模型全套学习路线图(从入门到实战)、精品AI大模型学习书籍手册、视频教程、实战学习、面试题等,资料免费分享!
这是一份大模型从零基础到进阶的学习路线大纲全览,小伙伴们记得点个收藏!

100套AI大模型商业化落地方案

大模型全套视频教程

200本大模型PDF书籍

👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。
LLM面试题合集

大模型产品经理资源合集

大模型项目实战合集

😝有需要的小伙伴,可以扫描下方二v码免费领取【保证100%免费】🆓
更多推荐



所有评论(0)