Regression
Available in v0.1.0Usage
import evalsuite as es
es.mae(y_true, y_pred)
es.rmse(y_true, y_pred, sample_weight=w)
es.mape(y_true, y_pred) # raises MetricInputError if any target is zero
es.evaluate(y_true, y_pred) # MAE, MSE, RMSE, R² and more in one callSingle and multi-output targets are supported (multioutput="uniform_average", "raw_values" or weights).
Domain restrictions
Some metrics are only defined on part of the real line. Inputs are checked before computation:
- MAPE requires every target to be non-zero.
- MSLE and RMSLE require targets and predictions greater than −1.
- R² is undefined for constant targets.
Invalid inputs raise MetricInputError instead of producing infinities or misleading values.
Metrics
| Metric | Description | Status | API |
|---|---|---|---|
| Mean absolute error | Average absolute difference between predictions and targets, in target units. | Implemented | es.mae |
| Mean squared error | Average squared difference between predictions and targets. | Implemented | es.mse |
| Root mean squared error | Square root of MSE, expressed in target units. | Implemented | es.rmse |
| Coefficient of determination (R²) | Proportion of variance in the target explained by the predictions, relative to predicting the mean. | Implemented | es.r2 |
| Adjusted R² | R² penalised for the number of predictors in the model. | Implemented | es.adjusted_r2 |
| Mean absolute percentage error | Average absolute error relative to the magnitude of the target. | Implemented | es.mape |
| Symmetric MAPE | Percentage error scaled by the mean magnitude of target and prediction. | Implemented | es.smape |
| Root mean squared log error | RMSE computed on log(1 + value), emphasising relative rather than absolute error. | Implemented | es.rmsle |
| Median absolute error | Median of absolute errors; robust to outliers. | Implemented | es.median_absolute_error |
| Huber loss | Quadratic for small errors and linear for large errors, controlled by δ. | Implemented | es.huber_loss |
| Quantile (pinball) loss | Asymmetric loss used to evaluate quantile predictions. | Implemented | es.quantile_loss |
- Mean absolute errorImplemented
Average absolute difference between predictions and targets, in target units.
es.mae
- Mean squared errorImplemented
Average squared difference between predictions and targets.
es.mse
- Root mean squared errorImplemented
Square root of MSE, expressed in target units.
es.rmse
- Coefficient of determination (R²)Implemented
Proportion of variance in the target explained by the predictions, relative to predicting the mean.
es.r2
- Adjusted R²Implemented
R² penalised for the number of predictors in the model.
es.adjusted_r2
- Mean absolute percentage errorImplemented
Average absolute error relative to the magnitude of the target.
es.mape
- Symmetric MAPEImplemented
Percentage error scaled by the mean magnitude of target and prediction.
es.smape
- Root mean squared log errorImplemented
RMSE computed on log(1 + value), emphasising relative rather than absolute error.
es.rmsle
- Median absolute errorImplemented
Median of absolute errors; robust to outliers.
es.median_absolute_error
- Huber lossImplemented
Quadratic for small errors and linear for large errors, controlled by δ.
es.huber_loss
- Quantile (pinball) lossImplemented
Asymmetric loss used to evaluate quantile predictions.
es.quantile_loss