RegressionMetric

Calcula uma métrica de regressão para avaliar a qualidade dos dados previstos em relação aos dados reais

double vector::RegressionMetric(
   const vector&           vector_true,   // vetor de valores reais
   ENUM_REGRESSION_METRIC  metric         // tipo de métrica
   );
 
double matrix::RegressionMetric(
   const matrix&           matrix_true,   // matriz de valores reais
   ENUM_REGRESSION_METRIC  metric         // tipo de métrica
);
 
vector matrix::RegressionMetric(
   const matrix&           matrix_true,   // matriz de valores reais
   ENUM_REGRESSION_METRIC  metric,        // tipo de métrica
   int                     axis           // eixo
   );

Parâmetros

vector_true/matrix_true

[in]  Vetor ou matriz de valores reais.

metric

[in]  Tipo de métrica a partir da enumeração ENUM_REGRESSION_METRIC.

axis

[in]  Eixo. 0 – eixo horizontal, 1 – eixo vertical.

Valor retornado

Métrica calculada – avalia a qualidade dos dados previstos em relação aos dados reais.

Observação

  • REGRESSION_MAE – média das diferenças absolutas entre os valores previstos e os valores reais correspondentesи
  • REGRESSION_MSE – média dos quadrados das diferenças entre os valores previstos e os valores reais correspondentes
  • REGRESSION_RMSE – raiz quadrada do MSE
  • REGRESSION_R2 - 1 – MSE(regressão) / MSE(média)
  • REGRESSION_MAPE – erro absoluto médio (MAE) em porcentagem
  • REGRESSION_MSPE – erro quadrático médio (MSE) como porcentagem
  • REGRESSION_RMSLE – RMSE calculado em escala logarítmica

Exemplo:

   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);
 
  /* Resultado
   mae=0.375
   mse=0.5
   r2=0.9486081370449679
   */