U ovom vodiču naučit ćete o RSME (srednja kvadratna pogreška) i njegovoj implementaciji u Pythonu. Započnimo s njegovim kratkim uvodom.
Uvod
RSME (srednja kvadratna pogreška) izračunava transformaciju između vrijednosti predviđenih modelom i stvarnih vrijednosti. Drugim riječima, to je jedna takva pogreška u tehnici mjerenja preciznosti i stope pogreške bilo kojeg algoritma strojnog učenja regresijskog problema.
Mjerilo pogreške omogućuje nam praćenje učinkovitosti i točnosti različitih matrica. Ove matrice date su u nastavku.
- Srednja kvadratna pogreška (MSE)
- Korijen srednje kvadratne pogreške (RSME)
- R-kvadrat
- Točnost
- MAPE, itd.
Srednja kvadratna pogreška (MSE)
MSE je metoda rizika koja nam olakšava označavanje prosječne kvadratne razlike između predviđene i stvarne vrijednosti značajke ili varijable. Izračunava se metodom u nastavku. Sintaksa je dana u nastavku.
Sintaksa -
sklearn.metrics.mean_squared_error(y_true, y_pred, *, sample_weight=None, multioutput='uniform_average', squared=True)
Parametri -
Povratak -
Vraća nenegativnu vrijednost s pomičnim zarezom (najbolja vrijednost je 0,0) ili niz vrijednosti s pomičnim zarezom, jednu za svaki pojedinačni cilj.
osnovni pojas vs širokopojasni
Razumimo sljedeći primjer.
Primjer - 1
import math import sklearn.metrics actual = [0, 1, 2, 0, 3] predicted = [0.2, 2.3, 4.5, 0.5, 1.1] mse = sklearn.metrics.mean_squared_error(actual, predicted) rmse = math.sqrt(mse) print('The difference between actual and predicted values', rmse)
Izlaz:
The difference between actual and predicted values: 1.5388307249337076
Primjer - 2:
from sklearn.metrics import mean_squared_error # Given values Y_act = [1,4,3,2,6] # Y_true = Y (original values) # calculated values Y_pred = [0.6,1.29,1.99,2.69,3.4] # Y_pred = Y' # Calculation of Mean Squared Error (MSE) mean_squared_error(Y_act,Y_pred)
Izlaz:
3.15206
Korijen srednje kvadratne pogreške (RMSE)
RMSE je kvadratni korijen vrijednosti prikupljen iz funkcije srednje kvadratne pogreške. Pomaže nam iscrtati razliku između procjene i stvarne vrijednosti parametra modela.
java analizira niz u int
Pomoću RSME-a možemo jednostavno izmjeriti učinkovitost modela.
Algoritam koji dobro radi je poznat ako je njegov RSME rezultat manji od 180. U svakom slučaju, ako RSME vrijednost premašuje 180, moramo primijeniti odabir značajke i podešavanje hiper-parametara na parametar modela.
Korijen srednje kvadratne pogreške s NumPy modulom
RSME je kvadratni korijen prosječne kvadratne razlike između predviđene i stvarne vrijednosti varijable/značajke. Pogledajmo sljedeću formulu.
Razdvojimo gornju formulu -
RSME ćemo implementirati koristeći funkcije Numpy modula. Razumimo sljedeći primjer.
Napomena - ako vaš sustav nema numpy i sklearn biblioteke, možete instalirati koristeći donje naredbe.
pip install numpy pip install sklearn
Primjer -
import math import numpy as np actual = [1,3,6,4,2] predicted = [2.6,1.5,3.9,7,4.1] MSE = np.square(np.subtract(actual,predicted)).mean() rsme = math.sqrt(MSE) print('Root Mean Square Error: ') print(rsme)
Izlaz:
Root Mean Square Error: 2.127439775880859
Objašnjenje -
Izračunali smo razliku između predviđenih i stvarnih vrijednosti u gornjem programu pomoću numpy.subtract() funkcija. Prvo smo definirali dva popisa koji sadrže stvarne i predviđene vrijednosti. Zatim smo izračunali srednju vrijednost razlike stvarnih i predviđenih vrijednosti pomoću metode numpy squre(). Na kraju smo izračunali rmse.
Zaključak
U ovom smo vodiču raspravljali o tome kako izračunati srednju vrijednost kvadrata koristeći Python s ilustracijom primjera. Uglavnom se koristi za pronalaženje točnosti zadanog skupa podataka. Ako RSME vrati 0; to znači da nema razlike između predviđenih i promatranih vrijednosti.