テデトクログイン

← コースに戻る

積・商・合成 — 微分の文法

前章までで (xn)=nxn1(x^n)' = nx^{n-1} が手に入りました。 でも実際の関数は xsinxx \sin xsin(3x)\sin(3x) のように部品の組み合わせでできています。 組み合わせの微分規則 — いわば微分の文法 — は3つだけです。

触ってみる — 積の法則は長方形

f(x)g(x)f(x) \cdot g(x) を「縦 gg、横 ff の長方形の面積」だと思ってください。 スライダーで xx を動かすと、面積の増え方が2つの帯に分解されて見えます。

面積 = f(x)·g(x)。x が少し進むと、縦帯 f′·g·dx横帯 f·g′·dx が増える。 角の小さな灰色(f′g′dx²)は dx→0 で消える — これが積の法則です。

種明かし

xxdxdx 進むと、横が fdxf'dx 伸び、縦が gdxg'dx 伸びます。面積の増分は:

fgdx縦帯+fgdx横帯+fgdx2角(無視できる)\underbrace{f' g \, dx}_{\text{縦帯}} + \underbrace{f g' \, dx}_{\text{横帯}} + \underbrace{f'g' \, dx^2}_{\text{角(無視できる)}}

dx0dx \to 0 で角は消え、積の法則が残ります:

(fg)=fg+fg(fg)' = f'g + fg'

商の法則 (fg)=fgfgg2\left(\dfrac{f}{g}\right)' = \dfrac{f'g - fg'}{g^2} は、積の法則を f=fggf = \frac{f}{g} \cdot g に適用すれば導けます(暗記は1つでいい)。

連鎖律 — 速さの掛け算

合成 y=f(g(x))y = f(g(x)) の微分は変化率の掛け算です:

dydx=dydududx\frac{dy}{dx} = \frac{dy}{du} \cdot \frac{du}{dx}

第10章のパイプ図を思い出してください。xx が動くと中間変数 uugg' 倍速で動き、 uu が動くと yyff' 倍速で動く。直列につないだ速さは掛け算 — それだけです。 たとえば y=sin(3x)y = \sin(3x) なら、中身が3倍速なので y=3cos(3x)y' = 3\cos(3x)

機械学習の誤差逆伝播は、この掛け算を何百層も続けているだけです。

理解チェック

y=(x2+1)3y = (x^2 + 1)^3 を微分してください。

答えを見る

外の速さ 3u23u^2 × 中の速さ 2x2x で、y=3(x2+1)22x=6x(x2+1)2y' = 3(x^2+1)^2 \cdot 2x = 6x(x^2+1)^2。 展開してから微分しても同じ答えになりますが、計算量が段違いです。