Metrikker
Når vi bygger en modell, trenger vi en metrikk som måler hvor godt den passer til dataene. En metrikk gir en numerisk score som beskriver modellens ytelse. I dette kapittelet fokuserer vi på de mest vanlige.
Vi vil bruke følgende notasjon:
Vi er allerede kjent med én metrikk, SSR (Sum of Squared Residuals), som vi minimerte for å finne de optimale parameterne.
Med vår notasjon kan vi uttrykke formelen for SSR slik:
eller tilsvarende:
Denne metrikken fungerte kun når modellene brukte samme antall datapunkter. Den viser ikke hvor godt en modell faktisk presterer. Tenk deg to modeller trent på datasett av ulik størrelse.
Den første modellen passer bedre visuelt, men har høyere SSR fordi den har flere punkter, så summen øker selv med mindre gjennomsnittlige residualer. Å bruke gjennomsnittet av kvadrerte residualer løser dette — Mean Squared Error (MSE).
MSE
eller tilsvarende:
Beregn MSE med NumPy:
mse = np.mean((y_true - y_pred)**2)
Eller Scikit-learn:
from sklearn.metrics import mean_squared_error
mse = mean_squared_error(y_true, y_pred)
MSE er kvadrert, noe som gjør tolkningen vanskeligere. Hvis MSE er 49 dollars², ønsker vi feilen i dollar. Å ta kvadratroten gir 7 — Root Mean Squared Error (RMSE).
RMSE
Beregn RMSE ved å bruke:
rmse = np.sqrt(np.mean((y_true - y_pred)**2))
Eller Scikit-learn:
rmse = mean_squared_error(y_true, y_pred, squared=False)
MAE
I stedet for å kvadrere residualene, kan vi ta deres absolutte verdier — dette gir Mean Absolute Error (MAE).
eller likt
MAE oppfører seg som MSE, men håndterer store feil mer skånsomt. Fordi den bruker absolutte verdier, er den mer robust mot uteliggere, noe som gjør den nyttig når ekstreme verdier påvirker datasettet.
Beregn MAE:
mae = np.mean(np.fabs(y_true - y_pred))
Eller:
from sklearn.metrics import mean_absolute_error
mae = mean_absolute_error(y_true, y_pred)
SSR hjalp oss med å utlede den normale ligningen, men enhver metrikk kan brukes når modeller sammenlignes.
SSR, MSE og RMSE rangerer alltid modeller likt, mens MAE kan foretrekke en annen fordi den straffer store feil mindre. Du bør velge en metrikk på forhånd og optimalisere spesifikt for den.
Nå kan du med sikkerhet si at den andre modellen er bedre siden alle dens metrikker er lavere. Imidlertid betyr ikke lavere metrikker alltid at modellen er bedre.
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
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
Metrikker
Sveip for å vise menyen
Når vi bygger en modell, trenger vi en metrikk som måler hvor godt den passer til dataene. En metrikk gir en numerisk score som beskriver modellens ytelse. I dette kapittelet fokuserer vi på de mest vanlige.
Vi vil bruke følgende notasjon:
Vi er allerede kjent med én metrikk, SSR (Sum of Squared Residuals), som vi minimerte for å finne de optimale parameterne.
Med vår notasjon kan vi uttrykke formelen for SSR slik:
eller tilsvarende:
Denne metrikken fungerte kun når modellene brukte samme antall datapunkter. Den viser ikke hvor godt en modell faktisk presterer. Tenk deg to modeller trent på datasett av ulik størrelse.
Den første modellen passer bedre visuelt, men har høyere SSR fordi den har flere punkter, så summen øker selv med mindre gjennomsnittlige residualer. Å bruke gjennomsnittet av kvadrerte residualer løser dette — Mean Squared Error (MSE).
MSE
eller tilsvarende:
Beregn MSE med NumPy:
mse = np.mean((y_true - y_pred)**2)
Eller Scikit-learn:
from sklearn.metrics import mean_squared_error
mse = mean_squared_error(y_true, y_pred)
MSE er kvadrert, noe som gjør tolkningen vanskeligere. Hvis MSE er 49 dollars², ønsker vi feilen i dollar. Å ta kvadratroten gir 7 — Root Mean Squared Error (RMSE).
RMSE
Beregn RMSE ved å bruke:
rmse = np.sqrt(np.mean((y_true - y_pred)**2))
Eller Scikit-learn:
rmse = mean_squared_error(y_true, y_pred, squared=False)
MAE
I stedet for å kvadrere residualene, kan vi ta deres absolutte verdier — dette gir Mean Absolute Error (MAE).
eller likt
MAE oppfører seg som MSE, men håndterer store feil mer skånsomt. Fordi den bruker absolutte verdier, er den mer robust mot uteliggere, noe som gjør den nyttig når ekstreme verdier påvirker datasettet.
Beregn MAE:
mae = np.mean(np.fabs(y_true - y_pred))
Eller:
from sklearn.metrics import mean_absolute_error
mae = mean_absolute_error(y_true, y_pred)
SSR hjalp oss med å utlede den normale ligningen, men enhver metrikk kan brukes når modeller sammenlignes.
SSR, MSE og RMSE rangerer alltid modeller likt, mens MAE kan foretrekke en annen fordi den straffer store feil mindre. Du bør velge en metrikk på forhånd og optimalisere spesifikt for den.
Nå kan du med sikkerhet si at den andre modellen er bedre siden alle dens metrikker er lavere. Imidlertid betyr ikke lavere metrikker alltid at modellen er bedre.
Takk for tilbakemeldingene dine!