行列分解の導入
メニューを表示するにはスワイプしてください
Ax=b のような連立方程式の解法は、特に大規模なシステムでは計算コストが高くなる場合があります。
行列分解は、このプロセスを行列 A をより単純な部分に分解することで簡略化し、段階的に解くことを可能にします。
LU と QR
行列 A を他の構造化された行列に分解します。
LU分解
A を下三角行列と上三角行列に分解:
- ガウス消去法を用いて構築;
- 正方行列に最適。
QR分解
A を直交行列と上三角行列に分解:
- 非正方行列によく使用;
- 最小二乗問題やLU分解が適用できない場合に最適。
LU分解
正方行列から始めます:
A=[4633]この行列を次のように表現することを目指します:
A=LUここで:
L=[1l2101], U=[u110u12u22]この分解はAが正方かつ可逆の場合に可能です。
重要なポイント:
- 下三角行列は対角線より上の成分がすべてゼロであり、前進代入を簡単にする;
- 上三角行列は対角線より下の成分がゼロであり、後退代入が容易;
- 直交行列は列ベクトルが直交かつ正規化(長さ1)されている;
- この性質によりベクトルの長さや角度が保たれ、最小二乗法の解法や数値安定性の向上に役立つ。
ガウス消去法
ガウス消去法を適用して、左上のピボットの下の要素を消去:
R2→R2−46R1これにより、次のようになります:
R2′=[0,−1.5]したがって、更新後の行列は次の通り:
U=[403−1.5]また、行基本変形から次が分かります:
L=[11.501]重要なポイント:
- ガウス消去法は、各列のピボット要素の下の要素を、ピボット行の定数倍を下の行から引くことで系統的に消去;
- この処理により、Aは上三角行列Uに変換;
- 消去に使われた乗数はLに格納され、AをLUの積として表現可能。
LU分解の結果
検算:
A=LU=[11.501][403−1.5]=[4633]このとき、連立方程式 Ax=b は2段階で解ける:
- 前進代入で Ly=b を解く;
- 後退代入で Ux=y を解く。
QR分解
行列 A を2つの行列の積として表現:
A=QRここで:
- A は入力行列(例:データ、係数など);
- Q は直交行列(列ベクトルが正規直交);
- R は上三角行列。
形状の例:
A=[a1a3a2a4]=[q1q3q2q4][r110r12r22]この分解は以下の場合によく使われる:
- 行列Aが正方行列でない場合;
- 最小二乗問題の解法;
- LU分解が安定しない場合。
直交規格直交ベクトルとは?
直交ベクトル
2つのベクトル u,v が直交するとは、内積がゼロであることを意味します:
u⋅v=0正規化ベクトル
ベクトル u が正規化されているとは、∣u∣=1 であることを指します。
直交規格直交集合
ベクトルの集合 {q1,q2,...,qk} が直交規格直交であるとは、それぞれが単位長であり、互いに直交していることを意味します:
qi⋅qj={1, if i=j,0, if i=j.重要性:Q の列が直交規格直交であることで、幾何学的性質が保たれ、射影計算が簡単になり、数値的安定性が向上します。
行列Aの定義
次の例から始めます:
A=[4633]グラム・シュミットの方法を用いて、A=QR となるような行列 Q と R を求めます。 グラム・シュミットの方法は、A の列ベクトルから直交規格直交なベクトル集合を作成します。
つまり、Q のベクトルはすべて互いに直交し(直交)、かつ単位長(正規化)です。この性質により、多くの計算が簡単になり、連立方程式を解く際の数値的安定性が向上します。
ここでの目標は:
- Q の列を直交規格直交にすること;
- 射影を表現する行列 R を作成すること。
最初の基底ベクトルの計算
まず、A の第1列を取り出します:
a1=[46]これを正規化するためにノルムを計算します:
∣a1∣=42+62=16+36=52次に:
q1=521[46]=[524526]これが Q の最初の直交規格直交ベクトルです。
ベクトルの正規化方法
ベクトルが与えられたとき:
v=v1v2⋮vnそのノルムを計算します:
∣v∣=v12+v22+...+vn2次に正規化します:
v^=∣v∣1v例:
v=[34], ∣v∣=32+42=5したがって、正規化ベクトルは:
v^=51[34]=[0.60.8]ベクトルの正規化と直交化の方法が分かれば、グラム・シュミットの方法を用いて Q 行列を作成し、QR分解で R を計算できます。
グラム・シュミット法による q2 の計算
q2 を計算するために、まず A の第2列から始めます:
a2=[33]次に、a2 を q1 に射影します:
r12=q1Ta2=521(4⋅3+6⋅3)=521⋅30a2 から射影成分を取り除きます:
u2=a2−r12q1その後、(上記と同様に)正規化します:
q2=∣u2∣u2これで q1 と q2 の両方が Q の直交正規基底となります。 最終結果を組み立てます:
Q=[q1q2], R=[r110r12r22]これらは次を満たします:
A=QRフィードバックありがとうございます!
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください