链式法则:为什么是「乘」不是「加」
看到 sin(2x)、(3x+1)² 这类「套了一层」的函数时,很多同学的第一反应是懵——明明会求 sin x、会求 x²,怎么把它俩塞一起就不会求了?更让人抓狂的是,明明两层函数各自的变化率都是「加」或「单变量」的直觉,怎么把它们串起来就变成了「乘」?
这篇笔记按一条主线展开:先把「套娃函数」长什么样立清楚,再用画面钉死「为什么是乘」,把画面落到公式,再把公式拆成可以照着做的四步流程,最后在 sin(2x) 和 (3x+1)² 这两道最贴近课本的题目上手把手走一遍。读完你应该能独立做对这两题,并对「链式法则」这四个字建立起完整的心智模型。
一、「套了一层」的函数长什么样
我们熟悉的函数一般是「输入一个数、输出一个数」的关系,比如 y = sin x、y = x²。但还有一类函数长得稍微复杂:函数里面还有函数。比如 sin(2x)——外面是个正弦函数,里面又塞了一个 2x;(3x+1)²——外面是个平方函数,里面又塞了一个 3x+1。
这类函数有个正式名字:复合函数——把一个函数的输出又当成另一个函数的输入。同济大学《高等数学》第八版第二章第二节第三小节「复合函数的求导法则」就是这么定义的同济高数第8版。直白讲就是「函数的输出又喂给了下一个函数」。
识别一个函数是不是复合函数,关键是看能不能把它一眼剥成「外面那层」和「里面那层」。比如:
sin(2x):外层是sin(·),内层是2x。(3x+1)²:外层是(·)²(幂函数),内层是3x+1(一次函数)。
来看一个具体的几何分解图,把「外层 + 内层」这件事用画面钉一下:

图注:上排三个坐标系沿中间的 u 轴水平对齐:左边是
y = u²的抛物线,中间是裸的 u 轴,右边是u = sin x的正弦曲线。下排是合成出来的y = sin²x双峰曲线。三坐标系沿 u 轴对齐这件事本身就说明:复合函数本质上是「先走右图(内层 g)把 x 变成 u,再走左图(外层 f)把 u 变成 y」的两台机器首尾相连。小时百科·链式法则
这张图画的是 sin²x(等于 (sin x)²),但它背后的结构完全适用于 sin(2x)、(3x+1)²:都是「内层先动一下、外层再动一下」的两层动作。看到「套了一层」的函数,能立刻想到「外层是什么、内层是什么」——这一眼是后面一切的基础。
二、为什么是「乘」而不是「加」:层层放大的画面
这是整篇笔记最核心的一问。看到复合函数求导要乘起来,直觉上第一反应往往是「两条函数各自的变化率加起来不行吗?」答案是不行——因为两层函数不是并排站在那儿的,是一前一后串联起来的。
并排站着的东西(比如「今天的温度 + 昨天的温度」),变化的贡献才能相加;但串联起来的链条(一节扣一节,前一节转了才会带动后一节转),后一节的变化必须先把前一节的变化再缩放一次。这个「再缩放一次」就是乘。
怎么把这件事钉进脑子里?来看 3Blue1Brown 那张著名的「三条数轴」画面:

图注:从上到下三条数轴,分别标
x、h、sin(h)。最上层用红色括号标出一小段dx,经过(…)²(绿色弯箭头)传到中层时被放大成dh,再经过sin(…)(蓝色弯箭头)传到底层时被放大成d(sin h)。三段小增量层层放大——最关键的画面是「最上面那一小段,到了最下面已经不是原来那个长度了」。3Blue1Brown·Visualizing the chain rule and product rule
读这张图的关键是看红色括号(最上层 dx)到了最下面变成了什么。dx 本身是个很小很小的数;先经过 (…)² 这一步被放大成 2x·dx(比 dx 大了好多倍),再经过 sin(…) 这一步又被乘了一个 cos(h)。两次放大是乘在一起发生的,不是加起来。
如果到这里你觉得「为什么是乘不是加」仍然没完全立住,可以再用两个生活比方加固画面感:
第一个是齿轮传动。两个齿轮咬在一起,前一个齿轮转过一个角度,后一个齿轮会按齿数比再转一个角度。后一个齿轮最终转的角度 = 前一个齿轮转的角度 × 齿数比。两级齿轮串起来,转过的角度就是「齿轮比 × 齿轮比」。BetterExplained 把这种「前一级动多少、后一级按自己的比例再动多少」叫做 wiggle gets adjusted at each stepBetterExplained·Derivatives。
第二个是汇率换算。你想把美元换算成人民币,需要先知道美元兑某种中间货币、再用那种中间货币兑人民币。两步相乘就是 人民币/美元 = (人民币/欧元) × (欧元/美元),中间那个 欧元 因子自然消掉——这跟后面要写的公式 dy/dx = (dy/du)·(du/dx) 中间的 du 因子消掉是同一个动作。
第三个图把这件事再补一刀——x → f → g → y 这种节点图,证明两层函数是串联而非并联:

图注:四个圆角方块依次排开——红色
x块、绿色f块、绿色g块、蓝色y块,相邻方块用粗折线相连。整条链路是x → f → g → y:输入先经过f,再经过g,最终变成输出。这是「串联」,不是「并联」——所以两层之间的作用是「乘」而不是「加」。这张图虽然本身没有 wiggle、没有齿轮、没有汇率换算,但作为「为什么不能用加法法则」的几何骨架很直观。BetterExplained·Derivatives
到这里你应该能在脑子里立起这件事:内层动一点点,会被外层再放大一遍。两层放大是乘起来发生的,不是加起来——这就是为什么复合函数求导是「乘」。
三、把画面写成公式
画面清楚了,是时候写下来了。复合函数求导的核心公式只有两条记法,但说的是同一件事:
Leibniz 写法(用分数记号写): $$\frac{dy}{dx} = \frac{dy}{du} \cdot \frac{du}{dx}$$
Lagrange 写法(用一撇记号写): $$[f(g(x))]' = f'(g(x)) \cdot g'(x)$$
两条记法说的都是同一件事:复合函数的导数 = 外层导数 × 内层导数。其中 du 或 g(x) 是我们引入的中间变量——它既是内层的产物,又是外层的输入。
为什么是「乘」?看回第二章那张三条数轴的画面:最上面 dx 经过 (…)² 这一步被放大成 dh = 2x·dx(这本身就是 dh/dx = 2x),再经过 sin(…) 这一步又被乘了一个 cos(h)(这本身就是 d(sin h)/dh = cos(h))。两个放大步骤乘起来就是 d(sin h)/dx = cos(h)·2x。这正是 Leibniz 写法中 dy/dx = (dy/du)·(du/dx) 这个乘积结构。
来看 3Blue1Brown Chapter 4 给的「sin(x²) 完整链式展开图」,它把上面的画面和最终公式直接对在一起:

图注:顶部函数定义
f(x) = sin(x²)。三条水平数轴自上而下分别标x(带红色dx)、x²(带绿色2x·dx)、sin(x²)(带蓝色cos(x²)·2x·dx)。最下层那一段cos(x²)·2x·dx就是「外层导数(cos(x²))× 内层导数(2x)」乘出来后的最终结果。把dh用d(x²)替换、再把d(x²)用2x·dx替换——这两个中间变量在画面里被逐步消掉,最终只剩cos(x²)·2x·dx。
这张图最值得记住的一件事是:中间那个 dh(也就是 u)真的可以消掉,不只是符号技巧。它之所以能消,是因为 dh/dx 这一项把「h 这一层」的变化速度算完了,再传给下一层时只需乘上下一层自己的变化速度——两段速度乘起来就是整体速度,中间的 du 因子当然就消了。
小时百科那张 Δ 桥接图把这个消掉过程又画了一遍,这次用几何:

图注:上排两个坐标系沿 u 轴对齐:左边是
y = u²,曲线上标一小段竖向Δy;右边是u = sin x,曲线上标一小段横向Δx。两图通过一条灰色水平Δu桥接线在相同 u 高度处相连——Δx先沿 u 轴传到Δu,再传到Δy。下方的合成图同时标Δx与Δy,直观呈现「Δx经过两次放大变成Δy」的几何过程。小时百科·链式法则
到这里你应该能写出 dy/dx = (dy/du)·(du/dx) 这条公式,并理解它的几何含义:du 是「外层的输入 = 内层的输出」这一身份的中间变量。
四、剥洋葱:怎么把复合函数拆成内外层
有了公式,下一步是把它变成「可以照着做」的操作步骤。怎么把一个复合函数一眼剥出外层和内层?答案是把它想成两台机器首尾相连:第一台机器吃掉 x、吐出一个中间产物(内层),第二台机器吃掉那个中间产物、再吐出最终结果(外层)。
来看一张把这件事钉死的图:

图注:两台紫色立方体函数机上下排列——上方的
g(顶部漏斗里放着一个球,右侧滑道伸出一个红紫色小立方体)和下方的f(顶部紫色碗状开口,右侧凹槽里放着一个多面球)。球先被g变成小立方体,再被f变成多面球——输入是球,中间产物是立方体,输出是多面球,对应x → g → u → f → y的两层链路Math Insight·The idea of the chain rule。
剥洋葱的具体步骤,可以浓缩成「设 u → 求 dy/du → 求 du/dx → 相乘 → 回代」四步。这是中文链式法则教学里的标准范式小时百科·链式法则,同济第八版讲课时也是同样的顺序。
具体每一步在干什么:
- 设 u = 内层:把内层那个看起来更复杂的部分单独取个名字
u,外层f(u)就只剩u一个变量了。 - 求 dy/du:对外层
f(u)关于u求导。这一步算出来的是「外层的输入变化一点点时,外层的输出变化多少」。 - 求 du/dx:对内层
u(x)关于x求导。这一步算出来的是「外层的输入(也就是内层的输出)变化一点点时,内层的输入变化多少」。 - 相乘:把
dy/du和du/dx乘起来,就是整体复合函数的导数。 - 回代:把
u用内层的具体表达式代回去,得到用x表达的最终答案。
「先外后内再相乘」——这是中文链式法则教学里最顺口的口诀版本,比记四步流程更轻松。
剥洋葱这一步最容易写错的是「外层导数要在内层表达式处取值」,而不是在内层导数处取值。看这张几何等式把这件事钉死:

图注:白色背景上画着
d(多面球)/d(球) = d(多面球)/d(立方) × d(立方)/d(球)的几何等式。中间的「立方」因子上下出现两次,因此被消掉。这个消掉动作在几何上对应:外层导数(多面球相对于立方体的变化率)是拿「立方体」作为参照来算的,而不是拿「球」来算;把多面球/立方、立方/球两条几何关系串起来,中间产物(立方)自动抵消。
记忆口诀:外层导数的输入是中间变量 u,内层导数的输入是 x,两者不要接反。如果你忘了这一点,结果会算错成 f'(x)·g'(x) 这种形式——乍一看像链式法则,其实错的离谱。这个坑我们下一章会单列出来。
到这里你应该能照着「设 u → 求 dy/du → 求 du/dx → 相乘 → 回代」四步独立把任意一个两层复合函数拆开。
五、手把手走两道:sin(2x) 和 (3x+1)²
四步流程立好了,现在拿两道最贴近课本的题目一笔一笔走一遍。我们把上一章末尾那张「Δ 桥接图」也带进来做对照,让读者看见「四步流程」不是凭空发明的——它每一步都和 Δ 桥接图上的某一段对应:

图注:上一章已用过这张图。回到这里是想让读者把「设 u → 求 dy/du → 求 du/dx → 相乘 → 回代」这四步和 Δ 桥接图上的三段 (
Δx→Δu→Δy) 一一对上:第一步「设 u」对应右图的内层;第二步「求 dy/du」对应左图的外层;第三步「求 du/dx」对应右图的内层导数;第四步「相乘」对应Δx → Δy的整体放大。
第一题:y = sin(2x)
第一步·设 u:内层是 2x,令 u = 2x,外层是 y = sin u。
第二步·求 dy/du:对 y = sin u 关于 u 求导,dy/du = cos u。这一步是「外层的输出变化多少 / 外层的输入变化多少」。
第三步·求 du/dx:对 u = 2x 关于 x 求导,du/dx = 2。这一步是「内层的输出变化多少 / 内层的输入变化多少」。
第四步·相乘:dy/dx = (dy/du)·(du/dx) = cos u · 2 = 2cos u。
第五步·回代:u = 2x 代回去,得到:
$$\frac{d}{dx}\sin(2x) = 2\cos(2x)$$
最容易漏的点是第三步那个 2——内层 2x 的导数是 2,这个 2 一定要乘上去。漏掉它,只写 cos(2x) 是大一新生最常见的错误AI-Math·链式法则常见错误。
第二题:y = (3x+1)²
第一步·设 u:内层是 3x+1,令 u = 3x+1,外层是 y = u²。
第二步·求 dy/du:对 y = u² 关于 u 求导,dy/du = 2u。
第三步·求 du/dx:对 u = 3x+1 关于 x 求导,du/dx = 3。这一步和第一题一样容易漏——内层那条一次函数的斜率是 3,必须乘上去。
第四步·相乘:dy/dx = (dy/du)·(du/dx) = 2u · 3 = 6u。
第五步·回代:u = 3x+1 代回去,得到:
$$\frac{d}{dx}(3x+1)^2 = 6(3x+1)$$
三层套娃的推广
「链」这个字字面意思——有几层就乘几个导数。如果套了三层,比如 sin((2x+1)³),要乘的导数就有三个:外层 sin(·) 的导数 cos(…)、中层 (·)³ 的导数 3(…)²、内层 2x+1 的导数 2。三者乘起来就是 (3(2x+1)²) · cos((2x+1)³) · 2 = 6(2x+1)² cos((2x+1)³)。同济第八版课本第二章第二节「复合函数的求导法则」一节定理之后给出的多层推广公式就是这个 dy/dx = (dy/du)·(du/dv)·(dv/dx)同济高数第8版,本质就是「有几层就乘几个」。
到这里你应该能独立做对 sin(2x) 和 (3x+1)²,对三层套娃也有底气敢下手。
六、避开最常见的 4 个坑,对回课本公式
最后把大一新生最常掉进去的 4 个坑列一下,每条都配反例和正确做法对照,再把这条法则对回同济课本第 2 章第 2 节的标准公式,让读者合上笔记翻开课本不再陌生。
坑 1:漏掉内层导数。sin(2x) 只写成 cos(2x),漏了那个 2。修法:四步流程第三步永远不能省——把「求 du/dx」当成机械动作做一遍。
坑 2:外层导数在错误的位置取值。(3x²+1)⁴ 错算成 4(6x)³ 而不是 4(3x²+1)³ · 6x。修法:外层导数公式里的 u 必须代回内层表达式 3x²+1,而不是代回内层导数 6xAI-Math·链式法则常见错误。前一章函数机图钉的就是这件事——外层 f 看到的是立方体(中间产物 u),不是球(原始输入 x)。
坑 3:复合误当乘积。sin(2x) 是复合函数(外层正弦、内层一次函数),不是乘积 sin · 2x。修法:看到 f(g(x)) 形式才用链式法则;如果不是「函数里有函数」的结构,用乘积法则或者直接求导,不要硬套。
坑 4:sin²x vs sin(x²) 括号混淆。sin²x = (sin x)² 是幂函数 u² 包着 sin x,外层是平方、内层是正弦,导数是 2 sin x · cos x = sin 2x;sin(x²) 是正弦包着 x²,外层是正弦、内层是平方,导数是 cos(x²) · 2x。这两个写法看上去像、实际完全是两个不同的复合结构AI-Math·链式法则常见错误。MIT 18.01 Lecture 4 讲义里也专门给了 f∘g ≠ g∘f(不交换)的对照MIT 18.01·Lecture 4。
把上面 4 条记牢,做题时主动避坑,链式法则的常见错误基本就清干净了。
最后回到课本。把第二章的直觉和第三章的公式对回同济第八版第二章第二节第三小节「复合函数的求导法则」的标准写法同济高数第8版:
$$\frac{dy}{dx}\bigg|_{x_0} = f'(u_0) \cdot \varphi'(x_0)$$
其中 u₀ = φ(x₀),意思是「外层导数在内层表达式处取值」——这正是我们前面强调过的那条铁律。同济版还把这个法则推广到多层复合 dy/dx = (dy/du)·(du/dv)·(dv/dx),正对应「有几层就乘几个」的字面含义。
至此你应该做到:看见 sin(2x) 这种「套了一层」的函数,能一眼想到「外层是三角函数、内层是一次函数」;明白为什么是乘不是加——内层动一点点会被外层再放大一遍;能写出 dy/dx = (dy/du)·(du/dx) 和 [f(g(x))]' = f'(g(x))·g'(x) 两种记法;能按「设 u → 求 dy/du → 求 du/dx → 相乘 → 回代」四步独立做对 sin(2x) 和 (3x+1)²;做题时主动避开 4 个常见错误;合上笔记翻开同济课本第 2 章第 2 节不再陌生。跟上大一高数课不掉队,这就是开篇的那个目标。
参考文献
本专题引用的核心资料如下,建议深入学习时阅读原文:
- 同济大学《高等数学》第八版上册 第 2 章 第 2 节 复合函数的求导法则 — 高等教育出版社官方书目页
- Visualizing the chain rule and product rule | Chapter 4, Essence of Calculus(3Blue1Brown) — 3Blue1Brown 官方课程页
- How To Understand Derivatives: The Product, Power & Chain Rules(BetterExplained) — BetterExplained 博客
- The idea of the chain rule(Math Insight) — Math Insight 教学页
- Lecture 4: Chain Rule, and Higher Derivatives — MIT 18.01 Single Variable Calculus, Fall 2006 — MIT OpenCourseWare 讲义
- 复合函数求导、链式法则(极简微积分)— 小时百科 — 小时百科词条
- Chain rule(Wikipedia) — Wikipedia 词条
- 链式法则:何时以及如何运用(附示例)— AI-Math — AI-Math 博客