玄関雑学の部屋雑学コーナーベクトルと行列

9.固有値と固有ベクトル

1) 固有値と固有ベクトルの定義

n次の正方行列とn次元ベクトルについて、

=λ (n)  …… (9.1)

という式が成り立つ時、スカラー係数λを行列の「固有値(eigen valueまたはcharacteristic value)」、を「固有ベクトル(eigen vectorまたはcharacteristic vector)」といいます。 第6章で説明したように、行列はある座標系から見たベクトルを別の座標系から見たベクトルに変換する演算子の役目をします。 したがって固有ベクトルとは、座標変換の前後で大きさだけが変わり、方向が変わらないベクトルということになります。 ただし固有値は負の場合もありますので、実際には座標変換の前後でベクトルの方向が反対になることもありますが、これはベクトルの符号を変えただけであり方向は変わらないと広義に解釈します。

(9.1)式より、

−λn
−λnn  …… (9.2)

行列[−λn]の逆行列が存在する場合、(9.2)式は成り立ちません。 したがって[−λn]の逆行列が存在しない、つまりこの行列を特異にする時のλが固有値ということになります。 特異な行列の行列式は0になりますから、

ψz(λ)=|−λn|=






(z11−λ)


zi1


zn1






z1i


(zii−λ)


zni






z1n


zin


(znn−λ)







   =(-1)nλn+…+α1(-1)n-1λn-1+…+αi(-1)n-iλn-i+…+αn-1λ+αn=0
  …… (9.3)
       αi:行列式を展開した時の係数

という方程式の根が固有値になります。 この方程式を「固有方程式(eigen equationまたはcharacteristic equation)」といい、左辺つまりψz(λ)=|−λn|を「固有多項式(eigen polynomialまたはcharacteristic polynomial)」といいます。

例えば、次のような行列の固有値を求めてみましょう。




1
1
1
-1



−λn|=

(1−λ)
1
1
(-1−λ)


=-(1−λ)(1+λ)−1=λ2−2=0
∴λ=±√2

固有ベクトルについては(9.1)式より、





1

1
1

-1








x1

x2








x1+x2

x1−x2




=±√2・



±√2・x1

±√2・x2




∴λ=√2の時 x2=(√2−1)x1
 λ=-√2の時 x2=-(√2+1)x1

この方程式の解は不定になり、x1とx2の比率だけが求められ具体的な値は求められません。 これは固有ベクトルの特徴で、1次元の(9.2)式を解いてみるとそれがよくわかります。

−λnn
(z−λ)x=0
∴λ=z の時 x は不定になる

つまり、固有値とは(9.2)式のを不定にする値ということになります。 不定といっても、2次元以上の場合は上例のようにの成分間の関係式だけは求められます。 したがって、前例の固有ベクトルは次のような式で表わされることになります。

λ=√2の時 1=α


1
√2−1



  (α≠0)
λ=-√2の時 2=β


1
-(√2+1)



  (β≠0)

この式で表される固有ベクトル全体はn次元ベクトル空間中に部分空間を作り、それを「固有空間(eigen spaceまたはcharacteristic space)」といいます。 固有空間は対応する固有値が重根ではない時は1次元部分空間になり、重根の時はその重複度と同じ次元の部分空間になります。 固有空間のαとβの値を決めてやれば、具体的な固有ベクトルを求めることができます。 例えばα=β=1としますと、具体的な固有ベクトルは次のようになります。

λ=√2の時 1


1
√2−1



λ=-√2の時 2


1
-(√2+1)



検算のためにこれらを(9.1)式に代入してみますと、

1


1
1
1
-1






1
√2−1






√2
2−√2



=√2


1
√2−1



=λ11
2


1
1
1
-1






1
-(√2+1)






-√2
2+√2



=-√2


1
-(√2+1)



=λ22

となり、確かに式を満足しています。

第7章で述べたように、この座標変換の座標軸はの逆行列の成分ベクトルに対応します。 そこでの逆行列と成分ベクトルを求めると次のようになります。

-1


1/2
1/2
1/2
-1/2



  1


1/2
1/2



  2


1/2
-1/2



この成分ベクトル1図4のベクトル1の成分を2分の1にしたものであり、2図42の成分を2分の1にし、さらに方向を反対にしたものに相当します。 したがってこれらのベクトルに対応する座標軸は、基本的な座標軸を45度回転し、さらにそれを1に対応する座標軸を中心にして上下をひっくり返したものに対応します。

少々わかりにくいですが、図14において、固有ベクトル1とx1軸の角度はx1軸とy1軸の角度の半分になっており、固有ベクトル2とx2軸の角度は、x2軸とy2軸の角度の半分になっています。 このため、1をx1−x2の座標系から見た時もy1−y2の座標系から見た時も方向は変わりません。 また2については、対応する固有値が負ですので変換の前後で符号が変わり、2をx1−x2の座標系から見た時と、−2をy1−y2の座標系から見た時が同じ方向になります。

図14 固有値ベクトルの例

一般に固有ベクトルは単位ベクトル化することが多く、その場合はα=β=1とした時の固有ベクトルの大きさを計算し、その逆数をあらためてαとβとして固有ベクトルを求めます。

λ=√2の時 α=√{12+(√2−1)2}=√{2(2−√2)}

1 1
———————
√{2(2−√2)}



1
√2−1



λ=-√2の時 β=√{12+(√2+1)2}=√{2(2+√2)}
2 1
———————
√{2(2+√2)}



1
-(√2+1)



2) 固有値と固有ベクトルの性質

固有値と固有ベクトルは応用範囲が非常に広く、統計学だけでなく色々な分野で重要な役目を果たしています。 そのため「固有値問題」としてこれだけで独立した研究分野のようになっていて、多くの性質が明らかにされています。 その中で、主として統計学に役立つものを中心にして紹介しましょう。

3) 固有値と固有ベクトルの計算法

行列が5次以上の場合、(9.3)の固有方程式は5次以上の方程式になり、代数的に根を求めることができなくなります。 そこで、固有値と固有ベクトルを近似的に求める方法が色々と考案されています。 そのうち、多変量解析でよく利用される方法である「ベキ乗法(power method)」を紹介しましょう。 (注1)

行列のスペクトル分解の式(9.8)より、n次の対称行列をk乗すると、

k=λ1k11'+…+λikii'+…+λnknn'
  =λ1k{11'+…+(λi/λ1)kii'+…+(λn/λ1)knn'}  …… (9.9)

となります。 λ1を最大根とすると、kが十分に大きい時は、

λi/λ1<1 より (λi/λ1)k≒0
k≒λ1k11'

となります。 この式の両辺に任意のn次元ベクトル、例えばnを右から掛けますと、

knk≒λ1k11'n=λ1k1(1'n)=c・λ1k1 (c:1'n)

同様に(k−1)乗については、

k-1nk-1≒c・λ1k-11

したがって、kk-1の成分の比は、


vki
————
vk-1・i
 

λ1k
————
λ1k-1
 
=λ1

と、近似的に最大固有値λ1になります。 また、

kk-1nk-1≒λ1c・λ1k-11=λ1k-1
k-1≒λ1k-1

となり、k-1は近似的にλ1に対応した固有ベクトル1になります。

最大固有値λ1と固有ベクトル1が求められたら、(9.8)式を利用して、

(2)−λ111'

を更新します。 この更新された(2)とおきなおし、同様の方法で固有値と固有ベクトルを次々と抽出することによって、全ての固有値と固有ベクトルを求めることができます。

このベキ乗法は少し工夫すれば非対称行列にも適用できますし、大きい順に固有値を求めていき、必要なものだけ求めたら途中で計算を終了することができます。 したがって、主成分分析などの多変量解析で固有値と固有ベクトルを計算する時に便利です。

ベキ乗法以外にもGram−Schmidtの直交化法を応用して行列を直交化し、(9.7)式の原理によって固有値と固有ベクトルを一度に求めるQR分解法、固有方程式の近似解をニュートン法などを利用して求める直接法など多くの手法が開発されています。


(注1) 方程式の解の公式は昔から研究されていて、面白いエピソードが色々とあります。 1次方程式の解の公式と2次方程式の解の公式は古代メソポタミア文明や古代エジプト文明時代から知られていて、最初の発見者の名前は残念ながら知られていません。 これらの公式はごく簡単なので、色々な人が色々なところで独立に発見したのでしょう。

3次方程式の解の公式を最初に発見したのは、16世紀イタリアのダル・フェロ(Scipione dal Ferro)とタルターリャ(Nicolo Tartaglia=Nicolo Fontana)だと言われています。 最初にダル・フェロが特殊な形の3次方程式の解を発見し、その噂を聞いたタルターリャが独力で一般解を発見したようです。 しかし彼は当時の多くの数学者と同様に賭博師でもあり、方程式を早く解いた方が勝ちという勝負で稼いでいたので、この発見を自分だけの秘密にしていました。

ところがタルターリァの噂を聞きつけたやはりイタリアのカルダーノ(Gerolamo Cardano=Hieronymus Cardanus)が、タルターリャをおだて上げてその秘密を聞き出し、彼の許可を得ずに自著「アルス・マグナ(Ars magna de rebus algebraicis、高等代数学、代数の諸法則について)」(1545)に発表してしまったのです。 そのため3次方程式の解の公式は長らく「カルダーノの公式」と呼ばれてきましたが、現在では「タルターリャ・カルダーノの公式」と呼ばれるようになっています。

4次方程式の解の公式は、3次方程式の解の公式が発表されてから間もなくカルダノの弟子のフェラーリ(Ludovico Ferrari)が発見しました。 4次方程式の解の公式は3次方程式の解の公式を利用するので、3次方程式の解の公式がわかれば比較的簡単に発見できたのです。

さて、4次方程式の次は5次方程式もと期待したくなるのは人情というものです。 ところが5次方程式の解の公式は超難問であり、誰もそれを発見できないまま300年もたってしまいました。 そして19世紀になり、ついにノルウェーのアーベル(Niels Henrik Abel)が5次以上の方程式は代数的方法では解けない、つまり解の公式は存在しないことを証明します。 そしてその後、ガロア(Evariste Golois)が方程式が代数的に解けるための必要十分条件を解明し、現代数学で基本的な重要性を持つ群論の基礎を築きました。

ちなみに解の公式の解明に貢献した数学者のうち、カルダーノは自分の死ぬ日を予言し、予言を成就させるために自殺したとか、彼はタルターリャに対して行ったと同じようなことを他にも沢山やっていたので、その報いを受けて野垂れ死に同然の悲惨な死に方をしたとか言われています。

アーベルは信じられないような不運の連続と周囲の数学者達の無理解によって、失意と貧困のうちに26才で夭逝しました。 彼の天才と偉大な業績が認められ、ベルリン大学教授に指名されることになったという知らせが届いたのは、彼の死の二日後でした。

あまりにも純粋でありすぎた天才ガロアは、決闘に敗れてわずか21才で世を去りました。 決闘の前夜、徹夜で書き上げられた殴り書きの遺書こそが、方程式が代数的に解けるための必要十分条件を解明し、群論の基礎を築いた革命的な論文だったのです。