Validación y Análisis · Tema 21

Error relativo

Un litro no pesa igual en un vaso que en un tanque: el error relativo pone cada desvío en proporción a lo medido.

01 · Punto de partida

El absoluto es ciego entre escalas

MAE 1,2 litros es excelente si el tanque promedia 100 y desastroso si promedia 2. El error relativo divide por lo real y habla en proporción: «erramos 8% en promedio». Imprescindible para comparar productos, sucursales o períodos de distinta magnitud.

  • ¿Qué proporción del valor real representa el error?
  • ¿El MAPE permite comparar el tanque con la fila?
  • ¿Qué pasa cuando lo real vale cero o casi cero?
  • ¿Relativo o absoluto para dictaminar?

02 · Definición

Proporción, porcentaje y MAPE

%

Relativo con signo

er dice dirección proporcional: +0,10 = 10% arriba. Se cancela si hay compensación, igual que el sesgo.

◎

MAPE

Media de |er| en %: interpretable entre escalas y comunicable («8%»). El estándar para comparar modelos.

⚠

Ceros

Con r = 0 la división explota; con r ≈ 0 el % se dispara por centavos. Ahí el relativo miente: usar absoluto o sMAPE.

Mismo absoluto, distinto relativo.
RealSim|e||er|Lectura
10010111%Excelente
56120%Malo
0,51,51200%Catastrófico

03 · Método

Protocolo en 5 pasos

  1. 1
    Verificar denominadores.

    Si hay ceros o valores ≈ 0, el MAPE es inválido: pasar a absoluto (Tema 20) o sMAPE.

  2. 2
    Calcular er punto a punto.

    Guardar la serie: el MAPE promedia, pero un 200% puntual ya invalida ciertos usos.

  3. 3
    Resumir: MRE, MAPE, máx|er|.

    Sesgo relativo + magnitud típica + peor proporción. Tres números, como en absoluto.

  4. 4
    Comparar entre escalas.

    El MAPE habilita rankings (tanque 5% vs. fila 12%): el MAE no.

  5. 5
    Dictaminar en % con tolerancia %.

    «MAPE 6% ≤ 10%: válido». La tolerancia también se escribe en % y antes.

denominadores sanos→er + MAPE→máx→tol %

04 · Trampas del porcentaje

Asimetría y ceros

Asimetría

Castiga distinto

Predecir el doble (r=10, s=20) da +100%; predecir la mitad (s=5) da −50%. El mismo factor 2 pesa distinto: el MAPE premia subestimar.

Ceros

Explosión

r = 0 → división por cero; r = 0,1 con e = 1 → 1000%. Alternativas: sMAPE (divide por (|r|+|s|)/2) o volver al absoluto.

sMAPE
Simétrico y acotado (0–200%): divide por el promedio de |r| y |s|. Menos intuitivo pero no explota.
MedAPE
Mediana de |er|: robusta al 200% puntual que arrastra el MAPE. Prima del MedAE (Tema 20).
Regla de oro
Absoluto para dictaminar en la unidad del uso; relativo para comparar y comunicar. Ambos, siempre.

05 · Representación en Python

MAPE en 10 líneas con guardia de ceros

Python en tu navegador. Poné un cero en real y observá la explosión: por eso la guardia.

real = [50, 52, 48, 51, 49, 50]
sim = [51, 52, 50, 52, 50, 51]

if any(r == 0 for r in real):
    print("MAPE inválido: hay ceros -> usar absoluto o sMAPE")
else:
    er = [(s-r)/abs(r) for s, r in zip(sim, real)]
    mape = sum(abs(e) for e in er)/len(er)*100
    print("er:", [f"{e:+.1%}" for e in er])
    print(f"MAPE {mape:.1f}% (tol 10%: {'Válido' if mape <= 10 else 'No válido'})")

MAPE ≈ 2,6%: válido con holgura. Cambiá un real a 2 y mirá cómo el mismo |e| = 2 pasa de 4% a 100%.

sMAPE cuando hay ceros

real2 = [0, 10, 10]
sim2 = [1, 11, 9]
smape = sum(2*abs(s-r)/(abs(s)+abs(r)) for s, r in zip(sim2, real2))/len(real2)*100
print(f"sMAPE {smape:.1f}% (no explota con el cero)")

06 · Exploración

Laboratorio: el mismo litro, distinto %

Realidad en torno a un nivel base con ruido; modelo con sesgo absoluto fijo (+1). Mové el nivel base de 5 a 50: el |e| no cambia, pero el % se derrumba. La banda es tu tolerancia %.

EXPERIMENTO 21

|er| contra tolerancia %

MAPE ≤ tol % · mismo |e|, distinto %

Los resultados numéricos aparecen debajo.
MAE (litros)0,00
MAPE0,0%
Máx |er|0,0%
Veredicto—

Con base 20 y sesgo +1, el MAPE ronda 5%: válido para 10%.

Serie de |er| en % con banda ±tol %. Puntos rojos = instantes que violan la tolerancia proporcional.

Preguntas para explorar

  1. Con base 20, sesgo +1 y tol 10%: ¿MAE y MAPE? Bajá la base a 5 sin tocar el sesgo: ¿MAE y MAPE? ¿Qué número cambió?
  2. Subí la base a 50: ¿MAPE aunque el modelo siga errando 1 litro siempre? ¿Eso es trampa o lectura correcta?
  3. Poné base 5 con tol 10%: ¿cubre? ¿Qué alternativa (absoluto o sMAPE) usarías si lo real roza cero?
Ver respuestas sugeridas
  1. MAE ≈ 1 en ambos; MAPE ≈ 5% vs. ≈ 20%: el absoluto no ve la escala, el relativo sí. Cambió el % porque cambió el denominador.
  2. MAPE ≈ 2%: lectura correcta si el uso tolera 10% proporcional. No es trampa: en un tanque de 50, 1 litro duele poco.
  3. No cubre (≈ 20% > 10%): con base chica el % castiga de más. Mejor dictaminar en litros (Tema 20) o sMAPE.

07 · Comprensión

Confusiones frecuentes

«MAPE bajo = modelo bueno en todo»

MAPE bajo con máx 300% es promedio bueno con pico letal. Máx siempre informado.

«Comparo MAPE con ceros»

Con ceros el MAPE es indefinido o absurdo. sMAPE o absoluto: el MAPE con ceros es un número roto.

«El relativo reemplaza al absoluto»

No: la tolerancia del uso suele estar en unidades (Tema 5). Relativo para comparar, absoluto para dictaminar.

«Subestimar y sobrestimar pesan igual»

En MAPE no: factor 2 arriba = +100%, abajo = −50%. Si la asimetría importa, usar sMAPE o log.

08 · Práctica guiada

Ejercicios con Python

Ejercicio 1: mismo |e|, distinto veredicto

¿MAPE con real 100 vs. real 4?

for r, s in [(100, 101), (4, 5)]:
    print(r, s, f"{abs(s-r)/abs(r):.0%}")
Ver solución razonada

1% vs. 25%: el mismo litro vale 25× más en el chico. Por eso el MAPE compara y el MAE no.

Ejercicio 2: cero que rompe todo

¿Qué pasa con r = 0?

print("r=0, e=1 -> división por cero: MAPE inválido, usar sMAPE o absoluto")
Ver solución

Indefinido: Python lanza ZeroDivisionError y la metodología debe lanzar «métrica inválida». Cambiar de métrica, no esconder el cero.

Ejercicio 3: asimetría del MAPE

¿+100% vs. −50% con factor 2?

Ver una posible respuesta
print("10->20: +100% | 10->5: -50% (mismo factor, distinto castigo)")

El MAPE premia subestimar. Si eso sesga decisiones, usar sMAPE (ambos 67%) o error logarítmico simétrico.

09 · Síntesis

Ideas para recordar

  • er = e/|r|, MAPE en %: compara escalas, ciega unidades.
  • Ceros o ≈ 0 → MAPE inválido: sMAPE o absoluto.
  • Asimétrico (premia subestimar): si importa, simetrizar.
  • MAPE (MedAPE) [máx] siempre juntos; tolerancia en % y previa.
  • Absoluto dictamina, relativo compara: ambos, nunca uno solo.

En el próximo tema, el que castiga los picos: error cuadrático medio.