01-outline:d2l 全书拆解大纲(20 章)
每行一节:「进来时以为…… → 出去时知道……」。自查:任意两行的「出去时知道」不得是同一件事。 章对着原书结构走:原书 168 节 → 20 章。读者设定:会写 Python,没学过机器学习。
01 从写死的规则到会学习的程序(原书 Preface + Introduction)
- §1 进来时以为「程序就是人把规则一条条写死」→ 出去时知道「有一类问题规则写不出来(唤醒词每秒 44000 个采样),只能让程序自己从数据里学」
- §2 进来时以为「训练是个神秘过程」→ 出去时知道训练就是四步循环:随机初始化 → 取数据 → 拧参数让表现更好 → 重复,以及参数/模型/模型族/学习算法的确切含义
- §3 进来时以为「机器学习是一种技术」→ 出去时知道它由四个组件构成(数据/模型/目标函数/优化算法),缺一个就转不起来
- §4 进来时以为「预测就是预测,还分什么」→ 出去时知道任务的全景:回归/分类/标注/搜索/推荐/序列/无监督/自监督/强化,各自回答什么问题
- §5 进来时以为「深度学习是新发明」→ 出去时知道它的根(高斯最小二乘、Hebb、感知机),1995-2005 为什么凉,2012 前后为什么回来(数据+GPU)
- §6 进来时以为「端到端是个流行词」→ 出去时知道它具体取代了谁:手工特征工程(Canny/SIFT),以及代价(解释性、需要数据)
- §7 进来时以为「AI 的风险是机器觉醒」→ 出去时知道作者的立场:更远的是就业与偏见,以及为什么「没有自我改进的工具」
02 深度学习只要这几样数学(原书 Preliminaries 5-11 节)
- §1 进来时以为「数据进模型就行」→ 出去时知道一切先变张量,以及张量比 NumPy 多的两个杀手特性(自动微分、GPU)
- §2 进来时以为「矩阵乘法是学校里的老古董」→ 出去时知道点积、矩阵-向量积、矩阵乘法各自算什么,以及神经网络每层就是一次矩阵-向量积
- §3 进来时以为「范数是个符号」→ 出去时知道它是「大小」的度量,ℓ1/ℓ2/Frobenius 分别量什么,损失里的「距离」全是范数
- §4 进来时以为「导数跟我没关系」→ 出去时知道导数=变化率,梯度=所有偏导拼成的向量,链式法则是全书所有训练的总发动机
- §5 进来时以为「算梯度得手推」→ 出去时知道自动微分在建计算图,反向走图就是反向传播,以及为什么控制流也能微分
- §6 进来时以为「概率就是抛硬币」→ 出去时知道概率 vs 统计量、贝叶斯定理,HIV 两次检测从 13% 到 83% 的完整走查
- §7 进来时以为「不确定 性就是不准」→ 出去时知道 aleatoric/epistemic 之分,以及期望、方差、中心极限定理的 1/√n 意味着什么
03 第一个完整的训练循环(原书 Linear Networks for Regression 12-16 节)
- §1 进来时以为「线性回归是中学知识」→ 出去时知道它的确切假设:条件均值是特征的加权和,外加高斯噪声
- §2 进来时以为「损失随便定一个」→ 出去时知道平方误差的来历(最大似然+高斯噪声),以及二次形式的双刃剑
- §3 进来时以为「优化就是解方程」→ 出去时知道解析解 w*=(XᵀX)⁻¹Xᵀy 存在但不可依赖,以及为什么深度学习不能指望它
- §4 进来时以为「梯度下降就是全数据算一遍」→ 出去时知道全量慢、单样本抖,minibatch SGD 是计算与统计的折中,学习率和批大小是超参数
- §5 进来时以为「代码只是实现细节」→ 出去时知道训练循环的每一行在干什么(初始化→取批→算损失→反传→更新),以及向量化为什么快一个量级
- §6 进来时以为「线性回归和神经网络是两家」→ 出去时知道线性回归就是单层全连接网络,以及 McCulloch-Pitts 神经元的生物学出处与「飞机与鸟」的提醒