Šioje pamokoje sužinosite apie RSME (Root Mean Square Error) ir jos įgyvendinimą Python. Pradėkime nuo trumpo jo įvado.
Įvadas
RSME (root mean square error) apskaičiuoja transformaciją tarp modelio numatytų verčių ir faktinių verčių. Kitaip tariant, tai yra viena iš tokių klaidų matuojant bet kurio regresijos problemos mašininio mokymosi algoritmo tikslumą ir klaidų lygį.
Klaidų metrika leidžia mums sekti įvairių matricų efektyvumą ir tikslumą. Šios matricos pateiktos žemiau.
- Vidutinė kvadratinė klaida (MSE)
- Vidutinė kvadratinė klaida (RSME)
- R kvadratas
- Tikslumas
- MAPE ir kt.
Vidutinė kvadratinė klaida (MSE)
MSE yra rizikos metodas, padedantis mums nurodyti vidutinį kvadratinį skirtumą tarp numatomos ir tikrosios savybės ar kintamojo vertės. Jis apskaičiuojamas naudojant toliau pateiktą metodą. Sintaksė pateikta žemiau.
Sintaksė –
sklearn.metrics.mean_squared_error(y_true, y_pred, *, sample_weight=None, multioutput='uniform_average', squared=True)
Parametrai -
Grąžinimai -
inkscape vs gimp
Jis grąžina neneigiamą slankiojo kablelio reikšmę (geriausia vertė yra 0,0) arba slankiojo kablelio verčių masyvą, po vieną kiekvienam atskiram tikslui.
Supraskime šį pavyzdį.
Pavyzdys – 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)
Išvestis:
The difference between actual and predicted values: 1.5388307249337076
Pavyzdys – 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)
Išvestis:
3.15206
Vidutinė kvadratinė klaida (RMSE)
RMSE yra vertės kvadratinė šaknis, gauta iš vidutinės kvadratinės paklaidos funkcijos. Tai padeda mums nubrėžti skirtumą tarp apskaičiuotos ir tikrosios modelio parametro vertės.
Naudodami RSME galime nesunkiai išmatuoti modelio efektyvumą.
Gerai veikiantis algoritmas yra žinomas, jei jo RSME balas yra mažesnis nei 180. Bet kokiu atveju, jei RSME reikšmė viršija 180, modelio parametrui turime taikyti funkcijų pasirinkimą ir hiperparametrų derinimą.
Root Mean Square Error su NumPy moduliu
RSME yra kvadratinė šaknis iš vidutinio kvadratinio skirtumo tarp numatomos ir tikrosios kintamojo/ypatybės vertės. Pažiūrėkime toliau pateiktą formulę.
Išskaidykime aukščiau pateiktą formulę -
RSME įdiegsime naudodami Numpy modulio funkcijas. Supraskime šį pavyzdį.
Pastaba: jei jūsų sistemoje nėra numpy ir sklearn bibliotekų, galite įdiegti naudodami toliau pateiktas komandas.
pip install numpy pip install sklearn
Pavyzdys -
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)
Išvestis:
Root Mean Square Error: 2.127439775880859
Paaiškinimas -
Skirtumą tarp numatytų ir faktinių verčių aukščiau pateiktoje programoje apskaičiavome naudodami numpy.subtract() funkcija. Pirma, apibrėžėme du sąrašus, kuriuose yra faktinės ir numatomos vertės. Tada apskaičiavome faktinių ir numatomų verčių skirtumo vidurkį, naudodami numpy's squre() metodą. Galiausiai apskaičiavome rmse.
Išvada
Šiame vadove aptarėme, kaip apskaičiuoti šaknies kvadrato vidurkį naudojant Python su pavyzdžiu. Jis dažniausiai naudojamas tam tikro duomenų rinkinio tikslumui nustatyti. Jei RSME grąžina 0; tai reiškia, kad nėra numatytų ir stebimų verčių skirtumo.