Eine Orthonormalbasis bauen
Orthonormale Spalten sind die bravsten, die eine Matrix haben kann: QTQ=I, also erhält Q Längen und Winkel und verstärkt Fehler nie. Gram-Schmidt macht aus beliebigen unabhängigen Spalten a1,…,an orthonormale: Nehmen Sie q1=a1/∥a1∥, ziehen Sie dann von jeder weiteren Spalte ihre Projektionen auf die bereits gefundenen q ab und normieren Sie den Rest.
A=QR,Rij=qi⋅aj (i≤j),qj=Rjjaj−∑i<jRijqi(1) Hält man die verwendeten Zahlen fest, erhält man die QR-Zerlegung: Q trägt die orthonormalen Spalten, R ist obere Dreiecksmatrix mit Rij=qi⋅aj und den Längen Rjj auf der Diagonale. Für kleinste Quadrate wird ∥Ax−b∥=∥QRx−b∥ durch Rx^=QTb minimiert, ein Dreieckssystem, das per Rückwärtseinsetzen gelöst wird, ohne je ATA zu bilden. Darum gilt κ(R)=κ(A) statt κ(A)2.
Gram-Schmidt mit zwei SpaltenSei
A=(3412) mit den Spalten
a1=(3,4) und
a2=(1,2). Dann ist
R11=∥a1∥=5 und
q1=(0,6; 0,8). Weiter
R12=q1⋅a2=2,2, und
a2−2,2q1=(−0,32; 0,24) hat die Länge
R22=0,4, also
q2=(−0,8; 0,6). Somit
Q=(0,60,8−0,80,6) und
R=(502,20,4). Probe:
detA=2=detR.
- Q: orthonormale Spalten, QTQ=I, keine Fehlerverstärkung.
- R: obere Dreiecksmatrix; ihre Diagonale enthält die Längen, die nach Abzug früherer Richtungen bleiben.
- Modifiziertes Gram-Schmidt (oder Householder-Spiegelungen in Bibliotheken) hält Q in Gleitkommazahlen orthogonal; die Lehrbuchversion verliert bei fast abhängigen Spalten die Orthogonalität.
Warum Bibliotheken QR für die Regression nutzenRegressoren in der Finanzwelt sind oft nahezu kollinear (viele korrelierte Faktoren, Polynomterme). Die Normalgleichungen würden diese Konditionszahl quadrieren und stillschweigend Unsinn liefern, während QR (oder die SVD) damit zurechtkommt. Das ist der Algorithmus hinter den Kleinste-Quadrate-Routinen von NumPy und statsmodels und der, den Sie im Abschlussprojekt bauen.
Lab: Was bewertet wird
- Der erste Diagonaleintrag10 Pkt.
- Die Matrix Q20 Pkt.
- Die Matrix R20 Pkt.
- Eine Determinante aus R15 Pkt.
- Kleinste Quadrate mit QR15 Pkt.
- Warum QR genauer ist20 Pkt.