ヤコビアンってなんですか?
先日、後輩くんが確率の授業でヤコビアンを見たらしい。
解析学について学習する機会の少ない文系の学生にとって
ヤコビアンが初めて登場するのは確率・統計の授業
とくに、変数変換 のパートではじめて登場する。
文系学生にとって、変数変換くらいでしか出てこない
ヤコビアンはなかなか、お友達になりにくい概念である。
「ヤコビアンってなんですか」という質問で知りたいことは
ヤコビアンの定義ではなく、もっと別のことである。
簡単な例で彼の疑問について考えてみよう。
$X$ が確率分布$f(x)$にしたがう確率変数だとする。
$X$ をつかって、新しい変数 $Z$ を次のように定義しよう。
\[Z = \frac{1}{2} X\]
$Z$ は確率変数 $X$ の関数になっているので、$Z$ も確率変数である。
それでは、$Z$ はどのような分布にしたがうのだろうか?
$Z$ は次のような式に変形できる。
\[ X = 2Z \]
したがって、 $X$ の分布 $f(x)$ に $2Z$をそのまま代入すればよさそうである
しかし、実際には$Z$の分布は次のようになる。
$X$が離散なら $Z$の分布は$f(2z)$
$X$が連続なら $Z$の分布は$f(2z)\times 2$
離散の場合は $X=2Z$ を $f(x)$に代入しただけなのに対して
連続の場合は 、それに加えて $2$が掛けられている。
テキストを読んでみると、この $2$ という数字は
$\partial x / \partial z$ の計算結果であることまではわかる。
しかし、
何で離散のときは代入するだけでいいのに、連続だとダメなの!?
だろうか。
連続の場合に掛け算される $\partial x / \partial z$ は
「ヤコビアン」と呼ばれている。
ヤコビアンの定義はテキストで、簡単に見つけられる。
偏微分の行列に行列式のマークまでついていて
複雑そうだが、計算自体はそれほど難しくない。
しかし、知りたいのはヤコビアンの定義や計算方法ではなく
なぜ連続の場合は、代入するだけじゃダメで、
ヤコビアンなんてものを掛ける必要があるの?
という点だ。
これが分からないので
「計算はできるんだけど、ヤコビアンって結局よく分からない。」
となるパターンが多い。
この疑問に対して、
私なりの回答をこのノートに記しておくことにする。
結論からいえば
連続の場合でも、そのまま代入してよい!
のである。
ただし、正しく代入できるならという条件つきである。
正しく代入するとは、どういうことなのだろうか?
解答の出発点は $f(x)$ は”なにを表しているのか”という点である。
離散の場合、 $f(x)$ はまぎれもなく”確率”を意味している。
しかしながら
連続の場合、$f(x)$ は確率ではない!
確率変数が連続であるとき、 $f(x)$ は”密度関数”を意味する。
密度関数はその”面積”、一般的には”積分”が確率を表している。
ゆえに、正確に確率を意味するのは次式である。
\[ \int f(x) dx \]
代入するだけでよいなら $f(x)$ を $f(2z)$ に置き換えればよさそうである。
そこで、上記の式の $f(x)$ を $f(2z)$ に置き換えてみよう。
\[ \int f(2z) dx \]
この式はとても変である。
なぜなら、関数は $z$ に依存しているにもかかわらず、
積分は $x$ で指定されているからである。
この式をまともな式にしたいならば
$dx$ を $dz$ に置き換えればよさそうであるが…
問題はこのステップである。
$dx$ は勝手に置き換えてもいい記号なのだろうか?
という疑問が生じる。
積分に慣れていない人からすれば
$dx$ は「この変数で積分してくださいね」というマークくらいの意味しかない。
実は $dx$ という記号は
勝手に置き換えてはダメ!!
なのである。
そこでそもそも「積分ってなんなのか」、すなわち積分の定義をみてみよう。
■積分の定義■
\[
\int f(x) dx = \lim_{n\rightarrow \infty} \sum_{i=1}^{n-1} f(x_i) (x_{i+1}-x_{i}) \]
ここで注目してほしいことは、次のような対応関係があることだ。
【対応関係】
$\int$ $\sum$
$f(x)$ $f(x_i)$
$dx$ $(x_{i+1}-x_{i})$
積分の定義については次回詳しく触れるとして
今回は $dx$ のみに注目することにする。
いま $x=2z$ を代入することを考えていたので $f(2z)$ に置き換えたわけだ。
しかし、この対応関係を見てみると $(x_{i+1}-x_{i})$ すなわち、
$dx$ にも$x=2z$ を代入しなければならないのでは??
と考えて当然だろう。
今回の問題だけを考えるならば次のように式変形できる。
積分の定義より
\[ \int f(x) dx = \lim_{n\rightarrow \infty} \sum_{i=1}^{n-1} f(x_i) (x_{i+1}-x_{i}) \]
$x=2z$ を代入
\[ \lim_{n\rightarrow \infty} \sum_{i}^{n-1} f(x_i) (x_{i+1}-x_{i}) = \lim_{n\rightarrow \infty} \sum_{i}^{n-1} f(2z_i) (2z_{i+1}-2z_{i}) \]
式を整理($2$ を前に出した)
\[ \lim_{n\rightarrow \infty} \sum_{i}^{n-1} f(2z_i) (2z_{i+1}-2z_{i}) = \lim_{n\rightarrow \infty} \sum_{i}^{n-1} f(2z_i) 2 (z_{i+1}-z_{i})\]
積分の定義
\[\lim_{n\rightarrow \infty} \sum_{i}^{n-1} f(2z_i) 2 (z_{i+1}-z_{i})= \int f(2z) 2 dz\]
上記より、$Z$ の密度関数は $f(2z)\times 2$ になることがわかる。
式展開は「代入しただけ」である。
ポイントは、$dx$ にも $x=2z$ を代入しなければならないということである。
ここまで話をすると、先ほどの変数変換の式が自然に見えるだろう。
$X$が離散なら $Z$の分布は$f(2z)$
$X$が連続なら $Z$の分布は$f(2z)\times 2$
一般的には $dx$ は微小な変化を表すので
ヤコビアン $J$ を以下のように定義しておくと
\[ J = \partial x / \partial z \]
次の式が成立する。
\[ dx = J \times dz \]
この式は文字通り $dx$ にも $z$ を代入するということを意味している。
まとめると
変数変換をする場合は離散・連続にかかわらず、
そのまま代入すればよい。
ただし、$dx$ にも $z$ を代入する必要があるのである。