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 — 예측 값과 해당 참 값 간의 절대 차이를 나타내는 평균 절대 오차(mean absolute error)
  • REGRESSION_MSE — 예측 값과 해당 참 값 사이의 차이 제곱을 나타내는 평균 제곱 오차
  • REGRESSION_RMSE — MSE의 제곱근
  • REGRESSION_R2 - 1 — MSE(regression) / MSE(mean)
  • 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);
 
  /* Result
   mae=0.375
   mse=0.5
   r2=0.9486081370449679
   */