Construir uma base ortonormal
Colunas ortonormais são as mais bem-comportadas que uma matriz pode ter: QTQ=I, então Q preserva comprimentos e ângulos e nunca amplifica erros. Gram-Schmidt transforma quaisquer colunas independentes a1,…,an em colunas ortonormais: tome q1=a1/∥a1∥ e, para cada coluna seguinte, subtraia suas projeções sobre os q já encontrados e normalize o que sobra.
A=QR,Rij=qi⋅aj (i≤j),qj=Rjjaj−∑i<jRijqi(1) Registrar os números usados dá a decomposição QR: Q tem as colunas ortonormais e R é triangular superior, com Rij=qi⋅aj e os comprimentos Rjj na diagonal. Para mínimos quadrados, ∥Ax−b∥=∥QRx−b∥ é minimizada por Rx^=QTb, um sistema triangular resolvido por substituição regressiva, sem nunca formar ATA. Por isso κ(R)=κ(A) em vez de κ(A)2.
Gram-Schmidt em duas colunasSeja
A=(3412), com colunas
a1=(3,4) e
a2=(1,2). Então
R11=∥a1∥=5 e
q1=(0,6; 0,8). Depois
R12=q1⋅a2=2,2, e
a2−2,2q1=(−0,32; 0,24) tem comprimento
R22=0,4, então
q2=(−0,8; 0,6). Assim
Q=(0,60,8−0,80,6) e
R=(502,20,4). Conferência:
detA=2=detR.
- Q: colunas ortonormais, QTQ=I, sem amplificação de erros.
- R: triangular superior; sua diagonal guarda os comprimentos restantes depois de remover as direções anteriores.
- Gram-Schmidt modificado (ou reflexões de Householder nas bibliotecas) mantém Q ortogonal em ponto flutuante; a versão clássica perde ortogonalidade em colunas quase dependentes.
Por que as bibliotecas usam QR na regressãoOs regressores em finanças costumam ser quase colineares (muitos fatores correlacionados, termos polinomiais). As equações normais elevariam ao quadrado esse número de condição e devolveriam lixo em silêncio, enquanto o QR (ou a SVD) dá conta. É o algoritmo por trás das rotinas de mínimos quadrados do NumPy e do statsmodels, e o que você construirá no projeto final.
Lab: o que é avaliado
- A primeira entrada diagonal10 pts
- A matriz Q20 pts
- A matriz R20 pts
- Um determinante a partir de R15 pts
- Mínimos quadrados com QR15 pts
- Por que o QR é mais preciso20 pts