位置: 数学編 第A部 M4 / 前提: M2, M3 / 数学編: M2, M3 / この回でできるようになること: 多変数の連鎖律を使いこなし、普通の微分で二次の項が消える理由を説明できる
目次
0. 物語 ― 変化の二乗が速く消えない場合
手元に100万円分の株があり、その価値の二乗に連動する金融商品を持っているとします。株価が細かい時間ごとに上下するとき、その動き方が「滑らか」か「粗い」かで、計算結果がまるで変わります。
滑らかに動く場合を考えます。たとえば1ステップごとに一方向へ少しずつ進むとき、各ステップの変化を二乗して足し合わせると、ステップを細かくするほど合計は小さくなります。10分割なら0.1、100分割なら0.01、1万分割なら0.0001です。分割を細かくすれば、この合計はいくらでも小さくでき、やがて無視できます。
ところが、毎回の変化量が刻み幅の平方根ほどの大きさで、符号が交互に変わるような「粗い」動き方をすると、話が一変します。10分割でも100分割でも1万分割でも、変化の二乗の合計はぴったり1.0のまま、まったく減りません。
これが何を意味するかというと、関数の変化を求める公式で無視してよいはずの「二次の項」が、粗い経路では無視できないまま残るのです。滑らかな経路なら消えるはずの補正が、1.0まるごと残ります。
高校で習った微分の連鎖律は、関数を合成したときの変化率を一次の項だけで表す公式です。この公式が正しいのは、二次の項が消えてくれるおかげです。しかし現実の株価のように激しく上下する経路では、二次の項は消えません。消えない分だけ公式を修正しなければ、正確な答えにはたどり着けません。この回では、連鎖律で二次の項がなぜ消えるのかを証明し、消えないのはどんな場合かを数値で確かめます。
1. 動機 ― 合成した関数をどう微分するか
この回を読み終えると、多変数の連鎖律を使いこなし、普通の微分で二次の項が消える理由を説明できます。
関数を合成する操作は、金融数学のあらゆる場面に現れます。資産価格 S が時刻 t の関数であるとき、そのオプション価値 f(S) の時間変化を知りたい場面は日常的です。f(S(t)) を t で微分するには、連鎖律(chain rule)を使います。
高校や大学初年度で一度は習った公式ですが、ここで改めて徹底するのには理由があります。本編第59回で登場する伊藤の補題は、連鎖律に二次の項を足した修正版です。なぜ二次の項が足されるのかを理解するには、通常の連鎖律で二次の項がなぜ消えるのかを正確に知る必要があります。
この記事では、1変数と多変数の連鎖律を証明し、二次の項が消える仕組みを式で確かめます。そして、消えない場合がどんな状況で起きるかを数値で見せます。
この記事で証明すること
- THM-M4-1 内側と外側の関数がそれぞれ微分可能なら、合成関数の導関数は f′(g(x))⋅g′(x) です。
- THM-M4-2 内側の関数が複数変数に依存するとき、合成関数の偏導関数は各経路を通る偏導関数の積の和になります。
- THM-M4-3 通常の連鎖律で二次の項が現れないのは、内側の関数の変化の二乗が一次の変化より速く 0 に近づくからです。
2. 設定と仮定 ― 内側と外側の関数
連鎖律が扱う状況を正確に整理します。
- 1変数の場合: g:R→R と f:R→R の合成 h(x)=f(g(x))。
- g は点 x0 で微分可能とします。つまり g(x0+Δx)=g(x0)+g′(x0)Δx+o(Δx)。
- f は点 g(x0) で微分可能とします。
- 多変数の場合: z=f(x,y) で x=x(s,t), y=y(s,t) のように内側が複数の変数に依存する場合を扱います。
- f は (x0,y0) で偏微分可能かつ全微分可能(M3 で導入した条件)とします。
- x(s,t), y(s,t) はそれぞれ (s0,t0) で偏微分可能とします。
- 二次の項の評価: 外側の関数 f が二回連続微分可能であると仮定します。テイラー展開の二次の項を正確に書くために必要です。
これらの仮定は、それぞれの定理で明示します。
3. 主張 ― 導関数は経路ごとの積の和
ここから3つの定理を正確に述べます。
定理 THM-M4-1(1変数の連鎖律)
g が点 x0 で微分可能で、f が点 g(x0) で微分可能であるとする。このとき合成関数 h(x)=f(g(x)) は x0 で微分可能であり、
h′(x0)=f′(g(x0))⋅g′(x0)が成り立つ。
定理 THM-M4-2(多変数の連鎖律)
z=f(x,y) が点 (x0,y0) で全微分可能で、x=x(s,t), y=y(s,t) が点 (s0,t0) で偏微分可能であるとする。このとき
∂s∂z=∂x∂f∂s∂x+∂y∂f∂s∂yが成り立つ。t についても同様である。
定理 THM-M4-3(二次の項が消える理由)
f が C2 級、g が点 x0 で微分可能であるとする。Δx→0 のとき、テイラー展開の二次の項 21f′′(g(x0))(g(x0+Δx)−g(x0))2 は o(Δx) である。すなわち、Δx で割ると 0 に収束する。これは (g(x0+Δx)−g(x0))2=O((Δx)2) であることによる。
証明を読む(読まなくても記事は完結します)
4. 証明 ― 二次の項が消えることを確かめる
この節は読まなくても記事は完結します。
この証明を追いたい人は、数学編 第2回「テイラー展開」、数学編 第3回「偏微分、全微分、多変数のテイラー展開」へ。
THM-M4-1 の証明
g が x0 で微分可能なので、Δx が十分小さいとき
g(x0+Δx)−g(x0)=g′(x0)Δx+ε1(Δx)Δx(4.1)
と書けます。ここで ε1(Δx)→0(Δx→0)です。g の変化量を Δg=g(x0+Δx)−g(x0) と置きます。
同様に f が g(x0) で微分可能なので
f(g(x0)+Δg)−f(g(x0))=f′(g(x0))Δg+ε2(Δg)Δg(4.2)
と書けます。ここで ε2(Δg)→0(Δg→0)です。
合成関数の変化量を Δx で割る操作を行います。(4.2) の左辺は h(x0+Δx)−h(x0) そのものですから
Δxh(x0+Δx)−h(x0)=Δxf′(g(x0))Δg+ε2(Δg)Δg(4.3)
右辺を整理するため、Δg を (4.1) で置き換えます。
ΔxΔg=g′(x0)+ε1(Δx).(4.4)(4.3)
Δxh(x0+Δx)−h(x0)=f′(g(x0))(g′(x0)+ε1)+ε2(Δg)(g′(x0)+ε1).
Δx→0 のとき ε1(Δx)→0 です。また g が x0 で連続(微分可能ならば連続)なので Δg→0 となり、ε2(Δg)→0 です。したがって極限を取ると
h′(x0)=f′(g(x0))⋅g′(x0).(4.5)
これが1変数の連鎖律です。 ∎
THM-M4-2 の証明
s を Δs だけ動かし、t は固定します。f が (x0,y0) で全微分可能であるという仮定(M3 の定義)から
Δz=∂x∂fΔx+∂y∂fΔy+ε(Δx,Δy)(Δx)2+(Δy)2(4.6)
と書けます。ここで ε(Δx,Δy)→0((Δx,Δy)→(0,0))です。Δx=x(s0+Δs,t0)−x(s0,t0), Δy=y(s0+Δs,t0)−y(s0,t0) です。
両辺を Δs で割ります。各内側の関数が s で偏微分可能なので
ΔsΔx→∂s∂x,ΔsΔy→∂s∂y(Δs→0).(4.7)
残差の項を評価します。Δx=O(Δs), Δy=O(Δs) なので (Δx)2+(Δy)2=O(∣Δs∣) です。したがって
Δsε⋅(Δx)2+(Δy)2→0(Δs→0).(4.8)
この極限が 0 になるのは、ε→0 であり、かつ (Δx)2+(Δy)2/∣Δs∣ が有界であるからです。
(4.6) を Δs で割って Δs→0 の極限を取ると
∂s∂z=∂x∂f∂s∂x+∂y∂f∂s∂y.(4.9)
t についても全く同じ議論が成り立ちます。 ∎
THM-M4-3 の証明
f が C2 級なので、g(x0) のまわりでテイラー展開できます。
f(g(x0)+Δg)=f(g(x0))+f′(g(x0))Δg+21f′′(g(x0))(Δg)2+o((Δg)2)(4.10)
合成関数の変化量は
h(x0+Δx)−h(x0)=f′(g(x0))Δg+21f′′(g(x0))(Δg)2+o((Δg)2)
THM-M4-1 の証明で用いた (4.1) から Δg=g′(x0)Δx+o(Δx) なので
(Δg)2=(g′(x0)Δx+o(Δx))2=(g′(x0))2(Δx)2+o((Δx)2)(4.11)
展開の二乗をとるとき、g′(x0)Δx と o(Δx) の交差項は g′(x0)Δx⋅o(Δx)=o((Δx)2) です。また o(Δx) 同士の積も o((Δx)2) です。よって (4.11) が成り立ちます。
二次の項を Δx で割ると
Δx(Δg)2=(g′(x0))2Δx+o(Δx)→0(Δx→0)(4.12)
つまり二次の項 21f′′(g(x0))(Δg)2 は Δx で割ると 0 に消えます。
これが連鎖律で二次の項が現れない理由です。(Δg)2 が (Δx)2 のオーダーであるため、Δx による商で消えてしまいます。
核心: g が微分可能であるとき、Δg=O(Δx) なので (Δg)2=O((Δx)2) です。Δx で割ればまだ O(Δx) が残り、極限で 0 です。もし (Δg)2 が O(Δx) のオーダーでしか消えない(つまり Δg=O(Δx))ならば、(Δg)2/Δx は有限値に留まり、二次の項は消えません。これがまさに本編第57回以降で登場する状況の予告です。 ∎
5. 反例 ― 二乗の和が消えないと項が残る
反例 CEX-M4-1: 変化の二乗和が消えない経路
THM-M4-3 は「g が微分可能ならば (Δg)2=O((Δx)2) なので二次の項が消える」と述べています。この前提が破れる経路を作ります。
区間 [0,T] を n 等分し、刻み幅を h=T/n とします。次のような変化列を考えます。
各ステップの変化量は h の大きさで符号が交互に変わります。変化の二乗を足し合わせると
これは n によらず常に T です。n→∞(h→0)としても消えません。
一方、滑らかな経路 x(t)=t では Δxi=h なので
i=1∑n(Δxi)2=n⋅h2=T⋅h→0(n→∞).
f(x)=x2 に対してテイラー展開の二次の項の和を計算すると、f′′(x)=2 なので
- 粗い経路: ∑21f′′(xi)(Δxi)2=∑(Δxi)2=T=1.0(消えない)
- 滑らかな経路: ∑(Δxi)2=T⋅h→0(消える)
数値例の節で、n=10,100,1000,10000 と増やしたときに粗い経路の二乗和が 1.0 に留まり、滑らかな経路の二乗和が 0 に向かう様子を確認します。
二次の項が残るということは、連鎖律にその分を補正項として加えなければならないことを意味します。これが伊藤の補題の出発点ですが、その詳細は本編第59回で扱います。
反例 CEX-M4-2: 内側が微分不可能な折れ線
THM-M4-1 は内側の関数 g が微分可能であることを仮定しています。この仮定を外すとどうなるかを見ます。
g(t)=∣t∣, f(x)=x とします。合成関数は f(g(t))=∣t∣ です。t=0 での左微分と右微分を数値で計算すると、h=10−6 として
左差分商右差分商=h∣0∣−∣−h∣=−1.0,=h∣h∣−∣0∣=1.0.
左右の極限が −1.0 と 1.0 で一致しないので、∣t∣ は t=0 で微分可能ではありません。
連鎖律の公式 f′(g(0))⋅g′(0)=1⋅g′(0) を使おうとしても、g′(0) が存在しないので適用できません。内側の関数が微分可能であるという仮定は省略できないのです。
反例 CEX-M4-3: 多変数で経路を1本だけ数える誤り
THM-M4-2 で2つの経路の片方を落とすと、正しい値が得られないことを示します。
z=f(x,y)=x2+y2 で x=s+t, y=s−t とします。(s,t)=(2,1) で評価します。
正しい連鎖律を適用すると
∂s∂z=∂x∂f∂s∂x+∂y∂f∂s∂y=2x⋅1+2y⋅1=4s.
(s,t)=(2,1) で x=3, y=1 ですから ∂z/∂s=8.0 です。
x の経路だけを数えて y の経路を落とすと
誤差は 8.0−6.0=2.0 です。正しい値の25%もずれています。多変数の連鎖律ではすべての経路を漏れなく足す必要があります。
6. 数値例 ― 連鎖律と数値微分を比べる
連鎖律の値と数値微分の比較
f(g(t))=(sint)2 の t=1.0(ラジアン)における導関数を、連鎖律と数値微分で比べます。
連鎖律を適用します。f(x)=x2, g(t)=sint なので
dtd(sint)2=2sint⋅cost=sin(2t).
t=1.0 で sin(2.0)=0.9092974268 です。
中心差分 2h(sin(t+h))2−(sin(t−h))2 による数値微分の結果を並べます。
| h |
数値微分の値 |
誤差 |
| 0.1 |
0.9032475564 |
6.05×10−3 |
| 0.01 |
0.9092368082 |
6.06×10−5 |
| 0.001 |
0.9092968206 |
6.06×10−7 |
| 0.0001 |
0.9092974208 |
6.03×10−9 |
h を 1/10 にするたびに誤差がおよそ 1/100 になっています。中心差分の誤差は O(h2) なので、この振る舞いは理論通りです。
二次の項が刻みの二乗で縮む様子
f(x)=x2, x0=3 でテイラー展開の一次近似の残差が h2 に等しいことを確認します。
一次近似は f(x0)+f′(x0)h=9+6h ですから、残差はちょうど h2 です。
| h |
f(x0+h) |
一次近似 |
残差 |
h2 |
| 1.0 |
16.0 |
15.0 |
1.0 |
1.0 |
| 0.5 |
12.25 |
12.0 |
0.25 |
0.25 |
| 0.1 |
9.61 |
9.6 |
0.01 |
0.01 |
| 0.01 |
9.0601 |
9.06 |
0.0001 |
0.0001 |
| 0.001 |
9.006001 |
9.006 |
10−6 |
10−6 |
残差と h2 が完全に一致しています。これが「h の二乗のオーダーで消える」ことの具体例です。
二乗和が消えない経路の数値
T=1.0 で n を増やしたとき、粗い経路(Δxi=(−1)ih)と滑らかな経路(Δxi=h)の二乗和を比べます。
| n |
h |
二乗和(粗い経路) |
二乗和(滑らかな経路) |
| 10 |
0.1 |
1.0 |
0.1 |
| 100 |
0.01 |
1.0 |
0.01 |
| 1000 |
0.001 |
1.0 |
0.001 |
| 10000 |
0.0001 |
1.0 |
0.0001 |
滑らかな経路では二乗和が h に比例して 0 に向かいますが、粗い経路では n によらず 1.0 のままです。二次の項は f′′(x)/2 倍されて 1.0 に留まります。二次の項が消えない経路が存在する ― これが THM-M4-3 の仮定が破れる場面です。
7. 次回へ ― ガウス積分を自分の手で出す
連鎖律は、関数を合成したときの導関数を一次の項だけで書く道具でした。その正当性は「二次の項が (Δx)2 のオーダーで消える」ことに支えられています。しかし反例 CEX-M4-1 で見たように、変化量が Δx のオーダーで動く経路では、二次の項は消えません。このとき連鎖律はそのままでは使えず、二次の項を明示的に加えた修正が必要になります。それが本編第59回の伊藤の補題です。
次回 M5 では、積分の技法とガウス積分を扱います。2π を自分の手で出す計算を完全に追います。
よくある質問
なぜ連鎖律を今さら徹底するのですか
伊藤の補題が連鎖律のどこを修正したものかを、正確に見るためです。
二次の項はなぜ普段は出てこないのですか
変化の二乗が小さすぎて、極限で消えてしまうからです。
消えない場合があるのですか
あります。変動が非常に粗い経路では二乗の和が残ります。それが確率解析の出発点です。
参考文献
- 杉浦光夫、解析入門I、東京大学出版会、1980年
- Øksendal B.、Stochastic Differential Equations、第6版、Springer、2003年
数値例は compute.py により計算済み。浮動小数点は有効桁10桁で丸めている。