位置: 数学編 第C部 第15回 / 前提: M3, M5, M14 / 数学編: M15 / この回でできるようになること: 変数変換で密度関数を導き、対数正規分布の密度を自分で書くことができる
目次
0. 物語 ― 導関数の因子を忘れる誤り
トレーディングデスクで、新人のリスク管理担当が株価の分布を計算しています。日次リターンの対数が正規分布に従うことは教科書で学びました。そこから株価そのものの分布を出そうとして、正規分布の式に対数を代入しただけの関数を書きました。グラフの形はそれらしく見えます。
ところが、先輩がその関数を全区間にわたって積分してみると、合計が約1.02になってしまいました。確率の密度関数は、全体を足し合わせるとちょうど1にならなければいけません。1.02では確率が2%も余っています。これは密度関数の定義を満たさないので、このままではリスク計算の土台が崩れます。
原因は、変数を変えたときに生じる「伸び縮みの補正」を忘れたことでした。対数リターンから株価に変換するには指数関数を使いますが、指数関数は値が大きいほど急激に伸びます。株価が高い領域では、同じ幅の区間に押し込まれる確率が薄まるため、密度を小さくする因子が必要です。この因子は、逆変換である対数関数の傾き、つまり「株価分の1」にあたります。新人はこの因子を落としたために、高い株価のあたりに密度を割り振りすぎて、合計が1を超えてしまったのです。
正しい対数正規分布の密度は、正規分布の式に対数を入れたうえで、株価分の1を掛けたものです。この因子を入れれば積分はぴったり1になります。変数を変えれば分布も変わりますが、ただ式を書き換えるだけでは足りません。変換が区間を伸び縮みさせる分だけ、密度に補正が必要です。この補正がどこから来るのかを、この記事で証明します。
1. 動機 ― 変数を変えると分布はどう変わるか
この回を読み終えると、変数変換で密度関数を導き、対数正規分布の密度を自分で書くことができます。
確率変数 X の分布がわかっているとき、Y=g(X) の分布はどうなるのか。金融では「収益率が正規分布に従うとき、価格はどんな分布か」という問いがこの形をしています。g=exp を入れれば、対数正規分布が出てきます。
しかし、密度を単純に fX(g−1(y)) と書き換えるだけでは足りません。変換が区間を伸び縮みさせる分だけ、密度に補正因子が掛かります。1変数では逆関数の導関数の絶対値、多変数ではヤコビ行列の行列式の絶対値です。この因子を忘れると、確率の総和が1になりません。
この記事では、1変数の変換公式を証明し、多変数への拡張を述べ、応用として対数正規分布の密度を導きます。
この記事で証明すること
- THM-M15-1 単調で微分可能な変換 Y=g(X) の密度は、X の密度を逆関数で引き戻し、逆関数の導関数の絶対値を掛けたものになります。
- THM-M15-2 多変数の場合は、導関数の絶対値の代わりにヤコビ行列の行列式の絶対値(ヤコビアン)が現れます。
- THM-M15-3 X∼N(m,s2) のとき、eX の密度は ys2π1exp(−2s2(logy−m)2) です。
2. 設定と仮定 ― 密度を持つ確率変数と単調な変換
以下の仮定を置きます。
- 確率変数 X は密度関数 fX を持ちます。つまり任意の区間 [a,b] に対して P(a≤X≤b)=∫abfX(x)dx が成り立ちます。
- 変換 g は定義域で狭義単調かつ微分可能です。
- g が狭義単調増加のとき、逆関数 g−1 が存在して微分可能です。狭義単調減少のときも同様です。
- 単調でない場合は、定義域を単調な区間に分けてそれぞれの寄与を足します。
- 多変数の場合は、変換が一対一で、ヤコビアン(ヤコビ行列の行列式)が0にならないことを要求します。
- 数値例では、シミュレーションで密度を検算します。
これらの仮定のもとで、変換後の確率変数の密度を求めます。
3. 主張 ― 密度には導関数の因子が掛かる
定理 THM-M15-1(1変数の密度の変換公式)
X が密度 fX を持ち、g が狭義単調かつ微分可能で g′(x)=0 であるとする。Y=g(X) とおくと、Y の密度は
fY(y)=fX(g−1(y))(g−1)′(y)(1)で与えられる。
∣(g−1)′(y)∣ の因子が、変換による区間の伸び縮みを補正しています。g が急な関数であれば逆関数は緩やかになり、この因子は小さくなります。密度が薄まるということです。
定理 THM-M15-2(多変数の変換公式)
X=(X1,…,Xn) が密度 fX を持ち、g:Rn→Rn が一対一かつ微分可能で、ヤコビ行列 Jg の行列式がいたるところ 0 でないとする。Y=g(X) とおくと、Y の密度は
fY(y)=fX(g−1(y))detJg−1(y)(2)で与えられる。
1変数では ∣(g−1)′(y)∣ だった因子が、多変数ではヤコビ行列の行列式の絶対値 ∣detJg−1(y)∣ に一般化されます。1変数は n=1 の特殊な場合です。
定理 THM-M15-3(対数正規分布の密度)
X が平均 m、分散 s2 の正規分布に従うとき、Y=eX の密度は
fY(y)=ys2π1exp(−2s2(logy−m)2),y>0(3)である。
これが対数正規分布の密度です。名前の由来は「対数を取ると正規分布に戻る」ことです。
証明を読む(読まなくても記事は完結します)
4. 証明 ― 分布関数を経由して微分する
この節は読まなくても記事は完結します。
この証明を追いたい人は、数学編 第3回「偏微分、全微分、多変数のテイラー展開」、数学編 第5回「積分の技法とガウス積分」、数学編 第14回「ルベーグ積分」へ。
THM-M15-1 の証明
分布関数を経由します。Y=g(X) の分布関数 FY(y)=P(Y≤y) を計算し、微分して密度を得ます。
場合1: g が狭義単調増加のとき。
g が狭義単調増加なので、g(X)≤y と X≤g−1(y) は同値です。順序を保存するためです。したがって
FY(y)=P(g(X)≤y)=P(X≤g−1(y))=FX(g−1(y)).(4.1)
密度は分布関数の導関数ですから、合成関数の微分法(連鎖律)を使って y で微分します。
fY(y)=FY′(y)=FX′(g−1(y))⋅(g−1)′(y)=fX(g−1(y))⋅(g−1)′(y).(4.2)
g が狭義単調増加なら g′>0 で、逆関数の微分法から (g−1)′(y)=1/g′(g−1(y))>0 です。したがって (g−1)′(y)=∣(g−1)′(y)∣ です。
場合2: g が狭義単調減少のとき。
g が狭義単調減少なので、g(X)≤y と X≥g−1(y) は同値です。順序が反転するためです。したがって
FY(y)=P(g(X)≤y)=P(X≥g−1(y))=1−FX(g−1(y)).(4.3)
y で微分すると
fY(y)=−fX(g−1(y))⋅(g−1)′(y).(4.4)
g が狭義単調減少なら g′<0 で、(g−1)′(y)<0 です。よって −(g−1)′(y)=∣(g−1)′(y)∣ が成り立ちます。
両方の場合をまとめると、
fY(y)=fX(g−1(y))∣(g−1)′(y)∣.
これが式 (1) です。 ∎
なぜ絶対値が必要なのかを補足します。密度は常に非負でなければなりません。単調増加のとき (g−1)′(y)>0 なので絶対値はそのまま、単調減少のとき (g−1)′(y)<0 なので符号を反転させます。絶対値を取ることで、どちらの場合も一つの公式に統一できます。
THM-M15-2 の証明の概要
多変数の場合も考え方は同じですが、分布関数の微分を行列式の変換に置き換えます。
Y=g(X) の確率を計算します。Y がある領域 A に入る確率は
P(Y∈A)=P(X∈g−1(A))=∫g−1(A)fX(x)dx.(4.5)
ここで重積分の変数変換公式を使います。x=g−1(y) と変数変換すると、体積要素が
と変わります。これを代入すると
P(Y∈A)=∫AfX(g−1(y))∣detJg−1(y)∣dy.(4.6)
これは Y の密度が fX(g−1(y))∣detJg−1(y)∣ であることを意味します。体積要素の変換に現れるヤコビアンが、1変数の (g−1)′(y) の自然な一般化です。 ∎
核心は重積分の変数変換公式です。1変数では dx=(g−1)′(y)dy という置換積分でしたが、多変数ではこれがヤコビアンに一般化されます。
THM-M15-3 の証明
THM-M15-1 を g(x)=ex に適用します。
逆関数の特定。 g(x)=ex は R 上で狭義単調増加です。逆関数は g−1(y)=logy(y>0)です。
逆関数の導関数の計算。 (g−1)′(y)=(logy)′=1/y です。y>0 なので 1/y>0 であり、∣(g−1)′(y)∣=1/y です。
X の密度の代入。 X∼N(m,s2) なので
fX(x)=s2π1exp(−2s2(x−m)2).
THM-M15-1 の式 (1) に代入します。引き戻しの操作として x=g−1(y)=logy を fX に入れます。
fY(y)=fX(g−1(y))⋅∣(g−1)′(y)∣=fX(logy)⋅y1=s2π1exp(−2s2(logy−m)2)⋅y1=ys2π1exp(−2s2(logy−m)2).(4.7)
これが式 (3) です。y>0 でのみ定義され、y≤0 では fY(y)=0 です。 ∎
証明は3つの部品の組み合わせだけです。逆関数 logy を特定し、その導関数 1/y を計算し、THM-M15-1 に代入しました。変換公式の威力は、このように「g と fX がわかれば fY が自動的に出る」点にあります。
単調でない場合の補足
g が単調でないとき、THM-M15-1 をそのまま当てることはできません。定義域を g が単調な区間に分割し、各区間からの寄与を足し合わせます。
たとえば Y=X2 は (−∞,0) で狭義単調減少、(0,∞) で狭義単調増加です。各区間で逆関数が −y と y になり、寄与を足すと
fY(y)=2yfX(y)+fX(−y),y>0.
単調な変換公式をそのまま当てると、片方の区間しか拾えず、密度が半分になります(CEX-M15-2 で数値的に確認します)。
5. 反例 ― 因子を忘れると確率が1にならない
CEX-M15-1: ヤコビアンの因子を落とす誤り
THM-M15-3 の対数正規分布の密度から、導関数の因子 1/y を落としてみます。すなわち
f~(y)=s2π1exp(−2s2(logy−m)2)
とします。これは正規分布の密度に logy を入れただけで、ヤコビアンの補正をしていません。
m=0、s=0.2 で数値積分すると ∫0∞f~(y)dy=1.020201 となり、1を超えます。密度の定義(積分が1)を満たしません。正しい密度では ∫0∞fY(y)dy=1.0 です。
ヤコビアンの因子を忘れることは「区間の伸び縮みを無視すること」であり、確率の総量が保存されなくなります。
CEX-M15-2: 単調でない変換に公式をそのまま当てる
X∼N(0,1) とし、Y=X2 を考えます。g(x)=x2 は単調ではありませんが、正の側の逆関数 g−1(y)=y だけを使って THM-M15-1 を当ててみます。
数値積分すると ∫0∞f~Y(y)dy=0.5 です。正しい密度(両方の区間を足したもの)では ∫0∞fY(y)dy=1.0 です。
密度がちょうど半分になるのは、g(x)=x2 が正の側と負の側で2通りの x を1つの y に潰すからです。片側しか拾わなければ、確率が半分しか集まりません。単調でない変換では、THM-M15-1 の仮定(狭義単調)が壊れていることを意識し、区間を分けて足す必要があります。
CEX-M15-3: 期待値は単純に変換できない
X∼N(m,s2) のとき、E[eX] と eE[X] は一般に一致しません。m=0、s=0.2 で計算します。
正規分布のモーメント母関数から E[eX]=em+s2/2 です。一方 eE[X]=em です。
E[eX]eE[X]=e0+0.04/2=e0.02=1.020201,=e0=1.0.
差は 0.020201 です。シミュレーション(100万回)でも E[eX]≈1.01988 と理論値に近い値が得られます。
ex は下に凸な関数です。イェンセンの不等式により E[eX]≥eE[X] が成り立ちます。等号が成り立つのは X が定数のとき、すなわち分散が0のときだけです。ずれの大きさは分散 s2 で支配され、補正項は s2/2=0.02 です。
「X が平均0なのだから eX の平均も e0=1 だろう」という直感は間違いです。分散があると、対数正規分布の期待値は常に eE[X] より大きくなります。
6. 数値例 ― 対数正規分布の密度を検算する
m=0、s=0.2 の対数正規分布を数値で確認します。
理論値とシミュレーションの比較。 いくつかの点で密度を計算し、100万回のシミュレーション(X∼N(0,0.04) を生成して Y=eX を取る)と比べます。
| y |
理論値 fY(y) |
シミュレーション |
| 0.7 |
0.58098 |
0.5837 |
| 0.8 |
1.338072 |
1.3449 |
| 0.9 |
1.929188 |
1.9191 |
| 1.0 |
1.994711 |
1.9835 |
| 1.1 |
1.618725 |
1.6204 |
| 1.2 |
1.097092 |
1.0973 |
| 1.3 |
0.649013 |
0.6508 |
理論値とシミュレーションがよく一致しています。密度は y=1 付近でピークを取り、左右非対称な形をしています。右側の裾が長いのが対数正規分布の特徴です。
密度の積分。 理論密度を数値積分すると 1.0 になります。正しくヤコビアンの因子が入っている証拠です。
ヤコビアンを落とした場合。 因子 1/y を落とした密度の積分は 1.020201 です。これは es2/2=e0.02 に一致し、偶然ではありません。ヤコビアンを落とした密度の積分は E[eX] に等しくなるためです。
期待値の比較。 E[eX]=1.020201 に対し eE[X]=1.0 です。差 0.020201 は小さく見えますが、s=0.4 にすると e0.08−1≈0.0833 に、s=1 にすると e0.5−1≈0.6487 に広がります。分散が大きいほど、凸性の影響が顕著になります。
7. 次回へ ― 条件付き期待値は射影である
次回 M16 では、条件付き期待値を扱います。条件付き期待値は L2 空間への射影として定義できます。数学編の中で最も重要な回の一つです。
よくある質問
なぜ導関数が掛かるのですか
変換で区間が伸び縮みするからです。伸びた分だけ密度を薄める必要があります。
対数正規分布はなぜ大事なのですか
株価のモデルとして標準的に使われるからです。価格が負にならない点が便利です。
期待値は変換してもそのままですか
そのままではありません。凸な変換では期待値が上にずれます。
参考文献
- Casella G. and Berger R. L.、Statistical Inference、第2版、Duxbury、2002年
- 杉浦光夫、解析入門II、東京大学出版会、1985年
数値例は compute.py により計算済み。シミュレーションの乱数シードは 42 で固定。