RegressionMetric

Berechnung der Regressionsmetrik zur Bewertung der Qualität der vorhergesagten Daten im Vergleich zu den tatsächlichen Daten

double vector::RegressionMetric(
   const vector&           vector_true,   // Vektor mit den tatsächlichen Werten
   ENUM_REGRESSION_METRIC  metric         // metrischer Typ
   );
 
double matrix::RegressionMetric(
   const vector&           matrix_true,   // Matrix mit den tatsächlichen Werten
   ENUM_REGRESSION_METRIC  metric         // metrischer Typ
);
 
Vektor Matrix::RegressionMetric(
   const vector&           matrix_true,   // Matrix mit den tatsächlichen Werten
   ENUM_REGRESSION_METRIC  metric,        // metrischer Typ
   int                     axis           // Achse
   );

Parameter

vector_true/matrix_true

[in] Vektor oder Matrix mit den tatsächlichen Werten.

metric

[in] Metrischer Typ aus der Enumeration ENUM_REGRESSION_METRIC.

axis

[in]  Achse. 0 — horizontale Achse, 1 — vertikale Achse.

Rückgabewert

Die berechnete Metrik, die die Qualität der vorhergesagten Daten im Vergleich zu den tatsächlichen Daten bewertet.

Hinweis

  • REGRESSION_MAE — mittlerer absoluter Fehler, der die absoluten Differenzen zwischen den vorhergesagten Werten und den entsprechenden tatsächlichen Werten darstellt
  • REGRESSION_MSE — mittlerer quadratischer Fehler, der die quadrierten Differenzen zwischen den vorhergesagten Werten und den entsprechenden tatsächlichen Werten darstellt.
  • REGRESSION_RMSE — Quadratwurzel des mittleren quadratischen Fehlers (MSE)
  • REGRESSION_R2 - 1 — MSE(Regression) / MSE(Mittelwert)
  • REGRESSION_MAPE — MAE als Prozentsatz
  • REGRESSION_MSPE — MSE in Prozent
  • REGRESSION_RMSLE — RMSE berechnet auf einer logarithmischen Skala

Beispiel:

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