大型语言模型 (LLM) 通过一个多阶段过程进行训练,该过程结合了无监督预训练、监督微调和强化学习。目标是构建一个能够理解语言模式并能生成连贯、上下文相关的文本的模型。以下是它在实践中如何运作的。
预训练:学习语言模式 第一阶段涉及在大量非结构化文本数据(例如书籍、网站和文章)上进行预训练。该模型学习预测序列中的下一个单词(自回归训练)或填补缺失的单词(掩码语言建模)。例如,给定输入“天空是___”,该模型可能会预测“蓝色”。 这是使用 Transformer 架构完成的,该架构使用自注意力机制并行处理文本,以衡量单词之间的关系。分词将文本分解为更小的单元(例如,“un”+“breakable”之类的子词),使模型能够处理罕见单词。训练涉及通过梯度下降优化参数,以最大限度地减少数十亿个示例中的预测误差。 例如,GPT-3 在大约 45 TB 的文本数据上进行训练,需要在数千个 GPU 上进行数周的计算。
微调:适应特定任务 预训练后,该模型会在较小的、特定于任务的数据集上进行微调,以提高聊天机器人或代码生成等应用程序的性能。 例如,可以训练一个模型来处理问答对(例如,“什么是 Python? → 一种编程语言……”)以提高准确性。此阶段通常使用监督学习,其中标记数据指导模型的输出。来自人类反馈的强化学习 (RLHF) 也很常见:人类对模型响应进行排名(例如,更喜欢简洁的答案而不是冗长的答案),并且模型调整其行为以最大化这些排名。这里使用了 Proximal Policy Optimization (PPO) 等工具,使输出与人类偏好保持一致,而无需为每个场景提供明确的标记数据。
基础设施和优化 训练 LLM 需要大量的计算资源。 TensorFlow 或 PyTorch 等分布式训练框架将工作负载分摊到 GPU/TPU 集群中。 例如,具有 1750 亿个参数的模型(如 GPT-3)可能使用模型并行性将层分摊到不同的设备上,而数据并行性同时处理批次。内存优化技术(例如,梯度检查点)可减少硬件限制。训练完成后,量化等技术可以缩小模型以进行部署。 整个流程——预训练、微调和优化——需要仔细平衡数据、算法和硬件,才能获得实际结果。