院生のための算数入門(9) 線形代数マニアックス

[mixi 2007-07-12]

線形代数」の教え方を考えたときに,問題になる点をいくつかあげよう.

***

まず,皆さんは「行列」といったときに,どういうものを思い浮かべるか.

1.正方形をした対称行列 (もしくはエルミート行列)
2.正方形をした一般の行列
3.長方形の行列

この3つのどれを考えるか,というのはかなり決定的な文化の差のように思える.もちろん,一般には行列というのは長方形でもよい,というのは誰でも知っているが,思い浮かべるイメージを問題にしているのである.

1.で何が悪い,と開きなおる人もいると思う.実際,漠然と3.で理解しているより,1.の世界で自分自身の言葉になるまで線形数学を理解しているほうがよいにきまっている.

しかし,1.のイメージには弱点もある.1.と答える人は,Aが非対称,あるいは長方形の行列であるとき,Aの転置とAの積を考えることで,対称行列に直して理解したがる傾向がある.これは数式の解析的計算ではあまり困らないかもしれないが,数値計算ではよくない結果を生むことがある.たとえば,回帰分析で正規方程式を解くのは下策だということはよく知られている.

***

これに関連して固有値問題,とくにジョルダン標準形をどう扱うか,という問題がある.「線形代数」の中でジョルダン標準形はすば抜けて話が複雑なので,ここに力を入れすぎると,固有値問題全体が理解できなくなる恐れがある.

昔でさえ,授業がジョルダン標準形までいくことは希だったのだから,今の学生のレベルでは無理に決まっていて,問題にするほどのこともない,という意見もあるだろうが,それでも,どこでどのように端折るかというのは自明ではない.

ひとつの方法は対称行列の固有値問題に話を限ることだが,これは「行列は対称なのが普通で,非対称なやつは邪道」という印象を植えつける可能性がある.また,線形微分方程式を教える側から文句が出る可能性もある.ジョルダン標準形に行く途中の一般固有空間のあたりで留めるという方法もあるが,高級な技になる.

また,線形数学1,線形数学2のように分かれていて,2のほうはかなり高級なこともやる,というシステムの場合,2の多くの時間をジョルダン標準形に費やすのがよいか,というのも自明ではない.たとえば,QR分解(グラム・シュミット直交化)とかコレスキー分解のような固有値分解以外の「分解」に触れたほうが数値計算には役立つかもしれない.

多変量正規分布からのサンプリングで,共分散行列の固有値分解をする人がいるが,これはコレスキー分解でやるほうが正道だろう.ちなみにこれをMCMCでやる人は退学.

***

それから,フーリエ級数のような「無限次元」の世界との橋渡しを,普通の線形代数の講義に組み込めないか,という考えもある.関数を離散化して数値計算する,という観点からみれば,無限次元と有限次元はなだらかに繋がっている.

物理科学,工学,情報科学のいずれでもフーリエ展開はきわめて重要なので,これを最初から組み込むのはリーズナブルな考えだし,話が無色透明,無味乾燥になるのを防ぐのにも役立つかもしれない.

ここでの問題もやはり「行列は対称なのが普通か?」ということで,無限次元の固有値問題では,対称性・エルミート性を仮定するのが普通なので,そちらにつなげることを意識すると,対称行列至上主義になりやすい.量子力学を学んで線形代数がわかった,という物理の人に,行列=対称行列主義が多いのはよく経験する.

***

線形代数の教え方」というときの古典的な話題は「行列式をどう位置付けるか」である.

行列式は英語ではdeterminantで,行列(matrix)とは,単語として関係がなく,じつは行列という概念より行列式のほうが歴史が古い.それで,古い教科書では行列式が行列より前のほうの章にあるものもあった.それがだんだん後退して,線形空間とか基底とか1次独立というのが前面に出てきて現在の形の教程になったのである.

いまでも,固有値問題のところでは行列式が活躍するが,もうこれもやめてしまえ,という人もいて,「行列式のない線形代数」の本を書いている.Linear Algebra Done Rightというすごい題名の本である(ここ).

行列式が嫌われる理由のひとつは,数値計算上,行列式を定義どおり展開して何か計算することは,行列のサイズがNとしたときにNの階乗の数の項が出てくるのでまったくナンセンスだからである.

大きなサイズの行列を扱う数値計算の世界では,行列式を使ったクラメルの公式で連立1次方程式を解いたり,固有方程式を解いて固有値を求めることは金輪際ない.高校や予備校の先生が面白半分に3X3行列の逆行列をクラメルの公式で求めるのを教えるので,大学の先生は迷惑している.

それでは行列式は無用かというと,そんなことはなくて,多重積分の変数変換,1変数の場合でいう「置換積分」に必要である.これは行列式が,対応する行列であらわされる1次変換の(符号つきの)拡大率をあらわすからである.同じ理由で確率密度の変数変換にも行列式ヤコビヤンと呼ばれるが,ヤコビが大阪の人なわけではない)は必須である.ここのとこで,行列式が生かせないと勉強した意味がないのだが,往々してその頃には忘れてしまっていたりするのである.

***

なお,へそまがりの人は「だったら俺は行列式ワールドに浸りたいぜ」と思うかもしれないが,そんな人には遠山啓の「ベクトルと行列」(日本評論社,残念ながら絶版)をおすすめする.

行列式の魅力をより拡大した「グラスマン代数」を駆使した線形代数入門という世界でも類例のない試みが読める.なお,同じ著者のもっと古い「行列論」(共立全書 47)にも同じような内容がある.現役の本では,やはり同じ著者の岩波新書「数学入門」の上巻にちょっとだけ記述がある.

グラスマンは線形代数という分野の開祖のひとりで,一般のN次元空間という概念の発明者のひとりでもあるが,ギムナジウムの先生で,本業はサンスクリット語の研究であった.グリム兄弟とかとほぼ同時代の人だと思う.彼が独力で開拓した,2乗するとゼロになる不思議な数とN次元空間というファンタジーが,現代数学の扉を開くことになった.

グラスマンとは関係ないが,ついでにいうと,無限次元版の行列式もある.無限次元の線形代数である「関数解析」のはじまりは実はそちらで,フレドホルムによる.そのすぐ後に,ヒルベルトがより一般的で公理的なヒルベルト空間の理論を作り,主流はそっちにいってしまったが,フレドホルム行列式の愛好者は少数ながらいまだにいるのである.