第 4 章讲师手册
用途:把第 4 章 4 节课讲顺,控制节奏,知道哪里停、哪里追问。
原则:讲结构、原理和选型,不做代码实现;用结构图和对比表驱动。
1. 授课对象与前置
对象:
- 已学完 SD 架构/Attention;
- 知道文本条件怎么进;
- 准备面试,需要把 CLIP/ControlNet/IP-Adapter/LoRA 讲清楚。
前置:
- 第 3 章;
- 会写 cross-attention;
- 知道 VAE/UNet 的大致结构。
不需要:
- 训练过 ControlNet/LoRA;
- 搭过 demo;
- 做过 CLIP 零样本实验。
2. 四节课总览
| 课次 |
主题 |
核心产出 |
对应材料 |
| 第 1 课 |
CLIP |
双塔 + loss + 优缺点 |
4.1 |
| 第 2 课 |
ControlNet |
结构图 + zero conv |
4.2 |
| 第 3 课 |
IP-Adapter |
解耦 cross-attn |
4.3 |
| 第 4 课 |
LoRA 系列 |
四种方法对比 + 选型 |
4.4 |
3. 第 1 课:CLIP
3.1 时间安排(90 分钟)
| 时间 |
环节 |
内容 |
| 0–5 |
开场 |
CLIP 在 AIGC 的四个位置 |
| 5–25 |
架构 |
双塔、投影、L2、温度 |
| 25–45 |
训练/损失 |
大 batch、对称 InfoNCE |
| 45–60 |
零样本 |
prompt template、相似度 |
| 60–75 |
优缺点 |
77 token、组合性、偏差 |
| 75–85 |
面试 |
90 秒 A1/A15 |
| 85–90 |
小结 |
作业 |
3.2 板书布局
左侧:图像塔 / 文本塔
中间:相似度矩阵 + 对角线
右侧:对称 InfoNCE
底部:优缺点(77 token/组合性/CLIPScore)
3.3 关键提问
- CLIP 为什么不是生成模型?
- 为什么 batch 要大?
- 为什么 loss 是对称的?
- 77 token 会丢什么?
- SD3 为什么加 T5?
3.4 常见卡点
| 卡点 |
处理 |
| 只写单向 loss |
画两个方向 |
| 忘记 L2 |
强调 cosine |
| 认为 CLIP 懂空间 |
用“红方块在蓝球上”例子 |
| 把 CLIPScore 当质量 |
强调可被刷 |
4. 第 2 课:ControlNet
4.1 时间安排(90 分钟)
| 时间 |
环节 |
内容 |
| 0–5 |
动机 |
文本难控空间 |
| 5–25 |
结构 |
frozen base + trainable copy + zero conv |
| 25–45 |
训练 |
三元组、只训分支、CFG dropout |
| 45–60 |
推理 |
scale、多 ControlNet、guess mode |
| 60–75 |
白板 |
画结构 + 解释零卷积 |
| 75–85 |
面试 |
90 秒 A13 |
| 85–90 |
小结 |
作业 |
4.2 板书布局
左侧:frozen base(锁)
中间:trainable copy(可训)+ condition
右侧:zero conv → 加回
底部:control scale / 多条件
4.3 关键提问
- 为什么需要 ControlNet?
- 为什么复制编码器?
- 零卷积为什么重要?
- 训练整个 SD 吗?
- 多 ControlNet 怎么组合?
4.4 常见卡点
| 卡点 |
处理 |
| 说训练整个 SD |
强调 base 冻结 |
| 零卷积当普通卷积 |
强调初始为 0 |
| 忽略预处理 |
列 Canny/Depth/Pose |
| scale 越大越好 |
讲僵硬/伪影 |
5. 第 3 课:IP-Adapter
5.1 时间安排(90 分钟)
| 时间 |
环节 |
内容 |
| 0–5 |
动机 |
image prompt |
| 5–25 |
结构 |
CLIP image encoder + projection |
| 25–45 |
解耦 cross-attn |
文本/图像两套 K/V |
| 45–60 |
训练/推理 |
只训少量参数、scale |
| 60–75 |
对比 |
ControlNet vs IP-Adapter |
| 75–85 |
面试 |
90 秒 A14 |
| 85–90 |
小结 |
作业 |
5.2 板书布局
左侧:参考图 → CLIP → projection
中间:Q 图像;K/V 文本 + K/V 图像
右侧:输出相加 + λ
底部:ControlNet 管形状,IP-Adapter 管长相
5.3 关键提问
- 为什么需要 image prompt?
- 为什么解耦?
- 为什么只训 22M?
- scale 太大会怎样?
- 和 ControlNet 怎么选?
5.4 常见卡点
| 卡点 |
处理 |
| 说拼到 latent |
强调 cross-attn |
| 和 ControlNet 混 |
画“形状/长相” |
| 忽略 image encoder |
提 CLIP ViT-H/14 |
| scale 过大 |
讲复制/僵硬 |
6. 第 4 课:LoRA 系列
6.1 时间安排(90 分钟)
| 时间 |
环节 |
内容 |
| 0–5 |
动机 |
个性化需求 |
| 5–25 |
LoRA |
公式、rank、目标模块 |
| 25–45 |
DreamBooth |
少样本、先验保持 |
| 45–60 |
TI/Hypernetwork |
token embedding、生成权重 |
| 60–75 |
对比/选型 |
容量/文件/风险 |
| 75–85 |
面试 |
90 秒 A12 |
| 85–90 |
小结 |
作业 |
6.2 板书布局
左侧:LoRA W + α/r BA
中间:DreamBooth 主体图 + 先验图
右侧:TI token / Hypernetwork
底部:四种方法对比表
6.3 关键提问
- LoRA 为什么参数少?
- DreamBooth 为什么需要先验?
- TI 为什么容量小?
- Hypernetwork 和 LoRA 的区别?
- 什么时候用哪种?
6.4 常见卡点
| 卡点 |
处理 |
| DreamBooth=LoRA |
讲“配方 vs 方法” |
| LoRA 改原权重 |
讲增量/可合并 |
| TI 改 UNet |
强调只学 embedding |
| 文件小=效果好 |
讲容量限制 |
7. 教学节奏控制
基础弱
- 先画结构,再上公式;
- CLIP 只讲双塔/loss/局限;
- ControlNet 只讲冻结+副本+零卷积;
- IP-Adapter 只讲解耦;
- LoRA 系列用对比表。
基础好
- 加问 CLIP 的组合性;
- 加问 ControlNet 的多条件冲突;
- 加问 IP-Adapter Plus/FaceID;
- 加问 LoRA rank/alpha 调参。
时间不够
优先级:
- CLIP loss/局限;
- ControlNet 结构;
- IP-Adapter 解耦;
- LoRA vs DreamBooth;
- Hypernetwork 只点名。
8. 课堂禁忌
- ❌ 不要现场训练 ControlNet/LoRA;
- ❌ 不要搭 demo;
- ❌ 不要堆工具名;
- ❌ 不要只讲“用了什么”,不讲边界;
- ❌ 不要把 ControlNet 和 IP-Adapter 混为一谈。
9. 课前检查清单
- [ ] CLIP 双塔/损失已准备;
- [ ] ControlNet 结构图已画;
- [ ] IP-Adapter 解耦图已画;
- [ ] LoRA 公式/对比表已准备;
- [ ] 90 秒答案已练;
- [ ] 模拟面试评分表已打印。
10. 相关材料