logo

RSME - Prosječna kvadratna pogreška u Pythonu

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 -

    y_true -Nalik je nizu ciljane_vrijednosti ili n_uzoraka.y_pred -To su procijenjene ciljne vrijednosti.težina_uzorka (neobavezno) -Predstavlja težinu uzorka.Multioutput {raw_values, uniform_average} -Definira zbrajanje više izlaznih vrijednosti. Raw_values ​​vraća kompletan skup pogrešaka za ulaz s više izlaza, a uniform_average je pogreška svih izlaza s jedinstvenom težinom.na kvadrat -Istina, vraća MSE vrijednost inače vraća RSME vrijednost.

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.

RSME - Prosječna kvadratna pogreška u Pythonu

Razdvojimo gornju formulu -

    S -Predstavlja 'zbroj'.dja-Predstavlja predviđenu vrijednost za ith strja-Predstavlja predviđenu vrijednost za ith n -Predstavlja veličinu uzorka.

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.