跳到主要内容

01-outline — 《深度学习高手笔记 卷1:基础算法》拆解大纲

原书 6 章 3 篇;无书签,锚 = text/NN-pX-Y.txt:行号 + 搜短语。 我们的主线:一条「网络怎么越做越强」的进化链——加深、加宽、接捷径、请注意力、 换 Transformer、算参数账、把设计交给搜索;下半场同一条链在语言上重演(RNN→注意力→ Transformer→预训练);最后补贯穿全书的第三层:让大网络训得动的优化层(Dropout+归一化)。 与 nndl-2e 的差异:邱书按知识体系讲原理,本书按算法论文史讲「每个算法怎么分析前人的问题」 ——我们的拆解立住这条「进化链+作者实验点评」的独有讲法。

章节切分(13 章)

01 从 LeNet-5 到 VGG:卷积网络的基本功(原书 1.1+1.2)

  • 进来时以为:分类网络就是一堆卷积堆起来。→ 出去时知道:卷积+池化+全连接三板斧各有分工; ReLU 为什么 replacing tanh(饱和→梯度消失,附死神经元);AlexNet 五件套; VGG 的「小核堆三层」账(7×7 vs 3×3×3:感受野同、参数 50C²→30C²)、块结构、退化问题的第一次露头。
  • 主走查:一张 32×32 手写数字走完 LeNet-5 五层,逐层数神经元和参数(书里全给了数)。

02 Inception 一族:加宽这条路(原书 1.3)

  • 进来时以为:提精度只能加深。→ 出去时知道:另一流派是提「拟合多样性」;Maxout/NIN 是两块垫脚石 (1×1 卷积三用途);Inception 并行多核+1×1 降维救命;辅助损失与数据处理不等式 DPI; v2 拆 5×5、v3 非对称核、v4/Inception-ResNet 残差缩放 0.1~0.3。
  • 主走查:一个 Inception 模块:同一特征图进 4 条并行支路,逐支算输出通道,拼回。

03 残差网络:深度不再是问题(原书 1.4)

  • 进来时以为:网络越深越准。→ 出去时知道:退化不是过拟合(训练损失也回升);残差块 x+F(x); 「残差」名字的统计学来历;直接映射两假设的充分性(梯度恒带 1 项)与必要性(反证 λ、表 1.1 全部变异失败/变差);预激活 ResNet v2(表 1.2);模型集成视角(删节点稳)。
  • 主走查:VGG-100 第 98 层=VGG-16 第 14 层的思想实验,推到 identity mapping;再走一遍梯度式里那个「1+」。

04 捷径的另外三种形态:SENet、DenseNet、DPN(原书 1.5+1.6+1.7)

  • 进来时以为:捷径就是 ResNet 那种加法。→ 出去时知道:SENet 给通道学权重(压缩-激发,两层全连接, GFLOPS +0.01);DenseNet 把加法换成拼接(成长率 k、压缩层、显存代价);DPN 用高阶 RNN 证明 残差=特征复用低冗余、DenseNet=生成新特征高冗余,双路合并。
  • 主走查:一张 W×H×C 特征图过 SE 块:池化成 C 个数→两层全连接→C 个权重→逐通道乘回去。

05 Transformer 进入视觉:iGPT、Swin、CSWin、MLP-Mixer(原书 1.8-1.11)

  • 进来时以为:图像是 CNN 的地盘。→ 出去时知道:图像能切序列喂 Transformer(iGPT,150528 长度的 灾难→降采样+k-means);线性探测怎么评特征;Swin 窗口注意力把复杂度降到线性(M²hw)+移位窗口 跨窗通信+掩码;CSWin 十字窗两层看全图+LePE;MLP-Mixer 拆开还是深度可分离卷积(LeCun:挂羊头卖狗肉)。
  • 主走查:224×224 图走 Swin-T 阶段 1:块合并 4×4×3=48→96,56×56→64 个 7×7 窗,窗内自注意力。

06 轻量级 CNN:给卷积算参数账(原书 2.1-2.6)

  • 进来时以为:压缩=砍通道。→ 出去时知道:SqueezeNet 三策略及其水分(1/50 主要靠删全连接); 深度可分离卷积的参数账(3×3:约 1/9);MobileNet v2 的 ReLU 信息损耗→线性瓶颈+反转残差(t=6); Xception=极端 Inception;分组卷积折中+通道洗牌;ShuffleNet v2 的 G1-G4 四准则(FLOPS 只占一半时间); CondenseNet 训练剪枝+group lasso+索引层。
  • 主走查:一个 3×3 卷积 DK×DK×M×N 拆成深度卷积+点卷积,逐项对参数和计算量(书里的 239 936→29 184 实验)。

07 用强化学习搜索网络:NAS 系列(原书 3.1-3.5)

  • 进来时以为:网络靠人设计。→ 出去时知道:超参数不能反向传播→RL 采样;PolyNet 先把网络写成多项式; NAS 用 RNN 控制器+REINFORCE(基线减方差),500 GPU×28 天;NASNet 学单元再迁移; PNASNet 三刀砍搜索空间(10³⁴→10¹²)+SMBO+代理函数;AmoebaNet 年龄进化(流放最老防近亲繁殖), 收敛快于 RL。
  • 主走查:控制器生成一个 base2 RNN 单元:逐节点预测操作+激活,照书里的 a0/a1/a2/ct 走一遍。

08 把约束搜进去:MnasNet 到 RegNet(原书 3.6-3.10)

  • 进来时以为:NAS 只管准确率。→ 出去时知道:MnasNet 把真实时延写进奖励(软约束 β≈−0.07;FLOPS 接近但 113ms vs 183ms);MobileNet v3 全局+局部两步走+人工收尾(h-swish);EfficientNet 复合缩放 (α·β²·γ²≈2);v2 训练速度入指标+渐进学习(大图配强正则);RegNet 不搜模型搜设计空间 (EDF/KS 检验,点估计有偏)。
  • 主走查:MnasNet 奖励函数:ACC×(LAT/TAR)^w,硬约束 α=0,β=−1 vs 软约束 α=β=−0.07 的曲线差异。

09 序列与注意力:RNN 的困境和注意力机制(原书 4.1+4.2)

  • 进来时以为:处理句子就该从左到右。→ 出去时知道:RNN 把 ht−1 喂回来所以能记,但长期依赖 (cat/cats 例子)和梯度消失/爆炸堵死长句;LSTM 三门+单元状态传送带,GRU 两门简化; 10000 个变体实验的结论(遗忘门>输入门>输出门);编码器-解码器把整句压一个向量的信息瓶颈→ 注意力按时间片选特征,六步计算(带 15/60/15/35 的具体得分)。
  • 主走查:注意力六步:解码器状态 [10,5,10] 对四个编码器状态点乘打分→softmax→加权→求和=[5,0,1]。

10 Transformer:抛弃循环之后(原书 4.3+4.4)

  • 进来时以为:Transformer 是全新物种。→ 出去时知道:它=自注意力+FFNN;Q/K/V 取自信息检索 (点乘=相似度);多头=8 个自注意力集成;打乱词序结果不变→词袋模型→位置嵌入是权宜之计 (书里的批评);Transformer-XL 两件武器:片段递归(缓存上段隐层,提速 300~1800 倍,O(NL))、 相对位置编码(四项分解 a/b/c/d)。
  • 主走查:「The animal did not cross the street because it was too tired」的 it:词向量 512→QKV 64, score=q·k/√dk→softmax→加权和。

11 预训练语言模型:从 ELMo 到 GPT-3(原书 5.1+5.2+5.3)

  • 进来时以为:语言模型就是补全。→ 出去时知道:MLM 实为自监督(有 x,y 对);ELMo 用双向 LSTM 给一词多义各学各的向量(任务相关加权);GPT-1 预训练+微调(12 任务 9 超 SOTA 但仍是领域专家); GPT-2 押注「有监督任务都是语言模型的子集」(零样本 7/8 最优);GPT-3 情境学习=元学习的内循环 (少样本>一次>零样本;1750 亿参数、1200 万美元、作者的「炫富」论)。
  • 主走查:一条训练样本「0~t−1 词进,t 词当标签」走 RNN 语言模型:独热→隐层→softmax→交叉熵。

12 BERT 与它的后代(原书 5.4+5.5+5.6+5.7+5.8)

  • 进来时以为:BERT 是新架构。→ 出去时知道:BERT=Transformer 编码器+MLM(80/10/10)+NSP+三嵌入; RoBERTa 证明「调好训练」就能涨(动态掩码/去 NSP/大批次);ALBERT 参数分解+跨层共享+SOP (退化问题再现);XLNet 用排列语言模型+双流注意力消掉掩码的不一致(New York 例子); ERNIE-T 把知识图谱实体融进编码器(TransE+DAE),ERNIE-B 短语/实体级掩码+对话 LM, ERNIE 2.0 持续多任务学 8 种任务防遗忘;作者的解毒剂:别神化 XLNet/GPT-3。
  • 主走查:「my dog is hairy」的 80/10/10 掩码走一遍,推 1.5% 的负面影响账。

13 模型优化层:Dropout 与归一化家族(原书 6.1-6.7,第三篇)

  • 进来时以为:Dropout/BN 是随手加的技巧。→ 出去时知道:Dropout 治的是共适应;数学上等价于带 p(1−p) 正则的网络(→0.5 最优、测试乘 p);CNN 要按通道/块丢,RNN 掩码要跨时间片固定; MC Dropout 让 0.99 的 softmax 置信度变得可信。归一化六兄弟是一张「沿哪些轴统计」的地图: BN 跨样本同通道(ICS 之争→MIT 平滑损失平面论)、LN 同样本跨通道(RNN 可用)、IN 单样本单通道 (风格迁移)、GN 分组、WN 在权值上解耦范数与方向、SN 让模型自己学权重。作者的对照实验: batch 8 时 BN 反而减速;GN 优于 LN/IN 令他困惑。
  • 主走查:一个 batch=8 的批次过 BN:按通道算均值方差→标准化→γ β 还原;测试时换滑动平均。

写作口径

  • 每章七段结构;主走查落正文;判断块带「如果错,会错在」。
  • 出处:「节名」第 N 段(text/NN-pX-Y.txt:N,搜「原文短语」);行号见 reading-notes.md。
  • ② 类锚:../ai-book-reference/docs/nndl-2e/nndl-general/ 的现成拆解(BN/Transformer/注意力等), 用 shelf=ai-book-reference/nndl-2e#<文件名> + 事实=。网络部分允许少量 ③④ 补充(书止于 2022)。
  • 总量目标:与原书相当或更多(原书 34.7 万字符)。