机器学习手算课
手算课系列 · 课程目录

机器学习,亲手算一遍

每门课都是一个可以直接打开的网页:用小到能手算的例子,把输入怎样一步步变成输出(推理)、误差怎样一步步改写参数(训练)完整摊开。页面里的数字都是真实算出来的,随时可以拿计算器验算。

课程

基础课程

学模型之前要会的数学:把工具备齐,后面的课就不会卡在“这个式子是哪来的”。

  • 已上线

    导数与梯度和概率

    导数就是斜率。用 f(x) = x² 和一个两变量函数的等高线,把偏导、梯度、链式法则和数值微分算一遍,再补一点概率。

    • 斜率
    • 偏导与梯度
    • 链式法则
    • 数值微分
    • 概率

    6 章 · 带手算挑战和小测验

  • 已上线

    概率与损失函数

    从概率分布、熵讲到交叉熵和最大似然,讲清楚分类为什么用交叉熵、而不用神经网络课里的平方损失:同一个模型只换损失函数,学会要走的步数就差出一大截。

    • 概率分布
    • 熵
    • 交叉熵
    • 最大似然
    • 赛跑实验

    总览 + 5 章 · 带手算挑战、赛跑实验和小测验

模型课程

一个小到能手算的模型:把训练和推理从头到尾亲手算一遍。

  • 先修课 已上线

    矩阵运算入门

    只学读懂 Transformer 用得上的 5 种矩阵运算。每个数字都能点开看算式,最后亲手算一遍迷你自注意力。

    • 逐格运算
    • 点积
    • 矩阵乘法
    • 转置与拼接
    • 迷你注意力

    7 章(含 1 章选读)· 每章有手算题和小测验

  • 已上线

    神经网络 手算课

    一个只有 9 个参数的小神经网络:看清楚前向传播、损失、反向传播、更新参数这一圈怎样转起来,又怎样一圈圈迭代到学会。

    • 前向传播
    • 反向传播
    • 梯度下降
    • 学习率
    • 实验室

    总览 · 前向传播 · 反向传播 · 迭代 · 总结

  • 已上线

    Transformer 手算课

    一个只有 216 个参数的迷你 GPT:从输入到输出,把前向计算、反向传播、参数更新和逐词生成全部亲手算一遍。

    • 前向计算
    • 反向传播
    • 训练实验室
    • 抽样
    • KV cache

    总览 · 前向计算 · 训练 · 推理 · 总结

  • 规划中

    CNN 手算课

    卷积核怎样在一张小图上滑动、怎样提取特征,误差又怎样一路传回卷积核。

    • 卷积
    • 池化
    • 反向传播
    敬请期待
  • 规划中

    RNN 手算课

    隐状态怎样把前文一步步带到后文,误差又怎样沿着时间往回传。

    • 隐状态
    • 按时间展开
    • 梯度消失
    敬请期待