01 / 読書ガイド
読書ガイド
引用
Trefethen, L. N., & Bau, D., III. (2022). Numerical Linear Algebra (25th anniversary ed.). SIAM.
章の要約
本書は40の短い講義から成り、各講は1つか2つの中心的な考え方を軸に組み立てられている。講義は6つの部にまとめられ、付録、注、参考文献が続く。1997年の原著は約360ページである。
第I部 基礎(第1–5講):行列とベクトルの積/直交ベクトルと直交行列/ノルム/特異値分解/特異値分解(続き)
冒頭の講義は、おなじみの線形代数を計算の観点から見直す。第1講は行列とベクトルの積を列の線形結合として捉え、その見方を行列どうしの積に広げ、値域、零空間、逆行列を扱う。続いて直交性とノルムが論じられ、この部は特異値分解で終わる。特異値分解は以後の部でたびたび立ち戻る道具である。
第II部 QR分解と最小二乗法(第6–11講):射影/QR分解/グラム・シュミットの直交化/MATLAB/ハウスホルダー三角化/最小二乗問題
射影から縮約QR分解と完全QR分解へ進み、まずグラム・シュミットの直交化で、次にハウスホルダー三角化で計算する。第9講はMATLABを扱う短い講義で、この部の最後にこれらの分解を使って最小二乗問題を解く。
第III部 条件と安定性(第12–19講):条件と条件数/浮動小数点演算/安定性/安定性(続き)/ハウスホルダー三角化の安定性/後退代入の安定性/最小二乗問題の条件/最小二乗アルゴリズムの安定性
アルゴリズムを評価するための語彙が与えられる。問題がどれほど敏感か、浮動小数点演算がどう振る舞うか、アルゴリズムが安定であるとは何を意味するか、である。これらの考え方は第II部のアルゴリズムと後退代入に適用され、先に述べた方法が単に提示されるだけでなく解析される。
第IV部 連立方程式(第20–23講):ガウスの消去法/ピボット選択/ガウスの消去法の安定性/コレスキー分解
ガウスの消去法はQR分解のあとで登場し、ピボット選択と安定性の解析が付く。対称正定値行列のコレスキー分解でこの部が完結する。
第V部 固有値(第24–31講):固有値問題/固有値アルゴリズムの概観/ヘッセンベルク形または三重対角形への変換/レイリー商と逆反復/シフトなしのQRアルゴリズム/シフト付きのQRアルゴリズム/その他の固有値アルゴリズム/特異値分解の計算
8つの講義で、問題を整理し、行列をヘッセンベルク形または三重対角形に変換し、レイリー商と逆反復を調べ、シフトなしとシフト付きのQRアルゴリズムを展開する。最後にその他の固有値アルゴリズムと特異値分解の計算が置かれる。
第VI部 反復法(第32–40講):反復法の概観/アーノルディ反復/アーノルディ法は固有値をどう捉えるか/GMRES/ランチョス反復/ランチョス法からガウス求積へ/共役勾配法/双直交化法/前処理
クリロフ部分空間法がアーノルディ反復とランチョス反復から組み立てられ、固有値問題に、またGMRES、共役勾配法、双直交化法を通じて連立一次方程式に応用される。最後は前処理である。
付録と巻末
付録「数値解析の定義」のあとに、出典と参考文献案内を述べる注、参考文献、索引が続く。各講の終わりには演習問題がある。
主要概念
第I–II部
- 行列とベクトルの積は列の結合:第1講で導入され、全体を通じて使われる見方。
- 特異値分解:第4講で導入され、第5講と第31講で再び現れる。
- QR分解:グラム・シュミットまたはハウスホルダー三角化で計算し、最小二乗法に応用する。
第III部
- 条件数:問題が摂動にどれほど敏感かを測る量。
- 浮動小数点演算と安定性:アルゴリズムの答えが信頼できるかを判断する枠組み。
第IV–VI部
- ピボット選択付きガウスの消去法とコレスキー分解:連立一次方程式の直接解法。
- QRアルゴリズム:主要な固有値解法で、シフトなしとシフト付きの形で展開される。
- クリロフ部分空間法:アーノルディ、ランチョス、GMRES、共役勾配法、前処理。
批判的分析
長所
- 設計意図が明確。 序文は、本書を大学の1学期に収まる教科書と位置づけ、各講が1つか2つの考え方に集中し、細部に迷い込まないよう40講で構成したと述べている。
- ガウスの消去法より先にQR分解。 著者は通例の順序をあえて外している。ガウスの消去法はこの分野の中では典型的でなく解析も難しいのに対し、QR分解は最小二乗法、固有値問題、特異値問題、反復法を結ぶ糸だと説明されている。
- 条件と安定性に1つの部が充てられている。 連立方程式のアルゴリズムを解析する前に8講でこれらの主題を扱い、後の部の安定性解析はそれに依拠している。
- 使いやすい構成。 演習付きの短い講義は講義単位の授業に向いており、6部構成のおかげでどの講がまとまりをなすかが分かりやすい。
短所
- 意図的に事典的な参考書ではない。 著者は、事典的なゴラブとヴァン・ローンの著作と重複させるつもりはないと述べている。本書は1学期の規模に合わせてあり、詳細や追加の主題についてはゴラブとヴァン・ローン、および注で紹介されるヒガムとデメルの著書を参照することが想定されている。
- 簡潔な叙述。 40講で各講は約8ページのため導出は簡潔であり、本書は複素数体上で議論するのを標準としているので、複素ベクトル空間での線形代数に慣れている必要がある。
コースにおける位置づけ
数値解析のコースの中で、本書は線形代数に特化した教科書である。一般的な数値解析の本の代わりにはならず、1本の筋をより深く掘り下げる。Burden、Faires、Burdenの Numerical Analysis とSüliとMayersの An Introduction to Numerical Analysis はより幅広い入門書で、後者は収束の証明により重きを置く。どちらを先に読んでもよい。StoerとBulirschの Introduction to Numerical Analysis は包括的な大学院向け教科書で、連立一次方程式と固有値の部分で本書と重なる。
分析の前にプログラミングをしたい読者には、Molerの Numerical Computing with MATLAB とPythonによる数値計算の教科書のほうが穏やかで実践的な出発点となる。そのうえでTrefethenとBauは、それらの本が呼び出すルーチンの背後にある幾何学的・安定性に基づく理解を与える。
本書の使い方
応用数学、科学計算、工学の大学院1年生や上級の学部生、そして行列アルゴリズムを使っていてなぜそれが動くのか知りたい人に向いている。主な前提は確かな学部レベルの線形代数であり、MATLAB、Python、Juliaでのプログラミング経験があると計算を伴う演習に役立つ。
実践的な進め方:
- 中核: 第I–III部を順に読む。第1–5講の特異値分解、第6–11講のQR分解、第12–15講の条件と安定性に、本書の残りが前提とする概念の大半が含まれている。
- 次に: 第V部(固有値)と第VI部(反復法)。特異値分解、QR分解、安定性に慣れていれば、それぞれを独立のまとまりとして読める。ガウスの消去法がすぐに必要なら、第IV部を先に読んでもよい。
- 並行して: アルゴリズムが出てくるたびに実装し、各講の演習を解き、注で出典と参考文献を確認する。40講を超える主題のために、より大部の参考書を手元に置くとよい。
