Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Metriche | Scelta del Modello Migliore
Quizzes & Challenges
Quizzes
Challenges
/
Regressione Lineare con Python

bookMetriche

Quando si costruisce un modello, è necessario un indice che misuri quanto bene si adatta ai dati. Una metrica fornisce un punteggio numerico che descrive le prestazioni del modello. In questo capitolo, ci concentriamo sulle metriche più comuni.

Utilizzeremo la seguente notazione:

Abbiamo già familiarità con una metrica, SSR (Somma dei Residui Quadrati), che abbiamo minimizzato per identificare i parametri ottimali.
Utilizzando la nostra notazione, possiamo esprimere la formula per SSR come segue:

oppure ugualmente:

Questa metrica funziona solo quando i modelli utilizzano lo stesso numero di punti dati. Non mostra quanto bene un modello si comporti realmente. Immagina due modelli addestrati su set di dati di dimensioni diverse.

Il primo modello si adatta meglio visivamente ma ha un SSR più alto perché ha più punti, quindi la somma aumenta anche con residui medi più piccoli. Utilizzare la media dei residui quadratici risolve questo problema — il Mean Squared Error (MSE).

MSE

o, in modo equivalente:

Calcolo dell'MSE utilizzando NumPy:

mse = np.mean((y_true - y_pred)**2)

Oppure Scikit-learn:

from sklearn.metrics import mean_squared_error
mse = mean_squared_error(y_true, y_pred)

L'MSE è elevato al quadrato, il che rende l'interpretazione più complessa. Se l'MSE è 49 dollari², si desidera l'errore in dollari. Prendendo la radice quadrata si ottiene 7 — il Root Mean Squared Error (RMSE).

RMSE

Calcolare l'RMSE utilizzando:

rmse = np.sqrt(np.mean((y_true - y_pred)**2))

Oppure Scikit-learn:

rmse = mean_squared_error(y_true, y_pred, squared=False)

MAE

Invece di elevare al quadrato i residui, è possibile considerare i loro valori assoluti — questo produce l'Errore Assoluto Medio (MAE).

o ugualmente

MAE si comporta come MSE ma gestisce gli errori grandi in modo più delicato. Poiché utilizza valori assoluti, è più robusto agli outlier, risultando utile quando valori estremi alterano il dataset.

Calcolo del MAE:

mae = np.mean(np.fabs(y_true - y_pred))

Oppure:

from sklearn.metrics import mean_absolute_error
mae = mean_absolute_error(y_true, y_pred)

SSR ci ha aiutato a derivare l'Equazione Normale, ma qualsiasi metrica può essere utilizzata quando si confrontano i modelli.

Note
Nota

SSR, MSE e RMSE classificano sempre i modelli nello stesso modo, mentre MAE potrebbe preferirne uno diverso perché penalizza meno gli errori grandi. È consigliabile scegliere una metrica in anticipo e ottimizzare specificamente per essa.

Ora è sicuramente possibile affermare che il secondo modello è migliore poiché tutte le sue metriche sono inferiori. Tuttavia, metriche più basse non significano sempre che il modello sia migliore.

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 4. Capitolo 1

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Suggested prompts:

Can you explain why lower metrics don't always mean a better model?

What are some other metrics used to evaluate model performance?

Can you give examples of when MAE is preferred over MSE or RMSE?

bookMetriche

Scorri per mostrare il menu

Quando si costruisce un modello, è necessario un indice che misuri quanto bene si adatta ai dati. Una metrica fornisce un punteggio numerico che descrive le prestazioni del modello. In questo capitolo, ci concentriamo sulle metriche più comuni.

Utilizzeremo la seguente notazione:

Abbiamo già familiarità con una metrica, SSR (Somma dei Residui Quadrati), che abbiamo minimizzato per identificare i parametri ottimali.
Utilizzando la nostra notazione, possiamo esprimere la formula per SSR come segue:

oppure ugualmente:

Questa metrica funziona solo quando i modelli utilizzano lo stesso numero di punti dati. Non mostra quanto bene un modello si comporti realmente. Immagina due modelli addestrati su set di dati di dimensioni diverse.

Il primo modello si adatta meglio visivamente ma ha un SSR più alto perché ha più punti, quindi la somma aumenta anche con residui medi più piccoli. Utilizzare la media dei residui quadratici risolve questo problema — il Mean Squared Error (MSE).

MSE

o, in modo equivalente:

Calcolo dell'MSE utilizzando NumPy:

mse = np.mean((y_true - y_pred)**2)

Oppure Scikit-learn:

from sklearn.metrics import mean_squared_error
mse = mean_squared_error(y_true, y_pred)

L'MSE è elevato al quadrato, il che rende l'interpretazione più complessa. Se l'MSE è 49 dollari², si desidera l'errore in dollari. Prendendo la radice quadrata si ottiene 7 — il Root Mean Squared Error (RMSE).

RMSE

Calcolare l'RMSE utilizzando:

rmse = np.sqrt(np.mean((y_true - y_pred)**2))

Oppure Scikit-learn:

rmse = mean_squared_error(y_true, y_pred, squared=False)

MAE

Invece di elevare al quadrato i residui, è possibile considerare i loro valori assoluti — questo produce l'Errore Assoluto Medio (MAE).

o ugualmente

MAE si comporta come MSE ma gestisce gli errori grandi in modo più delicato. Poiché utilizza valori assoluti, è più robusto agli outlier, risultando utile quando valori estremi alterano il dataset.

Calcolo del MAE:

mae = np.mean(np.fabs(y_true - y_pred))

Oppure:

from sklearn.metrics import mean_absolute_error
mae = mean_absolute_error(y_true, y_pred)

SSR ci ha aiutato a derivare l'Equazione Normale, ma qualsiasi metrica può essere utilizzata quando si confrontano i modelli.

Note
Nota

SSR, MSE e RMSE classificano sempre i modelli nello stesso modo, mentre MAE potrebbe preferirne uno diverso perché penalizza meno gli errori grandi. È consigliabile scegliere una metrica in anticipo e ottimizzare specificamente per essa.

Ora è sicuramente possibile affermare che il secondo modello è migliore poiché tutte le sue metriche sono inferiori. Tuttavia, metriche più basse non significano sempre che il modello sia migliore.

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 4. Capitolo 1
some-alt