seegongsik
単語帳
工業数学

固有ベクトルは向きが変わらないベクトルだ

線形代数のラスボス、固有値と固有ベクトルです。名前は恐ろしいですが、中身は単純です。5講で、行列は空間を丸ごと回し、伸ばす変換だと言いました。すると、ほとんどのベクトルは変換を経て向きをぐいっとねじられます。でも、ほんの一部の特別な方向は、まったくねじられず、その場で伸びたり縮んだりするだけなんです。そのねじられない方向が固有ベクトルで、どれだけ伸びたかが固有値です。これだけなんです。そしてこの二つが、5・6・7講で見たものを一か所に集めてくれます。

まず「ほとんどの方向はねじられる」を見ましょう。変換 A を一つ仕掛けておきます。矢印を一本、円に沿ってぐるっと回してみてください。元の向き(薄い矢印)と変換後の向き(濃い矢印)を一緒に出してあります。ほとんどの角度で、二つは別の方向を指しますね。変換がそのベクトルを元の直線から押しのけたんです。上を向いていたものが斜めを向き、右を向いていたものが上に持ち上がる。これがふつうです。変換は向きをあちこちにかき乱します。

vA·v
二つの角度差 = 10°
矢印を円に沿って回す

ところが回し続けると、ある特別な角度で、濃い矢印が薄い矢印とちょうど同じ直線の上にぴたりと乗ります。向きはそのままで、長さだけが変わったんです。まさにそこ、その方向が固有ベクトルです。変換という激流の中でも流されず、自分の直線を守った方向ですね。その直線の上でどれだけ伸びたか、その倍数が固有値です。探してみてください。2次元なら、たいていこういう方向が二つ出てきます。変換はめちゃくちゃに見えても、実は「この方向だけは手をつけない」という自分だけの軸を持っているんです。

vA·v
λ₁ = 1.84 · λ₂ = 0.86
固有方向を探して回す

固有値がその方向でちょうど何をするのか、見てみましょう。固有ベクトルの上に乗ると、変換はただの「何倍か」です。固有値が2なら、その方向に二倍に伸び、0.5なら半分に縮み、1ならそのまま。マイナスなら? 同じ直線の上で反対側にひっくり返ります。向き(直線)は守ったまま、前後だけが入れ替わるんです。スライダーでいろんな変換を作りながら、各固有ベクトルの固有値を確かめてみてください。複雑に見えた変換が、固有ベクトルの方向にかぎっては、たった一つの素朴な掛け算に縮みます。

a1.5
b0.5
c0.5
d1.5
λ₁ = 2.00λ₂ = 1.00

ここが本当に美しいところです。格子を、いつもの縦横ではなく固有ベクトルの方向に沿って描き直すと、変換がまったく違って見えます。回すことも、ねじることもなく、ただ各軸をそれぞれの固有値だけ伸ばすだけ。あの複雑な行列が、固有ベクトルを軸にした座標系では、「軸ごとに何倍か」というすっきりした形になるんです。トグルで格子を固有軸に合わせてワープさせてみてください。固有ベクトルは、その変換にとっていちばん自然な軸です。その軸から見れば、どんな変換もいちばん単純な顔を見せてくれます。

A

では、この方向をどうやって見つけるのでしょう? 固有ベクトル v は、A をかけた結果が、ただ λ 倍したのと同じになるベクトルです。式にすると Av = λv。これを移すと (A − λI)v = 0 になります。0でないベクトル v が0に送られたということは、変換 (A − λI) が空間をぺちゃんこにつぶしたということです。7講を覚えていますか? なら、その行列式は0でなければなりません。だから det(A − λI) = 0 を λ について解けば、固有値が出てきます。6・7講の「行列式0=つぶれた=逆にたどれない」が、固有値を見つける鍵だったんです。おまけに、行列式は固有値を全部掛けた値になります。面積の倍率(6講)が、軸ごとに伸ばした倍数の積だということですね。ぜんぶつながります。

λ0.40
det(A − λI) = 0.66
det(A) = 1.58 = λ₁·λ₂ = 1.84·0.86
実際に使う固有ベクトルは、変換が自分の直線の上にそのまま残す方向で、そこでは λ 倍に伸ばすだけです。これがそのシステムの「自然な軸」です。工学のどこに出てくるかというと、構造物が震える固有振動数、材料の主応力の方向、データの主成分(PCA)、安定性の判定(揺らすと大きくなるか λ>1 / 収まるか λ<1)まで、ぜんぶ固有値の話です。大きな線形システムに出会ったら、固有ベクトルを見つけるとは、それが互いに独立な単純な伸ばしに分かれる方向を見つけることなんです。計算は det(A − λI) = 0 で(6・7講)、検算は行列式=固有値の積で。
このページがお役に立ったなら寄付する
工業数学