Regressione lineare
In questa pagina 8
Questa nota introduce l'apprendimento supervisionato e il suo modello più semplice, la regressione lineare (Lezione 7 · Regressione lineare). Il quadro generale dei tipi di apprendimento è in Introduzione al machine learningIl machine learning (ML) è la parte dell'intelligenza artificiale che costruisce soluzioni a partire dai dati e non da regole scritte a mano: un modello matematico con parametri liberi viene addestrato su esempi storici e poi usato su dati nuovi. Si distingue tra apprendimento supervisionato (dati $(x,y)$, si impara la mappa $x\mapsto y$: regressione se $y$ è un numero, classificazione se è una categoria), non supervisionato (solo $x$, si cercano struttura e gruppi) e per rinforzo (stato, azione, ricompensa). Un progetto ML non è «plug and play»: segue le fasi problema, raccolta, pulizia, modellazione, rilascio, e va valutato su dati mai visti; senza dati non c'è modello, alcuni fenomeni sono imprevedibili, la generalizzazione fuori dal dominio di addestramento non è garantita.Introduzione al machine learning →. La nota successiva, Overfitting, ridge regression e cross-validationUna buona prestazione sul training non basta: serve stimare quella su dati nuovi. La cross-validation (K-fold: $k$ parti, ciascuna a turno come test, errore medio; Monte Carlo: $k$ divisioni casuali con quota di test $q$; leave-one-out se $k=n$) evita di dipendere da una sola divisione casuale. L'errore atteso si scompone in $\text{bias}^2+\text{varianza}+\sigma^2$: i modelli semplici fanno underfitting (bias alto), quelli complessi overfitting (varianza alta). La regolarizzazione aggiunge alla perdita una penalità: la ridge regression minimizza $|y-X\beta|^2+\lambda\sum_{j\ge1}\beta_j^2$ e ha soluzione $\beta=(X^TX+\lambda\tilde I)^{-1}X^Ty$ (l'intercetta non si penalizza, le feature si standardizzano): riduce i coefficienti, rende l'inversa stabile con feature collineari, e $\lambda$ è un iperparametro scelto con la validazione (cross-validation annidata per non contaminare il test).Overfitting, ridge regression e cross-validation →, affronta il problema che qui compare per la prima volta (un modello troppo flessibile non generalizza); il laboratorio è Lezione 9 · Laboratorio di regressione lineare e ridge con Esercizio - OLS, R quadro e aumento polinomiale delle feature e Esercizio - Regressione ai minimi quadrati su quattro punti.
Il problema supervisionato
Definizione (compito supervisionato). Si dispone di dati storici con : è l'ingresso (input, il vettore delle feature ) e l'uscita (output, la risposta da prevedere). L'obiettivo è imparare una funzione che, ricevendo un nuovo, fornisca una stima di .
La natura dell'uscita distingue due sottoclassi di problemi:
| Se è… | Il problema è di… | Esempi |
|---|---|---|
| una variabile continua | regressione | prezzo di una casa a partire da stanze, metri quadri, anno di costruzione |
| una variabile categorica | classificazione | specie di un iris dalle misure di sepali e petali; riconoscere una canzone da 3-4 secondi di audio (centinaia di milioni di classi) |
Con piccole modifiche i metodi di regressione si adattano alla classificazione e viceversa (Regressione logistica e softmaxLa regressione lineare non è adatta alla classificazione (valori fuori da [0,1], retta tirata dai punti lontani). La regressione logistica passa il predittore lineare dalla sigmoide $\sigma(z)=1/(1+e^{-z})$ e interpreta $\hat y=\sigma(x^T\beta)$ come $P(y=1\mid x)$: si predice la classe 1 se $\hat y\ge0{,}5$, cioè $x^T\beta\ge0$ (bordo lineare). L'errore quadratico dà una funzione non convessa; si usa la log-verosimiglianza negativa $-\sum[y\log\hat y+(1-y)\log(1-\hat y)]$, convessa, con gradiente $X^T(\hat y-y)$ e nessuna formula chiusa (discesa del gradiente). Per più classi: one-vs-one ($C(C-1)/2$ classificatori, voto), one-vs-all ($C$ classificatori, massima probabilità), o la softmax $p_c=e^{z_c}/\sum_ke^{z_k}$ con cross-entropia. Si può regolarizzare (ridge, LASSO, Elastic Net) e la cross-validation si fa stratificata. Approfondimento: non nel programma di Telecomunicazioni.Regressione logistica e softmax →). In questa nota ci si concentra sulla regressione.
Il modello lineare
Si cerca un modello che stimi la variabile target a partire dalle feature . Si parte dai modelli lineari:
Formula (modello lineare). . I numeri sono i parametri (o coefficienti); è l'intercetta, il coefficiente della costante.
Esempio (dalle slide). Prezzo =150\,000\ \+10,000\ \\cdot[\text{n. bagni}]+\dots-1\,000\ \\cdot[\text{età della casa}]10,000\ \e ogni anno di età la riduce di $1\,000\ \, a parità delle altre variabili. Il coefficiente dice di quanto cambia la stima per un'unità in più della feature , tenendo ferme le altre.
Forma matriciale. Si aggiunge ai dati una colonna di uni, in modo che l'intercetta si tratti come gli altri coefficienti. Con osservazioni e feature: La riga di è : una sola moltiplicazione matrice per vettore produce tutte le previsioni.
«Lineare» in che senso. Lineare nei parametri , non necessariamente nelle feature: si vedrà con l'aumento polinomiale che è ancora un modello lineare.
La funzione di costo: l'errore quadratico medio
Come scegliere i parametri «migliori»? Serve un criterio (un obiettivo), detto funzione di costo (cost function): i dati dicono quali parametri sono migliori nel senso di quell'obiettivo. Un obiettivo comune è minimizzare la somma dei quadrati degli errori di previsione: si sceglie in modo che sia il più piccolo possibile.
Formula (MSE e RMSE). è l'errore quadratico medio (mean squared error); la radice ha la stessa unità di ed è di più facile lettura.
Esempio. Previsioni per valori veri : errori , quadrati con somma , , .
Perché il quadrato. (La funzione è derivabile e convessa: Derivata - definizione e significatoLa derivata è il limite del rapporto incrementale; geometricamente è la pendenza della retta tangente. f è derivabile in x0 se e solo se f(x) = f(x0) + f'(x0)(x − x0) + o(x − x0); derivabile implica continua, non viceversa. Derivata destra e sinistra, punti angolosi, flessi a tangente verticale, cuspidi.Derivata - definizione e significato →.) Il motivo tecnico emerge a breve: con il quadrato la funzione di costo è liscia (derivabile), convessa nei parametri e ha un unico minimo calcolabile in forma chiusa. In più penalizza di più gli errori grandi (un errore doppio costa quattro volte). Al variare dei parametri l'MSE cambia: previsioni migliori o peggiori.
Proprietà (convessità). Nei modelli di regressione lineare la funzione di costo è convessa nello spazio dei parametri: il segmento che unisce due punti qualunque del grafico non sta mai sotto il grafico. Quindi non ci sono minimi locali spuri: c'è un unico insieme di parametri ottimi, indicato con .
Grafico interattivo: MSE in funzione della pendenza β₁ (con β₀ = 1,5 fisso) per i quattro punti (1;2), (2;3), (3;5), (4;4): è una parabola convessa con minimo 0,45 in β₁ = 0,8
Ricerca dei parametri: grid search o ottimizzazione. Un modo ingenuo (grid search) è provare tutte le combinazioni di parametri su una griglia e tenere quella con costo minimo: costosissimo. In ML si usano invece algoritmi di ottimizzazione che trovano i parametri velocemente, come la discesa del gradiente (LASSO e discesa del gradienteIl LASSO è la regressione regolarizzata con penalità $L_1$: minimizza $\sum_i(y_i-x_i^T\beta)^2+\lambda\sum_{j\ge1}|\beta_j|$. A differenza della ridge, porta alcuni coefficienti esattamente a zero (soluzione sparsa, selezione delle feature): geometricamente le curve di livello dell'errore toccano il vincolo $\sum|\beta_j|\le s$ (un rombo) in uno spigolo. Non ha formula chiusa, quindi si minimizza con la discesa del gradiente $W\leftarrow W-\eta,\nabla J(W)$, usando il subgradiente $\operatorname{sign}(\beta_j)$ per il valore assoluto (nel punto 0 qualunque valore in $[-1,1]$). Il passo $\eta$ è critico: per l'errore quadratico converge se $\eta<1/\mu_{\max}(X^TX)$; si può usare $\eta_t=\eta_0/(1+\gamma t)$. L'Elastic Net combina le penalità $L_1$ e $L_2$ con $\lambda_1=\alpha\lambda$, $\lambda_2=(1-\alpha)\lambda$.LASSO e discesa del gradiente →). Per la regressione lineare esiste addirittura una formula esplicita (compare anche il valore medio di Valore attesoIl valore atteso E[X] = Σ x p_X(x) è la media dei valori di X pesata con le loro probabilità (esiste se la serie converge assolutamente); per una funzione g vale E[g(X)] = Σ g(x) p_X(x) senza trovare la legge di g(X), ed E è lineare: E[aX + bY + c] = aE[X] + bE[Y] + c.Valore atteso →).
Soluzione in forma chiusa (OLS)
Il metodo dei minimi quadrati ordinari (ordinary least squares, OLS) minimizza l'MSE. Si scrive la funzione di costo in forma matriciale (norma e prodotto scalare in Prodotto scalare, norma e angoliIl prodotto scalare aggiunge a uno spazio vettoriale lunghezze e angoli: norma, disuguaglianza di Cauchy-Schwarz, angolo tra vettori in R^n, ortogonalità, proiezione su una retta, aree e volumi con il determinante della matrice dei prodotti scalari.Prodotto scalare, norma e angoli →, prodotti tra matrici in Operazioni tra matriciLe matrici m×n formano uno spazio vettoriale (somma e prodotto per scalare elemento per elemento); il prodotto righe per colonne corrisponde alla composizione di funzioni lineari, è associativo ma non commutativo; la trasposta scambia righe e colonne e (AB)^T = B^T A^T.Operazioni tra matrici →), lasciando da parte il fattore che non cambia dove sta il minimo:
Passo 1: sviluppo del prodotto. Usando e il fatto che è un numero e quindi uguale al suo trasposto :
Passo 2: gradiente rispetto a . Il gradiente è il vettore delle derivate parziali rispetto a ciascun (Differenziabilità e gradientef è differenziabile in x0 se f(x) = f(x0) + ∇f(x0)·(x − x0) + o(‖x − x0‖): vicino a x0 il grafico si confonde con il piano tangente z = f(x0) + ∇f(x0)·(x − x0). Differenziabile ⇒ continua, derivabile e D_v f = ∇f·v; derivate parziali continue ⇒ differenziabile. Il gradiente indica la direzione di massima crescita (pendenza ‖∇f‖) ed è ortogonale alle curve di livello.Differenziabilità e gradiente →, Derivate parziali e derivate direzionaliLa derivata parziale ∂f/∂xi(x0) è la derivata della funzione di una variabile che si ottiene fissando tutte le altre variabili: in pratica si deriva in xi trattando le altre come costanti. Il gradiente ∇f raccoglie le derivate parziali. La derivata direzionale lungo un versore v è il limite di [f(x0 + hv) − f(x0)]/h. In più variabili avere tutte le derivate (anche direzionali) non garantisce la continuità.Derivate parziali e derivate direzionali →). Si derivano i tre termini con due regole:
- (per : la derivata di è );
- se è simmetrica (per : la derivata di è ).
Quindi:
- (non dipende da );
- , con ;
- , perché è simmetrica.
Passo 3: azzerare il gradiente. In un minimo libero il gradiente è nullo (Massimi e minimi liberi in più variabiliSe f è differenziabile e ha un estremo relativo in un punto interno x0, allora ∇f(x0) = 0 (Fermat): gli estremi interni vanno cercati tra i punti critici. Se f è C², in un punto critico: hessiana definita positiva → minimo, definita negativa → massimo, indefinita → sella, semidefinita → il test non decide e si studia il segno di f(x) − f(x0). In due variabili: det H > 0 e fxx > 0 minimo, det H > 0 e fxx < 0 massimo, det H < 0 sella.Massimi e minimi liberi in più variabili →, teorema di Fermat in Massimi e minimi relativi e 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 →). Si impone quindi:
Teorema (soluzione dei minimi quadrati ordinari). Se è invertibile,
Questo è il minimo, e non un massimo o una sella: la matrice hessiana di (Matrice hessiana e formula di Taylor in più variabiliLe derivate seconde ∂²f/∂xj∂xi formano la matrice hessiana Hf; per il teorema di Schwarz (derivate miste continue) è simmetrica. Taylor al secondo ordine: f(x0 + h) = f(x0) + ∇f(x0)·h + ½ hᵀHf(x0)h + o(‖h‖²). Una matrice simmetrica è definita positiva/negativa, semidefinita o indefinita a seconda del segno della forma quadratica hᵀAh; si riconosce con gli autovalori o con i minori principali (in 2×2: determinante e primo elemento).Matrice hessiana e formula di Taylor in più variabili →) è , e per ogni vettore si ha , quindi la hessiana è semidefinita positiva e è convessa (Funzioni convesse in più variabiliUn insieme C è convesso se contiene il segmento tra due suoi punti; f: C → R è convessa se f(tx + (1−t)y) ≤ t f(x) + (1−t) f(y) per t in [0,1], cioè il grafico sta sotto le corde. Se f è differenziabile, è convessa se e solo se f(y) ≥ f(x) + ∇f(x)·(y − x) (il grafico sta sopra ogni piano tangente). Se f è C² su un aperto convesso, è convessa se e solo se l'hessiana è semidefinita positiva in ogni punto; se è definita positiva ovunque f è strettamente convessa (non vale il viceversa: x⁴). Per una funzione convessa ogni punto critico è un minimo globale.Funzioni convesse in più variabili →; in una variabile Funzioni convesse, concave e punti di flessof è convessa se ogni corda sta sopra il grafico (concava se sta sotto). Una funzione convessa è continua e ha derivate destra e sinistra in ogni punto interno. Per f derivabile: convessa ⇔ grafico sopra ogni tangente ⇔ f' crescente ⇔ (se esiste) f'' ≥ 0. f'' > 0 ⇒ strettamente convessa, non viceversa (x⁴). Flesso: punto in cui f passa da convessa a concava; lì, se esiste, f''(x0) = 0, ma non basta (x⁴ in 0).Funzioni convesse, concave e punti di flesso →). I coefficienti dipendono sia dagli ingressi sia dalle uscite.
Quando è invertibile. Serve che le colonne di siano linearmente indipendenti (Combinazioni lineari e dipendenza lineareUna combinazione lineare è una somma di vettori moltiplicati per scalari. I vettori sono linearmente indipendenti se l'unica combinazione che dà il vettore nullo è quella con tutti i coefficienti nulli; altrimenti sono dipendenti, e allora uno di essi è combinazione lineare degli altri.Combinazioni lineari e dipendenza lineare →; per l'inversa Matrice inversaL'inversa di una matrice quadrata A è la matrice A⁻¹ con A A⁻¹ = A⁻¹ A = I; esiste se e solo se rango(A) = n e si calcola con Gauss-Jordan riducendo (A | I) fino a (I | A⁻¹).Matrice inversa →): nessuna feature deve essere combinazione lineare delle altre (altrimenti c'è multicollinearità) e servono almeno osservazioni. Nei casi dubbi si usa la regolarizzazione (Overfitting, ridge regression e cross-validationUna buona prestazione sul training non basta: serve stimare quella su dati nuovi. La cross-validation (K-fold: $k$ parti, ciascuna a turno come test, errore medio; Monte Carlo: $k$ divisioni casuali con quota di test $q$; leave-one-out se $k=n$) evita di dipendere da una sola divisione casuale. L'errore atteso si scompone in $\text{bias}^2+\text{varianza}+\sigma^2$: i modelli semplici fanno underfitting (bias alto), quelli complessi overfitting (varianza alta). La regolarizzazione aggiunge alla perdita una penalità: la ridge regression minimizza $|y-X\beta|^2+\lambda\sum_{j\ge1}\beta_j^2$ e ha soluzione $\beta=(X^TX+\lambda\tilde I)^{-1}X^Ty$ (l'intercetta non si penalizza, le feature si standardizzano): riduce i coefficienti, rende l'inversa stabile con feature collineari, e $\lambda$ è un iperparametro scelto con la validazione (cross-validation annidata per non contaminare il test).Overfitting, ridge regression e cross-validation →).
Esempio completo. Dati , . La matrice con la colonna di uni è . Allora Il determinante è e l'inversa è . Perciò La retta è , con previsioni ( come sopra).
Grafico interattivo: I quattro punti e la retta dei minimi quadrati ŷ = 1,5 + 0,8 x: i segmenti sono i residui (−0,3; −0,1; +1,1; −0,7), la cui somma dei quadrati 1,8 è la minima possibile
Forma scalare (una sola feature). Con la covarianza e la varianza di Covarianza e coefficiente di correlazioneCov(X, Y) = E[(X − E X)(Y − E Y)] = E[XY] − E[X]E[Y] misura quanto X e Y variano insieme; è bilineare, Cov(X, X) = Var(X), Var(X + Y) = Var X + Var Y + 2Cov(X, Y); ρ = Cov / (σ_X σ_Y) sta in [−1, 1] e vale ±1 solo per legami lineari. Indipendenti ⇒ non correlate, ma non viceversa (tranne per i vettori gaussiani).Covarianza e coefficiente di correlazione → e Varianza e momentiI momenti E[X^k] e i momenti centrati E[(X − μ)^k] descrivono la forma di una legge; la varianza Var(X) = E[(X − μ)²] = E[X²] − E[X]² misura quanto X si disperde attorno alla media, vale Var(aX + b) = a² Var(X) e Var(X) = 0 solo se X è costante.Varianza e momenti →, dalle equazioni normali si ricavano le formule per : Esempio. , ; numeratore ; denominatore ; e ✓. La seconda formula dice che la retta passa per il punto delle medie .
Significato geometrico. (È il Metodo dei minimi quadratiQuando un sistema AX = b non ha soluzioni si cerca X che rende minima la norma di AX − b: AX è la proiezione ortogonale di b su Im A, e X si trova risolvendo le equazioni normali AᵀA X = Aᵀb; applicazione alla retta di regressione.Metodo dei minimi quadrati → dell'algebra lineare, con la proiezione ortogonale di 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 →; l'esempio a quattro punti è anche in Esercizio 87 · retta dei minimi quadrati per quattro punti.) L'equazione normale si può scrivere : il vettore dei residui è ortogonale a tutte le colonne di . è la proiezione ortogonale di sullo spazio generato dalle colonne di . In particolare, se c'è la colonna di uni, la somma dei residui è zero (nell'esempio ).
Con più variabili. La formula è la stessa, solo ha più colonne. Il codice è una riga:
beta = np.linalg.inv(X.T @ X) @ X.T @ y # X ha già la colonna di uni
y_pred = X @ beta(In pratica si preferisce np.linalg.lstsq(X, y, rcond=None), numericamente più stabile dell'inversa.)
Misurare la qualità: il coefficiente di determinazione
L'MSE dipende dall'unità di misura di : da solo non dice se è «poco» o «tanto». Il coefficiente di determinazione è un indice adimensionale.
Formula (coefficiente di determinazione). (somma dei quadrati dei residui) misura l'errore del modello; misura la variabilità totale di rispetto alla media, cioè l'errore di un «modello» che prevede sempre .
Interpretazione:
- : fit perfetto;
- : il modello non fa meglio che prevedere sempre la media;
- : peggio della media (possibile soprattutto sul test set o con un modello molto sbagliato).
Esempio. Per : e , quindi : la retta spiega il della variabilità di .
Esempio (modello pessimo, dal laboratorio). Con invece di quello vero , e .
Esempio sul dataset California Housing
Target: MedHouseVal, il valore mediano delle case del blocco (in centinaia di migliaia di dollari, troncato a $). Ingressi (un sottoinsieme): MedInc (reddito mediano, in decine di migliaia di dollari), HouseAge (età mediana in anni), AveRooms (stanze medie per abitazione), AveOccup (occupanti medi per famiglia). Adattando OLS a tutto il dataset si ottengono, secondo le slide:
| coefficiente | valore |
|---|---|
const |
|
MedInc |
|
HouseAge |
|
AveRooms |
|
AveOccup |
con (cioè circa \R^2=0{,}514110,000\) fa salire la stima di (cioè \R^20{,}51$ dice che il modello spiega circa metà della variabilità: non c'è un valore buono in assoluto, dipende dal problema e va confrontato con modelli alternativi e valutato su dati nuovi.
Aumento delle feature e overfitting
Se la relazione tra e non è una retta, si possono trasformare gli ingressi, per esempio aggiungendo : . È una espansione di base (basis expansion) e rimane un modello lineare nei parametri, quindi si risolve con le stesse equazioni normali con le colonne . È un passo molto comune di feature engineering.
Esempio (dalle slide, dati univariati). L'MSE sul training scende da con la retta a con il termine quadratico e a con un polinomio di grado 20. Ma quale è più ragionevole? Il polinomio di grado 20 passa vicinissimo ai punti noti e oscilla in modo innaturale tra l'uno e l'altro: complicare il modello non migliora sempre la qualità su dati nuovi (mancanza di generalizzazione, overfitting). L'MSE sul training è per forza non crescente al crescere della complessità, quindi non basta per scegliere.
Dal laboratorio ( punti da con rumore gaussiano di deviazione standard ): la retta ha e ; con il termine quadratico e coefficienti , vicinissimi a quelli veri ; con il grado i coefficienti diventano enormi (dell'ordine di -) e il training è quasi perfetto, ma il modello non è affidabile. Si vedrà come limitarlo con la ridge regression (Overfitting, ridge regression e cross-validationUna buona prestazione sul training non basta: serve stimare quella su dati nuovi. La cross-validation (K-fold: $k$ parti, ciascuna a turno come test, errore medio; Monte Carlo: $k$ divisioni casuali con quota di test $q$; leave-one-out se $k=n$) evita di dipendere da una sola divisione casuale. L'errore atteso si scompone in $\text{bias}^2+\text{varianza}+\sigma^2$: i modelli semplici fanno underfitting (bias alto), quelli complessi overfitting (varianza alta). La regolarizzazione aggiunge alla perdita una penalità: la ridge regression minimizza $|y-X\beta|^2+\lambda\sum_{j\ge1}\beta_j^2$ e ha soluzione $\beta=(X^TX+\lambda\tilde I)^{-1}X^Ty$ (l'intercetta non si penalizza, le feature si standardizzano): riduce i coefficienti, rende l'inversa stabile con feature collineari, e $\lambda$ è un iperparametro scelto con la validazione (cross-validation annidata per non contaminare il test).Overfitting, ridge regression e cross-validation →).
Training e test
Per sapere se un modello generalizza serve un test set: dati non usati per trovare i parametri e che non condividono campioni con il training set.
- Training set: dati usati per costruire il modello, cioè per trovare i parametri.
- Validation set: dati usati durante la costruzione per confrontare modelli e iperparametri su casi nuovi.
- Test set: dati usati una sola volta alla fine, per stimare la prestazione vera.
Nelle slide si mette a caso il del dataset nel test e si usa l' per l'addestramento. Con California Housing: addestrato sull' è const , MedInc , HouseAge , AveRooms , AveOccup , e sul test con . I coefficienti sono quasi uguali a quelli ottenuti sull'intero dataset, e l' sul test è appena più basso di quello sul training: qui il modello (semplice) non va in overfitting.
Problema della scelta casuale. Una singola divisione casuale è una scelta arbitraria e le prestazioni possono cambiare molto con la divisione, soprattutto con dataset piccoli: il test set potrebbe contenere casi particolarmente facili o difficili. La soluzione è la cross-validation (Overfitting, ridge regression e cross-validationUna buona prestazione sul training non basta: serve stimare quella su dati nuovi. La cross-validation (K-fold: $k$ parti, ciascuna a turno come test, errore medio; Monte Carlo: $k$ divisioni casuali con quota di test $q$; leave-one-out se $k=n$) evita di dipendere da una sola divisione casuale. L'errore atteso si scompone in $\text{bias}^2+\text{varianza}+\sigma^2$: i modelli semplici fanno underfitting (bias alto), quelli complessi overfitting (varianza alta). La regolarizzazione aggiunge alla perdita una penalità: la ridge regression minimizza $|y-X\beta|^2+\lambda\sum_{j\ge1}\beta_j^2$ e ha soluzione $\beta=(X^TX+\lambda\tilde I)^{-1}X^Ty$ (l'intercetta non si penalizza, le feature si standardizzano): riduce i coefficienti, rende l'inversa stabile con feature collineari, e $\lambda$ è un iperparametro scelto con la validazione (cross-validation annidata per non contaminare il test).Overfitting, ridge regression e cross-validation →).
Standardizzazione. Quando si standardizzano le feature, media e deviazione standard si calcolano sul solo training set e si applicano identiche al test (Statistica per il machine learningI dati di un problema ML si organizzano nella matrice di progetto $X$ ($n$ osservazioni, $p$ variabili). La statistica serve a capirli, ripulirli e prepararli: i momenti (media $\mu$, varianza $\sigma^2$, asimmetria, curtosi), i quartili con lo scarto interquartile $\mathrm{IQR}=Q_3-Q_1$ (all'esame senza interpolazione), la moda per i dati categorici. Con queste quantità si imputano i dati mancanti (media o mediana), si eliminano le variabili costanti e si standardizza con lo z-score $z=(x-\mu)/\sigma$, usando sempre media e deviazione standard del solo training set.Statistica per il machine learning →).
Errori tipici
- Valutare il modello sugli stessi dati usati per addestrarlo: l'errore sul training è ottimistico.
- Dimenticare la colonna di uni: senza di essa il modello è forzato a passare per l'origine.
- Interpretare un coefficiente senza ricordare che dipende dalle altre variabili e dalla loro scala (feature in unità diverse hanno coefficienti non confrontabili, a meno di standardizzare).
- Confondere alto con modello corretto: un vicino a sul training con troppi parametri può essere overfitting.
- Usare con feature collineari: la matrice è (quasi) singolare e i coefficienti diventano instabili.
Versione ripasso
Definizione. Compito supervisionato: da dati imparare che stimi per nuovi. continua regressione; categorica classificazione.
Formula (modello lineare). , in forma matriciale con colonna di uni in . Lineare nei parametri.
Esempio. Prezzo .
Formula (MSE, RMSE). , . Convessa nei parametri: un solo minimo .
Esempio. Errori : , .
Teorema (OLS). ; gradiente (se invertibile: colonne indipendenti, ).
Esempio. , : , , .
Scalare. , . Geometria. : residui ortogonali alle colonne di ; con la colonna di uni i residui sommano a .
Formula (). , , . = perfetto, = come la media, = peggio della media.
Esempio. , : .
Espansione di base: aggiungere resta lineare nei parametri; il training MSE cala sempre ma un polinomio di grado alto (es. 20) non generalizza (overfitting).
Training/validation/test. Training: trova i parametri; validation: confronta modelli; test: stima finale, mai usato prima. Una sola divisione casuale (es. 80/20) può ingannare cross-validation. Standardizzare con media e deviazione standard del training.
Errori tipici: valutare sul training; colonna di uni mancante; coefficienti con scale diverse confrontati; quasi singolare per feature collineari.
Esercizi su questo argomento
- Esercizio - Correlazione di Pearson su tre e quattro osservazioni
- Esercizio - Cross-validation k-fold e Monte Carlo per OLS e ridge sul dataset Advertising
- Esercizio - Gradient boosting per la regressione sul dataset housing
- Esercizio - Halfspace, distanza dal piano e problema XOR
- Esercizio - OLS, R quadro e aumento polinomiale delle feature
- Esercizio - Regressione ai minimi quadrati su quattro punti
- Esercizio - Regressione lineare a tratti con k-means
- Esercizio - Regressione quantile con funzione pinball e discesa del gradiente
- Esercizio - Ridge regression con standardizzazione e coefficienti in unità originali