連鎖律

連鎖律

執筆済 数学微分積分

多変数の合成関数に対する微分則。

zxi=jzyjyjxi

行列で書けばヤコビ行列の積。

Jzy=JzJy

経路をすべて足す#

1 変数と違い、xi から z への影響が 複数の中間変数 yj を経由する。 その全経路の寄与を足すのが j の意味。

計算グラフで考えると、 「xi から z に至るすべての道について、 道に沿った偏微分を掛け、道どうしは足す」となる。

前向きと後ろ向き#

ヤコビ行列の積は結合的なので、掛ける順序を選べる。

JLJ2J1
順序 名前 効率的な場面
右から forward mode 入力が少なく出力が多い
左から reverse mode 入力が多く出力が 1 つ

機械学習は「パラメータ数百万 → 損失 1 つ」なので reverse mode が圧倒的に有利。 これが誤差逆伝播法で、 1 回の逆向き計算で全パラメータの勾配が得られる

数値微分ならパラメータ数だけ評価が要ることと比べると、差は決定的。

参考文献#

ノート一覧を閉じる