RSME - Python'da Ortalama Karekök Hatası

RSME - Python'da Ortalama Karekök Hatası

Bu eğitimde RSME (Kök Ortalama Kare Hatası) ve bunun Python'da uygulanması hakkında bilgi edinilecektir. Kısa tanıtımıyla başlayalım.

giriiş

RSME (Kök ortalama kare hatası), bir model tarafından tahmin edilen değerler ile gerçek değerler arasındaki dönüşümü hesaplar. Başka bir deyişle, bir regresyon probleminin herhangi bir makine öğrenimi algoritmasının kesinliğini ve hata oranını ölçme tekniğindeki böyle bir hatadır.

Hata metriği, çeşitli matrislerin verimliliğini ve doğruluğunu izlememize olanak tanır. Bu matrisler aşağıda verilmiştir.

  • Ortalama Kare Hatası (MSE)
  • Ortalama Karekök Hatası (RSME)
  • R Meydanı
  • Kesinlik
  • MAPE vb.

Ortalama Kare Hatası (MSE)

MSE, bir özelliğin veya değişkenin tahmin edilen değeri ile gerçek değeri arasındaki ortalama karesel farkı belirtmemizi kolaylaştıran bir risk yöntemidir. Aşağıdaki yöntem kullanılarak hesaplanır. Sözdizimi aşağıda verilmiştir.

Sözdizimi -

 sklearn.metrics.mean_squared_error(y_true, y_pred, *, sample_weight=None, multioutput='uniform_average', squared=True)  

Parametreler -

    y_true - Bu dizi benzeri bir hedef_değerler veya n_samples. y_pred - Tahmini hedef değerlerdir. örnek_ağırlık (isteğe bağlı) - Numune ağırlığını temsil eder. Çoklu çıktı {raw_values, üniforma_ortalama} - Çoklu çıktı değerlerinin toplanmasını tanımlar. Raw_values, çoklu çıkış girişi için tam bir hata kümesi döndürür ve düzgün_ortalama, tekdüze ağırlığa sahip tüm çıktıların hatasıdır. Kare - Doğru, MSE değerini döndürür, aksi takdirde RSME değerini döndürür.

İadeler -

Negatif olmayan bir kayan nokta değeri (en iyi değer 0,0'dır) veya her bir hedef için bir kayan nokta değeri dizisi döndürür.

Aşağıdaki örneği anlayalım.

Örnek 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)  

Çıktı:

 The difference between actual and predicted values: 1.5388307249337076  

Örnek - 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)  

Çıktı:

 3.15206  

Ortalama Karekök Hatası (RMSE)

RMSE, ortalama kare hata fonksiyonundan elde edilen değerin kareköküdür. Modelin bir parametresinin tahmini ve gerçek değeri arasındaki farkı çizmemize yardımcı olur.

RSME'yi kullanarak modelin verimliliğini kolayca ölçebiliriz.

İyi çalışan bir algoritma, RSME puanı 180'den küçükse bilinir. Zaten RSME değeri 180'i geçerse model parametresi üzerinde özellik seçimi ve hiper parametre ayarlaması yapmamız gerekir.

NumPy modülünde Ortalama Karekök Hatası

RSME, değişkenin/özelliğin tahmin edilen ve gerçek değeri arasındaki ortalama kare farkın kareköküdür. Aşağıdaki formülü görelim.

RSME - Python

Yukarıdaki formülü parçalayalım -

    S - 'Toplamı' temsil eder. D Ben - i için tahmin edilen değeri temsil eder. bu P Ben - i için tahmin edilen değeri temsil eder. bu N - Örnek boyutunu temsil eder.

Numpy modülünün fonksiyonlarını kullanarak RSME'yi uygulayacağız. Aşağıdaki örneği anlayalım.

Not - Sisteminizde numpy ve sklearn kütüphaneleri yoksa aşağıdaki komutları kullanarak kurulum yapabilirsiniz.

 pip install numpy pip install sklearn  

Örnek -

 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)  

Çıktı:

 Root Mean Square Error: 2.127439775880859  

Açıklama -

Yukarıdaki programda tahmin edilen ve gerçekleşen değerler arasındaki farkı aşağıdakileri kullanarak hesapladık: numpy.subtract() işlev. Öncelikle gerçek ve tahmin edilen değerleri içeren iki liste tanımladık. Daha sonra numpy'nin squre() yöntemini kullanarak gerçek ve öngörülen değerler farkının ortalamasını hesapladık. Sonunda rmse'yi hesapladık.

Çözüm

Bu derste Python kullanarak kök kare ortalama karenin nasıl hesaplanacağını örnek resimli olarak tartıştık. Çoğunlukla verilen veri kümesinin doğruluğunu bulmak için kullanılır. RSME 0 değerini döndürürse; yani tahmin edilen ve gözlemlenen değerler arasında hiçbir fark yoktur.