这是 数学重学路线图 阶段五的子页面
微积分直觉:变化与累积的数学
微积分听起来吓人,但核心思想其实很简单
整个微积分就回答两个问题:
东西变化有多快? → 导数(微分)
变化累积起来有多少? → 积分
你每天都在用微积分思维,只是没意识到
看速度表 → 你在读导数
算一趟旅程总里程 → 你在做积分
一、极限:微积分的地基
直觉:无限趋近,但不一定到达
想象你站在墙前面,每次向前走剩余距离的一半
1/2 → 3/4 → 7/8 → 15/16 → …
你永远到不了墙,但你无限趋近于墙
这就是极限的本质
经典例子:无穷级数
1/2 + 1/4 + 1/8 + 1/16 + ... = 1
每一项都是有限的,但无穷多项加起来等于一个确定的值
极限就是这个”趋近的目标值”
严格定义(ε-δ 语言)
lim(x→a) f(x) = L
意思是:x 越靠近 a,f(x) 就越靠近 L,想多近就多近
不需要 x 真的等于 a
为什么极限重要?
导数的定义需要极限(瞬时变化率 = 极小间隔的平均变化率的极限)
积分的定义需要极限(无穷多个极小矩形面积之和的极限)
没有极限,微积分就没有根基
Python 感受极限
1 | # 感受 1/2 + 1/4 + 1/8 + ... → 1 |
二、导数(微分):变化有多快
直觉比喻
你开车看仪表盘:
位置 → 你在哪(原始函数)
速度 → 位置变化多快(一阶导数)
加速度 → 速度变化多快(二阶导数)
导数 = 某一瞬间的变化率
几何含义
导数 = 曲线在某点的切线斜率
斜率正 → 函数在上升
斜率负 → 函数在下降
斜率零 → 函数到了”山顶”或”谷底”(极值点)
导数的定义
f'(x) = lim(h→0) [f(x+h) - f(x)] / h
就是:取一个极小间隔 h,算平均变化率,然后让 h 趋近于 0
常见导数公式(背下来)
| 函数 f(x) | 导数 f’(x) | 记忆技巧 |
| x^n | n·x^(n-1) | 指数搬下来,指数减一 |
| e^x | e^x | e^x 的导数还是自己! |
| ln(x) | 1/x | 对数和倒数是好朋友 |
| sin(x) | cos(x) | sin→cos→-sin→-cos 循环 |
| cos(x) | -sin(x) | 注意负号 |
链式法则(最重要的求导法则)
复合函数求导:[f(g(x))]' = f'(g(x)) · g'(x)
比喻:层层剥洋葱,每一层求导后乘起来
例子:(sin(x²))' = cos(x²) · 2x
外层 sin 的导数是 cos,内层 x² 的导数是 2x
这是反向传播(backpropagation)的数学基础!
Python 数值求导 & 画切线
1 | import numpy as np |
三、积分:累积了多少
直觉比喻
如果导数是”速度”,那积分就是”总路程”
你知道每一刻的速度 → 积分算出你跑了多远
积分 = 导数的逆运算
几何含义
定积分 = 曲线下方的面积
(曲线在 x 轴下方时,面积算负数)
不定积分 vs 定积分
不定积分:求原函数(反导数),结果带 +C
∫x² dx = x³/3 + C
定积分:求确定的数值(面积)
∫[a,b] f(x)dx = F(b) - F(a)
牛顿-莱布尼茨公式把两者连起来
Python 数值积分
1 | from scipy import integrate |
四、微积分基本定理
一句话版本
微分和积分是互逆操作
先求导再积分 → 回到原函数
先积分再求导 → 也回到原函数
公式
如果 F'(x) = f(x),那么 ∫[a,b] f(x)dx = F(b) - F(a)
为什么重要
把”求面积”这个看起来要无穷求和的问题,变成了”求原函数然后代入”
计算效率从 O(∞) 变成 O(1)
五、开发者视角的微积分
梯度下降(最核心的应用)
机器学习的本质:找到让损失函数最小的参数
怎么找?沿导数(梯度)的反方向走
参数 = 参数 - 学习率 × 导数
详见 → 26-优化与梯度下降
数值积分在后端的应用
QPS(每秒请求数)对时间积分 = 总请求数
带宽速率对时间积分 = 总流量
错误率对时间积分 = 总错误数
Python 梯度下降最简演示
1 | import numpy as np |
六、大数据中的微积分
损失函数求导
训练模型 = 最小化损失函数
损失函数对参数求导 → 知道参数该往哪个方向调
链式法则 → 反向传播算法
变化率作为特征
时间序列数据的导数 = 趋势的变化速度
二阶导数 = 趋势的拐点
例:用户活跃度的变化率 → 预测流失
积分作为聚合
流量曲线下面积 = 总流量
概率密度函数积分 = 概率
七、安全中的微积分
流量变化率突变检测
正常流量:变化率平稳
DDoS 攻击:流量导数突然飙升
检测方法:监控流量的一阶导数,超过阈值就报警
Python 流量异常检测
1 | import numpy as np |
梯度攻击(对抗样本)
攻击者利用模型的梯度信息,微调输入使模型判断错误
FGSM 攻击:x_adv = x + ε · sign(∇_x Loss)
沿损失函数对输入的梯度方向加扰动
八、scipy 求导与积分速查
1 | from scipy import integrate, misc |
九、练习题
题目1:直觉理解
如果 f(x) 表示你银行账户余额随时间的变化,那么 f'(x) 的物理含义是什么?f'(x) > 0 和 f'(x) < 0 分别代表什么?
答案
f'(x) = 收入/支出速率(每单位时间余额变化量)
f'(x) > 0:在赚钱(余额增加)
f'(x) < 0:在花钱(余额减少)
f'(x) = 0:收支平衡
题目2:手算导数
求 f(x) = 3x⁴ - 2x² + 5x - 7 的导数
答案
f'(x) = 12x³ - 4x + 5
逐项求导:(3x⁴)' = 12x³,(-2x²)' = -4x,(5x)' = 5,(-7)' = 0
题目3:链式法则
求 f(x) = e^(x²+1) 的导数
答案
外层 e^u 的导数是 e^u,内层 u = x²+1 的导数是 2x
f'(x) = e^(x²+1) · 2x = 2x·e^(x²+1)
题目4:Python 实践
用 Python 数值验证:∫[0,π] sin(x) dx = 2
答案
1 | from scipy import integrate |
题目5:安全应用
设计一个简单的 QPS 突增检测器:给定每秒请求数的列表,找出 QPS 变化率(导数)超过阈值的时间点
答案
1 | import numpy as np |
十、总结与关联
微积分两大支柱:
导数 → 变化率 → 梯度下降、异常检测
积分 → 累积量 → 面积、总量统计
核心关系:微分和积分互逆
关联笔记
→ 26-优化与梯度下降 深入梯度下降
→ 数学重学/24-概率分布 概率密度函数的积分 = 概率
→ 27-信息论基础 交叉熵损失背后的数学
| 上一章 | 目录 | 下一章 |
|---|---|---|
| 24-线性代数实战 | 数学重学路线图 | 26-优化与梯度下降 |