1244 lines
39 KiB
Markdown
1244 lines
39 KiB
Markdown
|
|
# 技术进步学习路线 - 详细说明与优化建议
|
|||
|
|
|
|||
|
|
> 📅 更新时间: 2026-02-03
|
|||
|
|
> 📖 本文档为学习路线的详细补充说明
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 目录
|
|||
|
|
|
|||
|
|
- [第0阶段:数学与编程基础](#第0阶段数学与编程基础)
|
|||
|
|
- [第1-1.5阶段:工程基础](#第1-15阶段工程基础)
|
|||
|
|
- [第2-4阶段:机器学习与深度学习](#第2-4阶段机器学习与深度学习)
|
|||
|
|
- [第5-6阶段:图网络与强化学习](#第5-6阶段图网络与强化学习)
|
|||
|
|
- [第7-10阶段:CV/NLP/Transformer](#第7-10阶段cvnlptransformer)
|
|||
|
|
- [第11-14阶段:大模型核心](#第11-14阶段大模型核心)
|
|||
|
|
- [第15-20阶段:前沿研究](#第15-20阶段前沿研究)
|
|||
|
|
- [第21-28阶段:应用与系统](#第21-28阶段应用与系统)
|
|||
|
|
- [第29-37阶段:高级专题](#第29-37阶段高级专题)
|
|||
|
|
- [第38-50阶段:工程与职业](#第38-50阶段工程与职业)
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 第0阶段:数学与编程基础
|
|||
|
|
|
|||
|
|
### 🎯 学习目标
|
|||
|
|
构建 AI/ML 所需的数学直觉和 Python 编程能力,这是整个学习路线的**基石**。
|
|||
|
|
|
|||
|
|
### 📚 核心知识点详解
|
|||
|
|
|
|||
|
|
#### 0.1 线性代数(重要性: ⭐⭐⭐⭐⭐)
|
|||
|
|
|
|||
|
|
| 知识点 | 为什么重要 | 在AI中的应用 |
|
|||
|
|
|--------|-----------|-------------|
|
|||
|
|
| 向量与矩阵运算 | 神经网络的基本数据结构 | 权重矩阵、特征向量 |
|
|||
|
|
| 矩阵乘法 | 神经网络前向传播的核心 | 全连接层计算 |
|
|||
|
|
| 特征值与特征向量 | 理解数据的主要方向 | PCA降维、谱聚类 |
|
|||
|
|
| SVD分解 | 矩阵的最优低秩近似 | 推荐系统、数据压缩 |
|
|||
|
|
| 正交与投影 | 理解注意力机制 | Transformer中的Q/K/V |
|
|||
|
|
|
|||
|
|
**学习资源**:
|
|||
|
|
- 3Blue1Brown《线性代数的本质》(必看,建立直觉)
|
|||
|
|
- MIT 18.06 Gilbert Strang 课程
|
|||
|
|
- 《Linear Algebra Done Right》(进阶)
|
|||
|
|
|
|||
|
|
**实践建议**:
|
|||
|
|
```python
|
|||
|
|
# 用 NumPy 实现所有基本运算
|
|||
|
|
import numpy as np
|
|||
|
|
# 1. 手写矩阵乘法
|
|||
|
|
# 2. 实现 PCA 降维
|
|||
|
|
# 3. 理解 SVD 分解
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 0.2 概率论与统计(重要性: ⭐⭐⭐⭐⭐)
|
|||
|
|
|
|||
|
|
| 知识点 | 为什么重要 | 在AI中的应用 |
|
|||
|
|
|--------|-----------|-------------|
|
|||
|
|
| 概率分布 | 模型输出的概率解释 | Softmax、采样 |
|
|||
|
|
| 条件概率 | 理解模型的推理过程 | 贝叶斯推断 |
|
|||
|
|
| 贝叶斯定理 | 从数据更新信念 | 贝叶斯神经网络 |
|
|||
|
|
| 期望与方差 | 评估模型稳定性 | 损失函数设计 |
|
|||
|
|
| 最大似然估计 | 参数估计的核心方法 | 模型训练目标 |
|
|||
|
|
|
|||
|
|
**常见误区**:
|
|||
|
|
- ❌ 只看公式,不理解含义
|
|||
|
|
- ❌ 跳过积分和求和的推导
|
|||
|
|
- ✅ 用代码模拟概率实验,建立直觉
|
|||
|
|
|
|||
|
|
#### 0.3 微积分(重要性: ⭐⭐⭐⭐)
|
|||
|
|
|
|||
|
|
| 知识点 | 为什么重要 | 在AI中的应用 |
|
|||
|
|
|--------|-----------|-------------|
|
|||
|
|
| 导数与梯度 | 反向传播的数学基础 | 梯度下降 |
|
|||
|
|
| 链式法则 | 多层网络的梯度计算 | 自动微分 |
|
|||
|
|
| 偏导数 | 多变量优化 | 多参数模型 |
|
|||
|
|
| 泰勒展开 | 理解优化器行为 | 二阶优化方法 |
|
|||
|
|
|
|||
|
|
#### 0.4 优化理论(重要性: ⭐⭐⭐⭐)
|
|||
|
|
|
|||
|
|
| 知识点 | 为什么重要 | 在AI中的应用 |
|
|||
|
|
|--------|-----------|-------------|
|
|||
|
|
| 凸优化 | 理解为什么深度学习难 | 非凸优化景观 |
|
|||
|
|
| 梯度下降 | 最基础的优化方法 | SGD及其变体 |
|
|||
|
|
| 动量与自适应学习率 | 加速收敛 | Adam、AdaGrad |
|
|||
|
|
| 约束优化 | 正则化的理论基础 | L1/L2正则化 |
|
|||
|
|
|
|||
|
|
#### 0.5 Python编程(重要性: ⭐⭐⭐⭐⭐)
|
|||
|
|
|
|||
|
|
**必须掌握**:
|
|||
|
|
```python
|
|||
|
|
# 1. 数据结构
|
|||
|
|
列表、字典、集合、元组
|
|||
|
|
列表推导式、生成器
|
|||
|
|
|
|||
|
|
# 2. NumPy
|
|||
|
|
arr = np.array([1, 2, 3])
|
|||
|
|
广播机制、向量化操作
|
|||
|
|
切片、索引、reshape
|
|||
|
|
|
|||
|
|
# 3. Pandas
|
|||
|
|
df = pd.DataFrame(...)
|
|||
|
|
数据清洗、分组聚合
|
|||
|
|
merge、concat、apply
|
|||
|
|
|
|||
|
|
# 4. 可视化
|
|||
|
|
matplotlib 基础绑图
|
|||
|
|
seaborn 统计图表
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### ⏰ 预计学习时间
|
|||
|
|
- 数学基础:4-8周(每天2-3小时)
|
|||
|
|
- Python编程:2-4周
|
|||
|
|
- 总计:6-12周
|
|||
|
|
|
|||
|
|
### 📋 阶段检验标准
|
|||
|
|
- [ ] 能手写矩阵乘法和梯度下降
|
|||
|
|
- [ ] 理解为什么 Softmax + CrossEntropy 是常用组合
|
|||
|
|
- [ ] 能用 NumPy 实现简单的线性回归
|
|||
|
|
- [ ] 能用 Pandas 处理 CSV 数据
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 第1-1.5阶段:工程基础
|
|||
|
|
|
|||
|
|
### 🎯 学习目标
|
|||
|
|
掌握后端开发能力和数据工程技能,为 AI 系统工程化打下基础。
|
|||
|
|
|
|||
|
|
### 📚 路线1详解:后端开发
|
|||
|
|
|
|||
|
|
#### Golang(推荐优先学习)
|
|||
|
|
|
|||
|
|
**为什么学 Go**:
|
|||
|
|
- 高性能:接近 C 的性能,适合高并发服务
|
|||
|
|
- 简洁:语法简单,上手快
|
|||
|
|
- 云原生标配:K8s、Docker 都是 Go 写的
|
|||
|
|
- AI 部署:很多推理服务用 Go 写
|
|||
|
|
|
|||
|
|
**核心知识点**:
|
|||
|
|
| 知识点 | 说明 | 实践项目 |
|
|||
|
|
|--------|------|----------|
|
|||
|
|
| 基础语法 | 变量、函数、结构体 | CLI工具 |
|
|||
|
|
| 并发编程 | goroutine、channel | 并发爬虫 |
|
|||
|
|
| Web开发 | Gin/Echo框架 | REST API |
|
|||
|
|
| 数据库 | GORM、sqlx | CRUD服务 |
|
|||
|
|
|
|||
|
|
**学习路径**:
|
|||
|
|
```
|
|||
|
|
基础语法(1周) → 并发编程(1周) → Web开发(2周) → 项目实战(2周)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### TypeScript(前端必备)
|
|||
|
|
|
|||
|
|
**核心价值**:
|
|||
|
|
- 类型安全:减少运行时错误
|
|||
|
|
- 生态丰富:React/Vue/Node 全栈
|
|||
|
|
- AI 前端:很多 AI 产品前端用 TS
|
|||
|
|
|
|||
|
|
#### Rust(可选进阶)
|
|||
|
|
|
|||
|
|
**适合场景**:
|
|||
|
|
- 高性能 ML 推理
|
|||
|
|
- WebAssembly
|
|||
|
|
- 系统级 AI 工具
|
|||
|
|
|
|||
|
|
### 📚 第1.5阶段详解:数据工程
|
|||
|
|
|
|||
|
|
**为什么重要**:
|
|||
|
|
> "数据科学家 80% 的时间在清洗数据" —— 业界共识
|
|||
|
|
|
|||
|
|
| 技能 | 说明 | 工具 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| SQL | 数据查询的基础 | PostgreSQL、MySQL |
|
|||
|
|
| 数据清洗 | 处理缺失值、异常值 | Pandas、OpenRefine |
|
|||
|
|
| 特征工程 | 提取有效特征 | sklearn、featuretools |
|
|||
|
|
| ETL | 数据管道设计 | Airflow、Prefect |
|
|||
|
|
| 大数据 | 处理TB级数据 | Spark、Dask |
|
|||
|
|
|
|||
|
|
**实践项目建议**:
|
|||
|
|
1. 从 Kaggle 下载脏数据,完整清洗流程
|
|||
|
|
2. 设计一个 ETL 管道,定时处理数据
|
|||
|
|
3. 用 SQL 分析真实业务数据
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 第2-4阶段:机器学习与深度学习
|
|||
|
|
|
|||
|
|
### 🎯 学习目标
|
|||
|
|
掌握机器学习和深度学习的核心理论与实践能力。
|
|||
|
|
|
|||
|
|
### 📚 第2阶段:机器学习基础
|
|||
|
|
|
|||
|
|
#### 算法分类与应用场景
|
|||
|
|
|
|||
|
|
| 类别 | 算法 | 典型应用 |
|
|||
|
|
|------|------|----------|
|
|||
|
|
| 监督学习-回归 | 线性回归、Ridge、Lasso | 房价预测、销量预测 |
|
|||
|
|
| 监督学习-分类 | 逻辑回归、SVM、决策树 | 垃圾邮件、信用评分 |
|
|||
|
|
| 集成学习 | 随机森林、XGBoost、LightGBM | 竞赛首选、工业落地 |
|
|||
|
|
| 无监督学习 | K-Means、DBSCAN、层次聚类 | 客户分群、异常检测 |
|
|||
|
|
| 降维 | PCA、t-SNE、UMAP | 可视化、特征压缩 |
|
|||
|
|
|
|||
|
|
#### 模型评估(极其重要)
|
|||
|
|
|
|||
|
|
| 指标 | 适用场景 | 注意事项 |
|
|||
|
|
|------|----------|----------|
|
|||
|
|
| Accuracy | 类别均衡时 | 不均衡时会误导 |
|
|||
|
|
| Precision/Recall | 关注某一类时 | 取决于业务目标 |
|
|||
|
|
| F1 Score | 综合考量 | 精确率召回率调和 |
|
|||
|
|
| AUC-ROC | 排序能力 | 阈值无关指标 |
|
|||
|
|
| Log Loss | 概率预测 | 惩罚错误置信度 |
|
|||
|
|
|
|||
|
|
**常见误区**:
|
|||
|
|
- ❌ 只关注准确率
|
|||
|
|
- ❌ 不做交叉验证
|
|||
|
|
- ❌ 忽略数据泄露
|
|||
|
|
- ✅ 理解每个指标的业务含义
|
|||
|
|
|
|||
|
|
#### 学习资源
|
|||
|
|
- 吴恩达 Machine Learning(Coursera)
|
|||
|
|
- 《统计学习方法》李航
|
|||
|
|
- 《Hands-On Machine Learning》
|
|||
|
|
|
|||
|
|
### 📚 第3阶段:深度学习核心
|
|||
|
|
|
|||
|
|
#### 神经网络基础知识图谱
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
输入层 → 隐藏层 → 输出层
|
|||
|
|
↓
|
|||
|
|
[权重矩阵 W]
|
|||
|
|
[偏置向量 b]
|
|||
|
|
[激活函数 σ]
|
|||
|
|
↓
|
|||
|
|
前向传播: y = σ(Wx + b)
|
|||
|
|
↓
|
|||
|
|
损失函数: L(y, ŷ)
|
|||
|
|
↓
|
|||
|
|
反向传播: ∂L/∂W
|
|||
|
|
↓
|
|||
|
|
参数更新: W = W - lr × ∂L/∂W
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 激活函数对比
|
|||
|
|
|
|||
|
|
| 函数 | 公式 | 优点 | 缺点 | 使用场景 |
|
|||
|
|
|------|------|------|------|----------|
|
|||
|
|
| ReLU | max(0, x) | 计算简单、缓解梯度消失 | 死神经元问题 | 隐藏层首选 |
|
|||
|
|
| LeakyReLU | max(0.01x, x) | 解决死神经元 | 需要调参 | ReLU替代 |
|
|||
|
|
| GELU | x·Φ(x) | 平滑、效果好 | 计算较复杂 | Transformer |
|
|||
|
|
| Sigmoid | 1/(1+e^-x) | 输出0-1 | 梯度消失 | 二分类输出 |
|
|||
|
|
| Softmax | e^xi/Σe^xj | 多分类概率 | - | 多分类输出 |
|
|||
|
|
|
|||
|
|
#### 优化器选择指南
|
|||
|
|
|
|||
|
|
| 优化器 | 特点 | 推荐场景 |
|
|||
|
|
|--------|------|----------|
|
|||
|
|
| SGD | 简单稳定 | CV任务、需要精调 |
|
|||
|
|
| SGD+Momentum | 加速收敛 | 大多数任务 |
|
|||
|
|
| Adam | 自适应学习率 | NLP、快速实验 |
|
|||
|
|
| AdamW | 权重衰减修正 | Transformer训练 |
|
|||
|
|
| LAMB | 大batch训练 | 分布式训练 |
|
|||
|
|
|
|||
|
|
**优化器选择经验**:
|
|||
|
|
```
|
|||
|
|
快速实验 → Adam
|
|||
|
|
CV精调 → SGD + Momentum + Cosine LR
|
|||
|
|
NLP/Transformer → AdamW
|
|||
|
|
大规模训练 → LAMB / DeepSpeed
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 正则化技术
|
|||
|
|
|
|||
|
|
| 技术 | 原理 | 使用建议 |
|
|||
|
|
|------|------|----------|
|
|||
|
|
| L1正则化 | 稀疏化权重 | 特征选择 |
|
|||
|
|
| L2正则化 | 防止权重过大 | 默认选择 |
|
|||
|
|
| Dropout | 随机失活神经元 | FC层常用,0.1-0.5 |
|
|||
|
|
| BatchNorm | 标准化中间层 | CNN标配 |
|
|||
|
|
| LayerNorm | 单样本标准化 | Transformer标配 |
|
|||
|
|
| 数据增强 | 扩充训练数据 | CV必备 |
|
|||
|
|
|
|||
|
|
### 📚 第4阶段:深度学习框架
|
|||
|
|
|
|||
|
|
#### PyTorch vs TensorFlow
|
|||
|
|
|
|||
|
|
| 维度 | PyTorch | TensorFlow |
|
|||
|
|
|------|---------|------------|
|
|||
|
|
| 易用性 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ |
|
|||
|
|
| 调试 | 动态图,好调试 | TF2改进,但仍复杂 |
|
|||
|
|
| 研究 | 学术界主流 | 工业界仍广泛 |
|
|||
|
|
| 部署 | TorchScript、ONNX | TFLite、TF Serving |
|
|||
|
|
| 生态 | HuggingFace主推 | Keras生态 |
|
|||
|
|
|
|||
|
|
**建议**:2026年优先学 PyTorch
|
|||
|
|
|
|||
|
|
#### Hugging Face 生态(必学)
|
|||
|
|
|
|||
|
|
```python
|
|||
|
|
from transformers import AutoModel, AutoTokenizer
|
|||
|
|
|
|||
|
|
# 加载预训练模型
|
|||
|
|
model = AutoModel.from_pretrained("bert-base-chinese")
|
|||
|
|
tokenizer = AutoTokenizer.from_pretrained("bert-base-chinese")
|
|||
|
|
|
|||
|
|
# 微调
|
|||
|
|
from transformers import Trainer, TrainingArguments
|
|||
|
|
trainer = Trainer(model=model, args=args, train_dataset=dataset)
|
|||
|
|
trainer.train()
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**核心组件**:
|
|||
|
|
- `transformers`: 预训练模型库
|
|||
|
|
- `datasets`: 数据集工具
|
|||
|
|
- `accelerate`: 分布式训练
|
|||
|
|
- `peft`: 参数高效微调
|
|||
|
|
- `trl`: RLHF训练
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 第5-6阶段:图网络与强化学习
|
|||
|
|
|
|||
|
|
### 📚 第5阶段:图神经网络
|
|||
|
|
|
|||
|
|
#### GNN核心思想
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
消息传递机制:
|
|||
|
|
1. 聚合邻居信息: h_N(v) = AGGREGATE({h_u : u ∈ N(v)})
|
|||
|
|
2. 更新节点表示: h_v = UPDATE(h_v, h_N(v))
|
|||
|
|
3. 经过K层后获得K跳邻居信息
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 经典GNN模型对比
|
|||
|
|
|
|||
|
|
| 模型 | 聚合方式 | 适用场景 |
|
|||
|
|
|------|----------|----------|
|
|||
|
|
| GCN | 平均聚合 | 同质图、节点分类 |
|
|||
|
|
| GraphSAGE | 采样聚合 | 大规模图、归纳学习 |
|
|||
|
|
| GAT | 注意力聚合 | 需要学习边重要性 |
|
|||
|
|
| GIN | 可区分聚合 | 图分类、表达能力强 |
|
|||
|
|
|
|||
|
|
#### 知识图谱(第5.5阶段)
|
|||
|
|
|
|||
|
|
**核心概念**:
|
|||
|
|
- 实体(Entity):现实世界的对象
|
|||
|
|
- 关系(Relation):实体间的联系
|
|||
|
|
- 三元组:(头实体, 关系, 尾实体)
|
|||
|
|
|
|||
|
|
**KG + LLM 结合趋势**:
|
|||
|
|
```
|
|||
|
|
传统KG → 结构化知识表示
|
|||
|
|
LLM → 非结构化知识理解
|
|||
|
|
GraphRAG → 结合两者优势
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 📚 第6阶段:强化学习
|
|||
|
|
|
|||
|
|
#### RL核心概念
|
|||
|
|
|
|||
|
|
| 概念 | 说明 | 类比 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| Agent | 学习者 | 玩家 |
|
|||
|
|
| Environment | 交互环境 | 游戏世界 |
|
|||
|
|
| State | 当前状态 | 游戏画面 |
|
|||
|
|
| Action | 可选动作 | 按键操作 |
|
|||
|
|
| Reward | 即时奖励 | 得分 |
|
|||
|
|
| Policy | 动作策略 | 玩法 |
|
|||
|
|
|
|||
|
|
#### RL与LLM结合(重要趋势)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
RLHF流程:
|
|||
|
|
1. 预训练LLM
|
|||
|
|
2. 收集人类偏好数据
|
|||
|
|
3. 训练奖励模型
|
|||
|
|
4. PPO优化策略
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 第7-10阶段:CV/NLP/Transformer
|
|||
|
|
|
|||
|
|
### 📚 第7阶段:计算机视觉
|
|||
|
|
|
|||
|
|
#### CV任务层级
|
|||
|
|
|
|||
|
|
| 层级 | 任务 | 典型模型 |
|
|||
|
|
|------|------|----------|
|
|||
|
|
| 图像级 | 分类 | ResNet、ViT |
|
|||
|
|
| 区域级 | 目标检测 | YOLO、DETR |
|
|||
|
|
| 像素级 | 语义分割 | UNet、Mask2Former |
|
|||
|
|
| 生成 | 图像生成 | Stable Diffusion |
|
|||
|
|
|
|||
|
|
#### 2026年CV学习建议
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
经典CNN(了解) → ViT(重点) → 多模态(趋势)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 📚 第8阶段:NLP
|
|||
|
|
|
|||
|
|
#### NLP任务演进
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
规则方法 → 统计方法 → 深度学习 → 预训练 → LLM
|
|||
|
|
↓ ↓ ↓ ↓ ↓
|
|||
|
|
正则表达式 HMM/CRF LSTM BERT GPT-4
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 📚 第9阶段:Transformer
|
|||
|
|
|
|||
|
|
#### Transformer架构详解
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
输入 → Embedding + Position Encoding
|
|||
|
|
↓
|
|||
|
|
┌─────────────┐
|
|||
|
|
│ Multi-Head │
|
|||
|
|
│ Attention │ ← Q, K, V
|
|||
|
|
└─────────────┘
|
|||
|
|
↓
|
|||
|
|
Add & Norm
|
|||
|
|
↓
|
|||
|
|
Feed Forward
|
|||
|
|
↓
|
|||
|
|
Add & Norm
|
|||
|
|
↓
|
|||
|
|
输出
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 注意力机制核心公式
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
Attention(Q, K, V) = softmax(QK^T / √d_k) V
|
|||
|
|
|
|||
|
|
Multi-Head:
|
|||
|
|
MultiHead(Q, K, V) = Concat(head_1, ..., head_h) W^O
|
|||
|
|
head_i = Attention(QW_i^Q, KW_i^K, VW_i^V)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 常见变体
|
|||
|
|
|
|||
|
|
| 变体 | 解决问题 | 代表模型 |
|
|||
|
|
|------|----------|----------|
|
|||
|
|
| 稀疏注意力 | 长序列效率 | Longformer |
|
|||
|
|
| 线性注意力 | O(n)复杂度 | Linear Transformer |
|
|||
|
|
| Flash Attention | 显存效率 | 各大模型标配 |
|
|||
|
|
| Mamba/SSM | 替代Transformer | Mamba、S4 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 第11-14阶段:大模型核心
|
|||
|
|
|
|||
|
|
### 📚 第11阶段:大语言模型(LLM)⭐
|
|||
|
|
|
|||
|
|
#### LLM能力层次
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
基础能力: 语言理解、生成
|
|||
|
|
↓
|
|||
|
|
涌现能力: 推理、规划、创造
|
|||
|
|
↓
|
|||
|
|
应用能力: 对话、代码、工具使用
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 微调方法对比
|
|||
|
|
|
|||
|
|
| 方法 | 参数量 | 显存需求 | 效果 | 推荐场景 |
|
|||
|
|
|------|--------|----------|------|----------|
|
|||
|
|
| 全量微调 | 100% | 极高 | 最好 | 充足资源 |
|
|||
|
|
| LoRA | 0.1-1% | 低 | 接近全量 | 首选方案 |
|
|||
|
|
| QLoRA | 0.1% | 极低 | 略差 | 消费级GPU |
|
|||
|
|
| Prefix Tuning | 0.1% | 低 | 一般 | 特定场景 |
|
|||
|
|
| Prompt Tuning | <0.1% | 极低 | 较差 | 快速实验 |
|
|||
|
|
|
|||
|
|
#### Prompt Engineering 技巧
|
|||
|
|
|
|||
|
|
| 技巧 | 说明 | 示例 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| 角色设定 | 指定AI身份 | "你是资深Python专家..." |
|
|||
|
|
| 任务分解 | 复杂任务拆分 | "第一步...第二步..." |
|
|||
|
|
| Few-shot | 给出示例 | "示例1:...示例2:..." |
|
|||
|
|
| Chain-of-Thought | 引导推理 | "让我们一步步思考" |
|
|||
|
|
| 输出格式 | 指定格式 | "请用JSON格式输出" |
|
|||
|
|
|
|||
|
|
#### RAG核心流程
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
用户查询 → 查询理解 → 向量检索 → 重排序 → 上下文构建 → LLM生成
|
|||
|
|
↓ ↓ ↓ ↓ ↓
|
|||
|
|
Query改写 Top-K召回 精排模型 Prompt模板 流式输出
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 📚 第14阶段:模型部署
|
|||
|
|
|
|||
|
|
#### 部署方案对比
|
|||
|
|
|
|||
|
|
| 方案 | 适用场景 | 工具 |
|
|||
|
|
|------|----------|------|
|
|||
|
|
| API服务 | 一般应用 | FastAPI、vLLM |
|
|||
|
|
| 本地部署 | 隐私要求 | Ollama、llama.cpp |
|
|||
|
|
| 边缘部署 | 低延迟 | ONNX Runtime、TensorRT |
|
|||
|
|
| Serverless | 弹性需求 | AWS Lambda + SageMaker |
|
|||
|
|
|
|||
|
|
### 📚 第13阶段:大模型训练与优化
|
|||
|
|
|
|||
|
|
#### 分布式训练并行策略
|
|||
|
|
|
|||
|
|
| 策略 | 原理 | 适用场景 |
|
|||
|
|
|------|------|----------|
|
|||
|
|
| 数据并行 (DDP) | 复制模型,切分数据 | 单卡能放下模型 |
|
|||
|
|
| 模型并行 (TP) | 切分模型层内参数 | 单卡放不下模型 |
|
|||
|
|
| 流水线并行 (PP) | 切分模型层间 | 跨节点训练 |
|
|||
|
|
| 混合并行 (FSDP) | ZeRO算法,切分状态 | 大规模训练首选 |
|
|||
|
|
|
|||
|
|
#### 显存优化技术 (Memory Optimization)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
显存占用 = 模型参数 + 梯度 + 优化器状态 + 激活值
|
|||
|
|
↓ ↓ ↓ ↓
|
|||
|
|
优化方案: FP16/BF16 累积更新 ZeRO-1/2/3 重计算(Checkpointing)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---\n\n## 第5.5阶段:知识图谱 (Knowledge Graph)\n\n### 知识图谱构建流程\n\n```\n非结构化文本 (Unstructured Text)\n ↓\n信息抽取 (IE): 实体识别(NER) + 关系抽取(RE)\n ↓\n知识融合 (Knowledge Fusion): 对齐、消歧\n ↓\n知识存储 (Storage): Neo4j / RDF\n ↓\n应用: GraphRAG / 推荐系统 / 语义搜索\n```\n\n### 常见Schema设计\n\n- **实体 (Node)**: 人物, 公司, 地点, 事件\n- **关系 (Edge)**: 就职于, 位于, 导致, 属于\n- **属性 (Property)**: 出生日期, 注册资本\n\n---\n\n## 第30-36阶段:高级专题精选\n\n### 📚 第33阶段:合成数据 (Synthetic Data)\n\n**为什么重要?** 真实高质量数据枯竭,合成数据是未来。\n\n| 方法 | 描述 | 工具 |\n|------|------|------|\n| 自指令 (Self-Instruct) | LLM生成指令微调数据 | Alpaca |\n| 进化学习 (Evol-Instruct) | 逐步增加指令复杂度 | WizardLM |\n| 宪法AI (Constitutional AI) | AI根据规则自我修正 | Anthropic |\n\n### 📚 第34阶段:可解释性AI (XAI)\n\n**核心问题**:模型为什么这么输出?\n\n- **特征归因**: SHAP, LIME (传统ML)\n- **注意力可视化**: BERTViz (Transformer)\n- **机械可解释性**: 寻找"祖母神经元",理解内部电路\n\n---\n
|
|||
|
|
|
|||
|
|
## 第27阶段:AI Agent(重点)⭐
|
|||
|
|
|
|||
|
|
### Agent核心架构
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
┌─────────────────────────────────────┐
|
|||
|
|
│ LLM (大脑) │
|
|||
|
|
├─────────────────────────────────────┤
|
|||
|
|
│ Planning │ Memory │ Tool Use │
|
|||
|
|
│ 规划 │ 记忆 │ 工具 │
|
|||
|
|
├─────────────────────────────────────┤
|
|||
|
|
│ Environment │
|
|||
|
|
│ 环境 │
|
|||
|
|
└─────────────────────────────────────┘
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Agent设计模式
|
|||
|
|
|
|||
|
|
| 模式 | 说明 | 代表项目 |
|
|||
|
|
|------|------|----------|
|
|||
|
|
| ReAct | 推理+行动交替 | LangChain Agent |
|
|||
|
|
| Plan-Execute | 先规划后执行 | BabyAGI |
|
|||
|
|
| Reflection | 自我反思改进 | Reflexion |
|
|||
|
|
| Multi-Agent | 多Agent协作 | AutoGen、CrewAI |
|
|||
|
|
|
|||
|
|
### Agent开发框架
|
|||
|
|
|
|||
|
|
| 框架 | 特点 | 适用场景 |
|
|||
|
|
|------|------|----------|
|
|||
|
|
| LangChain | 功能全面 | 快速原型 |
|
|||
|
|
| LlamaIndex | 数据专注 | RAG应用 |
|
|||
|
|
| AutoGen | 多Agent | 复杂协作 |
|
|||
|
|
| CrewAI | 角色扮演 | 团队模拟 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 第15-20阶段:前沿研究
|
|||
|
|
|
|||
|
|
### 📚 第15阶段:AI安全与伦理
|
|||
|
|
|
|||
|
|
#### 安全威胁分类
|
|||
|
|
|
|||
|
|
| 威胁类型 | 描述 | 防护措施 |
|
|||
|
|
|----------|------|----------|
|
|||
|
|
| 对抗攻击 | 添加微小扰动欺骗模型 | 对抗训练、输入检测 |
|
|||
|
|
| 数据投毒 | 污染训练数据 | 数据清洗、异常检测 |
|
|||
|
|
| 模型窃取 | 复制模型能力 | 水印、模型加密 |
|
|||
|
|
| Prompt注入 | 恶意指令劫持 | 输入过滤、指令隔离 |
|
|||
|
|
| 越狱攻击 | 绕过安全限制 | 红队测试、多层防护 |
|
|||
|
|
|
|||
|
|
#### 对齐技术路线
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
RLHF → Constitutional AI → DPO → 更多研究中...
|
|||
|
|
↓ ↓ ↓
|
|||
|
|
人类标注 自我约束 无需RM训练
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 📚 第17阶段:新兴架构
|
|||
|
|
|
|||
|
|
#### Mamba与状态空间模型(SSM)
|
|||
|
|
|
|||
|
|
**核心优势**:
|
|||
|
|
- 线性复杂度 O(n) vs Transformer的 O(n²)
|
|||
|
|
- 长序列处理能力强
|
|||
|
|
- 推理速度快
|
|||
|
|
|
|||
|
|
**适用场景**:
|
|||
|
|
- 长文本处理
|
|||
|
|
- 时序数据
|
|||
|
|
- 边缘设备部署
|
|||
|
|
|
|||
|
|
#### 架构发展趋势
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
CNN → RNN/LSTM → Transformer → Mamba/SSM → ?
|
|||
|
|
↓
|
|||
|
|
目前主流,但有瓶颈
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 📚 第19阶段:生成式AI
|
|||
|
|
|
|||
|
|
#### 扩散模型核心原理
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
前向过程(加噪):
|
|||
|
|
x_0 → x_1 → x_2 → ... → x_T (纯噪声)
|
|||
|
|
|
|||
|
|
反向过程(去噪):
|
|||
|
|
x_T → x_{T-1} → ... → x_0 (生成图像)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 生成式AI工具链
|
|||
|
|
|
|||
|
|
| 任务 | 模型/工具 | 特点 |
|
|||
|
|
|------|-----------|------|
|
|||
|
|
| 文生图 | Stable Diffusion、DALL-E 3 | 高质量、可控 |
|
|||
|
|
| 图生图 | ControlNet、IP-Adapter | 精确控制 |
|
|||
|
|
| 视频生成 | Sora、Runway | 前沿方向 |
|
|||
|
|
| 3D生成 | NeRF、3D Gaussian | 空间理解 |
|
|||
|
|
| 音频生成 | MusicGen、AudioCraft | 音乐、语音 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 第21-28阶段:应用与系统
|
|||
|
|
|
|||
|
|
### 📚 第22.5阶段:推荐系统
|
|||
|
|
|
|||
|
|
#### 推荐系统架构
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
┌─────────────────────────────────────────┐
|
|||
|
|
│ 召回层 │
|
|||
|
|
│ (协同过滤、向量召回、热门召回...) │
|
|||
|
|
├─────────────────────────────────────────┤
|
|||
|
|
│ 粗排层 │
|
|||
|
|
│ (轻量级模型快速筛选) │
|
|||
|
|
├─────────────────────────────────────────┤
|
|||
|
|
│ 精排层 │
|
|||
|
|
│ (复杂模型精确排序) │
|
|||
|
|
├─────────────────────────────────────────┤
|
|||
|
|
│ 重排层 │
|
|||
|
|
│ (多样性、新鲜度、业务规则) │
|
|||
|
|
└─────────────────────────────────────────┘
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 深度推荐模型演进
|
|||
|
|
|
|||
|
|
| 模型 | 特点 | 年份 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| Wide & Deep | 记忆+泛化 | 2016 |
|
|||
|
|
| DeepFM | FM+DNN | 2017 |
|
|||
|
|
| DIN | 行为序列注意力 | 2018 |
|
|||
|
|
| DIEN | 兴趣演化 | 2019 |
|
|||
|
|
| SIM | 长序列建模 | 2020 |
|
|||
|
|
| LLM4Rec | LLM赋能推荐 | 2023+ |
|
|||
|
|
|
|||
|
|
### 📚 第22.6阶段:搜索与检索
|
|||
|
|
|
|||
|
|
#### 检索技术对比
|
|||
|
|
|
|||
|
|
| 技术 | 优点 | 缺点 | 适用场景 |
|
|||
|
|
|------|------|------|----------|
|
|||
|
|
| BM25 | 无需训练、可解释 | 词汇不匹配 | 精确匹配 |
|
|||
|
|
| 向量检索 | 语义理解 | 需要训练 | 语义匹配 |
|
|||
|
|
| 混合检索 | 结合两者优势 | 复杂度高 | 生产环境 |
|
|||
|
|
|
|||
|
|
#### 向量数据库选型
|
|||
|
|
|
|||
|
|
| 数据库 | 特点 | 推荐场景 |
|
|||
|
|
|--------|------|----------|
|
|||
|
|
| Milvus | 功能全面、可扩展 | 大规模生产 |
|
|||
|
|
| Qdrant | Rust实现、性能好 | 高性能需求 |
|
|||
|
|
| Pinecone | 托管服务、易用 | 快速上手 |
|
|||
|
|
| Chroma | 轻量级、Python友好 | 本地开发 |
|
|||
|
|
| FAISS | Meta出品、经典 | 研究/中小规模 |
|
|||
|
|
|
|||
|
|
### 📚 第28阶段:RAG进阶
|
|||
|
|
|
|||
|
|
#### RAG优化策略
|
|||
|
|
|
|||
|
|
| 优化方向 | 技术 | 效果 |
|
|||
|
|
|----------|------|------|
|
|||
|
|
| 检索质量 | 混合检索、重排序 | 提升召回 |
|
|||
|
|
| 分块策略 | 语义分块、重叠分块 | 保持上下文 |
|
|||
|
|
| 查询改写 | HyDE、Query Expansion | 理解意图 |
|
|||
|
|
| 上下文压缩 | 摘要、筛选 | 减少噪声 |
|
|||
|
|
| 引用验证 | 事实核查、来源追踪 | 提升可信度 |
|
|||
|
|
|
|||
|
|
#### GraphRAG核心思想
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
传统RAG:查询 → 向量检索 → 片段
|
|||
|
|
GraphRAG:查询 → 实体识别 → 图遍历 → 结构化知识
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 第29-37阶段:高级专题
|
|||
|
|
|
|||
|
|
### 📚 第29阶段:多智能体系统
|
|||
|
|
|
|||
|
|
#### 多Agent协作模式
|
|||
|
|
|
|||
|
|
| 模式 | 描述 | 示例 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| 层级式 | 管理者分配任务 | CEO/员工模式 |
|
|||
|
|
| 辩论式 | 多观点讨论 | 正反方辩论 |
|
|||
|
|
| 协作式 | 并行协作 | 团队分工 |
|
|||
|
|
| 竞争式 | 优胜劣汰 | 多方案评选 |
|
|||
|
|
|
|||
|
|
### 📚 第32阶段:边缘AI
|
|||
|
|
|
|||
|
|
#### 模型压缩技术
|
|||
|
|
|
|||
|
|
| 技术 | 压缩比 | 精度损失 | 适用场景 |
|
|||
|
|
|------|--------|----------|----------|
|
|||
|
|
| 量化 (INT8) | 4x | 轻微 | 通用 |
|
|||
|
|
| 量化 (INT4) | 8x | 中等 | 资源受限 |
|
|||
|
|
| 剪枝 | 2-10x | 可控 | 稀疏化 |
|
|||
|
|
| 蒸馏 | 任意 | 取决于学生模型 | 小模型 |
|
|||
|
|
| 低秩分解 | 2-4x | 轻微 | 矩阵压缩 |
|
|||
|
|
|
|||
|
|
### 📚 第37阶段:云原生
|
|||
|
|
|
|||
|
|
#### K8s核心概念
|
|||
|
|
|
|||
|
|
| 概念 | 说明 | AI应用 |
|
|||
|
|
|------|------|--------|
|
|||
|
|
| Pod | 最小部署单元 | 推理容器 |
|
|||
|
|
| Deployment | 副本管理 | 弹性伸缩 |
|
|||
|
|
| Service | 服务发现 | 负载均衡 |
|
|||
|
|
| Ingress | 外部访问 | API网关 |
|
|||
|
|
| ConfigMap | 配置管理 | 模型配置 |
|
|||
|
|
| PV/PVC | 持久化存储 | 模型存储 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 第38-50阶段:工程与职业
|
|||
|
|
|
|||
|
|
### 📚 第41阶段:语音技术
|
|||
|
|
|
|||
|
|
#### 语音技术栈
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
语音输入 → ASR → 文本理解 → LLM → TTS → 语音输出
|
|||
|
|
↓ ↓
|
|||
|
|
Whisper VITS/Bark
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 语音模型对比
|
|||
|
|
|
|||
|
|
| 模型 | 类型 | 特点 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| Whisper | ASR | 多语言、开源 |
|
|||
|
|
| VITS | TTS | 端到端、高质量 |
|
|||
|
|
| Bark | TTS | 表情丰富 |
|
|||
|
|
| F5-TTS | TTS | 最新开源 |
|
|||
|
|
| CosyVoice | TTS | 阿里开源 |
|
|||
|
|
|
|||
|
|
### 📚 第42阶段:行业AI应用
|
|||
|
|
|
|||
|
|
#### 金融AI
|
|||
|
|
|
|||
|
|
| 应用 | 技术 | 挑战 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| 量化交易 | 时序预测、强化学习 | 市场噪声大 |
|
|||
|
|
| 风控 | 异常检测、图网络 | 样本不均衡 |
|
|||
|
|
| 智能客服 | NLP、对话系统 | 专业知识 |
|
|||
|
|
| 文档处理 | OCR、信息抽取 | 格式多样 |
|
|||
|
|
|
|||
|
|
#### 医疗AI
|
|||
|
|
|
|||
|
|
| 应用 | 技术 | 法规要求 |
|
|||
|
|
|------|------|----------|
|
|||
|
|
| 辅助诊断 | CV、多模态 | FDA/NMPA认证 |
|
|||
|
|
| 药物发现 | GNN、分子生成 | 临床验证 |
|
|||
|
|
| 医学影像 | 分割、检测 | 隐私合规 |
|
|||
|
|
| 健康管理 | 时序分析 | 数据安全 |
|
|||
|
|
|
|||
|
|
### 📚 第44阶段:时序预测
|
|||
|
|
|
|||
|
|
#### 时序模型选择
|
|||
|
|
|
|||
|
|
| 场景 | 推荐模型 | 理由 |
|
|||
|
|
|------|----------|------|
|
|||
|
|
| 单变量短期 | ARIMA、Prophet | 简单有效 |
|
|||
|
|
| 单变量长期 | N-BEATS、N-HiTS | 长期趋势 |
|
|||
|
|
| 多变量 | TFT、PatchTST | 特征交互 |
|
|||
|
|
| 概率预测 | DeepAR | 不确定性 |
|
|||
|
|
| 超长序列 | Informer、Autoformer | 高效注意力 |
|
|||
|
|
|
|||
|
|
### 📚 第45阶段:实验管理
|
|||
|
|
|
|||
|
|
#### MLOps工具链
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
数据管理: DVC、LakeFS
|
|||
|
|
实验追踪: MLflow、W&B
|
|||
|
|
模型管理: MLflow Registry
|
|||
|
|
部署服务: Seldon、BentoML
|
|||
|
|
监控告警: Prometheus、Grafana
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 实验最佳实践
|
|||
|
|
|
|||
|
|
| 实践 | 说明 | 工具 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| 版本控制 | 代码+数据+模型 | Git + DVC |
|
|||
|
|
| 实验记录 | 参数、指标、产物 | W&B、MLflow |
|
|||
|
|
| 可复现性 | 随机种子、环境锁定 | Docker、Conda |
|
|||
|
|
| 自动化 | CI/CD流水线 | GitHub Actions |
|
|||
|
|
|
|||
|
|
### 📚 第47阶段:LLM推理能力
|
|||
|
|
|
|||
|
|
#### 推理增强技术
|
|||
|
|
|
|||
|
|
| 技术 | 原理 | 效果 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| Chain-of-Thought | 逐步推理 | 数学、逻辑提升 |
|
|||
|
|
| Self-Consistency | 多路径投票 | 稳定性提升 |
|
|||
|
|
| Tree-of-Thoughts | 搜索最优路径 | 复杂问题 |
|
|||
|
|
| ReAct | 推理+行动 | 工具使用 |
|
|||
|
|
| Reflection | 自我反思 | 错误纠正 |
|
|||
|
|
|
|||
|
|
#### 幻觉缓解策略
|
|||
|
|
|
|||
|
|
| 策略 | 描述 | 实现方式 |
|
|||
|
|
|------|------|----------|
|
|||
|
|
| RAG | 外部知识增强 | 检索+生成 |
|
|||
|
|
| 引用验证 | 检查生成内容来源 | 后处理 |
|
|||
|
|
| 置信度校准 | 模型不确定性 | 概率输出 |
|
|||
|
|
| 事实核查 | 独立验证 | 外部API |
|
|||
|
|
|
|||
|
|
### 📚 第50阶段:AI职业发展
|
|||
|
|
|
|||
|
|
#### 职业路径
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
初级算法工程师 → 高级算法工程师 → 技术专家/架构师
|
|||
|
|
↓ ↓
|
|||
|
|
研究员路线 管理路线
|
|||
|
|
↓ ↓
|
|||
|
|
科学家/Fellow 技术总监/VP
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 技能矩阵
|
|||
|
|
|
|||
|
|
| 级别 | 技术深度 | 工程能力 | 业务理解 | 影响力 |
|
|||
|
|
|------|----------|----------|----------|--------|
|
|||
|
|
| 初级 | 掌握基础算法 | 能写生产代码 | 了解业务场景 | 个人贡献 |
|
|||
|
|
| 高级 | 深入理解原理 | 系统设计 | 能提出方案 | 项目组 |
|
|||
|
|
| 专家 | 前沿跟进 | 架构设计 | 推动业务创新 | 部门/公司 |
|
|||
|
|
| 科学家 | 创造新方法 | 工具/平台建设 | 定义方向 | 行业 |
|
|||
|
|
|
|||
|
|
#### 面试准备
|
|||
|
|
|
|||
|
|
| 类型 | 考察点 | 准备建议 |
|
|||
|
|
|------|--------|----------|
|
|||
|
|
| 算法题 | 数据结构、算法 | LeetCode 200+ |
|
|||
|
|
| 机器学习 | 原理、细节 | 八股文+深入理解 |
|
|||
|
|
| 系统设计 | 架构、trade-off | 推荐/搜索系统设计 |
|
|||
|
|
| 项目经验 | 深度、创新点 | STAR方法准备 |
|
|||
|
|
| 行为面试 | 沟通、协作 | 真实案例 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 学习优化建议
|
|||
|
|
|
|||
|
|
### 🚀 效率提升策略
|
|||
|
|
|
|||
|
|
1. **费曼学习法**:学完一个概念就尝试讲给别人听
|
|||
|
|
2. **项目驱动**:每个阶段完成至少一个实战项目
|
|||
|
|
3. **刻意练习**:针对薄弱环节重复训练
|
|||
|
|
4. **间隔复习**:使用Anki等工具定期回顾
|
|||
|
|
|
|||
|
|
### ⚠️ 常见学习误区
|
|||
|
|
|
|||
|
|
| 误区 | 正确做法 |
|
|||
|
|
|------|----------|
|
|||
|
|
| 只看不练 | 每个概念都要写代码验证 |
|
|||
|
|
| 追求全面 | 先深后广,打牢基础 |
|
|||
|
|
| 盲目追新 | 经典论文比最新论文更重要 |
|
|||
|
|
| 忽视数学 | 数学决定理解深度的上限 |
|
|||
|
|
| 单打独斗 | 加入社区,交流讨论 |
|
|||
|
|
|
|||
|
|
### 📅 时间规划建议
|
|||
|
|
|
|||
|
|
| 阶段 | 建议时长 | 优先级 |
|
|||
|
|
|------|----------|--------|
|
|||
|
|
| 第0阶段 | 1-2个月 | 必须 |
|
|||
|
|
| 第2-4阶段 | 2-3个月 | 必须 |
|
|||
|
|
| 第9-11阶段 | 2-3个月 | 核心 |
|
|||
|
|
| 第27-28阶段 | 1-2个月 | 热门 |
|
|||
|
|
| 第42阶段(行业) | 按需 | 就业导向 |
|
|||
|
|
| 第50阶段(职业) | 持续 | 长期规划 |
|
|||
|
|
| 其他阶段 | 按需学习 | 可选 |
|
|||
|
|
|
|||
|
|
### 📖 推荐学习资源汇总
|
|||
|
|
|
|||
|
|
| 领域 | 资源 | 类型 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| 数学 | 3Blue1Brown | 视频 |
|
|||
|
|
| ML基础 | 吴恩达Coursera | 课程 |
|
|||
|
|
| 深度学习 | 李沐d2l | 书/视频 |
|
|||
|
|
| PyTorch | 官方教程 | 文档 |
|
|||
|
|
| Transformer | Annotated Transformer | 代码讲解 |
|
|||
|
|
| LLM | Andrej Karpathy | 视频 |
|
|||
|
|
| RAG | LangChain文档 | 文档 |
|
|||
|
|
| Agent | AutoGen教程 | 实战 |
|
|||
|
|
| MLOps | Made With ML | 课程 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 第51-63阶段:后端工程与基础设施
|
|||
|
|
|
|||
|
|
### 📚 第51阶段:后端工程深入
|
|||
|
|
|
|||
|
|
#### API设计规范
|
|||
|
|
|
|||
|
|
| 类型 | 特点 | 适用场景 |
|
|||
|
|
|------|------|----------|
|
|||
|
|
| RESTful | 资源导向、无状态 | 通用Web API |
|
|||
|
|
| GraphQL | 灵活查询、单端点 | 复杂数据关系 |
|
|||
|
|
| gRPC | 高性能、强类型 | 微服务通信 |
|
|||
|
|
| WebSocket | 双向实时 | 实时应用 |
|
|||
|
|
|
|||
|
|
#### 认证授权方案
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
┌─────────────────────────────────────────────────┐
|
|||
|
|
│ 认证方式选择 │
|
|||
|
|
├─────────────────────────────────────────────────┤
|
|||
|
|
│ Session → 传统Web应用、SSR │
|
|||
|
|
│ JWT → 无状态API、微服务 │
|
|||
|
|
│ OAuth2 → 第三方登录、开放平台 │
|
|||
|
|
│ API Key → 简单集成、内部服务 │
|
|||
|
|
│ mTLS → 服务间安全通信 │
|
|||
|
|
└─────────────────────────────────────────────────┘
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 📚 第52阶段:数据库技术
|
|||
|
|
|
|||
|
|
#### 数据库选型指南
|
|||
|
|
|
|||
|
|
| 类型 | 代表 | 适用场景 | 不适用 |
|
|||
|
|
|------|------|----------|--------|
|
|||
|
|
| 关系型 | PostgreSQL、MySQL | 事务、复杂查询 | 超大规模 |
|
|||
|
|
| 文档型 | MongoDB | 灵活schema | 复杂事务 |
|
|||
|
|
| 键值 | Redis | 缓存、会话 | 复杂查询 |
|
|||
|
|
| 列式 | ClickHouse | 分析、时序 | 高频更新 |
|
|||
|
|
| 图 | Neo4j | 关系网络 | 大批量写入 |
|
|||
|
|
| 向量 | Milvus | 相似性搜索 | 精确查询 |
|
|||
|
|
|
|||
|
|
#### SQL优化技巧
|
|||
|
|
|
|||
|
|
```sql
|
|||
|
|
-- 1. 使用EXPLAIN分析
|
|||
|
|
EXPLAIN ANALYZE SELECT ...
|
|||
|
|
|
|||
|
|
-- 2. 索引优化
|
|||
|
|
CREATE INDEX idx_user_email ON users(email);
|
|||
|
|
|
|||
|
|
-- 3. 避免SELECT *
|
|||
|
|
SELECT id, name FROM users WHERE ...
|
|||
|
|
|
|||
|
|
-- 4. 分页优化
|
|||
|
|
SELECT * FROM users WHERE id > last_id LIMIT 20;
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 📚 第53阶段:缓存与消息队列
|
|||
|
|
|
|||
|
|
#### 缓存策略对比
|
|||
|
|
|
|||
|
|
| 策略 | 描述 | 适用场景 |
|
|||
|
|
|------|------|----------|
|
|||
|
|
| Cache-Aside | 应用管理缓存 | 通用场景 |
|
|||
|
|
| Read-Through | 缓存代理读取 | 读多写少 |
|
|||
|
|
| Write-Through | 同步写缓存 | 数据一致性 |
|
|||
|
|
| Write-Behind | 异步写缓存 | 高写入性能 |
|
|||
|
|
|
|||
|
|
#### 消息队列对比
|
|||
|
|
|
|||
|
|
| 队列 | 特点 | 推荐场景 |
|
|||
|
|
|------|------|----------|
|
|||
|
|
| Kafka | 高吞吐、持久化 | 日志、事件流 |
|
|||
|
|
| RabbitMQ | 功能丰富、可靠 | 任务队列 |
|
|||
|
|
| Redis Streams | 轻量、简单 | 简单消息 |
|
|||
|
|
| Pulsar | 多租户、云原生 | 大规模消息 |
|
|||
|
|
|
|||
|
|
### 📚 第54阶段:分布式系统
|
|||
|
|
|
|||
|
|
#### CAP定理
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
Consistency (一致性)
|
|||
|
|
/\
|
|||
|
|
/ \
|
|||
|
|
/ \
|
|||
|
|
/ 选2 \
|
|||
|
|
/________\
|
|||
|
|
Availability Partition Tolerance
|
|||
|
|
(可用性) (分区容错)
|
|||
|
|
|
|||
|
|
CA: 传统RDBMS(单机)
|
|||
|
|
CP: ZooKeeper、etcd
|
|||
|
|
AP: Cassandra、DynamoDB
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 分布式事务模式
|
|||
|
|
|
|||
|
|
| 模式 | 原理 | 优缺点 |
|
|||
|
|
|------|------|--------|
|
|||
|
|
| 2PC | 两阶段提交 | 强一致,但阻塞 |
|
|||
|
|
| TCC | Try-Confirm-Cancel | 灵活,但侵入性强 |
|
|||
|
|
| Saga | 事件补偿 | 最终一致,易理解 |
|
|||
|
|
| 本地消息表 | 可靠消息 | 简单实用 |
|
|||
|
|
|
|||
|
|
### 📚 第55-56阶段:网络与安全
|
|||
|
|
|
|||
|
|
#### 常见安全威胁与防护
|
|||
|
|
|
|||
|
|
| 威胁 | 描述 | 防护措施 |
|
|||
|
|
|------|------|----------|
|
|||
|
|
| SQL注入 | 恶意SQL执行 | 参数化查询、ORM |
|
|||
|
|
| XSS | 脚本注入 | 输出编码、CSP |
|
|||
|
|
| CSRF | 跨站请求伪造 | Token验证 |
|
|||
|
|
| DDoS | 分布式攻击 | CDN、限流 |
|
|||
|
|
| 中间人攻击 | 数据窃取 | HTTPS、mTLS |
|
|||
|
|
|
|||
|
|
### 📚 第57阶段:可观测性
|
|||
|
|
|
|||
|
|
#### 可观测性三支柱
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
可观测性
|
|||
|
|
│
|
|||
|
|
┌───────┼───────┐
|
|||
|
|
↓ ↓ ↓
|
|||
|
|
Logs Metrics Traces
|
|||
|
|
日志 指标 链路
|
|||
|
|
│ │ │
|
|||
|
|
ELK Prometheus Jaeger
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### SRE核心指标
|
|||
|
|
|
|||
|
|
| 指标 | 含义 | 目标示例 |
|
|||
|
|
|------|------|----------|
|
|||
|
|
| SLA | 服务等级协议 | 99.9%可用 |
|
|||
|
|
| SLO | 服务等级目标 | p99 < 100ms |
|
|||
|
|
| SLI | 服务等级指标 | 实际延迟值 |
|
|||
|
|
| MTTR | 平均恢复时间 | < 30分钟 |
|
|||
|
|
| MTBF | 平均故障间隔 | > 30天 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 第58-63阶段:前沿趋势
|
|||
|
|
|
|||
|
|
### 📚 第58阶段:AGI与通用智能
|
|||
|
|
|
|||
|
|
#### AGI研究现状
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
当前AI发展阶段:
|
|||
|
|
|
|||
|
|
弱AI(ANI) ─→ 强AI(AGI) ─→ 超级AI(ASI)
|
|||
|
|
↑ ↑ ↑
|
|||
|
|
现在 未来10-50年? 理论阶段
|
|||
|
|
|
|||
|
|
当前突破点:
|
|||
|
|
- 多模态理解
|
|||
|
|
- 推理能力
|
|||
|
|
- 工具使用
|
|||
|
|
- 持续学习
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 📚 第59阶段:AI操作系统
|
|||
|
|
|
|||
|
|
#### AI应用框架对比
|
|||
|
|
|
|||
|
|
| 框架 | 定位 | 特点 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| Dify | AI应用平台 | 可视化编排、开源 |
|
|||
|
|
| FastGPT | 知识库问答 | 简单易用 |
|
|||
|
|
| Flowise | LangChain可视化 | 拖拽式 |
|
|||
|
|
| Coze | Agent平台 | 字节出品 |
|
|||
|
|
| AutoGen | 多Agent | 微软开源 |
|
|||
|
|
|
|||
|
|
### 📚 第61阶段:AI测试与质量
|
|||
|
|
|
|||
|
|
#### ML测试金字塔
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
┌──────────┐
|
|||
|
|
│ E2E测试 │ ← 集成验证
|
|||
|
|
├──────────┤
|
|||
|
|
│ 模型测试 │ ← 性能、公平性
|
|||
|
|
├──────────┤
|
|||
|
|
│ 数据测试 │ ← 质量、分布
|
|||
|
|
├──────────┤
|
|||
|
|
│ 单元测试 │ ← 代码逻辑
|
|||
|
|
└──────────┘
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 📚 第63阶段:AI产品商业化
|
|||
|
|
|
|||
|
|
#### AI产品指标体系
|
|||
|
|
|
|||
|
|
| 类别 | 指标 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| 使用 | DAU/MAU | 活跃用户 |
|
|||
|
|
| 留存 | D1/D7/D30 | 用户粘性 |
|
|||
|
|
| 效果 | 任务完成率 | AI能力 |
|
|||
|
|
| 成本 | 每请求成本 | 单位经济 |
|
|||
|
|
| 满意度 | NPS | 用户推荐 |
|
|||
|
|
|
|||
|
|
#### 成本优化策略
|
|||
|
|
|
|||
|
|
| 策略 | 方法 | 效果 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| 模型选择 | 按场景选模型 | 成本降50%+ |
|
|||
|
|
| 缓存 | 相似问题缓存 | 减少调用 |
|
|||
|
|
| 批处理 | 合并请求 | 降低延迟成本 |
|
|||
|
|
| 量化 | 使用量化模型 | 推理加速 |
|
|||
|
|
| 蒸馏 | 大模型→小模型 | 长期降本 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 📊 学习优先级矩阵
|
|||
|
|
|
|||
|
|
### 按职业目标
|
|||
|
|
|
|||
|
|
| 目标 | 必修阶段 | 重点阶段 | 选修阶段 |
|
|||
|
|
|------|----------|----------|----------|
|
|||
|
|
| AI研究员 | 0-11 | 16-20, 39 | 21, 43 |
|
|||
|
|
| 算法工程师 | 0-11 | 14, 27-28, 42 | 22.5-22.6 |
|
|||
|
|
| AI产品经理 | 2, 11 | 63 | 50 |
|
|||
|
|
| 全栈工程师 | 0-4, 11 | 51-54, 37 | 55-57 |
|
|||
|
|
| MLOps工程师 | 4, 14 | 45, 57, 37 | 53-54 |
|
|||
|
|
|
|||
|
|
### 按技术热度(2026年)
|
|||
|
|
|
|||
|
|
| 热度 | 技术 | 阶段 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| 🔥🔥🔥 | LLM/Agent | 11, 27 |
|
|||
|
|
| 🔥🔥🔥 | RAG | 28 |
|
|||
|
|
| 🔥🔥 | 多模态 | 12 |
|
|||
|
|
| 🔥🔥 | 视频生成 | 19 |
|
|||
|
|
| 🔥 | 具身智能 | 26 |
|
|||
|
|
| 🔥 | AI安全 | 15 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🛠️ 融合实战项目库 (Track A + Track B)
|
|||
|
|
|
|||
|
|
> 💡 **设计目标**:强制将算法模型封装为工程服务,解决实际问题。建议每个阶段结束时选择一个完成。
|
|||
|
|
|
|||
|
|
### 🟢 Level 1: 智能数据分析助手 (入门融合)
|
|||
|
|
**适合阶段**:双线第10周 (ML基础 + API开发)
|
|||
|
|
|
|||
|
|
* **核心功能**:上传CSV文件,自动进行数据清洗、生成统计图表,并提供AI分析报告。
|
|||
|
|
* **技术栈 (Line A)**:Pandas (数据处理), Matplotlib (绘图), OpenAI API (生成分析文本)
|
|||
|
|
* **技术栈 (Line B)**:Streamlit (快速前端), FastAPI (后端接口)
|
|||
|
|
* **挑战点**:
|
|||
|
|
* 如何将DataFrame的统计结果转化为Prompt发给LLM?
|
|||
|
|
* 如何处理大文件的上传和异步处理?
|
|||
|
|
|
|||
|
|
### 🟡 Level 2: 垂直领域 RAG 知识库 (进阶融合)
|
|||
|
|
**适合阶段**:双线第20周 (Transformer + 数据库)
|
|||
|
|
|
|||
|
|
* **核心功能**:针对特定领域(如法律/医疗/技术文档)的问答系统,支持源文档引用。
|
|||
|
|
* **技术栈 (Line A)**:Embedding模型 (BGE/M3), 向量检索 (Faiss), Rerank模型
|
|||
|
|
* **技术栈 (Line B)**:Golang/Python后端, PostgreSQL (pgvector), Redis (缓存), React (前端)
|
|||
|
|
* **挑战点**:
|
|||
|
|
* 文档切片(Chunking)策略的选择与优化。
|
|||
|
|
* 混合检索(关键词 + 向量)的工程实现。
|
|||
|
|
* 推理延迟优化(缓存热点问题)。
|
|||
|
|
|
|||
|
|
### 🟠 Level 3: 自主任务 Agent 平台 (核心融合)
|
|||
|
|
**适合阶段**:双线第26周 (LLM + 分布式)
|
|||
|
|
|
|||
|
|
* **核心功能**:一个可以让AI自主联网、读写文件、执行Python代码来完成复杂任务(如"调研某公司并写报告")的平台。
|
|||
|
|
* **技术栈 (Line A)**:LangChain/AutoGen, Tool Use, ReAct 规划模式
|
|||
|
|
* **技术栈 (Line B)**:Docker (代码沙箱), Celery/RabbitMQ (异步任务队列), WebSocket (实时日志流)
|
|||
|
|
* **挑战点**:
|
|||
|
|
* **安全沙箱**:如何防止AI生成的代码破坏宿主机?
|
|||
|
|
* **状态管理**:长任务中断后如何通过数据库恢复上下文?
|
|||
|
|
* **并发控制**:多Agent同时运行时的资源调度。
|
|||
|
|
|
|||
|
|
### 🔴 Level 4: 分布式多模态搜索引擎 (高阶融合)
|
|||
|
|
**适合阶段**:双线第32周+ (全栈实战)
|
|||
|
|
|
|||
|
|
* **核心功能**:支持"以图搜图"、"以文搜视频",并能对搜索结果进行AI总结。
|
|||
|
|
* **技术栈 (Line A)**:CLIP/ViT (多模态表征), 视频理解模型
|
|||
|
|
* **技术栈 (Line B)**:ElasticSearch/Milvus (分布式存储), gRPC (微服务通信), K8s (集群部署)
|
|||
|
|
* **挑战点**:
|
|||
|
|
* 亿级向量数据的索引构建与实时更新。
|
|||
|
|
* 高并发下的跨模态检索性能(QPS优化)。
|
|||
|
|
* 微服务架构下的链路追踪与熔断降级。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## ✅ 阶段自测清单 (Checklist)
|
|||
|
|
|
|||
|
|
> 在进入下一阶段前,请确认你已达成以下标准:
|
|||
|
|
|
|||
|
|
### 阶段 1: 基础夯实
|
|||
|
|
- [ ] 能用 Python 类实现一个简单的机器学习算法(如线性回归),不通过 sklearn。
|
|||
|
|
- [ ] 理解梯度下降的数学推导,并能手推反向传播的一个简单例子。
|
|||
|
|
- [ ] 编写的 Python 代码符合 PEP8 规范,且包含 Type Hint 和 Docstring。
|
|||
|
|
|
|||
|
|
### 阶段 2: 工程入门
|
|||
|
|
- [ ] 能用 Golang/Python 写一个 RESTful API,包含 CRUD 和 错误处理。
|
|||
|
|
- [ ] 理解 Dockerfile,能将自己的应用容器化并正常运行。
|
|||
|
|
- [ ] 熟悉 Git Flow,习惯使用分支开发和 Pull Request。
|
|||
|
|
|
|||
|
|
### 阶段 3: 模型进阶
|
|||
|
|
- [ ] 能用 PyTorch 搭建 ResNet/Transformer 模型,并在公开数据集上训练收敛。
|
|||
|
|
- [ ] 掌握模型保存、加载、断点续训 (Checkpoint) 的实现。
|
|||
|
|
- [ ] 理解 Attention 机制的 Query, Key, Value 矩阵运算过程。
|
|||
|
|
|
|||
|
|
### 阶段 4: 系统融合
|
|||
|
|
- [ ] 能将训练好的模型封装为 API 服务,QPS > 10。
|
|||
|
|
- [ ] 系统具备基本的日志记录 (Logging) 和 监控指标 (Metrics)。
|
|||
|
|
- [ ] 理解 RAG 流程中的 Embed -> Store -> Retrieve -> Generate 全链路。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
*本文档持续更新中,建议收藏并定期查看*
|
|||
|
|
|
|||
|
|
> 💡 **下一步行动建议**:
|
|||
|
|
> 1. 评估自己当前水平,选择合适的入门点
|
|||
|
|
> 2. 根据职业目标选择学习路径
|
|||
|
|
> 3. 每完成一个阶段,参考「融合实战项目库」做一个项目巩固
|
|||
|
|
> 4. 加入技术社区,持续交流学习
|