简单整理、总结一下人工智能生成式大模型的训练和演化过程。
大模型的演化过程大体可分为预训练、指令微调和从人类反馈强化学习三个阶段。预训练是为了得到基座模型;指令微调是为了释放基座模型的能力,使模型可以理解用户指令;从人类反馈强化学习是为了在价值观等方面与人类对齐(alignment)。
一、预训练
如今ChatGPT等大模型的预训练采用最简单的语言模型训练任务,即基于上文预测文本序列中的下一个单词。预训练这一阶段的特点是数据量大、数据质量不高、所需算力大。具体来说,这一阶段一般需要数万亿单词组成的预训练数据,在上千块A100GPU组成的集群上进行数月的训练。
预训练之后模型具备的能力:
(1)流利的文本续写生成。预训练之后的模型应当能够根据上文流利地补全下文。值得注意的是,预训练模型很多时候不能直接理解用户指令,不能像ChatGPT一样直接与人聊天,这种能力需要指令微调来实现,下一节会提到。
(2)上下文学习。预训练之后的大模型一般具有上下文学习的能力,即可以使用少样本数据作为提示增强完成相应任务的能力。
(3)世界知识。预训练之后的大模型已经存储了相当数量的世界知识。
(4)代码理解和生成。预训练阶段如果包含代码预训练数据,那么预训练后的模型会具备基本的代码理解和生成能力。
(5)思维链推理。一些比较强大的预训练模型在预训练之后拥有少样本思维链推理的能力。不过思维链推理作为一种涌现能力,只有当模型超过一定规模(一般认为超过100亿参数)且足够强大时才具备。
二、指令微调
指令微调是指在预训练之后,在指令-回复的配对数据上对模型进行微调,使微调之后的模型能够理解并遵循用户指令做出回复。指令微调是一个序列到序列的任务。与预训练阶段不同,指令微调所需的算力较小,例如Alpaca只需要