- # why
- 了解大语言模型背后的原理
- # what
- 
- ||预训练 pre-training|后训练 post-training|
|--|--|--|
|训练时间|很长:十几天-几十天 | 几天时间|
|训练成本|很高:几十万-数百万美元|低|
|训练方式|端到端:没有人为干预,通过特征学习识别了海量数据中的模式、结果和关系|人类干预|
|本质|准确预测下一个 token|预测下一个词的同时回答问题|
|结果|获得一份不再更新的参数文件;网页文档模拟器;可以部署;|AI assistant 助理;可以部署|
- # how
- [[LLM 预训练前的准备]]
- 数据收集、处理、 [[tokenization]]、建立[[词汇表]]等[[超参数]]
- [[LLM 预训练]] :99% 的训练时间,获得一个海量阅读的 base model
- [[Embedding]]
- [[Transformer]]
- 通过[[Backpropagation 反向传播算法]]优化[[Loss function 损失函数]],来更新[[parameters 参数]]
- [[SFT 监督微调]]:在特定领域进行海量的Q&A
- [[RM 奖励模型]]:相当于价值观树立,人类偏好
- [[RLHF 基于人类反馈的强化学习]]:通过人类的反馈来优化智能体的行为,使其更符合人类的偏好
- # how good
-
- # Ref.
- [[Intro to LLM]]
- [[state of GPT]]
- [[Deep Dive into LLMs like ChatGPT]]
- [chat w gpt - LLM 训练步骤](https://readwise.io/reader/shared/01jp74c2kjj2ke0a7273d85q2n)
- [[LLM Visualization nano-gpt]]:和 3b1b 一起看
- [[《这就是 ChatGPT》]]
- [[3Blue1Brown]]
- Harry,大语言模型(Large Language Model,简称LLM)的训练通常涉及以下几个主要步骤:
- ### 一、数据收集(Data Collection)
- **来源:**
- 网络数据(如网页、论坛、维基百科)
- 图书馆电子书籍
- 公开或私人数据集
- 专业领域文档(例如科学论文、新闻报道)
- **特点:**
- 数据规模巨大(通常达到几百GB甚至数TB)
- 数据多样性(语言风格、主题、表达方式)
- ### 二、数据清洗与预处理(Data Cleaning & Preprocessing)
- **去除噪音**:删除无关、重复或格式不正确的数据。
- **文本规范化**:包括去除特殊字符、统一大小写、去掉或替换敏感词汇。
- **分词与Tokenization**:
- 使用BPE(Byte Pair Encoding)或SentencePiece等算法将文本转为token序列。
- ### 三、构建模型架构(Model Architecture Design)
- 典型架构是**Transformer**(如GPT系列)。
- 包括设置层数(Layers)、头数(Heads)、隐藏层维度(Hidden Size)等超参数。
- ### 四、预训练(Pre-training)
- **目标**:让模型学习语言的基本模式和上下文关系。
- **方法**:一般使用**自监督学习**:
- 常用任务:**下一个单词预测**(Next-word Prediction)或掩码语言建模(Masked Language Modeling)。
- **特点**:
- 训练规模大、耗时长(通常需要成百上千个GPU、持续几个月)。
- 一般使用分布式训练(Distributed Training)和混合精度训练(Mixed Precision)。
- ### 五、微调(Fine-tuning)
- 在预训练基础上,针对具体任务或数据进一步调整模型。
- 常见任务:
- 文本分类(Text Classification)
- 问答系统(Question Answering)
- 摘要生成(Summarization)
- 聊天对话(Chatbot)
- 微调数据一般为较小规模、高质量的人工标注数据。
- ### 六、指令微调与人类反馈强化学习(RLHF,Reinforcement Learning from Human Feedback)
- 这是ChatGPT等模型重要的一步:
- 先进行指令微调(Instruction-tuning),学习如何遵循人类指令输出内容。
- 再引入人类反馈,通过奖励或惩罚机制训练,使模型输出更贴近人类偏好。
- ### 七、评估与迭代(Evaluation & Iteration)
- 使用标准数据集评估模型性能:
- 标准基准:如GLUE、SuperGLUE、MMLU
- 收集用户反馈或专家评价,持续改进:
- 不断优化模型结构、训练数据和训练策略。
- ### 八、部署与应用(Deployment & Application)
- 模型压缩:如量化(Quantization)、蒸馏(Distillation),提高推理效率。
- 模型部署:通过API、网页接口、应用程序等形式提供服务。
---
总的来说,大语言模型的训练过程非常耗时、耗资源,但正是这些繁杂的步骤和大量投入,才确保了模型具备强大的语言理解和生成能力。