Come si Calcola l’R Quadrato (Formula, Input e Limiti)
Risposta diretta: cos’è l’R quadrato?
L’R quadrato (spesso indicato come R²) è un numero che descrive quanto della variazione in una variabile obiettivo osservata (la variabile dipendente) è spiegato da un insieme di previsioni fittate (l’output del modello). Nella sua forma più comune, l’R² si calcola a partire da due quantità:
- Variazione totale nei dati osservati
- Variazione residua (non spiegata) dopo l’applicazione delle previsioni fittate
Interpretazione semplice: se la variazione residua è piccola rispetto alla variazione totale, l’R² sarà alto; se la variazione residua è grande, l’R² sarà basso.
Meccanismo: la formula e tutti gli input richiesti
1) Definire i dati
Per calcolare l’R² è necessario un insieme di valori osservati e i corrispondenti valori fittati (previsti).
- Valori osservati: (y_1, y_2, \dots, y_n)
- Valori fittati (previsti): (\hat{y}_1, \hat{y}_2, \dots, \hat{y}_n)
- Media campionaria dei valori osservati: (\bar{y} = \frac{1}{n}\sum_{i=1}^{n} y_i)
Dove (n) è il numero di punti dati che si stanno valutando.
2) Calcolare le somme dei quadrati
L’R² utilizza somme dei quadrati basate sulle differenze rispetto alla media e rispetto alle previsioni fittate.
-
Somma totale dei quadrati (variazione intorno alla media): [ \mathrm{SST} = \sum_{i=1}^{n} (y_i - \bar{y})^2 ]
-
Somma dei quadrati dei residui (variazione residua dopo il fitting): [ \mathrm{SSE} = \sum_{i=1}^{n} (y_i - \hat{y}_i)^2 ]
3) Calcolare l’R quadrato
Nella definizione più comune: [ R^2 = 1 - \frac{\mathrm{SSE}}{\mathrm{SST}} ]
Questa formula richiede che (\mathrm{SST} > 0). Se tutti i valori osservati (y_i) sono identici, allora (\mathrm{SST}=0) e l’R² non è definito in modo significativo in questa forma.
4) Scelta pratica fondamentale: su quali dati sono calcolati i (\hat{y})?
La formula non specifica se i (\hat{y}) derivino:
- dagli stessi dati utilizzati per addestrare il modello (in-sample), oppure
- da dati separati non usati durante il training (out-of-sample)
Utilizzare valori fittati in-sample spesso sovrastima le prestazioni per modelli flessibili. Usare previsioni out-of-sample fornisce generalmente una stima più realistica della capacità di generalizzazione del modello, ma può ridurre l’R² anche quando il modello è utile.
Esempio concreto: un calcolo dettagliato (con assunzioni esplicite)
Supponiamo di avere (n=3) valori osservati (y) e un modello che produce valori fittati (\hat{y}) per gli stessi tre punti.
Siano:
- (y = [2,\ 4,\ 6])
- (\hat{y} = [2,\ 5,\ 5])
Passo 1: calcolare la media [ \bar{y} = (2+4+6)/3 = 4 ]
Passo 2: calcolare (\mathrm{SST}) [ \mathrm{SST} = (2-4)^2 + (4-4)^2 + (6-4)^2 = 4 + 0 + 4 = 8 ]
Passo 3: calcolare (\mathrm{SSE}) [ \mathrm{SSE} = (2-2)^2 + (4-5)^2 + (6-5)^2 = 0 + 1 + 1 = 2 ]
Passo 4: calcolare l’R² [ R^2 = 1 - 2/8 = 1 - 0.25 = 0.75 ]
In base a questo calcolo, 0.75 indica che la variazione residua è un quarto della variazione totale (per questa configurazione di valutazione).
Limitazioni e casi di errore: quando l’R quadrato può fuorviare
L’R² è ampiamente utilizzato, ma non garantisce l’utilità pratica. Diverse limitazioni significative possono portare a interpretazioni errate.
1) Overfitting quando valutato in-sample
Se un modello è flessibile e si calcola l’R² utilizzando i valori fittati sullo stesso dataset con cui è stato addestrato, gli errori residui possono essere artificialmente piccoli. Ciò può produrre un alto R² anche quando il modello non cattura una relazione stabile.
2) Mismatch di non linearità
L’R² misura quanto bene i valori previsti corrispondono a quelli osservati attraverso i residui. Non garantisce che la relazione sottostante abbia una struttura specifica (ad esempio, linearità), a meno che l’approccio modellistico non imponga tale struttura.
Un modello può mostrare un R² moderato o alto pur essendo inadatto per l’estrapolazione oltre il range dei dati, poiché l’R² è descrittivo per il set di valutazione, non una legge universale.
3) Effetti di scala e preprocessing
Poiché SST e SSE dipendono dalla scala di (y), operazioni di preprocessing (come differenziazione, normalizzazione o trasformazioni) possono alterare l’R². Due analisti che usano trasformazioni diverse possono ottenere valori diversi di R² anche se la “qualità” dell’adattamento è comparabile.
4) R² può essere indefinito o controintuitivo
- Se (\mathrm{SST}=0), la formula non è applicabile.
- A seconda di come vengono prodotte le previsioni e se si usano definizioni alternative (ad esempio, versioni aggiustate), il valore può risultare meno intuitivo del semplice “percentuale spiegata”.
5) Relazione vs. causalità
L’R² quantifica quanto strettamente le previsioni seguono le osservazioni. Non stabilisce il motivo per cui esiste la relazione. Anche con un alto R², l’associazione potrebbe riflettere fattori comuni, artefatti nei dati o semplici coincidenze.
Verifica e domanda successiva: come verificare autonomamente un R quadrato dichiarato
Se si legge un valore di R² riportato, è possibile verificarne il calcolo controllando questi elementi, senza fare affidamento su affermazioni sulle prestazioni future:
- Confermare la dimensione del dataset di valutazione (n).
- Ottenere i valori osservati (y_i).
- Identificare i valori fittati/previsti (\hat{y}_i) utilizzati per calcolare gli errori residui.
- Ricalcolare (\bar{y}), SST, SSE, e quindi (R^2 = 1 - \mathrm{SSE}/\mathrm{SST}).
Se chi fornisce il valore o il calcolatore non specifica quali (\hat{y}) sono stati usati (in-sample vs out-of-sample) o quali operazioni di preprocessing sono state applicate, l’R² riportato rimane matematicamente definito, ma il confronto tra diverse configurazioni diventa incerto.
Una domanda utile successiva è come varia l’R² calcolato per concetti correlati (ad esempio, usando diverse suddivisioni dei dati o forme modellistiche), poiché queste scelte influenzano ciò che l’R² misura effettivamente.