多変量正規分布 3: 身長・体重を回転するってなんだよ?

「多変量正規分布」シリーズはしばらく間が空きそうなので、ここで、動機とか見通しとかを、後で思い出すためのメモとして残しておきます。

「多変量正規分布」とタイトルを付けながら、過去2回はアフィン空間の話だけでした。

なぜにアフィン空間から始めているのか? それでなんかいいことあるのか? を主題としますが、系統的ではなく、まー雑談です。

内容:

身長と体重のモデル

最初の回に次のように言いました。

Rnを使う」ってことは、基底(あるいは座標)を固定していることになります。基底〈座標〉に依存するのが、なんかイヤだなー、って気がします。

...[snip]... アフィン空間をベクトル空間で代用しても特に問題はないですが、原点を固定して扱うのが若干気持ち悪い。

「イヤだなー」「気持ち悪い」を解消するために、アフィン空間上で、基底〈座標〉によらないスタイルで多変量正規分布を定義したいと思います。

「イヤだなー」「気持ち悪い」の感じを、具体例で説明します。Pを、すべての日本人成人男性からなる集合とします。有限集合Sの個数(基数)を #(S) と書くことにします。S⊆P に対して、μ(S) := #(S)/#(P) とすると、μは有限集合P上の確率測度になります。(P, Pow(P), μ) は確率空間です(Pow(P)はPのベキ集合)。

h:P→R を、人の身長をセンチメートル単位で正確に測る関数とします。P上に確率測度が載っていて、Rには標準的な可測構造があることから、h:P→R は確率変数です。「正確に測る」と強調したのは、確率変数は、定義により確率的揺らぎ/誤差があってはならないからです。そう、確率変数とは、非確率的な関数のことでした。

Pが有限集合なので、前送り測度 h*(μ) はR上の有限離散測度になります。有限離散測度を連続測度*1で近似することにします。たぶん、1変量〈1次元〉正規分布でそこそこ近似できるでしょう。

w:P→R を、人の体重をキログラム単位で正確に測る関数とします。hの場合と同じように、wは確率変数(単なる普通の関数)になり、その前送り測度は、1変量正規分布で近似できるとします。

hとwのデカルトペアを <h, w> と書きます。

  • <h, w>:P→R2
  • For p∈P, <h, w>(p) := (h(p), w(p)) ∈R2

確率変数hとwは独立ではないでしょうが、写像 <h, w> による前送り測度 <h, w>*(μ) は、R2上の測度で、2変量正規分布で近似できそうです。

日本人成人男性の身長・体重が、どの程度2変量正規分布で近似できるのか知りません。仮にあまりうまく近似できないとしても、2つの実数値確率変数 h, w と、その同時分布である2変量正規分布を想定します。

想定した構造は、(P, Pow(P), μ, <h, w>) と書けますが、これは次の記事で述べた母集団構造になります。

そのユークリッド空間に意味があるの?

前節のような現実的な*2背景があっても、「R2で考える」ときは、背景は忘れてしまいます。あらためて、「R2上に確率分布が載っている状況」からスタートします。

このとき、R2を、標準的な方法でベクトル空間と考えます。それだけではなくて、R2内積ベクトル空間と考えることがあります。多変量正規分布に関する多くの議論が内積に依存します。

R2上の典型的・標準的な内積は、次で与えられます。

  • For x, y∈R2, (x|y) := x1y1 + x2y2

この内積から長さや角度が定義できて、長さ・角度を変えない回転変換なども定義できます。例えば、反時計回りに45度の回転は次の行列で表現できます。

 \begin{bmatrix}\frac{\sqrt{2}}{2} & -\frac{\sqrt{2}}{2} \\ \frac{\sqrt{2}}{2} & \frac{\sqrt{2}}{2} \\ \end{bmatrix}

さて、現実的な状況に戻ると、(170cm, 65kg) という身長・体重データは、次の計算で45度回転できます。

 \begin{bmatrix}\frac{\sqrt{2}}{2} & -\frac{\sqrt{2}}{2} \\ \frac{\sqrt{2}}{2} & \frac{\sqrt{2}}{2} \\ \end{bmatrix}\begin{bmatrix}170 \\ 65\end{bmatrix}

およそ、(74.2cm, 166kg) になります。あるいは平均値からの変位ベクトル(偏差ベクトル)として (5cm, 10kg) をとって、それを45度回転すると (-2.8cm, 11kg) となります。

2次元の分布を扱うとき、回転のような操作は必須なのです*3が、回転角に何らかの意味があるのでしょうか? 長さや角の値は計算できますが、現実的・構造的な意味は見当たりません*4

最初の設定では、身長はセンチメートル単位、体重はキログラム単位でした。これを、身長はフィート単位、体重はポンド単位とした測定を <h', w'> としましょう。

  • 1フィート=30.48センチメートル
  • 1ポンド=0.453592キログラム

なので、センチメートル・キログラムの測定値 (x1, x2) からフィート・ポンドの測定値 (v1, v2) への変換を2桁までで表現すれば:

  • v1フィート = v1×30センチメートル = x1センチメートル
  • v2ポンド = v2×0.45キログラム = x2キログラム

つまり、

  • x1 = 30v1
  • x2 = 0.45v2

最初に設定した内積 x1y1 + x2y2 を (v1, v2), (w1, w2) により計算しようとすると、

  • 900v1w1 + 0.2025v2w2

しかし、(v1, v2), (w1, w2) に対する簡単な内積

  • v1w1 + v2w2

です。フィート・ポンド単位系よりセンチメートル・キログラム単位系がエライという根拠は何もありません。どんな単位系を選んだとしても、選んだ単位系の必然性、定義した内積の必然性は主張できません。

そうなると、R2上の内積構造は、現実的な意味もないし、定義の必然性もないことになります。無意味で恣意的な選択をしているのです。

内積なしの議論とアドホック内積による議論

背景となる意味的な状況まで考えると、R2上に便宜的に設定する内積の意味付けは困難です。この困難を回避するひとつの方法は、

内積なしで議論をするなら、当然に内積の意味付けは不要です。

また、センチメートル・キログラムで測る確率変数 <h, w> と、フィート・ポンドで測る確率変数 <h', w'> のどちらがよいか? 相互変換はどうするか? とかも、R2上で話をしようとするから出現する煩雑さです。一般に、Rnへの写像は“座標”と呼べるので、煩雑さを避けたいなら、

  • 座標を使わない。

という方針になるでしょう。

しかし、内積も座標もまったく使わないのはシンドイのも確かです。具体的な計算をしたいときは、内積や座標を設定せざるを得ません。なので、内積や座標の使用を禁じることはできません。が、計算の便宜上導入したモノと、構造に内在するモノを区別する必要はあります。

身長・体重の例でいえば、R2の標準ユークリッド内積 x1y1 + x2y2 は便宜上・暫定的でエエカゲン・無根拠に選んだモノですが、2次元正規分布のマハラノビス内積(マハラノビス距離のもとになる内積)は構造的な意味を持ちます。

便宜上・暫定的な内積アドホック内積と呼ぶことにすれば:

座標の使用もまったく同じで:

  • 座標の使用を禁じるわけではない。
  • 座標を使った議論では、主張が恣意的に選んだ座標に依存しないことを示す必要がある。

アドホック内積に隠れてしまう構造と意味

アドホック内積の使用法で、「双対空間を出さずに済ませる手段」として使っていることがけっこう多いです。ベクトル空間Vの(標準的)双対空間の要素はコベクトルとか形式と呼ばれ、その実体は、f:V→R という線形関数です。Vに内積を導入すれば、fの代わりにVの要素vを使えます。内積を表す記号を ( | ) として:

  • f(x) = (v|x)

双対空間をちゃんと使えば、この用途のアドホック内積は不要になります。

アドホック内積により、ベクトル空間Vと双対ベクトル空間V*が同一視されてしまうために、V上の現象とV*上の現象の区別も付かなくなってしまいます。例えば、複数の確率変数 fi:V→R (i = 1, 2, ..., n)の分散・共分散行列は、V*上の二次形式の表現だし、正規分布の密度関数で指数の肩に載る量はV上の二次形式です。

アドホック内積を避けた直接的な定式化を探ると共に、アドホック内積の介入により、何がどのような影響を受けるかも調べる必要があります。

このような動機により、多変量正規分布の舞台を、内積を持たないアフィン空間に設定したわけです。

*1:正確には、R上の標準ルベーグ測度に関する絶対連続測度。

*2:ほんとの現実というより、例題としてのフィクションのなかの“現実”だけど。

*3:例えば、平行移動と適当な“回転”により、確率変数を無相関化できます。

*4:値そのものではなく、値から導かれる順序や位相のような定性的な構造には意味を見いだせます。