Salta al contenuto
Note per Studenti Metodo dei minimi quadrati

Metodo dei minimi quadrati

In questa pagina 7
In questa pagina 5

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 .

Esempio. A=(11)A = \begin{pmatrix} 1 \\ 1 \end{pmatrix}, b=(13)b = \begin{pmatrix} 1 \\ 3 \end{pmatrix}, cioè il sistema x=1x = 1, x=3x = 3 (incompatibile): ∥AX−b∥2=(x−1)2+(x−3)2\|AX - b\|^2 = (x - 1)^2 + (x - 3)^2 è minima per x^=2\hat{x} = 2. Passaggi: sviluppando, (x−1)2+(x−3)2=2x2−8x+10(x - 1)^2 + (x - 3)^2 = 2x^2 - 8x + 10, una parabola con il vertice in x=−−82⋅2=2x = -\frac{-8}{2 \cdot 2} = 2; oppure, con le derivate, ddx(2x2−8x+10)=4x−8=0\frac{d}{dx}(2x^2 - 8x + 10) = 4x - 8 = 0 per x=2x = 2 (teorema di Fermatx0 è punto di minimo (massimo) relativo se f(x0) ≤ f(x) (≥) per gli x del dominio vicini a x0. I candidati sono gli estremi del dominio, i punti dove f non è derivabile e i punti interni con f'(x0) = 0 (punti critici o stazionari). Teorema di Fermat: in un punto interno di minimo o massimo relativo dove f è derivabile, f'(x0) = 0. È solo una condizione necessaria: x³ in 0.Massimi e minimi relativi e teorema di Fermat →). Il valore minimo è 12+12=21^2 + 1^2 = 2: il compromesso sbaglia di 11 in ciascuna equazione.

Grafico interattivo: Somma dei quadrati degli scarti (x − 1)² + (x − 3)² per il sistema impossibile x = 1, x = 3: è minima in x = 2, la media dei due valori, dove vale 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 (l'immagineIl nucleo (vettori mandati in 0) e l'immagine (vettori raggiunti) di una funzione lineare sono sottospazi; f è iniettiva se e solo se Ker f = {0}; dim Ker f + dim Im f = dim V (nullità + rango); l'antimmagine di un vettore è una soluzione particolare più il nucleo.Nucleo e immagine → di X↦AXX \mapsto AX è generata dalle colonne). Il sistema ha soluzione esattamente quando b∈Im⁡Ab \in \operatorname{Im} A: è la stessa cosa che dice il 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 →, perché aggiungere la colonna bb non fa salire il rango proprio quando bb è combinazione delle colonne.

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 .

Esempio. Per lo stesso sistema ATA=(2)A^T A = (2) e ATb=(4)A^T b = (4), quindi x^=(ATA)−1ATb=2\hat{x} = (A^T A)^{-1} A^T b = 2.

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 .

Da dove vengono i numeri: l'elemento (i,j)(i, j) di ATAA^T A è il prodotto scalare tra la colonna ii e la colonna jj di AA. Con C1=(1,0,1)C_1 = (1, 0, 1) e C2=(0,1,1)C_2 = (0, 1, 1): C1⋅C1=2C_1 \cdot C_1 = 2, C1⋅C2=1C_1 \cdot C_2 = 1, C2⋅C2=2C_2 \cdot C_2 = 2; e ATb=(C1⋅b, C2⋅b)=(1+0+0, 0+1+0)=(1,1)A^T b = (C_1 \cdot b,\ C_2 \cdot b) = (1 + 0 + 0,\ 0 + 1 + 0) = (1, 1). Per risolvere si sottrae la seconda equazione dalla prima: x−y=0x - y = 0, quindi x=yx = y, e la prima diventa 3x=13x = 1.

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) (qui AX^=(x,y,x+y)=(13,13,23)A\hat X = (x, y, x + y) = \left(\frac13, \frac13, \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 ✓. L'errore minimo è ∥b−AX^∥2=3⋅49=43\|b - A\hat X\|^2 = 3 \cdot \frac49 = \frac43: nessuna scelta di x,yx, y fa meglio. 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 colonne di AA sono C1=(x1,…,xm)C_1 = (x_1, \dots, x_m) e C2=(1,…,1)C_2 = (1, \dots, 1), quindi C1⋅C1=∑xi2C_1 \cdot C_1 = \sum x_i^2, C1⋅C2=∑xiC_1 \cdot C_2 = \sum x_i, C2⋅C2=1+⋯+1=mC_2 \cdot C_2 = 1 + \dots + 1 = m, C1⋅b=∑xiyiC_1 \cdot b = \sum x_i y_i, C2⋅b=∑yiC_2 \cdot b = \sum y_i (le SommatorieIl simbolo di sommatoria, le sue proprietà (linearità, additività, cambio di indice) e le somme notevoli di Gauss e geometrica.Sommatorie → vanno da i=1i = 1 a mm). 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: due vettori sono dipendenti solo se uno è multiplo dell'altro, e C1=c C2=(c,…,c)C_1 = c\, C_2 = (c, \dots, c) vuol dire proprio x1=⋯=xm=cx_1 = \dots = x_m = c (punti tutti sulla stessa verticale, per cui nessuna retta y=βx+γy = \beta x + \gamma va bene).

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

∑xi2=1+0+1=2,∑xi=−1+0+1=0,m=3,∑xiyi=(−1)⋅0+0⋅1+1⋅3=3,∑yi=0+1+3=4.\sum x_i^2 = 1 + 0 + 1 = 2, \quad \sum x_i = -1 + 0 + 1 = 0, \quad m = 3, \quad \sum x_i y_i = (-1) \cdot 0 + 0 \cdot 1 + 1 \cdot 3 = 3, \quad \sum y_i = 0 + 1 + 3 = 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 .

Il baricentro è (xˉ,yˉ)=(0,43)(\bar x, \bar y) = \left(0, \frac43\right) e infatti 32⋅0+43=43\frac32 \cdot 0 + \frac43 = \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: I punti (−1, 0), (0, 1), (1, 3) e la retta di regressione y = 3x/2 + 4/3: i segmenti verticali sono i residui 1/6, −1/3, 1/6 (la loro somma è 0) e la retta passa per il baricentro (0, 4/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).

Versione ripasso

Il problema

Dato un sistema AX=bAX = b con A∈Mm×n(R)A \in M_{m \times n}(\mathbb{R}) sovradeterminato (m>nm > n) e senza soluzioni, si cerca X^\hat X che minimizzi la norma ∥AX−b∥2\|A X - b\|^2 (somma dei quadrati degli scarti).

Definizione. Una soluzione ai minimi quadrati è un vettore X^\hat X tale che AX^=pIm⁡A(b)A\hat X = p_{\operatorname{Im} A}(b), dove pIm⁡A(b)p_{\operatorname{Im} A}(b) è la proiezione ortogonaleL'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 → di bb sul sottospazio immagine di AA.

Le equazioni normali

Teorema. X^\hat X risolve il problema dei minimi quadrati se e solo se risolve le equazioni normali: ATA X^=ATbA^T A\, \hat X = A^T b Se le colonne di AA sono linearmente indipendenti, ATAA^T A è invertibile e X^=(ATA)−1ATb\hat X = (A^T A)^{-1} A^T b.

Retta di regressione

Per il modello y=βx+γy = \beta x + \gamma con punti (xi,yi)(x_i, y_i), il sistema è AX=bAX = b con A=(x11⋮⋮xm1)A = \begin{pmatrix} x_1 & 1 \\ \vdots & \vdots \\ x_m & 1 \end{pmatrix} e X=(βγ)X = \begin{pmatrix} \beta \\ \gamma \end{pmatrix}. Le equazioni normali diventano: (∑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, dà βxˉ+γ=yˉ\beta\bar x + \gamma = \bar y: la retta passa sempre per il baricentro dei dati (xˉ,yˉ)(\bar x, \bar y). Le colonne di AA sono indipendenti se non tutti gli xix_i sono uguali.

Esempi. (1) {x=1y=1x+y=0\begin{cases} x = 1 \\ y = 1 \\ x + y = 0 \end{cases} è impossibile; ATA=(2112)A^TA = \begin{pmatrix} 2 & 1 \\ 1 & 2 \end{pmatrix}, ATb=(1,1)TA^Tb = (1,1)^T danno x=y=13x = y = \frac13, residuo (23,23,−23)(\frac23, \frac23, -\frac23) ortogonale alle colonne. (2) Punti (−1,0),(0,1),(1,3)(-1,0), (0,1), (1,3): ∑xi2=2\sum x_i^2 = 2, ∑xi=0\sum x_i = 0, ∑xiyi=3\sum x_iy_i = 3, ∑yi=4\sum y_i = 4, quindi β=32\beta = \frac32, γ=43\gamma = \frac43, retta y=32x+43y = \frac32 x + \frac43 (Esercizio 87 · retta dei minimi quadrati per quattro punti). Il metodo vale per ogni modello lineare nei parametri (per una parabola le righe di AA sono (xi2,xi,1)(x_i^2, x_i, 1)).

Procedura

  1. Scrivere il sistema AX=bAX = b associato ai dati.
  2. Calcolare ATAA^T A e ATbA^T b.
  3. Risolvere il sistema quadrato ATA X^=ATbA^T A\, \hat X = A^T b.
  4. Controllo: Verificare che AT(b−AX^)=0A^T(b - A\hat X) = 0.

Errori comuni

  • Calcolare AATAA^T invece di ATAA^T A.
  • Confondere la soluzione ai minimi quadrati con una soluzione esatta del sistema AX=bAX=b.
  • Pensare che il metodo minimizzi le distanze perpendicolari (minimizza invece gli scarti verticali).
  • Omettere la colonna di 11 nella matrice AA (termine noto γ\gamma).

Esercizi su questo argomento

Teoria collegata