QR分解とは何か
QR分解(QR decomposition, またはQR factorization)とは、任意の実(あるいは複素)行列を直交行列(またはユニタリ行列)と上三角行列の積に分解する方法です。
具体的には、 行列 ()に対して、
と表されます。ここで、
-
は の直交行列(列ベクトルが正規直交基底をなす)
-
は の上三角行列
となります。
QR分解の意味と役割
QR分解は、行列を「直交部分」と「スケーリング部分」に分ける操作です。
特に次のような用途で重要です:
-
線形方程式の数値解法
連立一次方程式 を解くとき、QR分解を用いると数値的に安定な解法を得やすい。 -
最小二乗法
過剰決定系(方程式の数が未知数より多い場合)の近似解を求める際にQR分解が利用される。 -
固有値計算
QRアルゴリズムの基盤として、行列の固有値を計算する手法に利用される。
QR分解の求め方
QR分解を求める代表的な方法は以下の3つです。
1. グラム・シュミットの正規直交化法
-
行列 の列ベクトルを正規直交化して を構成し、
その過程で得られる係数から を作る。 -
計算手順は直感的だが、数値的に誤差が蓄積しやすい。
2. 修正グラム・シュミット法
-
上記の改良版で、数値安定性を改善した方法。
-
実際の数値計算ではこちらがよく用いられる。
3. ハウスホルダー変換(Householder変換)
-
行列を「鏡映変換」で次々と簡単な形に変換し、直交行列 を構築する。
-
数値計算において最も安定的で効率が良い方法とされる。
小さな例
行列
を考えると、QR分解は次のように表せます。
これにより が成り立ちます。
まとめ
-
QR分解は「行列 = 直交行列 × 上三角行列」に分ける操作。
-
用途は、最小二乗法、線形方程式の安定解法、固有値計算など。
-
計算方法は、グラム・シュミット、修正版、ハウスホルダー変換などがある。
ChatGPT5 生成日:2025/09/17