RegressionMetric

Вычисляет регрессионную метрику для оценки качества предсказанных данных по отношению к истинным данным

double vector::RegressionMetric(
   const vector&           vector_true,   // вектор истинных значений
   ENUM_REGRESSION_METRIC  metric         // тип метрики
   );
 
double matrix::RegressionMetric(
   const matrix&           matrix_true,   // матрица истинных значений
   ENUM_REGRESSION_METRIC  metric         // тип метрики
);
 
vector matrix::RegressionMetric(
   const matrix&           matrix_true,   // матрица истинных значений
   ENUM_REGRESSION_METRIC  metric,        // тип метрики
   int                     axis           // ось
   );

Параметры

vector_true/matrix_true

[in]  Вектор или матрица истинных значений.

metric

[in]  Тип метрики из перечисления ENUM_REGRESSION_METRIC.

axis

[in]  Ось. 0 — горизонтальная ось, 1 — вертикальная ось.

Возвращаемое значение

Рассчитанная метрика — оценка качества предсказанных данных по отношению к истинным данным.

Примечание

  • REGRESSION_MAE — среднее абсолютных разностей между предсказанными значениями и соответствующими истинными значениями
  • REGRESSION_MSE — среднее квадратов разностей между предсказанными значениями и соответствующими истинными значениями
  • REGRESSION_RMSE — квадратный корень из MSE
  • REGRESSION_R2 - 1 — MSE(регрессия) / MSE(среднее)
  • REGRESSION_MAPE — средняя абсолютная ошибка (MAE) в процентах
  • REGRESSION_MSPE — среднеквадратичная ошибка (MSE) в процентах
  • REGRESSION_RMSLE — RMSE, рассчитанная в логарифмическом масштабе

Пример:

   vector y_true = {3, -0.527};
   vector y_pred = {2.50.028};
//---
   double mse=y_pred.RegressionMetric(y_true,REGRESSION_MSE);
   Print("mse=",mse);
//---
   double mae=y_pred.RegressionMetric(y_true,REGRESSION_MAE);
   Print("mae=",mae);
//---
   double r2=y_pred.RegressionMetric(y_true,REGRESSION_R2);
   Print("r2=",r2);
 
   /* Результат 
   mae=0.375
   mse=0.5
   r2=0.9486081370449679
   */