Hoe de gemiddelde kwadratische fout (mse) in python te berekenen
Mean Squared Error (MSE) is een gebruikelijke manier om de voorspellingsnauwkeurigheid van een model te meten. Het wordt als volgt berekend:
MSE = (1/n) * Σ(werkelijk – voorspelling) 2
Goud:
- Σ – een mooi symbool dat ‘som’ betekent
- n – steekproefomvang
- real – de werkelijke waarde van de gegevens
- voorspelling – de waarde van de voorspelde gegevens
Hoe lager de MSE-waarde, hoe nauwkeuriger een model waarden kan voorspellen.
Hoe MSE in Python te berekenen
We kunnen een eenvoudige functie maken om MSE in Python te berekenen:
import numpy as np def mse(actual, pred): actual, pred = np.array(actual), np.array(pred) return np.square(np.subtract(actual,pred)).mean()
We kunnen deze functie vervolgens gebruiken om de MSE voor twee tabellen te berekenen: een die de werkelijke gegevenswaarden bevat en een die de voorspelde gegevenswaarden bevat.
actual = [12, 13, 14, 15, 15, 22, 27] pred = [11, 13, 14, 14, 15, 16, 18] mse(actual, pred) 17.0
De gemiddelde kwadratische fout (MSE) van dit model blijkt 17,0 te zijn.
In de praktijk wordt de root mean square error (RMSE) vaker gebruikt om de nauwkeurigheid van het model te evalueren. Zoals de naam al doet vermoeden, is het eenvoudigweg de vierkantswortel van de gemiddelde kwadratische fout.
We kunnen een soortgelijke functie definiëren om de RMSE te berekenen:
import numpy as np def rmse(actual, pred): actual, pred = np.array(actual), np.array(pred) return np.sqrt(np.square(np.subtract(actual,pred)).mean())
We kunnen deze functie vervolgens gebruiken om de RMSE voor twee tabellen te berekenen: één die de werkelijke gegevenswaarden bevat en één die de voorspelde gegevenswaarden bevat.
actual = [12, 13, 14, 15, 15, 22, 27] pred = [11, 13, 14, 14, 15, 16, 18] rmse(actual, pred) 4.1231
De root mean square error (RMSE) van dit model blijkt 4,1231 te zijn.
Aanvullende bronnen
Rekenmachine voor de gemiddelde kwadratische fout (MSE).
Hoe de gemiddelde vierkante fout (MSE) in Excel te berekenen