导数的定义:把「瞬时变化率」用极限严格说清楚
从平均变化率取极限得到导数。亲手用定义推 x²、1/x、√x、sinx 的导数。讲透单侧导数、可导与连续的关系、有限差分误差。
- 就从割线斜率取极限这个角度理解导数定义,直接用 lim[ f(x+h)−f(x) ]/h 按定义求导就行
- 掌握导数的四个意思:几何上是切线斜率,物理上是瞬时速度,代数上是线性近似,优化上是梯度。
- 就做俩事:用左、右导数判断分段点能不能导,还有证俩结论——可导一定连续,连续不一定可导
- 理解前向、中心差分的截断误差阶和舍入误差,这是数值求导和反向传播的基础。
「瞬时速度」曾是个悖论——直到用极限把它定义出来
你直觉上知道汽车某一瞬间有速度,可一旦较真就撞墙:速度等于位移除以时间,「某一瞬间」对应的时间长度是0、位移也是0,0/0没有意义。这是17世纪以前人们说不清「瞬时」的根源。牛顿和莱布尼茨的突破,是不再直接定义瞬间,而是先定义一段小区间上的平均变化率,再让区间长度趋于0取极限——上一章的极限工具恰好把这个极限严格化。导数不是「无穷小时间里的平均」,而是平均变化率这列数的极限。这一节亲手把这个极限算出来、看清它的四张面孔,并厘清它和连续之间谁强谁弱。
1.1 平均变化率:先在一段区间上说话
给定函数 f,从 x 到 x+h(h≠0)这一段,函数值改变了 f(x+h)−f(x),自变量改变了 h,二者之比 [f(x+h)−f(x)]/h 叫 f 在区间 [x,x+h] 上的平均变化率。几何上它是曲线两点 (x,f(x))、(x+h,f(x+h)) 连线(割线)的斜率;物理上若 f 是位移关于时间的函数,它就是这段时间的平均速度。h 越小,这段平均越能代表 x 附近的「即时」情况。
手算一个具体例子:自由落体位移 s(t)=t²(取简化单位),在 t=2 到 t=2+h 的平均速度是 [(2+h)²−2²]/h=(4h+h²)/h=4+h。当 h=0.1 平均速度 4.1,h=0.01 为 4.01,h=0.001 为 4.001,它们朝着 4 收敛,但只要 h≠0 就不是精确的 4;唯有取极限 h→0 才得到 t=2 的瞬时速度 4。注意:我们先约掉了 h(因为 h≠0,约分合法),再令 h→0,这与上一章约去公共因子求 0/0 极限是同一手法。
1.2 导数定义:让平均变化率取极限
lim h→0 [f(x+h)−f(x)]/h 这个极限是有限实数的话,就叫 f 在 x 可导。这个极限就是 f 在 x 的导数,记作 f′(x),也可以写成 df/dx、dy/dx,这是莱布尼茨记号。x 跑遍所有可导点,f′(x) 本身是个函数,叫导函数,简称导数。等价写法还有 lim Δx→0 Δy/Δx,或者令 t=x+h 写成 lim t→x [f(t)−f(x)]/(t−x),三个写法完全等价,做题时哪个方便用哪个。
可导性是逐点判定的:同一个函数,可能在一些点可导,另一些点不可导。平时说「f 可导」,一般指它在某个区间里每一点都可导。求导函数的操作,就是对每个 x 都重复一遍求极限的过程,把结果记成 f′(x)。所以求导其实是个算子——它接收一个函数,返回另一个函数,不是只算出一个孤零零的数。
定义里三个必须盯住的要点
导数是极限,上一章极限存在、左右极限相等的要求原样适用:极限不存在就不可导,不能用 f(x) 的值硬凑。 差商的分子分母必须对应同一段增量:分子是 f(x+h)−f(x)、分母是 h,顺序和锚点 x 都不能错。 导数 f′(x) 是关于 x 的新函数,不是固定数;指定点 x=a 得到的 f′(a) 才是具体数值,比如切线斜率。
别误解导数是 dy 除以 dx 两个无穷小相除的商,虽然记号像分数,dy/dx 整体是极限符号。微分部分才会给 dy、dx 独立意义,到时候这个分数写法能在链式法则里像分数一样约分,那是后面的事。
1.3 用定义求导:四个必须会手算的原型
下面四个例子覆盖了展开约分、通分、有理化、三角恒等式四种典型化简,全部直接从定义出发,不用任何求导公式。
二次函数 f(x)=x²:[ (x+h)²−x² ]/h=(2xh+h²)/h=2x+h,令 h→0 得 f′(x)=2x。于是 f′(2)=4,与自由落体例子吻合。
倒数 f(x)=1/x(x≠0):[1/(x+h)−1/x]/h = [ (x−(x+h))/(x(x+h)) ]/h = [ −h/(x(x+h)) ]/h = −1/[x(x+h)],令 h→0 得 f′(x)=−1/x²。关键是通分后分子出现 −h,正好与分母 h 约掉。
平方根 f(x)=√x(x>0),直接代入是 0/0,用分子有理化:[√(x+h)−√x]/h,给分子分母同乘共轭式 √(x+h)+√x,分子变为 (x+h−x)=h,于是差商=1/[√(x+h)+√x]→1/(2√x)。这和上一章处理 ∞−∞ 型有理化用的是同一个技巧。
正弦 f(x)=sinx,用和差化积:sin(x+h)−sinx=2cos(x+h/2)sin(h/2),差商=cos(x+h/2)·[sin(h/2)/(h/2)],当 h→0 时 cos(x+h/2)→cosx、方括号内是第一个重要极限趋于 1,故 (sinx)′=cosx。你看,重要极限 sinu/u→1 正是三角函数求导的基石。
求导是线性运算,从定义就能看出来。如果f、g都可导,那(f+g)′=f′+g′,(cf)′=cf′。和的差商是[f(x+h)+g(x+h)−f(x)−g(x)]/h,刚好是两个差商加起来,取极限后就对应相加;常数倍同理,能把常数提出来。这两条是下一节整套求导法则的起点。注意:乘积和商不满足这种简单分配,(fg)′≠f′g′。因为两个增量同时变化会产生交叉项,它们得用专门的乘积法则和商法则,下一节会严格推导。
关于导数定义,下列说法正确的是?
1.4 导数的四张面孔:同一个极限,四种解读
导数定义只有一个,不同场景有不同解读,能在四张面孔间自由切换,才算真理解。
f′(a) 是曲线 y=f(x) 在点 (a,f(a)) 处切线的斜率,切线是割线在两点趋于重合时的极限位置。切线方程 y−f(a)=f′(a)(x−a),知道一点和斜率就能写出。
已知 f(3)=5,且 h 取 0.1、0.01、0.001 时差商 [f(3+h)-f(3)]/h 分别为 2.05、2.005、2.0005,则 f′(3) 最可能是多少?切线方程是什么?函数在一点不可导就四类情况,给你列全了,后面挨个验证:不连续(连续是可导的必要条件,间断点直接出局);连续但有尖点或折角(左右导不等,如 |x|);连续光滑但切线竖直(差商趋于无穷,如 x1/3 在 0);无限振荡(差商在该点附近不收敛)。 拿一个点,按「先看是否连续、再比左右导、最后看差商是否趋于有限值」的顺序排查,别凭图像看着光不光滑想当然,就能准确归类。
1.5 单侧导数:分段点上的可导性判定
左导数 f′₋(a)=lim h→0⁻ [f(a+h)−f(a)]/h、右导数 f′₊(a)=lim h→0⁺ [f(a+h)−f(a)]/h,这俩是和单侧极限对应的定义。f 在 a 可导,得左、右导数都存在,还得相等才行。几何上,左导是从左边逼近时割线斜率的极限,右导是从右边逼近时的,俩不等的话,曲线在该点就有折角,没有唯一切线。
手算绝对值 f(x)=|x| 在 0 点:右导 lim h→0⁺ |h|/h=lim h/h=1;左导 lim h→0⁻ |h|/h=lim (−h)/h=−1。左导 −1、右导 +1 不相等,故 |x| 在 0 不可导,图像在原点是一个尖点,左侧斜率 −1、右侧 +1,没有唯一切线。这是「连续但不可导」最经典的例子,下一节还会反复用。
1.6 可导与连续:谁强谁弱,严格证明给你看
定理:若 f 在 a 可导,则 f 在 a 连续(可导⟹连续)。证明用恒等变形:f(a+h)−f(a) = [ (f(a+h)−f(a))/h ]·h。当 h→0,方括号趋于 f′(a)(有限数),后面的 h 趋于 0,有限数乘 0 仍趋于 0,故 f(a+h)→f(a),连续得证。这个「差=差商×增量」的分解,反向传播里链式相乘的结构和它同源。
反过来不成立:连续不保证可导。三类典型反例:尖点,|x| 在 0 连续但左右导不等;竖直切线,f(x)=x1/3 在 0 连续,但差商趋于无穷、导数不存在(切线竖直、斜率无穷);处处连续处处不可导的魏尔斯特拉斯函数,由无穷层锯齿叠加,连续到极致却没有一点可导。可导比连续更强、更稀有;判断可导绝不能只看图像连不连续。
导函数 f′ 还能再求导,得到二阶导数 f″(记号 d²y/dx²),它刻画「变化率的变化率」:位移的一阶导是速度、二阶导是加速度;几何上二阶导决定曲线的凹凸与弯曲方向,是极值判据与牛顿优化法的关键。继续下去有三阶乃至 n 阶导数,泰勒公式正是用这一串各阶导数在一点重建整个函数,先建立这个印象,后面专门展开。
把连续当可导:图像连着不代表有唯一斜率,必须验证左右导相等;用 f(a) 代替极限:导数是 lim 差商,不是 f(a)/a 也不是 f′(a) 的猜测值;差商增量不对应:分子用 f(x+h)−f(x) 时分母必须是同一个 h,锚点必须是 x。
计算机算不出真正的导数,只能用有限h的差商近似,这就是有限差分。前向差分 [f(x+h)−f(x)]/h 的截断误差是 O(h),少了一阶项;中心差分 [f(x+h)−f(x−h)]/(2h) 靠对称性消掉一阶项,截断误差降到 O(h²)。但h不能无限小,不然浮点舍入误差 ~ε_mach/h 会暴涨,两者权衡得最优步长:前向约 √ε_mach≈1e-8,中心约 ε_mach1/3。深度学习训练百万参数时,没法逐个扰动——前向差分每求一维导数要一次完整前向,复杂度炸了,所以用反向传播/自动微分:它套本节的链式法则,一次反向遍历就能算出全部偏导,解析精度,没差分步长的烦恼。看懂「导数=最佳线性近似的系数」,就懂梯度为啥是局部线性模型。
能用定义求出解析导数时永远优先解析解,它零误差且可继续代数运算、符号推导。有限差分只在拿不到解析形式(黑箱仿真、离散实验数据、无公式模型)时才用,且必须在截断误差与舍入误差之间谨慎取平衡,不是 h 越小越好。
写出差商 [f(x+h)−f(x)]/h;识别 0/0 类型后选化简方法:多项式展开合并、分式通分、根式有理化(乘共轭)、三角用和差化积配合 sinu/u→1;约掉 h 后令 h→0;分段点必须分别算左导、右导,相等才可导,且先确认连续;要切线就代点斜式 y−f(a)=f′(a)(x−a);数值验证用中心差分,步长取 1e-5~1e-6,警惕过小步长的舍入。
本节小结
导数是平均变化率在增量趋于0时的极限 f′(x)=lim h→0[f(x+h)−f(x)]/h,它是切线斜率、瞬时变化率、最佳线性近似系数、最陡变化方向。按定义求导靠展开、通分、有理化、和差化积把0/0约出h,得到 (x²)′=2x、(1/x)′=−1/x²、(√x)′=1/(2√x)、(sinx)′=cosx。可导当且仅当左、右导数存在且相等;可导必连续(差=差商×增量),连续不一定可导(尖点、竖直切线、处处锯齿)。有限差分用有限h逼近导数,前向误差O(h)、中心O(h²),要和舍入误差权衡;自动微分精确套用定义与链式法则,是反向传播的数学内核。下一节把求导从「每次取极限」升级为一套可直接调用的求导法则。
资深工程师加餐
底层原理 · 大厂视角 · 工程经验,点卡片展开
它把「无限接近」这种模糊说法严格化:对任意你给定的接近程度 ε(函数值与目标的差距),我都能找到一个 δ(自变量的范围),只要自变量落在这个范围内就能保证输出达到你要的精度。这套「以有限控无限」的语言是整个微积分的地基,也是绝大多数证明题的标准书写套路。