見出し画像

積分の変数変換とヤコビアン行列

積分$${ \int f(\bm{x}) d\bm{x} ,\,\,\,\bm{x}\in \mathbb{R}^d}$$について考ます.$${ \bm{y}=(y_1,\cdots,y_d) }$$から$${ \bm{x}=(x_1,\cdots,x_d) }$$への関数$${ \bm{x}=\varphi(\bm{y})=(\varphi_1(\bm{y}),\cdots, \varphi_d(\bm{y}))}$$に対して$${\bm{y}}$$でのヤコビアン行列は

$${ J=\begin{pmatrix} \frac{\partial \varphi_1}{\partial y_1}(\bm{y}) & \cdots & \frac{\partial \varphi_1}{\partial y_d}(\bm{y}) \\ \vdots & \ddots & \vdots \\ \frac{\partial \varphi_d}{\partial y_1}(\bm{y}) & \cdots & \frac{\partial \varphi_d}{\partial y_d}(\bm{y}) \end{pmatrix} }$$

です.$${ \varphi( \bm{y} ) }$$が線形変換の場合、つまり

$${ \begin{pmatrix} x_1 \\ \vdots \\ x_d \end{pmatrix}=\begin{pmatrix} a_{11} & \cdots & a_{1d} \\ \vdots & \ddots & \vdots \\ a_{d1} & \cdots & a_{dd} \end{pmatrix} \begin{pmatrix} y_1 \\ \vdots \\ y_d \end{pmatrix} }$$

の場合を考えます.この変換でY座標系の各軸方向の基底ベクトル$${ (1,\cdots,0),\cdots,(0,\cdots,1) }$$はX座標系の$${ (a_{11},\cdots,a_{d1}),\cdots,(a_{1d},\cdots,a_{dd}) }$$に移ります.したがってこれらのベクトルで表される超平行体の体積を$${|S|}$$とするとY座標系で$${ (1,\cdots,0),\cdots,(0,\cdots,1) }$$で表される体積1の超立方体は変換により$${|S|}$$倍されるのでそれぞれの座標系での積分を等しくするにはY座標系側に$${|S|}$$を掛けて

$${ \int_{\varphi(A)} f(\bm{x}) d\bm{x} = \int_{A} f(\varphi(\bm{y}))|S|d\bm{y} }$$

とすれば良いことになります.この$${|S|}$$を二次元で具体的に求めてみます.$${(1,0),(0,1)}$$ がベクトル$${\bm{a_1}=(a_{11},a_{21}),\bm{a_2}=(a_{12},a_{22})}$$に移されとすると面積$${|S|}$$は2つのベクトルの成す角$${\theta}$$に対して

$${ |S| = \| \bm{a_1}\| \| \bm{a_2}\| \sin \theta = \| \bm{a_1}\| \| \bm{a_2}\| \sqrt{1-\cos^2 \theta}}$$

図1 平行四辺形の面積の計算

で表せます.上式は簡単な計算から$${|S|=a_{11}a_{22}-a_{12}a_{21}=\det A }$$となることが示せます.ただしこの式は$${\bm{a_1}}$$と$${\bm{a_2}}$$を入れ替えるとその符号が変わってしまいます.このことから絶対値を除いた$${S}$$を$${S=\det A}$$とあらためて置き符号付き面積と呼ぶことにします.ここでは2次元の場合を示しましたが3次元の場合も底辺の面積を求め、高さを算出することで体積を求めることができます.では$${d}$$次元場合はどうなるでしょうか.そもそも$${d}$$の超平行体の体積はどのように定義されるのでしょうか.そこで符号付き面積がもつ次の2つの特徴に注目します.$${S}$$は

多重線形性:
$${ f(\alpha\bm{a}_1+\beta\bm{b}_1,\bm{a}_2)=\alpha f(\bm{a}_1,\bm{a}_2)+\beta f(\bm{b}_1,\bm{a}_2) }$$
$${ f(\bm{a}_1,\alpha\bm{a}_2+\beta\bm{b}_2)=\alpha f(\bm{a}_1,\bm{a}_2)+\beta f(\bm{a}_1,\bm{b}_2) }$$

交代性:
$${ f(\bm{a}_1,\bm{a}_2)=-f(\bm{a}_2,\bm{a}_1) }$$

という2つの性質を持ちます.上記は簡単に確認できると思います.ここでこの2つの特徴を一般化した

多重線形性(一般次元):
$${ f(\bm{b}_1,\cdots,\alpha\bm{a}_k+\beta\bm{b}_k,\cdots,\bm{a}_d)=\alpha f(\bm{b}_1,\cdots,\bm{a}_k,\cdots,\bm{a}_d)+\beta f(\bm{b}_1,\cdots,\bm{b}_k,\cdots,\bm{a}_d) }$$

交代性(一般次元):
$${ f(\bm{a}_1,\cdots,\bm{a}_k,\cdots,\bm{a}_l,\cdots,\bm{a}_d)=-f(\bm{a}_1,\cdots,\bm{a}_l,\cdots,\bm{a}_k,\cdots,\bm{a}_d) }$$

を考えます.ことのき$${d}$$次元ベクトル$${\bm{a}_1,\cdots,\bm{a}_d}$$の関数で上記の多重線形性と交代性をもつ関数は(定数倍を除いて)行列式に一致することが示されます.この2つの性質は(符号付きの)超平行体の体積が持つべき特徴と考えて良いでしょう.したがってこの性質を有する行列式によってベクトル$${\bm{a}_1,\cdots,\bm{a}_d}$$で表される超平行体の(符号付き)体積を定義します.

最後に一般の関数$${\varphi(\bm{y})}$$によって各辺の長さが1の超立方体がどのように変換されるかを考えます.線形変換の場合は変換による図形の拡大(縮小)率はどこでも同じですが一般の変換の場合は倍率は各地点$${ \bm{y} }$$によって変わってしまいます.一方で変換$${ \varphi(\bm{y})}$$は局所的にはテイラー展開によって

$${ \varphi(\bm{y}+\bm{h}) = \varphi(\bm{y}) + J(\bm{y}) \bm{h}+\cdots }$$

で与えられます($${J(\bm{y})}$$はヤコビアン行列).これから例えば2次元の場合、点$${ \bm{y}}$$にある$${ \bm{e}_1=(1,0), \bm{e}_2=(0,1)}$$で作られる正方形は高次の項を無視すると$${ \varphi (\bm{y} )}$$にある$${ J(\bm{x}) \bm{e}_1, J(\bm{x}) \bm{e}_2}$$で表される平行四辺形に移り(符号付き)面積は$${J(\bm{x})}$$の行列式、すなわちヤコビアン倍されます.ヤコビアンは各点で異なるので積分を行う場合は各点における瞬時の拡大率を掛けて積分すればよいと考えられます.以上の考察から

$${ \int _{\varphi(V)} f(\bm{x}) d\bm{x} = \int _{V} f(\varphi(\bm{y} )) |J(\bm{y})| d\bm{y} }$$

を得ます.もちろん厳密にはテイラー展開の2次以降の項が積分において影響しないことを示す必要がありますが基本的にはこれが積分の変数変換にヤコビアンが登場する理由です.

ヤコビアンはベイズ学習の学習係数の計算でも重要な役割を果たします.ベイズ学習の学習係数は積分で表される(学習の)ゼータ関数の計算によって得られます.その積分を行う際に(特異点解消による)座標変換を用いるためヤコビアンの計算が必要になります.

上記を書くためにあらためて調べてみると積分とヤコビアンについてすでにたくさんの優れた説明がありました.下記を参考にさせて頂きました.

こちらのドキュメントも大変参考になりました。
https://www.ms.u-tokyo.ac.jp/~aida/lecture/20/1-13.pdf
また軽く微分形式にも触れて説明しているサイトもありました.微分形式についてはまた折を見て説明したいです.


この記事が気に入ったらサポートをしてみませんか?