如何理解导数:乘积法则、幂法则与链式法则

求导的那些规则对我来说从未真正讲通。加法法则、乘积法则、商法则——它们之间有什么关系?我们到底在试图 ?

以下是我对导数的理解:

  • 我们有一个待分析的系统,即函数$f$
  • 导数$f'$(也称为$\frac{df}{dx}$)是 瞬时行为
  • 原来$f$是一个更大的系统($h = f + g$)的一部分
  • 利用部分的行为,我们能推断出整体的行为吗?

是的。 每个部分都有一个关于它如何改变整个系统的“视角”。综合这些视角,就能得到整体的变化。

但是……为什么不一次性分析整个系统呢?原因就像你不会一口吞下一个汉堡:小部分更容易理解。

不必死记硬背各个法则,我们来看看它们如何相互配合:

derivative rules table

目标是真正领悟‘整合视角’的概念。本篇涵盖加法、乘法、幂和链式法则。前进!

函数(Function):不是图表的任何东西

默认的微积分解释写着一个$f(x) = x^2$,然后给你塞一张图。这真的有助于我们的直观理解吗?

对我来说不是。图表将输入和输出压缩成一条曲线,隐藏了将两者相互转换的机制。但导数法则正是 关于 这个机制,所以让我们来看一看!

我将函数可视化为一个过程:输入$x$ => $f$ => 输出$y$

simple function

不只是我。看看这台不可思议的机械瞄准计算机(YouTube系列教程的开端).

这台机器用齿轮计算加法和乘法等函数——你可以亲眼看到它们 查看机制 展开!

simple function

把函数$f$想象成一台机器,有输入杆'x'和输出杆'y'。当我们调整$x$时,$f$设定$y$的高度。另一个类比:$x$是输入信号,$f$接收它,施展一些魔法,然后输出信号$y$。使用任何能让你理解的 类比 帮助理解的方式。

摆动,摆动,再摆动

导数就是函数的“逐时刻”行为。这是什么意思?(不要机械地念叨“导数就是斜率”。 在这附近看到任何图表了吗,朋友?)

导数就是我们摆动的幅度。杆子在$x$处,我们“摆动”它,看$y$如何变化。“哦,我们把输入杆移动了1毫米,输出移动了5毫米。有趣。”

结果可以写成‘输出摆幅/输入摆幅’或$\frac{dy}{dx}$(在我们的例子中是5毫米/1毫米=5)。这通常是一个公式,而不是一个静态值,因为它可能依赖于你当前的输入设置。

例如,当 $f(x) = x^2$ 时,导数(Derivative)是 $2x$。没错,你已经记住了。但这意味着什么呢?

如果我们的输入杠杆在 $x = 10$,我们轻微晃动它(移动 $dx=0.1$ 到 $10.1$),输出应该变化 $dy$。具体变化多少呢?

  • 我们知道$f'(x) = \frac{dy}{dx} = 2x$
  • 在$x = 10$处,“每单位输入变动对应的输出变动”为$2 * 10 = 20$。每单位输入变动,输出变动20个单位。
  • 如果$dx = 0.1$,那么$dy = 20 * dx = 20 * .1 = 2$

确实,$10^2$ 和 $(10.1)^2$ 之间的差异大约是 $2$。导数(Derivative)估计了输出杠杆会移动多远(一个完美的无穷小(Infinitely small)晃动会移动2个单位;我们移动了2.01)。

理解导数(Derivative)法则的关键:

  • 建立你的系统
  • 分别变动系统的每个部分,观察输出变动了多少
  • 合并结果

总晃动是每个部分晃动的总和。

加法与减法

现在是我们的第一个系统:$h(x) = f(x) + g(x)$

derivative addition

当输入 $x$ 变化时会发生什么?

在我的脑海里,我想“函数(Function) h 接受一个输入。它将相同的输入喂给 $f$ 和 $g$,并相加输出杠杆。$f$ 和 $g$ 独立晃动,甚至互不知道对方的存在!”

函数(Function) $f$ 知道它会产生一些晃动($df$),$g$ 知道它会产生一些晃动($dg$),而我们,作为巡视的监督者,知道它们各自的逐刻行为是被相加的:

\displaystyle{dh = df + dg} derivative addition

再次,让我们描述每个“视角”:

  • 整个系统的行为是$dh$
  • 从$f$的角度看,它对整体贡献了$df$ [它不知道$g$的存在]
  • 从$g$的角度看,它对整体贡献了$dg$ [它不知道$f$的存在]

系统的每一次变化都是由于某个部分的变化($f$ 和 $g$)。如果我们把每个可能变量的贡献加起来,我们就描述了整个系统。

df vs df/dx

有时我们使用 $df$,有时使用 $\frac{df}{dx}$ —— 这是怎么回事?(这让我困惑了一段时间。)

  • $df$是“$f$改变了多少”的一般概念
  • $\frac{df}{dx}$是“$f$改变了多少,相对于$x$改变了多少”的具体概念

通用的 $df$ 帮助我们理解整体行为。

打个比方:想象你正在横穿全国驾车,想测量汽车的燃油效率。你会测量行驶的距离,检查油箱用了多少油,最后做除法计算“每加仑英里数”。你分别测量了距离和汽油——你没有跳进油箱去实时获取速率!

在微积分(Calculus)中,有时我们想要考虑实际的变化,而不是比率。在 $df$ 层面上工作让我们有余地思考函数(Function)整体上如何晃动。我们可以 最终 将其按特定输入缩放。

现在我们就来做。上述加法法则可以写成基于“每 $dx$”的形式:

$\frac{dh}{dx} = \frac{df}{dx} + \frac{dg}{dx}$

乘法(乘积法则(Product Rule))

下一个难题:假设我们的系统将部分 $f$ 和 $g$ 相乘。它会如何表现?

\displaystyle{h(x) = f(x) \cdot g(x)}

嗯,棘手——这些部分交互得更紧密。但策略相同:从每个部分的视角看它们如何贡献,并将它们组合起来:

  • $h$的总变化 = $f$的贡献(从$f$的角度)+ $g$的贡献(从$g$的角度)

看看这张图:

derivative product rule

发生了什么?

  • 我们有系统:$f$和$g$相乘,得到$h$(矩形的面积)
  • 输入$x$在远处变化了$dx$。这意味着$f$变化了某个量$df$(考虑绝对变化,而不是变化率!)。类似地,$g$变化了自己的量$dg$。由于$f$和$g$发生了变化,矩形的面积也发生了变化。
  • 从$f$的角度看,面积变化了多少?嗯,$f$知道自己变化了$df$,但不知道 没有头绪 g发生了什么。从$f$的角度看,它是唯一变动的,将增加一个面积片 = $df * g$
  • 类似地,$g$不知道$f$如何变化,但知道它将增加一个面积片 = $dg * f$

系统总变化量 ($dh$) 是两个面积切片之和:

\displaystyle{dh = f \cdot dg + g \cdot df}

现在,就像我们的每加仑英里数例子一样,我们“除以 $dx$”并用 $x$ 的变化量来表示:

\displaystyle{\frac{dh}{dx} = f \cdot \frac{dg}{dx} + g \cdot \frac{df}{dx}}

(题外话:除以 $dx$?工程师会微笑,数学家会皱眉。严格来说,$\frac{df}{dx}$ 不是一个分数:它是求导的整个操作(包含极限等)。但从无穷小和直觉的角度来看,我们是在“按 $dx$ 缩放”。我是微笑派。)

乘积法则(Product Rule)的关键:从两个视角各添加一个“面积小条”。

注意: 但是,当 $f$ 和 $g$ 同时变化时 ($df * dg$),难道没有任何影响吗?

有的。然而,这个面积是无穷小(Infinit estimal) * 无穷小(一个“二阶无穷小”),在当前层面上不可见。这是一个微妙的概念,但 $\frac{(df * dg)}{dx}$ 与普通导数如 $\frac{df}{dx}$ 相比会消失。我们独立地改变 $f$ 和 $g$,组合结果,并忽略它们同时变化的结果。

链式法则(Chain Rule):没那么糟

假设 $g$ 依赖于 $f$,而 $f$ 依赖于 $x$:

\displaystyle{y = g(f(x))} derivative product rule

链式法则(Chain Rule)让我们“放大”一个函数,观察初始变化 ($x$) 如何最终影响结果 ($g$)。

解释1:转换速率(Rate)

一个常见的解释是将速率相乘:

\displaystyle{\frac{dg}{dx} = \frac{dg}{df} \cdot \frac{df}{dx}}

$x$ 扰动 $f$。这产生了变化率 $\frac{df}{dx}$,它又通过 $\frac{dg}{df}$ 扰动 $g$。整个扰动就是:

\displaystyle{\frac{dg}{df} \cdot \frac{df}{dx}}

这类似于化学课上的“因子标签”方法:

\displaystyle{\frac{miles}{second} = \frac{miles}{hour} \cdot \frac{1 \ hour}{60 \ minutes} \cdot \frac{1 \ minute}{60 \ seconds} = \frac{miles}{hour} \cdot \frac{1}{3600}}

如果你的“每秒英里数”速率变化了,乘以转换因子得到新的“每小时英里数”。秒本身不直接知道小时——它通过秒 => 分钟的转换。

类似地,$g$ 不直接知道 $x$,只知道 $f$。函数 $g$ 知道它应该将输入按 $\frac{dg}{df}$ 缩放以得到输出。初始速率 ($\frac{df}{dx}$) 在沿着链条传递时被修改。

解释2:转换微动(Wiggle)

我更喜欢从“每单位扰动”的角度来看链式法则:

  • $x$变动$dx$,所以
  • $f$变动$df$,所以
  • $g$ 摆动 $dg$

酷。但它们实际上是如何关联的?哦对了,导数(Derivative)!(它是输出扰动除以输入扰动):

\displaystyle{df = dx \cdot \frac{df}{dx}}

记住,$f$ 的导数 ($\frac{df}{dx}$) 是对初始扰动的缩放量。对于 $g$ 也是如此:

\displaystyle{dg = df \cdot \frac{dg}{df}}

它会将输入杠杆 ($f$) 上的任何扰动按 $\frac{dg}{df}$ 缩放。如果我们用 $dx$ 表示 $df$ 扰动:

\displaystyle{dg = (dx \cdot \frac{df}{dx}) \cdot \frac{dg}{df}}

我们有了链式法则的另一个版本:$dx$ 启动链条,最终得到 $dg$。如果我们想要用 $dx$ 表示的最终扰动,两边同时除以 $dx$:

\displaystyle{\frac{dg}{dx} = \frac{df}{dx} \cdot \frac{dg}{df}}

链式法则不仅仅是单位因子消去——它是抖动的传播,每一步都会调整。

链式法则适用于多个变量($a$ 依赖于 $b$,$b$ 依赖于 $c$),只需逐次传递抖动。

尝试想象“放大”不同变量的视角。从 $dx$ 开始向上看,你会看到脉冲到达 $g$ 之前所需的整个变换链。

链式法则(Chain Rule):举例时间

假设我们将一个“平方机器”放在一个“立方机器”前面:

输入 $x$ => $f:x^2$ => $g:f^3$ => 输出 $y$

$f:x^2$ 表示 $f$ 对其输入进行平方。$g:f^3$ 表示 $g$ 对其输入(即 $f$ 的值)进行立方。例如:

输入(2) => f(2) => g(4) => 输出:64

从2开始,$f$ 将其平方(2^2 = 4),然后 $g$ 将其立方(4^3 = 64)。这是一个6次方机器:

\displaystyle{g(f(x)) = (x^2)^3}

那么导数是什么?

\displaystyle{ \frac{dg}{dx} = \frac{dg}{df} \cdot \frac{df}{dx}}

  • $f$ 将其输入摆动改变 $\frac{df}{dx} = 2x$
  • $g$ 将其输入摆动改变 $\frac{dg}{df} = 3f^2$

最终的变化是:

\displaystyle{3f^2 \cdot 2x = 3(x^2)^2 \cdot 2x = 3x^4 \cdot 2x = 6x^5}

链式法则(Chain Rule):注意事项

函数将输入视为一个整体(Blob)

在例子中,$g$ 的导数($(x^3)' = 3x^2$)并不指原始的 $x$,而是指其输入的任何东西($(foo^3)' = 3*foo^2$)。输入是 $f$,它将 $f$ 视为单个值。之后,我们才将 $f$ 用 $x$ 重新表示。但 $g$ 与此无关——它不关心 $f$ 是否可以分解成更小的部分。

在许多例子中,变量$x$是“终点”。

问题通常会问 $\frac{df}{dx}$,即“从 $x$ 的角度给出变化”。现在,$x$ 可能依赖于更深的变量,但并没有要求那样。这就像说“我想要英里每小时。我不关心英里每分钟或英里每秒。只给我英里每小时”。$\frac{df}{dx}$ 意味着“一旦到达 $x$,就停止查看输入”。

为什么我们用链式法则(Chain Rule)相乘导数,而其他情况却相加?

通常的法则关注的是 整合不同视角 以获得整体图像。$f$ 看到什么变化?$g$ 看到什么变化?将它们加起来得到总和。

链式法则关注的是深入单个部分(如 $f$),并查看它是否受另一个变量控制。这就像查看一个时钟内部并说:“嘿,分针受秒针控制!”我们停留在同一个部分内。

当然,最终 $f$ 的这种“每秒”视角可能会被添加到 $g$ 的某个视角中。很好。但链式法则是关于深入 $f$ 的根本原因。

幂法则(Power Rule):常记却少解

$x^4$ 的导数是什么?是 $4x^3$。很好。你把指数降下来并减一。现在解释为什么!

嗯。有几种方法,但这是我最喜欢的新方法:$x^4$ 实际上是 $x * x * x * x$。它是4个“独立”变量的乘法。每个 $x$ 不知道其他 $x$ 的存在,它们可以看作是 $x * u * v * w$。

现在考虑第一个 $x$ 的视角:

  • 它从 $x$ 变化到 $(x + dx)$
  • 整体函数的变化是 $[(x + dx) - x][u * v * w] = dx[u * v * w]$
  • 在“每 $dx$”基础上的变化是 $[u * v * w]$

类似地,

  • 从 $u$ 的角度看,它变化了 $du$。它在“每 $dx$”基础上贡献了 $\frac{du}{dx}*[x * v * w]$。
  • $v$ 贡献了 $\frac{dv}{dx} * [x * u * w]$
  • $w$ 贡献了 $\frac{dw}{dx} * [x * u * v]$

帷幕揭开:$x$、$u$、$v$ 和 $w$ 是相同的!"视角"转换因子为 1($\frac{du}{dx} = \frac{dv}{dx} = \frac{dw}{dx} = \frac{dx}{dx} = 1$),总变化量为

\displaystyle{(x \cdot x \cdot x) + (x \cdot x \cdot x) + (x \cdot x \cdot x) + (x \cdot x \cdot x) = 4 x^3}

一句话总结:$x^4$ 的导数是 $4x^3$,因为 $x^4$ 有四个相同的"视角"正在被组合。喔耶!

歇口气

我希望你以新的眼光看待导数:我们有一个由部分组成的系统,我们微调输入并观察整体如何变化。它关乎组合视角:每个部分为整体贡献了什么?

在后续文章中,我们将探讨更强大的法则(指数、商等)。数学愉快。

本系列其他文章

  1. 学习微积分的温和入门
  2. 用银行账户类比理解微积分
  3. 史前微积分:发现 Pi
  4. 一个微积分类比:积分(Integral)即乘法
  5. 微积分:建立对导数(Derivative)的直觉
  6. 如何理解导数:乘积法则、幂法则与链式法则
  7. 如何理解导数:商法则、指数与对数
  8. 极限(Limit)的直观介绍
  9. 泰勒级数的直觉(DNA 类比)
  10. 我们为什么需要极限和无穷小(Infinitesimal)?
  11. 学习微积分:克服我们对精确性的人为需求
  12. 一场关于 0.999... = 1 的友好讨论
  13. 类比:微积分相机
  14. 抽象练习:微积分图形
  15. 快速洞察:用微积分做更简单的算术
  16. 如何用微积分将 1 加到 100
  17. Sin(x) 的积分:几何直觉

加入 45 万月度读者

喜欢这篇文章?还有更多内容能帮你建立持久、直观的数学理解。加入通讯以获取额外内容和最新更新。