程序员的数学基础课 · 深度学习指南(细化版)

作者:黄申| 真实结构:51 讲正文 + 加餐/福利(共 57 个文件) 定位:「程序员用得上的数学」——二进制、迭代、递归、排列组合、概率统计、线性代数,全部用「编程场景」讲,不吓人。


一、这门课到底讲什么

很多人怕数学,这门课把数学「翻译」成程序员能懂的语言:讲二进制时讲「计算机的源头」,讲余数时讲「取余就是哈希函数」,讲动态规划时讲「编辑距离」。数学不是门槛,是理解算法和 AI 的钥匙。


二、真实讲次大纲(按模块)

模块 1:基础数论与迭代(第 1–8 讲)

讲次核心知识点课程原案例
01二进制:计算机的源头反码、补码
02余数:取余操作本身就是哈希函数哈希思想
03迭代法:不用自带函数算平方根牛顿迭代
04数学归纳法:提升代码效率归纳证明
05–06递归:泛化归纳、分而治之归并排序 → MapReduce
07–08排列、组合田忌赛马、世界杯赛程

模块 2:动态规划与图(第 9–18 讲)

讲次核心知识点课程原案例
09–10动态规划:编辑距离、状态转移方程查询推荐
11–12树的 DFS查字典
13–14树的 BFS、双向 BFS六度理论
15从树到图看地图
16–17时间/空间复杂度:六个法则复杂度分析
18总结:数据结构/语句/算法里的数学思想——

模块 3:概率与统计(第 19–32 讲)

讲次核心知识点课程原案例
19–21随机变量、概率分布、期望、贝叶斯概率基础
22–23朴素贝叶斯、文本分类新闻分类
24–25语言模型、马尔科夫模型PageRank、语音识别
26–28信息熵、决策树、信息增益、卡方武侠人物测试
29归一化、标准化特征综合
30–31显著性检验AB 测试结果是否巧合
32欠拟合、过拟合概率统计答疑

模块 4:线性代数(第 33–45 讲)

讲次核心知识点课程原案例
33线性代数总览向量、矩阵
34–35向量空间模型、文本检索自然语言处理
36文本聚类过滤冗余新闻
37–38矩阵:PageRank、协同过滤推荐矩阵运算
39–41线性回归:高斯消元、最小二乘法直线拟合
42–43PCA 主成分分析:协方差矩阵、特征值降维
44奇异值分解(SVD)潜在语义
45矩阵乘法的几何意义——

模块 5:综合应用(第 46–51 讲)

讲次核心知识点课程原案例
46缓存系统哈希表 + 队列
47–48搜索引擎倒排索引 + 向量空间
49–50推荐系统协同过滤 + SVD
51个性化用户画像综合应用

三、必须吃透的核心知识点

  1. 二进制与补码(第 1 讲):为什么用补码存负数?因为「减法变加法」,硬件只需一套加法电路。这是理解整数溢出、位运算的根基。

  2. 递归 = 数学归纳法(第 4–5 讲):数学归纳法(证明 n=1 成立 + 假设 n 成立推 n+1)和递归(终止条件 + 递推关系)是同一件事的两种表达。

  3. 贝叶斯公式(第 21–22 讲):P(A|B) = P(B|A)·P(A) / P(B)。朴素贝叶斯用它做分类——「垃圾邮件过滤」的核心就是算「这封邮件是垃圾邮件的概率」。

  4. 信息熵与决策树(第 26–27 讲):熵 = 不确定性。决策树每次选「让熵下降最多」的特征来分裂——这就是「先问哪个问题最能缩小范围」。

  5. 特征值与 PCA(第 42–43 讲):PCA 降维的本质是「找到数据方差最大的方向」——特征向量就是这些方向。这是理解推荐系统、图像压缩、大模型 Embedding 的数学基础。

  6. 矩阵与推荐(第 37–38 讲):协同过滤 = 矩阵分解。用户×物品的矩阵,用 SVD 分解出「用户偏好」和「物品属性」的隐向量。


四、引发思考

  1. 为什么「取余操作本身就是个哈希函数」?(把大范围映射到小范围)
  2. 牛顿迭代为什么能「快速逼近平方根」?它的收敛速度有多快?
  3. 贝叶斯和「频率学派」的核心区别?(先验概率)
  4. 「信息熵」为什么能衡量不确定性?「猜武侠人物」为什么熵越低越容易猜中?
  5. PCA 为什么取「最大特征值对应的特征向量」?几何直觉是什么?
  6. 学完本课,再看阶段九的「机器学习」「推荐系统」,你是不是看懂了背后的公式?

五、学完自测

  • 能解释补码为什么用「取反加一」
  • 能说清「递归」和「数学归纳法」的对应关系
  • 能写出贝叶斯公式并举例
  • 能解释「熵」和「决策树」的关系
  • 能说清「矩阵分解」在推荐系统里的作用

配套:这门课是阶段九《机器学习》《推荐系统》的数学铺垫,数学吃透了,算法课事半功倍。