Salta al contenuto
Note per Studenti Metodo dei minimi quadrati

Metodo dei minimi quadrati

In questa pagina 7

Lezione 34, prima parte (videolezione n. 34). Esercizio svolto: Esercizio 87 · retta dei minimi quadrati per quattro punti. Prerequisiti: Complemento ortogonale e proiezioni ortogonaliL'ortogonale U⊥ di un sottospazio è un sottospazio di dimensione n − dim U, e R^n = U ⊕ U⊥; ogni vettore si scompone in proiezione su U più componente ortogonale; la proiezione è il punto di U più vicino e si calcola con un sistema o con la matrice di proiezione A(AᵀA)⁻¹Aᵀ.Complemento ortogonale e proiezioni ortogonali →, Sistemi lineari e teorema di Rouché-CapelliUn sistema lineare si scrive AX = B; ha soluzioni se e solo se B sta nell'immagine di A, cioè se rango(A) = rango(A|B) (Rouché-Capelli); le soluzioni sono una soluzione particolare più il nucleo e dipendono da n − r parametri.Sistemi lineari e teorema di Rouché-Capelli →. Seguito: Basi ortonormali e Gram-SchmidtUna base ortonormale è fatta di vettori di norma 1 a due a due ortogonali: le coordinate si calcolano con prodotti scalari e le proiezioni con una formula diretta. Il procedimento di Gram-Schmidt trasforma una base qualsiasi in una base ortogonale (e poi ortonormale) dello stesso sottospazio.Basi ortonormali e Gram-Schmidt →.

Il problema

Negli esperimenti si raccolgono molti dati e si cerca un modello con pochi parametri che li descriva. Esempio tipico: si misurano mm coppie (xi,yi)(x_i, y_i) e si sospetta una legge lineare y=βx+γy = \beta x + \gamma. Imponendo che ogni punto stia sulla retta si ottiene un sistema con mm equazioni (tante quante le misure) e solo 22 incognite (β\beta, γ\gamma):

βxi+γ=yi,i=1,…,m.\beta x_i + \gamma = y_i, \qquad i = 1, \dots, m .

Per gli errori di misura i punti non sono mai perfettamente allineati, e il sistema non ha soluzioni. Rinunciare non serve: si cerca la retta che "sbaglia di meno".

In generale: dato un sistema AX=bAX = b con A∈Mm×n(R)A \in M_{m \times n}(\mathbb{R}) (tipicamente m>nm > n, sistema sovradeterminato) e senza soluzioni, si cerca XX tale che AXAX sia il più vicino possibile a bb.

Definizione. Una soluzione ai minimi quadrati di AX=bAX = b è un vettore X^∈Rn\hat X \in \mathbb{R}^n che rende minima la norma ∥AX−b∥2=∑i=1m((AX)i−bi)2.\|A X - b\|^2 = \sum_{i=1}^m \big( (AX)_i - b_i \big)^2 .

Il nome viene dal fatto che si minimizza una somma di quadrati degli scarti.

La soluzione geometrica

Il vettore AX=x1C1+⋯+xnCnAX = x_1 C_1 + \dots + x_n C_n (dove CjC_j sono le colonne di AA) è una combinazione lineare delle colonne, cioè un vettore di Im⁡A\operatorname{Im} A. Al variare di XX, AXAX descrive tutto il sottospazio Im⁡A⊆Rm\operatorname{Im} A \subseteq \mathbb{R}^m. Il sistema ha soluzione esattamente quando b∈Im⁡Ab \in \operatorname{Im} A.

Quindi il problema diventa: trovare il vettore di Im⁡A\operatorname{Im} A più vicino a bb. Per il teorema della migliore approssimazioneIl vettore di un sottospazio U più vicino a b è la proiezione ortogonale di b su U.Complemento ortogonale e proiezioni ortogonali → la risposta è la proiezione ortogonale:

AX^=pIm⁡A(b).A \hat X = p_{\operatorname{Im} A}(b) .

Le equazioni normali

La proiezione è caratterizzata dal fatto che il residuo b−AX^b - A\hat X è ortogonale a Im⁡A\operatorname{Im} A, cioè a ogni colonna CjC_j di AA:

Cj⋅(b−AX^)=0(j=1,…,n)⟺AT(b−AX^)=0C_j \cdot (b - A \hat X) = 0 \quad (j = 1, \dots, n) \qquad \Longleftrightarrow \qquad A^T (b - A \hat X) = 0

(la jj-esima componente di ATwA^T w è proprio Cj⋅wC_j \cdot w, perché le righe di ATA^T sono le colonne di AA).

Teorema. X^\hat X è una soluzione ai minimi quadrati di AX=bAX = b se e solo se risolve le equazioni normali ATA X^=ATb.A^T A\, \hat X = A^T b . Se le colonne di AA sono linearmente indipendenti, ATAA^T A è invertibile e la soluzione è unica: X^=(ATA)−1ATb.\hat X = (A^T A)^{-1} A^T b .

Osservazioni.

Esempio: un sistema impossibile

{x=1y=1x+y=0A=(100111),b=(110).\begin{cases} x = 1 \\ y = 1 \\ x + y = 0 \end{cases} \qquad A = \begin{pmatrix} 1 & 0 \\ 0 & 1 \\ 1 & 1 \end{pmatrix}, \quad b = \begin{pmatrix} 1 \\ 1 \\ 0 \end{pmatrix}.

È impossibile: le prime due danno x+y=2≠0x + y = 2 \ne 0. Equazioni normali:

ATA=(2112),ATb=(11),{2x+y=1x+2y=1⟹ x=y=13.A^T A = \begin{pmatrix} 2 & 1 \\ 1 & 2 \end{pmatrix}, \qquad A^T b = \begin{pmatrix} 1 \\ 1 \end{pmatrix}, \qquad \begin{cases} 2x + y = 1 \\ x + 2y = 1 \end{cases} \Longrightarrow\ x = y = \frac13 .

Residuo: b−AX^=(1−13, 1−13, 0−23)=(23,23,−23)b - A\hat X = \left(1 - \frac13,\ 1 - \frac13,\ 0 - \frac23\right) = \left(\frac23, \frac23, -\frac23\right). Controllo: è ortogonale alle colonne (1,0,1)(1, 0, 1) e (0,1,1)(0, 1, 1): 23−23=0\frac23 - \frac23 = 0 ✓. Il compromesso "spartisce" l'errore in parti uguali tra le tre equazioni, come ci si aspetta per simmetria.

La retta di regressione

Per i punti (x1,y1),…,(xm,ym)(x_1, y_1), \dots, (x_m, y_m) e il modello y=βx+γy = \beta x + \gamma:

A=(x11x21⋮⋮xm1),X=(βγ),b=(y1⋮ym).A = \begin{pmatrix} x_1 & 1 \\ x_2 & 1 \\ \vdots & \vdots \\ x_m & 1 \end{pmatrix}, \qquad X = \begin{pmatrix} \beta \\ \gamma \end{pmatrix}, \qquad b = \begin{pmatrix} y_1 \\ \vdots \\ y_m \end{pmatrix}.

Le equazioni normali, scritte con le somme, sono

(∑xi2∑xi∑xim)(βγ)=(∑xiyi∑yi).\begin{pmatrix} \sum x_i^2 & \sum x_i \\ \sum x_i & m \end{pmatrix} \begin{pmatrix} \beta \\ \gamma \end{pmatrix} = \begin{pmatrix} \sum x_i y_i \\ \sum y_i \end{pmatrix} .

La seconda equazione, divisa per mm, dice βxˉ+γ=yˉ\beta \bar x + \gamma = \bar y (con xˉ\bar x, yˉ\bar y le medie): la retta passa sempre per il baricentro dei dati. Le colonne di AA sono indipendenti (quindi la soluzione è unica) purché non tutti gli xix_i siano uguali.

Esempio. Punti (−1,0)(-1, 0), (0,1)(0, 1), (1,3)(1, 3):

∑xi2=2,∑xi=0,m=3,∑xiyi=0+0+3=3,∑yi=4.\sum x_i^2 = 2, \quad \sum x_i = 0, \quad m = 3, \quad \sum x_i y_i = 0 + 0 + 3 = 3, \quad \sum y_i = 4 .

{2β+0γ=30β+3γ=4⟹β=32,γ=43.\begin{cases} 2\beta + 0\gamma = 3 \\ 0\beta + 3\gamma = 4 \end{cases} \Longrightarrow \beta = \frac32, \quad \gamma = \frac43 .

Retta: y=32x+43y = \frac32 x + \frac43. Residui yi−(βxi+γ)y_i - (\beta x_i + \gamma): 0−(−32+43)=160 - (-\frac32 + \frac43) = \frac16, 1−43=−131 - \frac43 = -\frac13, 3−(32+43)=163 - (\frac32 + \frac43) = \frac16; somma 00 ✓ (è la seconda equazione normale).

Grafico interattivo: Retta di regressione y = 3/2 x + 4/3 per i punti (−1, 0), (0, 1), (1, 3)

(Il calcolo è stato facile perché ∑xi=0\sum x_i = 0: le due equazioni si separano. Con dati simmetrici rispetto a 00 succede sempre.)

Altri modelli. Lo stesso metodo funziona per qualunque modello lineare nei parametri, per esempio una parabola y=ax2+bx+cy = a x^2 + b x + c: la matrice AA ha righe (xi2,xi,1)(x_i^2, x_i, 1) e le incognite sono a,b,ca, b, c.

Procedura

  1. Scrivere il sistema AX=bAX = b (una equazione per dato).
  2. Calcolare ATAA^T A e ATbA^T b.
  3. Risolvere ATA X=ATbA^T A\, X = A^T b.
  4. Controllo: il residuo b−AX^b - A\hat X deve essere ortogonale a ogni colonna di AA.

Errori comuni

  • Calcolare AATAA^T invece di ATAA^TA: è una matrice m×mm \times m, non serve.
  • Pensare che la soluzione ai minimi quadrati risolva il sistema: risolve il sistema normale; AX^A\hat X in generale è diverso da bb.
  • Minimizzare le distanze perpendicolari dei punti dalla retta: il metodo minimizza gli scarti verticali yi−(βxi+γ)y_i - (\beta x_i + \gamma).
  • Dimenticare la colonna di 11 nella matrice della retta di regressione (corrisponde al termine noto γ\gamma).

Esercizi su questo argomento

Lezioni in cui compare

Teoria collegata