QR分解計算ツールの使い方
QR分解計算ツールは、線形代数における行列 $A$ を直交行列 $Q$ と上三角行列 $R$ の積($A = QR$)へ分解する計算をオンラインで簡単かつ安全に行えるツールです。
- 行列の入力: 入力欄に行列 $A$ の要素を入力します。行ごとに改行し、各要素はスペースまたはカンマで区切ります(分数表現
1/2なども利用可能です)。 - 精度・設定の選択: 必要に応じて出力結果の小数点以下の桁数(表示桁数)を選択します。
- 計算結果の確認: 右側の結果パネルに、正規直交列を持つ直交行列 $Q$、上三角行列 $R$、および再構成行列($Q \times R$)が表示されます。
列ベクトルが一次従属(線形従属)している場合や、行ごとの要素数が一致しない入力エラーがある場合は、警告・エラーメッセージが表示されます。
QR分解の計算式と理論
QR分解(QR factorization)とは、 $m \times n$ 行列 $A$ (ただし $m \ge n$)を、正規直交列を持つ行列 $Q$ と上三角行列 $R$ に分解する行列分解手法です。
A = QR
Q は正規直交列をもつ行列 (Q^T * Q = I)
R は上三角行列
計算手法:グラム・シュミット正規直交化法
本ツールでは、概念理解や手計算の検証に適した**グラム・シュミットの正規直交化法(Gram-Schmidt process)**を用いて計算を行います。
- 直交化: 行列 $A$ の列ベクトル $a_1, a_2, \dots, a_n$ に対してグラム・シュミット法を適用し、互いに直交するベクトル基底 $u_1, u_2, \dots, u_n$ を構築します。
- 正規化: 直交ベクトルをそのノルム(大きさ)で割ることで、単位長さを持つ正規直交基底 $q_1, q_2, \dots, q_n$(行列 $Q$ の列)を求めます。
- 上三角行列 R の導出: 元の列ベクトル $a_j$ と正規直交列 $q_i$ の内積 $r_{ij} = \langle q_i, a_j \rangle$ を計算し、上三角行列 $R$ の各成分を決定します。
※なお、実務の数値計算ライブラリ等では丸め誤差を抑えるためにハウスホルダー変換やギブンス回転がよく用いられますが、グラム・シュミット法は線形代数の理論構造を理解する上で最も基本的な方法です。
QR分解の主な用途と活用例
QR分解は、数値解析やデータサイエンス、工学計算における重要なツールとして幅広く利用されています。
- 線形最小二乗問題の解決: 過剰決定系(データ数 > 変数)の回帰分析において、法線方程式の数値的不安定性を回避し、最小二乗解を効率的かつ安定に算出します。
- 固有値計算(QRアルゴリズム): QR分解を反復適用することで、正方行列の全固有値および固有ベクトルを求めるQR法に利用されます。
- 連立一次方程式の求解: 逆行列を直接求めずに $QRx = b \Rightarrow Ry = Q^T b$ として後退代入法で高速に解を得ることができます。
- 学習・宿題の検算: 線形代数の講義や演習問題において、手計算で行ったグラム・シュミット直交化やQR分解の結果を即座に答え合わせできます。