MAE, MSE, RMSE, R2 томъёог Python дээр хэрхэн бичих вэ?

Энэхүү нийтлэлээр регрессийн шинжилгээний алдааг үнэлэх гол хэмжүүрүүд болох MAE, MSE, RMSE, R2 томъёонуудыг хэрхэн Python дээр бичихийг үзье.

Энд:

n – Түүврийн хэмжээ

ytrue, i – i-р түүврийн бодит утга

ypred, i – i-р түүврийн таамагласан утга

ytrue – бодит утгуудын дундаж


1. Numpy ашиглан бичих

# Numpy санг импорт хийж оруулна
import numpy as np

# Mean Absolute Error (MAE)
def mean_absolute_error(y_true, y_pred):
    return np.mean(np.abs(y_true - y_pred))

# Mean Squared Error (MSE)
def mean_squared_error(y_true, y_pred):
    return np.mean((y_true - y_pred) ** 2)

# Root Mean Squared Error (RMSE)
def root_mean_squared_error(y_true, y_pred):
    return np.sqrt(mean_squared_error(y_true, y_pred))

# R-squared (R2)
def r_squared(y_true, y_pred):
    numerator = np.sum((y_true - y_pred) ** 2)
    denominator = np.sum((y_true - np.mean(y_true)) ** 2)
    return 1 - (numerator / denominator)
# Жишээ өгөгдөл
y_true = np.array([3, -0.5, 2, 7])
y_pred = np.array([2.5, 0.0, 2, 8])
# Функц ашиглах
mae = mean_absolute_error(y_true, y_pred)
mse = mean_squared_error(y_true, y_pred)
rmse = root_mean_squared_error(y_true, y_pred)
r2 = r_squared(y_true, y_pred)

# Үр дүнг хэвлэх
print("Mean Absolute Error (MAE):", mae)
print("Mean Squared Error (MSE):", mse)
print("Root Mean Squared Error (RMSE):", rmse)
print("R-squared (R2):", r2)

Үр дүн:

Mean Absolute Error (MAE): 0.5
Mean Squared Error (MSE): 0.375
Root Mean Squared Error (RMSE): 0.6123724356957945
R-squared (R2): 0.9486081370449679


2. Scikit-learn ашиглан бичих

# Scikit-Learn сангаас mae, mse, r2-г оруулж ирнэ.
from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score

# Mean Absolute Error (MAE)
mae = mean_absolute_error(y_true, y_pred)
print("Mean Absolute Error (MAE):", mae)

# Mean Squared Error (MSE)
mse = mean_squared_error(y_true, y_pred)
print("Mean Squared Error (MSE):", mse)

# Root Mean Squared Error (RMSE)
rmse = np.sqrt(mse)
print("Root Mean Squared Error (RMSE):", rmse)

# R-squared (R2)
r2 = r2_score(y_true, y_pred)
print("R-squared (R2):", r2)

Үр дүн:

Mean Absolute Error (MAE): 0.5
Mean Squared Error (MSE): 0.375
Root Mean Squared Error (RMSE): 0.6123724356957945
R-squared (R2): 0.9486081370449679

Холбоотой нийтлэлүүд

1) SQL код бичих дараалал (Coding Order): 2) SQL гүйцэтгэх дараалал (Execution Order) ба тайлбар: Жишээ: Query унших: FROM → orders хүснэгтээс эхлэнJOIN → stores хүснэгттэй store_id-р...
  • Data Analysis
  • 4 сар 23, 2025
SPSS программ дээр Монгол хэл танихгүй байх, криллээр бичих боломжгүй тохиолдолд дараах зааврыг дагуу “Unicode” сонголтыг идэвхижүүлээрэй. Алхам 1 Эхлээд...
  • Data Analysis
  • 12 сар 4, 2024
WHERE statement нь SQL (Structured Query Language) доторх өгөгдлийг шүүхэд ашиглагддаг маш чухал хэсэг юм. Энэ нь хүснэгт дэх тодорхой...
  • Data Analysis
  • 9 сар 26, 2024