MAE y RMSE

Eval

MAE y RMSE

まとめ
  • MAE y RMSE cuantifican la magnitud del error en regresión con formulaciones absolutas y cuadráticas.
  • Visualiza cómo responden las métricas cuando aparecen outliers en las predicciones.
  • Resume criterios de elección: sensibilidad a outliers, interpretabilidad y unidades.

1. Definiciones y propiedades #

Para observaciones \(y_i\) y predicciones \(\hat{y}_i\):

$$ \mathrm{MAE} = \frac{1}{n} \sum_{i=1}^n |y_i - \hat{y}i|, \qquad \mathrm{RMSE} = \sqrt{\frac{1}{n} \sum{i=1}^n (y_i - \hat{y}_i)^2} $$

  • MAE promedia los errores absolutos. Es más robusto frente a outliers y se relaciona con la media de una distribución Laplace.
  • RMSE eleva al cuadrado los errores antes de promediarlos y toma la raíz cuadrada, castigando con fuerza los desvíos grandes.
  • Ambas métricas mantienen las unidades originales de la variable objetivo; RMSE enfatiza errores grandes, MAE mide el error típico.

2. Cálculo en Python #

import numpy as np
from sklearn.metrics import mean_absolute_error, mean_squared_error

y_true = np.array([10, 12, 9, 11, 10])
y_pred = np.array([9.5, 13.0, 8.0, 11.5, 9.0])

mae = mean_absolute_error(y_true, y_pred)
rmse = mean_squared_error(y_true, y_pred, squared=False)

print(f"MAE = {mae:.3f}")
print(f"RMSE = {rmse:.3f}")

Con squared=False obtenemos RMSE en lugar de MSE.


3. Comparación con outliers #

import numpy as np

rng = np.random.default_rng(42)
baseline = np.linspace(100, 110, 20)
prediction = baseline + rng.normal(0, 1.0, size=baseline.size)

mae_clean = np.mean(np.abs(baseline - prediction))
rmse_clean = np.sqrt(np.mean((baseline - prediction) ** 2))

prediction_with_outlier = prediction.copy()
prediction_with_outlier[0] += 15

mae_outlier = np.mean(np.abs(baseline - prediction_with_outlier))
rmse_outlier = np.sqrt(np.mean((baseline - prediction_with_outlier) ** 2))

print(f"MAE (sin/ con outlier) = {mae_clean:.2f}, {mae_outlier:.2f}")
print(f"RMSE (sin/ con outlier) = {rmse_clean:.2f}, {rmse_outlier:.2f}")
  • MAE apenas aumenta cuando añadimos un outlier.
  • RMSE se dispara, señalando con claridad los errores grandes.

4. Cómo elegir #

  • Pocos outliers y necesidad de precisión → usa RMSE para resaltar desviaciones sutiles.
  • Muchos outliers o colas pesadas → MAE (o MAD) se mantiene estable.
  • Costes cuadráticos → RMSE se alinea con el objetivo empresarial (energía, desviaciones físicas).
  • Necesitas comunicar en unidades reales → MAE responde “en promedio nos desviamos ±X unidades”.

5. Métricas relacionadas #

  • MAPE: error porcentual, intuitivo para negocio pero inestable cerca de cero.
  • RMSLE: RMSE en escala logarítmica; penaliza la infraestimación en previsiones de crecimiento.
  • Pinball loss: evalúa intervalos o cuantiles cuando existen objetivos de riesgo.

Resumen #

  • MAE y RMSE se complementan: uno es robusto, el otro sensible a errores grandes.
  • Reporta ambos para entender la distribución de errores y elige la métrica acorde a los costes.
  • Acompáñalos con MAPE, RMSLE u otras métricas para obtener una visión completa del desempeño del modelo.