Metriche
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.
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.
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
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?
Awesome!
Completion rate improved to 5.26
Metriche
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.
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.
Grazie per i tuoi commenti!