内容简介

这是三张 AI 学习地图中的第一张(三张的总览与分工见《AI 全栈学习地图》)。这一张面向造模型的人——AI 算法工程师,也是从零开始的读者的入口:L0 数学、L1 工具箱、L2 经典机器学习三个系列假设读者没有 AI 基础。第二张《AI-Infra 工程师学习地图》面向为模型搭建训练与推理系统的工程师,它的 01 Python、03 PyTorch、04 Transformer 三个系列与本地图共享;第三张《AI 应用工程师学习地图》面向在模型之上做产品的 AI 应用工程师。三张地图各自独立,边界与重叠部分在每张地图的末尾说明。

“算法工程师”这个词在大模型时代的含义已经变了。十年前它指的是会推导 SVM 对偶、会调 XGBoost 参数的人;今天它指的是能读懂一篇模型论文并复现它、能为一个基座模型设计后训练配方并把它评测清楚、能判断一个结构改动值不值得付出硬件代价的人。这张地图按今天的含义组织,但不跳过昨天的基础——因为奖励模型本质上是一个分类器,数据过滤靠的是小模型打分,评测方法论来自经典机器学习。

地图回答三个问题:

一个模型从数据到上线经过哪些阶段?每个阶段需要掌握什么?按什么顺序学?1

这张地图描述的是知识结构:八层加一个横切,每层说明回答什么问题、包含哪些概念、为什么放在那个位置。每一层都已有对应的系列(共 58 篇、约 35 小时,另与 Infra 地图共享 01 / 03 / 04 三个系列),目录与配套代码在本文末尾。

算法工程师需要的八样东西
需要什么 具体是什么
一套数学 线性代数、概率统计、信息论、微积分与优化——读懂公式、推导 loss 的程度
一套工具 Python 与数据科学三剑客、PyTorch 的使用、Hugging Face 生态、实验跟踪
两代基础 经典机器学习的概念与评估方法;深度学习的反向传播、正则化与优化器
一类模型 Transformer / LLM:结构、tokenization、scaling law、预训练与数据工程
一套配方 后训练:SFT、偏好对齐、可验证奖励的强化学习、蒸馏、评测
一层效率 推理侧的算法:解码策略、投机解码、量化、KV 压缩
一个扩展 多模态:视觉语言模型、扩散模型、语音
一种方法 实验方法论:假设、消融、可复现、读论文与复现

两张图:模型生命周期与学习路径

理解这个领域需要两张图(三张地图都这样组织):一张描述模型怎么被造出来,一张描述人怎么学会造它。两者的顺序不同。

第一张图:模型生命周期视图

一个大模型从数据到上线的流程,以及每个阶段产出什么、算法工程师在其中做什么决定:

%%{init: {"flowchart": {"wrappingWidth": 300}}}%%
%% 图:模型生命周期视图:从数据工程到部署上线,两个回边是主循环与外循环
flowchart TB
    DATA["`**数据工程**
采集 · 清洗 · 去重 · 质量过滤
配比 · 合成数据 · 分词器训练`"]
    PRE["`**预训练**
结构选择 · scaling law
训练配方 · 稳定性 · 长上下文扩展`"]
    SFT["`**监督微调 SFT**
指令数据构造 · chat template
全量 / PEFT(LoRA 一族)`"]
    RL["`**偏好对齐与强化学习**
奖励模型 · PPO / GRPO · DPO 一族
可验证奖励 · 推理模型`"]
    EVAL["`**评测**
benchmark · LLM-as-judge · Arena
污染检测 · 能力分解`"]
    COMP["`**压缩与高效推理(算法侧)**
量化 · 蒸馏 · 投机解码 · KV 压缩`"]
    DEPLOY["`**部署与线上**
推理引擎 · 服务 · 监控
(Infra 与应用地图的范围)`"]
    DATA --> PRE --> SFT --> RL --> EVAL --> COMP --> DEPLOY
    EVAL -. "不达标:回到数据或配方" .-> SFT
    DEPLOY -. "线上数据回流:bad case · 偏好 · 蒸馏教师" .-> DATA

    classDef algo fill:#fff7e0,stroke:#c98a00,stroke-width:2px,color:#222
    classDef other fill:#f7f7f7,stroke:#c8c8c8,stroke-width:1px,color:#666
    class DATA,PRE,SFT,RL,EVAL,COMP algo
    class DEPLOY other

两个回边是这张图的重点:评测不达标回到数据或配方,是算法工程师日常工作的主循环;线上数据回流到数据工程,是模型迭代的外循环。一个只会”跑一次训练”的人不是算法工程师;算法工程师的能力体现在这两个循环里——知道评测结果差在哪一类能力、该改数据还是改配方、改了之后怎么用最小的实验验证。

图上只有最后一格标成了 Infra 的范围,但每一格都站在 Infra 之上:数据工程要有集群与存储跑去重和过滤,预训练与 RL 要有并行训练框架、通信与容错,评测与 SFT 要有推理引擎批量出结果——这些没有画进去,是为了让图只回答”算法工程师在每个阶段做什么决定”这一个问题。边界的规则是:算法工程师决定在哪个阶段做什么(配比、配方、奖励、指标),Infra 工程师让这个决定在给定的硬件预算内跑得快、跑得稳;两者在哪些具体问题上交接,见文末「与 AI-Infra 地图的关系」一节的对照表。

这张图是生产流程,不是学习顺序。按它从”数据工程”开始学,第一天就要面对”什么数据对模型好”这个整个领域最难的问题。

第二张图:学习路径

学习路径分八层加一个横切。前四层是基础(L0–L3),任何方向都要;L4 是核心;L5 后训练是三个方向里先读的一个——L6 高效推理与 L7 多模态的两篇总纲都把它列为前置(L6 的蒸馏与”怎么评”、L7 理解线的对齐训练用的都是 L5 的方法),L5 之后 L6 与 L7 可以并行。层的顺序就是推荐的学习顺序,也是各系列的发布顺序:

%%{init: {"flowchart": {"wrappingWidth": 260}}}%%
%% 图:学习路径:L0–L7 八层加横切,紫色两处与 Infra 地图共享
flowchart TB
    L0["`**L0 数学**
8 篇 ≈ 3h`"]
    L1["`**L1 工具箱**
6 篇 ≈ 2.5h`"]
    D["`**深入篇(共享,可略读)**
01 Python 9 篇 ≈ 14h
03 PyTorch 10 篇 ≈ 15h`"]
    L2["`**L2 经典机器学习**
10 篇 ≈ 4h`"]
    L3["`**L3 深度学习基础**
6 篇 ≈ 3h`"]
    L4["`**L4 LLM 核心**
04 系列 13 篇 ≈ 18h(共享)
预训练 5 篇 ≈ 5h`"]
    L5["`**L5 后训练**
8 篇 ≈ 6h`"]
    H["`**深入篇:读 Hugging Face 源码**
4 篇 ≈ 3.2h`"]
    LR["`**专题:LoRA**
3 篇 ≈ 3h`"]
    L6["`**L6 高效推理与压缩**
6 篇 ≈ 4h`"]
    L7["`**L7 多模态**
9 篇 ≈ 7h`"]
    X["`**横切:实验方法论**
1 篇 ≈ 1h,任何阶段`"]
    L0 --> L1 --> L2 --> L3 --> L4 --> L5
    L1 -. 深入 .-> D
    L5 -. 深入 .-> H
    L5 -. 专题 .-> LR
    L5 --> L6
    L5 --> L7

    classDef algo fill:#fff7e0,stroke:#c98a00,stroke-width:1px,color:#222
    classDef shared fill:#f3eefc,stroke:#8a6bd1,stroke-width:1px,color:#222
    classDef cross fill:#f7f7f7,stroke:#999,stroke-width:1px,color:#222
    class L0,L1,L2,L3,L5,L6,L7,H,LR algo
    class D,L4 shared
    class X cross

时长按每分钟 450 字估算通读一遍的量,不含动手。紫色的两处与 Infra 地图共享:深入篇讲 Python 与 PyTorch 的机制与实现,第一遍读各总纲的「第一遍怎么读」即可;04 系列是两张地图的交点,算法读者必读。

算法地图的学习路径:八层加一个横切
层 主题 回答的问题 文章 时长
L0 数学基础 公式里的每个符号是什么意思?loss 为什么这样写? 系列(8 篇) 3h
L1 编程与工具 怎么把一个想法变成一次能跑的实验? 系列(6 篇) + 深入篇 01 Python、03 PyTorch(共享) 2.5h(+ 14h + 15h)
L2 机器学习基础 什么是学习?怎么知道模型学会了而不是背下来了? 系列(10 篇) 4h
L3 深度学习基础 梯度怎么流?为什么深了就难训?CNN 与 RNN 各解决了什么、留下了什么? 系列(6 篇) 3h
L4 LLM 核心 Transformer 长什么样、怎么写出来、为什么演进成今天的样子?tokenizer、scaling law 与预训练数据各决定了什么? 04 系列(13 篇,共享) + 预训练系列(5 篇) 11h + 5h
L5 后训练 一个基座模型怎么变成一个能对话、会推理、符合偏好的模型?怎么证明它变好了? 系列(8 篇) + 深入篇 读 Hugging Face 源码(4 篇,L4–L5) 6h(+ 3.2h)
L6 高效推理与压缩(算法侧) 不改硬件,怎么让同一个模型更快、更小、更便宜? 系列(6 篇) 4h
L7 多模态 图片、视频、语音怎么进入语言模型?图像生成为什么是另一套数学? 系列(9 篇) 7h
横切 实验方法论 怎么用有限的算力得出可信的结论? 导读 1h
选修 系统内部 | 应用层 推理引擎与训练框架怎么实现(→ Infra 地图)| Agent、RAG 怎么搭(→ 应用地图) — —

两张图的叠加

模型生命周期各阶段主要用到的层
生命周期阶段 主要用到的层
数据工程 L4(tokenization、数据配比)· L2(用分类器过滤数据)· 横切
预训练 L4 · L3(优化器、稳定性)· L0(scaling law 的拟合)
SFT L5 · L1(Hugging Face 生态)
偏好对齐与 RL L5 · L0(概率、KL、策略梯度)· L2(奖励模型是分类器)
评测 L5 · L2(评估方法论)· 横切
压缩与高效推理 L6 · L0(量化误差、投机解码的分布等式)
多模态 L7 · L3(CNN、ViT)· L4

逐层说明

L0 数学基础

公式里的每个符号是什么意思?loss 为什么这样写?2

系列:《算法工程师的数学:读公式不卡壳的最小集》(八篇)——形状与 FLOPs · 内积与范数 · 正交与 SVD · 概率入门 · MLE 到交叉熵 · 熵与 KL 到 DPO · 梯度与策略梯度 · 统计推断与 scaling law。面向从零开始的读者,每篇从定义讲起、代真实模型算出数字。

目标不是学完数学系的课程,而是读公式不卡壳、推导 loss 不出错。四个分支各自在后面哪里用到,决定了该学到什么深度:

L0 数学四个分支的概念、用处与对应文章
分支 概念 在哪里用到 在哪一篇
线性代数 矩阵乘法与形状规则、向量空间与内积、范数(L1 / L2 / Frobenius)与余弦相似度、特征值与 SVD、张量
  • 一切
  • SVD 是 LoRA 的初始化与低秩直觉
  • 范数是权重衰减与量化误差
  • 余弦相似度是 embedding 检索
第一、二、三篇
概率与统计 随机变量、条件概率、贝叶斯公式、联合与边缘分布、伯努利 / 二项 / 高斯 / 均匀分布、最大似然 MLE 与最大后验 MAP、置信区间、概率图模型的基本记号
  • 语言模型就是 \(p(x_t \mid x_{<t})\)
  • 交叉熵是 MLE
  • DPO 的推导从 Bradley-Terry 模型开始
  • 评测要给置信区间
第四、五、八篇
信息论 熵、交叉熵、KL 散度、互信息
  • 训练 loss 是交叉熵
  • RLHF 与 DPO 的约束项是 KL
  • 蒸馏的目标是 KL
  • 投机解码的接受率是分布之差
第六篇
微积分与优化 导数、偏导、梯度、链式法则、Jacobian;凸性、梯度下降、随机梯度下降、学习率、鞍点
  • 反向传播是链式法则
  • 优化器(L3)建立在 SGD 之上
  • 策略梯度定理需要对期望求导
第七篇

优化算法里的 Momentum、Adam / AdamW 放在 L3 深度学习里讲,因为它们的设计动机(梯度噪声、稀疏梯度、权重衰减与 L2 的区别)要到训练神经网络时才看得见。

L1 编程与工具

怎么把一个想法变成一次能跑的实验?3

系列:《算法工程师的工具箱:从一个想法到一次能跑的实验》(六篇)——Python 使用层 · 数据科学三剑客 · PyTorch 使用层上下 · Hugging Face 生态 · GPU 直觉与实验管理,每篇配一个 CPU 可跑的脚本,讲的都是”用法”。Infra 地图的 01 Python 与 03 PyTorch 两个系列是本层的深入篇(机制与实现),两张地图共享,紧接本系列发布。

L1 各工具要掌握到的程度
工具 掌握到什么程度 说明 在哪一篇
Python(使用层) 训练代码里的协议方法(__getitem__、__call__)、生成器、装饰器、上下文管理器、**kwargs、dataclass、多进程与 GIL、读 traceback 会读别人的训练代码、能流式过一遍语料、能把实验写成脚本即可;机制在深入篇 Infra 地图 01 系列(两张地图共享) 第一篇
NumPy ndarray、broadcasting、矩阵运算、轴与 reshape PyTorch Tensor 的语义与它一致,先在 NumPy 上建立”形状直觉” 第二篇
Pandas / Polars DataFrame、清洗、聚合、join 数据工程与评测结果分析的日常工具 第二篇
Matplotlib / Seaborn 画 loss 曲线、分布、消融对比图 看曲线是判断训练是否正常的第一手段 第二篇
PyTorch(使用层) Tensor、Autograd、nn.Module、Dataset / DataLoader、Optimizer、AMP 混合精度、DDP / FSDP 的启用方式 会用、知道每个 API 在做什么;深入篇是 Infra 地图 03 系列(两张地图共享) 第三、四篇
Hugging Face 生态 transformers、datasets、tokenizers、peft、trl、accelerate 当前算法工作的事实标准工具链;读它们的源码是学后训练最快的路 第五篇
GPU 直觉 GPU 有算力与带宽两个上限、显存分几块(权重 / 激活 / 优化器状态 / KV)、为什么 batch 大才快、CUDA kernel 与 stream 是什么 能看懂 profiler 输出、能解释 OOM 的来源即可;写 kernel 属于 Infra 地图 05 第六篇
实验工具
  • W&B / MLflow / TensorBoard 记录实验
  • Hydra / 配置文件管理超参数
  • git 管代码与配置
实验方法论(横切)的物质基础 第六篇

L2 机器学习基础

什么是学习?怎么知道模型学会了而不是背下来了?4

系列:《LLM 时代的经典机器学习:只讲它在哪里重现》(十篇)——什么是学习 · 线性回归 · 逻辑回归与奖励模型 · 三个基础分类器 · SVM 与核方法 · 集成 · 聚类 · 降维 · MinHash 与 LSH · 评估,每个机制用十几行 NumPy 手写并画出来,对到 LLM 上的形态(benchmark 污染、reward hacking、weight decay = Ridge、attention = 核回归、奖励模型 = 逻辑回归、embedding 各向异性、去重阈值、judge 偏差);每篇另有算法的来龙去脉和一个真实数据的经典案例(加州房价、垃圾短信、MNIST、泰坦尼克、人口普查收入、RFM 客户分群、Eigenfaces、语料去重、银行营销),代码与效果数字全部实跑。

这一层在大模型时代常被跳过,但它提供的是方法论而不是具体模型。训练集 / 验证集 / 测试集的划分、过拟合与欠拟合、偏差-方差权衡、正则化、评估指标——这些概念在 LLM 上一个不少地重现:benchmark 污染就是测试集泄漏,奖励模型过拟合就是 reward hacking 的一种来源。

L2 机器学习基础的主题与 LLM 时代的必要性
主题 概念 LLM 时代为什么还需要 在哪一篇
基础概念 训练 / 验证 / 测试集、过拟合与欠拟合、偏差-方差、正则化、标准化 所有评测与配方决策的方法论来源 第一篇
监督学习 线性回归、Ridge / Lasso、逻辑回归、朴素贝叶斯、SVM、KNN、决策树、随机森林、梯度提升、XGBoost / LightGBM 逻辑回归是奖励模型与 DPO 的数学骨架;梯度提升树仍是表格数据与数据质量打分的首选 第二、三、四、五、六篇
无监督学习 K-Means、DBSCAN、PCA、embedding 聚类;MinHash / LSH 去重 数据去重与多样性分析、embedding 空间的可视化 第七、八、九篇
特征工程 特征选择与抽取、缩放、编码 在深度学习里被”表示学习”取代,但数据工程里的质量特征仍靠它 第二、六篇的案例顺带(one-hot、人均量特征、取 log)
评估
  • 分类:Accuracy、Precision / Recall、F1、AUC
  • 回归:MSE、RMSE、MAE
  • 交叉验证、统计显著性
评测集怎么划、怎么给置信区间、A/B 差异是否显著 第十篇
工具 scikit-learn 快速训练一个数据过滤器、一个质量分类器 每篇

学到”能解释每个概念、能用 scikit-learn 跑通一个分类任务”即可,不需要手推 SVM 对偶。

L3 深度学习基础

梯度怎么流?为什么深了就难训?CNN 与 RNN 各解决了什么、留下了什么?5

系列:《深度学习基础:从反向传播到残差》(六篇)——反向传播 · 初始化 / 归一化 / 残差 · 优化器 · 正则化与泛化 · CNN 到 ViT · RNN 到 attention。每篇推导 + 算账 + 一个 CPU 上能跑的实验,外加来龙去脉、一个案例(MNIST 从零、64 层 MLP、优化器扫描、double descent、复现 LeNet-5、字符级 LSTM 写莎士比亚)和原论文的结构图。

L3 深度学习基础的主题与概念
主题 概念 说明 在哪一篇
基本单元 感知机、MLP、激活函数(ReLU、GELU、SiLU / Swish)、前向传播、反向传播 反向传播要能手推一个两层网络;这是理解一切训练现象的前提 第一篇
正则化与归一化 Dropout、weight decay、BatchNorm、LayerNorm、RMSNorm、Pre-Norm 与 Post-Norm LayerNorm / RMSNorm 与 Pre-Norm 是 Transformer 的标准件;BatchNorm 为什么在序列模型里不好用 第二、四篇
优化器 SGD、Momentum、Adam / AdamW、学习率调度(warmup、cosine、WSD)、梯度裁剪、梯度累积 AdamW 的两个矩是每参数 8 字节状态的来源;warmup 是训练稳定性的第一道防线 第三篇
初始化与稳定性 Xavier / Kaiming 初始化、梯度消失与爆炸、残差连接 残差连接是”深了也能训”的答案,Transformer 的每一层都靠它 第二篇
CNN 卷积、池化、感受野、feature map;LeNet → AlexNet → VGG → ResNet 学到 ResNet 为止:残差是关键遗产;ViT 把卷积换成了 patch embedding,但 CNN 的直觉仍在多模态里有用 第五篇
RNN
  • 序列建模、长距离依赖、梯度在时间上的消失
  • RNN → LSTM → GRU
  • seq2seq 与 attention 的起源
理解 RNN 的失败才理解 attention 为什么赢:并行性与长依赖 第六篇
训练实践 混合精度(AMP)的用法、显存的四个去向、checkpoint 的保存与恢复、多卡 DDP 的启用
  • 用法在 L1 工具箱第四篇已讲
  • 本层只关心它们对训练稳定性的影响
  • 原理与大规模实现属于 Infra 地图 03、07
L1 第三篇

L4 LLM 核心

Transformer 长什么样、怎么写出来、为什么演进成今天的样子?tokenizer、scaling law 与预训练数据各决定了什么?6

这一层是地图的中心,也是与 Infra 地图的交点。Transformer 的结构与实现(静态线、动态线、nanoGPT 逐行、实训)、从 GPT-2 到 Llama / DeepSeek 的每一处演进(GQA / MLA、RoPE、SwiGLU、MoE、MTP)为什么发生,以及数值格式、量化与投机解码的数学,在《Transformer 与 LLM:结构、实现与算量》十三篇里已经写完——那个系列先带你手搓一个 GPT,再从”每一步算多少、读多少、存多少”的角度讲每个结构决定,正是算法工程师判断”这个结构改动值不值”所需要的账;紧接着它的《预训练:从 tokenizer 到训练配方》(五篇)用同样的算账方法覆盖本层的另一半:tokenizer、scaling law、数据工程、训练配方。这里列出本层的全部内容,并标出各在哪个系列的哪一篇:

L4 LLM 核心的主题与概念
主题 概念 在哪一篇
NLP 基础
  • 分词:BPE / WordPiece / SentencePiece / byte-level BPE,词表大小的取舍,多语言与代码的分词
  • 传统表示:one-hot、词袋、TF-IDF
  • n-gram 语言模型与困惑度
  • 词向量:Word2Vec(CBOW / Skip-gram)、GloVe → 上下文相关表示(ELMo、BERT)
预训练系列第二篇:BPE / byte-level / 预分词、词表大小的账(2Vd、lm_head 占比、logits 显存)、压缩率与每字符成本、中文 / 代码 / 数字;n-gram、困惑度、词向量的一页史也在那里
Transformer 结构
  • encoder / decoder / decoder-only 三种形态
  • self-attention 与 cross-attention
  • MHA → MQA → GQA → MLA
  • 位置编码:绝对、相对、RoPE、ALiBi、长上下文外推(PI、YaRN、NTK)
  • FFN 与 SwiGLU
  • Add & Norm 与 Pre-Norm
  • MoE 的路由、专家粒度、负载均衡、共享专家
  • MTP
  • FlashAttention 作为 attention 的精确等价实现(不是新算法)
04 系列第一至四篇(结构、动态线、nanoGPT 实现与实训)、第五至九篇(演进)
Scaling law
  • Kaplan 等 2020 与 Chinchilla(Hoffmann 等 2022):loss 随参数量、数据量、算力的幂律
  • 计算最优的 \(D / N \approx 20\)
  • 数据受限时的多 epoch
  • 推理成本纳入后的”过训练”(Llama 3 的 15T token)
  • 用小模型外推大模型
04 系列第十篇给出 \(6ND\);预训练系列第三篇:Kaplan 与 Chinchilla 的幂律与分歧、最优 N/D 的推导、推理成本纳入后的过训练、数据受限的有效 token、用小模型外推的实验设计与常见错误
预训练
  • 目标函数(next-token prediction、MTP)
  • 数据工程:采集、清洗、去重(MinHash / 精确)、质量过滤(分类器、困惑度)、配比与多阶段课程、合成数据、退火阶段
  • 训练配方:batch 与学习率的 scaling、warmup、WSD
  • 训练稳定性的算法侧:loss spike 的归因、z-loss、QK-norm、初始化
  • 长上下文的继续预训练
  • 预训练系列第四篇:漏斗(240T → 15T)、Gopher / C4 规则与模型打分、MinHash 的数学、配比 → epoch、退火与合成数据、污染检测
  • 预训练系列第五篇:目标函数与 MTP、AdamW / batch / lr / warmup 的依据、cosine 与 WSD、稳定性的三个机制与六个开关、长上下文阶段
  • 数值与混合精度在 04 系列第十一篇
  • 工程侧(checkpoint、容错、MFU)属于 Infra 地图 07
经典模型
  • GPT-2 / GPT-3 / GPT-4 系列的公开信息
  • Llama 1–4
  • Qwen 2 / 2.5 / 3
  • Mistral 与 Mixtral
  • DeepSeek-V2 / V3 / R1
  • Kimi K2
  • Gemma。读技术报告时关注:结构选择、数据规模与配比、训练配方、评测方法
04 系列第一至四篇以 GPT-2 为实例,第五、六、八、九篇以 Llama-3 与 DeepSeek-V3 为基线;预训练系列以两者的技术报告为训练侧的对象,其第三篇有十几个模型的 D/N 对照表

读 04 系列时,算法工程师的收获与 Infra 工程师相反:Infra 工程师从中知道要优化什么,算法工程师从中知道自己的每个结构决定在硬件上花多少钱——GQA 的组数、MLA 的压缩维、专家的粒度、上下文长度,每一个都对应成本表上的一格。

L5 后训练

一个基座模型怎么变成一个能对话、会推理、符合偏好的模型?怎么证明它变好了?7

这是当前算法工程师工作量最集中的一层,也是变化最快的一层。对应的系列是《后训练:从 SFT 到可验证奖励》(8 篇:SFT、偏好数据与奖励模型、在线 RL、离线 RL、推理模型与 RLVR、Agent 与工具调用的 RL、蒸馏、评测),以 RLHF 三件套(策略、奖励、参考)为组织轴。按流程分五段:

L5 后训练各阶段的概念
段 概念 说明
SFT
  • 指令数据的构造(人工、self-instruct、蒸馏自强模型)、多轮对话格式与 chat template、loss mask(只算回复部分)、packing
  • 全量微调 vs 参数高效微调:LoRA、QLoRA、DoRA、Prefix-Tuning / P-Tuning、Adapter、OFT
  • 灾难性遗忘与数据回放
LoRA 是 SFT 的默认方式,单独成专题(3 篇):低秩假设与四本账、每个旋钮的对照实验、从 adapter 到 multi-LoRA 服务;多 LoRA 服务的 kernel 与调度属于 Infra 地图 08
偏好对齐
  • 偏好数据(成对比较、打分、AI 反馈 RLAIF)
  • 奖励模型:Bradley-Terry、pairwise loss、过拟合与 reward hacking
  • 在线 RL:PPO(策略、价值、参考模型、KL 惩罚、GAE)、GRPO(组内相对优势,去掉价值模型)、RLOO、REINFORCE++
  • 离线 / 直接偏好优化:DPO、IPO、KTO、ORPO、SimPO
  • 拒绝采样 + SFT(Llama 2 / 3 的做法,与投机解码里的拒绝采样同名不同物)
每种方法各改了 RLHF 三件套(策略、奖励、参考)中的哪一件,是理解这一族的钥匙
推理模型与 Agent
  • 可验证奖励的强化学习(RLVR:数学答案、代码测试)
  • DeepSeek-R1 的 GRPO 配方与”aha moment”
  • 长思维链、test-time compute scaling
  • 过程奖励模型 PRM 与结果奖励 ORM
  • 推理长度的控制
  • 多轮工具调用的 RL:环境、轨迹数据、工具输出的 mask、延后的奖励、异步 rollout
2025 年后训练的主线;RL 训练的 rollout 与训练如何共享 GPU、异步 rollout 的实现属于 Infra 地图 09 《RL 后训练基础设施》
蒸馏 logits 级蒸馏(KL 到教师分布)、序列级 / 数据蒸馏(用教师生成 SFT 数据,R1 蒸馏小模型的做法)、on-policy 蒸馏;蒸馏与量化的组合 蒸馏是把大模型能力搬进小模型的主要手段,也是”线上回流”回边上的一站
评测
  • 通用 benchmark(MMLU、GSM8K、MATH、HumanEval、IFEval、MT-Bench 等)与它们各自测什么
  • LLM-as-judge 的偏差(位置、长度、自我偏好)
  • 人类偏好 Arena
  • 污染检测
  • 能力分解与错误分析
  • 评测集自建
评测是”回到数据或配方”那条回边的起点;不会评测就不知道改什么

工具层:trl、OpenRLHF、verl 的使用;知道它们把 rollout(推理)与训练(反向)怎么拼起来,但实现内部属于 Infra。transformers / peft / trl 自己的源码是本层与 L4 的深入篇:《读 Hugging Face 源码》(四篇)沿工具箱第五篇的六行代码读 from_pretrained 与一次前向、generate 的循环、tokenizers 与 datasets 的两条流水线、lora.Linear 的一行与 SFT / DPO / GRPO 的 loss 各在哪几行——读完 L5 再读,每一段代码都对应本地图前面某一篇的公式或结构图。本层另有一个专题:《LoRA 专题:SFT 的默认微调方式》(三篇)——低秩假设、\(W + \frac{\alpha}{r}BA\) 的梯度与四本账、全量微调 \(\Delta W\) 的谱;\(r\) / target_modules / \(\alpha\) / lr / QLoRA / DoRA / PiSSA 的十二种配置对照;adapter 文件、合并、量化失配、多 adapter 与 multi-LoRA 服务的账——读完后训练第一篇再读。

L6 高效推理与压缩(算法侧)

不改硬件,怎么让同一个模型更快、更小、更便宜?8

系列:《高效推理与压缩(算法侧):解码、投机、量化与 KV》(六篇)——解码策略与约束生成 · 投机解码 · 训练后量化 · QAT 与量化模型的评测 · KV cache 压缩 · 剪枝与小模型配方。每篇回答”输出分布变了多少、收益区间在哪、代价是什么”。

推理优化分两半:算法侧改变模型或解码过程,系统侧改变调度与内存管理。这张地图只放前者;后者(PagedAttention、continuous batching、chunked prefill、PD 分离)是 Infra 地图 08 的主体,算法工程师只需知道它们存在、知道自己的模型结构对它们意味着什么(比如 MLA 让 KV 变小、MoE 让 batch 内的 GEMM 变碎)。

L6 算法侧推理优化的主题与概念
主题 概念 在哪一篇
解码策略 greedy、beam search、temperature、top-k / top-p / min-p、重复惩罚、结构化输出(约束解码);采样对评测结果的影响 L6 第一篇
投机解码
  • 小模型起草、大模型验证、拒绝采样保证分布一致
  • 期望接受长度
  • 草稿来源:独立小模型、Medusa、EAGLE、MTP、n-gram
04 第七篇给出数学与收益区间;L6 第二篇讲草稿的训练与树
量化
  • PTQ:GPTQ、AWQ、SmoothQuant、旋转(QuaRot / SpinQuant)、FP8、W4A16 vs W8A8
  • QAT
  • KV cache 量化
  • 格式与工具:GGUF(llama.cpp)、bitsandbytes、AutoGPTQ / AutoAWQ——它们是格式与实现,不是新算法
  • 04 第七篇给出原理与字节数
  • L6 第三、四篇讲误差模型、QAT 与评测
  • kernel 实现属于 Infra 地图 05
结构级压缩 剪枝与结构化稀疏(2:4)、层裁剪与深度缩放、MLA 一类 KV 压缩结构、KV eviction(H2O、StreamingLLM) 04 第三篇给出 KV 的账;L6 第五、六篇
长上下文推理 位置外推方法的推理侧、稀疏 attention(NSA、MoBA)、上下文压缩 04 第四篇;L6 第五篇

L7 多模态

图片、视频、语音怎么进入语言模型?图像生成为什么是另一套数学?9

系列:《多模态:从视觉编码器到扩散模型》(九篇)——视觉编码器 · VLM 结构 · VLM 训练与评测 · 语音上下两篇(从波形到 token;理解、生成与全双工)· 扩散模型上下两篇(DDPM;score / flow matching 与 CFG)· Latent diffusion 与文生图配方 · 自回归图像生成与统一模型。

多模态有两条几乎独立的线:理解(把其他模态送进 LLM)与生成(扩散模型)。前者是 LLM 的扩展,后者是另一套数学。

L7 多模态的理解线与生成线
线 主题 概念
CV 基础 任务与骨干
  • 图像分类、目标检测、分割
  • CNN → ViT(patch embedding、位置编码)
  • 对比学习:CLIP、SigLIP——视觉编码器的来源
理解 视觉语言模型 VLM
  • vision encoder(ViT)、connector(MLP projector、2×2 merge / pixel-shuffle、Perceiver resampler / Q-Former)、LLM decoder
  • decoder-only 注入 vs cross-attention 注入
  • 固定分辨率、tile、原生动态分辨率
  • 多模态位置编码(M-RoPE)
  • 视频(帧采样、时间合并)
  • 对齐训练的阶段(先训 connector、再全量)
  • 代表模型:LLaVA、Qwen-VL 系列、InternVL、Llama 3.2 Vision
理解 语音与全模态 ASR(Whisper 的 encoder-decoder)、TTS、语音 LLM(音频 encoder + LLM)、全模态模型(Qwen2.5-Omni、GPT-4o 一类)的统一输入输出
生成 扩散模型
  • 前向加噪与反向去噪、DDPM、DDIM 与采样加速、score matching 与 flow matching 的统一视角、classifier-free guidance
  • U-Net → DiT(扩散 Transformer)
  • VAE 与 latent diffusion
  • 文本条件(CLIP / T5 文本编码器)
  • 代表模型:Stable Diffusion 1.x / SDXL / SD3、FLUX
  • 视频生成(Sora 一类,时空 patch)
生成 自回归生成与统一模型 图像 token 化(VQ-VAE)、自回归图像生成、理解与生成统一的模型

VLM 的成本结构——一张图等于多少 token、encoder 与 decoder 各花多少、image token 的 KV——在 04 系列第十三篇里算过;L7 系列讲这些成本背后的设计动机与训练配方。扩散模型的成本结构(无 KV cache、compute-bound、多步迭代)与 LLM 完全不同,L7 第六篇算了这笔账;它的推理系统——序列并行、跨步缓存、稀疏 attention、生成服务——在 Infra 地图的 10《扩散模型推理基础设施》。

横切:实验方法论

怎么用有限的算力得出可信的结论?10

导读:《算法工程师的实验方法论:用有限的算力得出可信的结论》——六步与六种错误、seed 方差与显著性、三个规模的外推规则、一份十七问的实验清单。

这是算法工程师区别于”会调 API 的人”的核心能力,不属于任何一层,对每一层都适用:

横切:实验方法论的六项能力
能力 内容
提假设 把”我觉得这样会好”变成一个可以被证伪的陈述:改什么、预期哪个指标变、变多少
小规模先行 用小模型、小数据做消融(ablation),一次只改一个变量;知道哪些结论能随规模外推、哪些不能(scaling law 的实验设计)
控制随机性
  • 随机种子、数据顺序、非确定性 kernel
  • 多 seed 报告均值与方差
  • 知道差异多大才算显著
记录与复现
  • 每次实验的代码版本、配置、数据版本、环境全部可追溯
  • 实验跟踪工具
  • 能复现三个月前的结果
读论文与复现
  • 从论文里提取”改了什么、和谁比、用什么评”
  • 先复现 baseline 再复现方法
  • 对报告数字保持怀疑(评测设置、污染、挑选)
看曲线 loss、梯度范数、学习率、评测指标随步数的曲线;能从曲线形状判断学习率过大、数据有问题、过拟合开始

选修

  • 系统内部:推理引擎(调度、KV cache 管理、PD 分离)、训练框架(并行策略、checkpoint、容错)、GPU kernel、集合通信的实现。算法工程师用它们、不改它们;需要改的时候,走 Infra 地图。
  • 应用层:Prompt 工程、RAG、工具调用、Agent 框架、评测应用效果。它们在模型之上,属于第三张地图。
  • 经典 NLP 任务与其他方向:命名实体识别、句法分析等传统 NLP 任务,以及搜索、推荐、广告等有自己一套模型与评测体系的方向,不在这张地图上。

与 AI-Infra 地图的关系

两张地图有大量重叠的名词——Python、PyTorch、CUDA、Transformer、LoRA、量化、混合精度、DDP / FSDP。重叠是正常的:两类工程师面对同一个系统。分工用一条规则说清:

同一个主题,算法地图回答”为什么这样建模、效果如何”,Infra 地图回答”在硬件上花多少钱、系统怎么实现”。

算法地图与 Infra 地图的重叠主题分工
重叠主题 算法地图负责 Infra 地图负责 Infra 系列
Python 会写、会读训练代码 语言机制、运行时、内存、C 扩展、交付 01
PyTorch Tensor / Autograd / Module / DataLoader / AMP / DDP 的用法 Dispatcher、Autograd 引擎、编译、分布式通信栈的实现 03
GPU / CUDA 算力与带宽两个上限、显存去向、为什么 batch 大才快 CUDA 编程模型、访存、Tensor Core、Triton、FlashAttention 的实现 05
Transformer 结构 各结构的建模动机与效果 各结构的参数量、FLOPs、KV、通信量 04(共享)
量化 选哪种方法、精度损失多大 字节数与收益区间、量化 kernel 04 · 05
LoRA 微调配方、秩与目标矩阵的选择 参数与状态的账、多 LoRA 服务的 kernel 与调度 04 · 08
投机解码 草稿模型的训练、接受率 加速比的数学、引擎中的实现 04 · 08
混合精度 / FP8 用法、对训练稳定性的影响 格式、累加精度、数值丢失的位置 04
分布式训练 DDP / FSDP 的启用、并行度对配方的影响 并行策略、checkpoint、容错、MFU 03 · 07
推理系统机制 知道存在;自己的结构对它们意味着什么 PagedAttention、continuous batching、chunked prefill、PD 分离 08
RL 后训练 算法:奖励、目标函数、配方 rollout 引擎与训练器的共置 / 分离 / 异步、权重同步、环境调度 09
数据管线 数据配比、质量、去重的决策 tokenization 离线化、流式加载、打包的实现 07
多模态 VLM 架构选择、对齐训练、扩散模型的数学与配方 理解模型:encoder 的调度与缓存、image token 的 KV、请求形态;生成模型:compute-bound 的推理、序列并行、跨步缓存、生成服务 04 · 08 · 10

一个常见的误分类:把 PagedAttention、continuous batching、chunked prefill、PD 分离归入”推理算法”。它们不是算法,是推理引擎的调度与内存管理机制,模型不知道它们的存在,输出分布也不因它们改变。算法侧的推理优化只有 L6 列出的那些——改变模型或改变解码过程的方法。

三个系列两张地图共享:01 Python 与 03 PyTorch 是本地图 L1 工具箱的深入篇(算法侧讲”用”,它们讲”为什么这样工作”与”怎么改”);04 讨论的对象——模型作为一个计算对象的成本——恰好是两类工程师对话的语言。

已有的文章与系列

算法地图各层已有的文章与系列
层 文章 / 系列 篇数
L0 算法工程师的数学:读公式不卡壳的最小集 8
L1 算法工程师的工具箱:从一个想法到一次能跑的实验 6
L1 深入 Python 在 AI-Infra、PyTorch 深度实践(与 Infra 地图共享) 10 + 10
L2 LLM 时代的经典机器学习:只讲它在哪里重现 10
L3 深度学习基础:从反向传播到残差 6
L4 Transformer 与 LLM:结构、实现与算量(与 Infra 地图共享) 13
L4 预训练:从 tokenizer 到训练配方 5
L5 后训练:从 SFT 到可验证奖励 8
L4–L5 深入 读 Hugging Face 源码:从 from_pretrained 到 GRPO 的 loss 4
L5 专题 LoRA 专题:SFT 的默认微调方式 3
L6 高效推理与压缩(算法侧):解码、投机、量化与 KV 6
L7 多模态:从视觉编码器到扩散模型 9
横切 算法工程师的实验方法论:用有限的算力得出可信的结论 1

L0–L2 最初写成三篇导读,只回答”学到什么深度、在哪里用到、怎么检验学会了”;读者反馈对从零开始的人不够,于是展开成三个系列——每个概念从定义讲起、代真实模型算出数字、L1 / L2 配 CPU 可跑的脚本。横切是一套方法而不是一组知识,一篇长文即可。至此地图上的每一层都有了对应的系列。篇数只计正文;每个系列末尾另有一篇「系列总结与通关自测」(逐篇回顾 + 判断计算 / 跨篇综合 / 面试题三段自测),读完正文再做。

配套代码

文中引用的数字与输出由 ai-learning-labs 里的脚本跑出来,按系列 key 分目录,文章末尾的”配套代码”链接指向对应目录。本地图上有代码的系列:

配套代码按层的目录与依赖
层 目录 需要
L1 algorithm-tooling/ numpy、torch(CPU)、pandas、matplotlib;HF 一篇需 transformers / peft / trl 与 Qwen2.5-0.5B
L1 深入 python-for-ai-infra/ Python 3.10+ 标准库
L2 classical-ml/ numpy、scikit-learn、matplotlib(第七、八篇的句向量用本地缓存的 Qwen2.5-0.5B)
L3 deep-learning-foundations/ NumPy;CNN / RNN 两篇需 PyTorch(CPU)
L4 transformer-and-llm/
  • 04 系列的 attention 手算、带 KV cache 的极小 GPT、vendored nanoGPT 与实训、MTP 实验、成本表脚本
  • 预训练系列的实验
  • 纯 Python + PyTorch
L5 post-training/ PyTorch + transformers / trl / peft;MPS 或 CUDA
L4–L5 深入 hf-source-reading/
  • transformers / tokenizers / datasets / peft / trl
  • 本地缓存的 Qwen2.5-0.5B 与 no_robots
  • CPU 可跑
L5 专题 lora/
  • peft / trl / bitsandbytes
  • Qwen2.5-0.5B 上全量与十二种 LoRA 配置的对照矩阵、ΔW 的谱、adapter 合并与多 adapter
  • CPU 可跑(全矩阵约 2h,--quick 十分钟)

L0 的推导用纸笔即可,L6、L7 与横切暂无配套代码。

这张地图上的代码不需要 GPU。 上表除 L5 之外的全部脚本在笔记本的 CPU 上就能跑完(make test 一遍几分钟),L5 的 LoRA SFT 用 Qwen2.5-0.5B,Mac 的 MPS 或一张消费级显卡即可;只有 L4 预训练系列里”真的训一个模型”的部分需要多卡,文中把那部分写成了账本而不是实验。文章里的”千卡”“H100 显存”是在算账,不是运行要求。在 IDE 里打断点、看每一步张量的形状与数值,比读十遍公式更快——反向传播、两层网络、小型 Transformer 前向、LoRA 都是可以单步跟的规模。

按目标选择路径

按目标选择的学习路径
目标 路径 说明
后训练(SFT / RLHF / 推理模型) L0 → L1 → L3 → L4 → L5 → 横切 当前需求最大的方向;L2 只补评估方法论
预训练与数据 L0 → L1 → L2 → L3 → L4(重 scaling law 与数据工程)→ 横切 门槛最高,算力决定一切;小规模实验设计是核心能力
多模态 L3(CNN、ViT)→ L4 → L7 → L5(多模态后训练) 理解线与生成线可以只走一条
推理效率(算法侧) L0 → L4 → L6 → Infra 地图 08 与 Infra 交界最深的方向,通常需要读两张地图
后端工程师转算法 L1 第一、二篇(已有编程基础,第一篇讲训练代码里的 Python 协议、过一遍即可,重点补第二篇的数据科学三剑客)→ L0 → L1 其余四篇 → L2 → L3 → L4 → 任选一个方向 数学是最大缺口,但按需补:L1 第三篇起的训练循环要用到 L0 第五篇的交叉熵、第七篇的梯度,所以 L0 插在 L1 中间;01 / 03 深入篇按需

边界与说明

不在地图上的内容

  • 系统实现:推理引擎、训练框架、kernel、通信、集群调度。属于 Infra 地图。
  • 应用层:Prompt、RAG、Agent、编排框架、产品评测。属于应用地图。
  • 搜索、推荐、广告、传统 NLP 任务:各自有独立的模型体系与评测体系,值得单独的地图。
  • 理论机器学习:泛化理论、优化理论、统计学习理论的系统课程。算法工程师用它们的结论,不做它们的研究。
  • 数学的系统课程:L0 只列出后面用到的部分,学到能读公式为止。

版本与时效

具体模型、benchmark 与后训练方法是这张地图上变化最快的部分:2023 年的主线是 SFT + PPO,2024 年是 DPO 一族,2025 年是可验证奖励的 RL。地图列出的是当前的主线,并会随之更新;不变的是结构——数据、预训练、后训练、评测、压缩这五段,以及”评测不达标回到数据或配方”这个循环。

关于”AI 算法工程师”

这张地图的目标是能读懂论文并复现、设计并验证一个训练配方、把结果评测清楚的工程师。研究员(提出新方法)与这条路径在 L4、L5 之后分叉:研究需要更深的数学与更多的失败实验,地图只送到分叉口。

最终目标

读完这张地图上的内容之后,面对一个基座模型和一个业务目标,读者应该能够沿着整条流水线追问下去:

读完算法地图后能追问的问题与答案来源
追问 答案来自
这个模型的结构选择(GQA、MoE、上下文长度)各是为了什么?代价是什么? L4 · 04 系列
给它 1000 条业务数据,该 SFT 还是 DPO?全量还是 LoRA? L5
它在这个任务上”变好了”是真的吗?评测集有没有泄漏?差异显著吗? L5 · L2 · 横切
想让它会推理,奖励从哪里来?GRPO 还是 DPO? L5
部署时想快一倍、小一半,量化到多少位?投机解码有用吗? L6 · 04 系列
要让它看图,encoder 选什么?一张图占多少 token? L7 · 04 系列第十三篇
这个结论在 1B 上成立,在 70B 上还成立吗? 横切 · L4 scaling law

三张地图不是为了覆盖更多名词,而是为了让 AI 系统里的三类人——造模型的、跑模型的、用模型的——知道自己站在哪里、隔壁在做什么。

  1. 八层加一个横切。L0 数学 → L1 工具 → L2 经典机器学习 → L3 深度学习基础 → L4 Transformer / LLM(结构、tokenizer、scaling law、预训练数据)→ L5 后训练(SFT、偏好对齐、RLVR、蒸馏、评测)→ L6 高效推理与压缩(解码、投机、量化、KV)→ L7 多模态;横切是实验方法论。每层要掌握的内容见上表「需要什么」与各层概念表:数学到读公式、推 loss 不出错;工具到能把想法写成能跑的脚本;经典 ML 与深度学习要方法论与训练现象;L4 要会手搓 GPT 并算账;L5 是工作量最集中的一层。顺序就是层号——每层以上一层为前置,L4 是中心,L5 是重心;已有基础的读者可以从 L4 进入、按需回看前面各层(正文「怎么用这张地图」给了三条路线)。 ↩

  2. 读公式按四个分支拆:线性代数管形状、FLOPs、范数与 SVD(矩阵乘 \([m,k]\times[k,n]\to[m,n]\)、\(2mnk\) 次运算);概率统计管「语言模型是条件分布 \(p(x_t\mid x_{<t})\)」、MLE、置信区间;信息论管熵、交叉熵、KL 与困惑度 \(e^{\text{loss}}\);微积分与优化管梯度、链式法则、策略梯度。loss 之所以「这样写」,是因为它是建模假设下的最大似然:条件分布假设 + MLE 三行推出交叉熵;Bradley-Terry 偏好假设 + RLHF 目标的闭式解推出 DPO;期望回报对策略参数求导推出策略梯度。八篇正文每篇代真实模型算出数字,见《算法工程师的数学》。 ↩

  3. 六层工具各到「够用」的深度:Python 使用层(协议方法、生成器、装饰器、上下文管理器、多进程与 GIL、读 traceback)→ NumPy / Pandas / Matplotlib(形状直觉、错误分析、曲线)→ PyTorch 使用层(五个对象与二十行训练循环、混合精度、梯度累积、checkpoint)→ Hugging Face 生态(六个库组装一次 LoRA SFT)→ GPU 直觉(显存账:全量微调每参数 16 字节,Llama-3-8B 128.5 GB,一张 80 GB 卡放不下;LoRA 16.06 + 0.67 GB)→ 实验管理(配置、种子、跟踪、复现)。「能跑」最终是显存与算力的算术,不是对工具的熟悉程度;机制层面的深入在 Infra 地图的 01 Python 与 03 PyTorch 系列。见《算法工程师的工具箱》。 ↩

  4. 学习 = 从训练集学到能在没见过的数据上成立的规律,判据是训练集 / 验证集 / 测试集的划分与泛化误差,而不是训练误差。「学会了而不是背下来」看训练误差与验证误差的差距(过拟合时训练误差一路降、验证误差回升)、偏差 - 方差分解、以及测试集是否干净——LLM 上的对应物是 benchmark 污染(测试题在训练数据里 = 测试集泄漏)、奖励模型过拟合导致 reward hacking、judge 偏差 = 评估偏差。处理方法也是经典的:更多数据、正则化(RLHF 的 KL 项)、早停、集成、去重与去污染。见《LLM 时代的经典机器学习》第一篇。 ↩

  5. 梯度沿计算图反向、按链式法则逐层乘 Jacobian 传回:从顶层到第 \(l\) 层要连乘 \(l\) 个系数,每个系统性地偏离 1 就指数级消失或爆炸(128 层、每层 0.9 → \(0.9^{128}\approx 1.4\times 10^{-6}\))——这就是「深了难训」;三种修法是初始化(Xavier / Kaiming 让每层方差守恒)、归一化(BatchNorm / LayerNorm / RMSNorm 把激活钉回单位尺度)、残差(每层 Jacobian 变成 \(I + J_l\),多一条恒等通路)。CNN 解决了图像的平移不变性与参数共享(LeNet → ResNet),留下残差与 patch 化输入(ViT);RNN 解决了变长序列,但串行、长程依赖靠门控仍难传梯度,留下的是「用 attention 替代循环」的动机。见《深度学习基础》。 ↩

  6. Transformer 是 embedding → \(L\) 层(attention 四个矩阵 + FFN + norm,残差相连)→ lm_head 的七样东西;写出来就是 nanoGPT model.py 的 330 行;演进(GQA / MLA、RoPE、SwiGLU、MoE、MTP)每一处都是在「每一步算多少、读多少、存多少」的账上做交换,主要是压 KV cache 字节数与提升每 FLOP 的效果。tokenizer 决定压缩率与每字符成本(Llama 3 词表 32K → 128K,每 token 贵 5.6% 反而省钱);scaling law 决定算力怎么分给参数与数据(Chinchilla \(D/N\approx 20\),2024 年后为推理成本「过训练」);预训练数据决定能力的上限与分布(Common Crawl 240T → 15T,去重 / 过滤 / 配比)。见《Transformer 与 LLM》与《预训练》两个系列。 ↩

  7. 按 RLHF 三件套(策略、奖励、参考)组织的五段流程:SFT(指令数据、chat template、loss mask、packing,全量或 LoRA)教会对话格式;偏好数据与奖励模型(Bradley-Terry、pairwise loss)把「人觉得更好」变成可微标量;在线 RL(PPO / GRPO / RLOO)或离线直接偏好优化(DPO / IPO / KTO / ORPO / SimPO)对齐偏好;可验证奖励的 RL(RLVR,DeepSeek-R1 的路径)训出一步步推导的推理模型;蒸馏把大模型的能力压进小模型。「证明变好了」靠评测:能力 benchmark(含去污染)、偏好胜率、judge 与人工一致率、给置信区间——以及看是否只是学会了讨好评测(reward hacking、长度偏好)。见《后训练:从 SFT 到可验证奖励》。 ↩

  8. 算法侧四条路:解码策略(greedy / 采样 / top-p / 约束解码只改输出分布与质量,不省算);投机解码(小模型起草、大模型一次验证、拒绝采样保证分布一致,收益由期望接受长度决定,decode 是 memory-bound 所以验证几个 token 与算一个几乎同价);量化(PTQ:GPTQ / AWQ / SmoothQuant / 旋转 / FP8,W4A16 省显存与带宽、W8A8 还省算力;QAT 与量化模型的评测);KV cache 压缩与剪枝 / 小模型(KV 量化、驱逐、MLA 一类结构改动,剪枝与蒸馏配方)。每一项都要回答「输出分布变了多少、收益区间在哪、代价是什么」;系统侧(PagedAttention、continuous batching、PD 分离)属于 Infra 地图 08。见《高效推理与压缩》。 ↩

  9. 理解线:把其他模态编码成 LLM 能读的 token——图像经 ViT 视觉编码器(CLIP / SigLIP 来源)+ connector(MLP projector、pixel-shuffle、Perceiver / Q-Former)注入 decoder,视频是帧采样 + 时间合并,语音经音频编码器离散成 token(Whisper 式 encoder-decoder、语音 LLM、全双工);对齐训练先训 connector 再全量。生成线是另一套数学:扩散模型不是预测下一个 token,而是学一个把噪声逐步去掉的过程——DDPM 的加噪 / 去噪、score / flow matching、CFG、latent diffusion——目标函数是对噪声(或速度场)的回归而不是交叉熵;自回归图像生成与统一模型是把两条线合起来的尝试。见《多模态:从视觉编码器到扩散模型》。 ↩

  10. 六步:先写可证伪的假设(改什么、看哪个指标、预期变多少)→ 小规模先行(125M 级消融,一次只改一个变量,知道哪些结论能随规模外推:数据质量、训练稳定性相关的能,涌现能力与绝对分数不能)→ 控制随机性(多 seed 报均值与方差,差异小于 seed 方差就不是结论)→ 记录与复现(代码、配置、数据、环境四个版本号)→ 读论文看「改了什么、和谁比、用什么评」并先复现 baseline → 看曲线(loss、梯度范数、学习率、评测指标的形状)。见《算法工程师的实验方法论》。 ↩

这篇对你有用?

本文由 arganzheng 创作,采用 CC BY 4.0 许可协议。在保留原文作者、署名以及完整原文链接(https://arganzheng.life/ai-algorithm-engineer-learning-roadmap.html)的前提下,欢迎各种形式的转载、翻译或商业引用。


COMMENTS

评论存放在 GitHub Discussions, 用 GitHub 账号登录即可发表,支持 Markdown。 想针对正文某句话说?选中那段文字,点浮出的「评论」即可划线评论;觉得哪里写错了,发表时勾上「同时提交 Issue」。 有人回复你时 GitHub 会按你的通知设置发邮件,不用守在这里。

×