Cirentis

    ↑↓ para moverte ↵ para abrir Ctrl K para volver aquí

    Hablamos
    Blog

    El R² habla más de tus datos que de tu modelo

    Qué mide el R², por qué un número alto puede no significar nada y por qué el mismo modelo, con el mismo error, da un R² distinto según cuánto se muevan las ventas de cada cliente.

    Data Scientist 9 min de lectura

    Hay una pregunta que aparece en todas las reuniones donde alguien presenta un modelo: ¿qué R² tiene? Y hay una respuesta que todo el mundo acepta como buena: cuanto más alto, mejor.

    El problema es que el R² mide muy bien una cosa, y esa cosa no es la calidad del modelo. Buena parte de su valor lo pone el cliente, no quien modela.

    Qué es el R², y la única fórmula que hace falta

    El R² responde a: de todo lo que varían mis datos, ¿cuánto reproduce el modelo?

    Y la fórmula, que conviene tener delante porque explica el resto del artículo:

    R² = 1 − (lo que el modelo se equivoca) ÷ (lo que varían los datos)

    Dos piezas. Arriba, el error del modelo: eso sí es mérito o demérito de quien modela. Abajo, cuánto se mueven los datos por sí solos. Y eso no lo decide el modelo, lo decide el cliente.

    Si quieres la versión formal, con la suma de cuadrados y la diferencia entre el R² y el R² ajustado, está explicada aquí: R² y R² ajustado. Lo que viene ahora es lo que esa fórmula implica cuando hay que elegir entre dos modelos.

    El denominador no es tuyo

    Esta es la parte que casi nunca se cuenta, y es la que más decisiones tuerce.

    Imagina dos marcas. La primera vende turrón: en Navidad multiplica sus ventas por siete y el resto del año se mueve poco. La segunda vende algo de compra estable: la misma venta media, pero sus ventas semanales oscilan aproximadamente la tercera parte.

    Ahora modela las dos igual de bien. Mismo equipo, mismo método, mismo error medio en unidades. El R² no va a salir ni parecido:

    El mismo error, dos R²

    Ejemplo · cada punto es una semana. El modelo se equivoca lo mismo en los dos paneles: 436 unidades de error medio en ambos

    Dos nubes de puntos a la misma escala, con las ventas reales en el eje horizontal y las estimadas por el modelo en el vertical. A la izquierda, una marca estacional: los puntos se reparten a lo largo de toda la diagonal y forman una línea estrecha, con un R² de 0,93. A la derecha, una marca estable a la que se ha aplicado exactamente el mismo error semana a semana: los puntos se concentran en un tramo corto de la diagonal y la misma dispersión forma ahora una pelota, con un R² de 0,46. Marca estacional 0 4000 8000 12.000 R² = 0,93 En Navidad multiplica sus ventas por siete Marca estable R² = 0,46 Misma venta media, se mueve la tercera parte Eje horizontal: ventas reales · vertical: lo que dice el modelo

    Cada punto es una semana: las ventas reales en horizontal y lo que dijo el modelo en vertical. Si el modelo acertara siempre, todos caerían sobre la diagonal. Lo que la nube se despega de esa diagonal es el error, y es idéntico en los dos paneles. No parecido: es el mismo error de cada semana, copiado punto por punto.

    A la izquierda, ese grosor repartido a lo largo de un recorrido enorme se lee como una línea. A la derecha, el mismo grosor sobre un recorrido corto se convierte en una pelota. Eso es todo lo que separa un R² de 0,93 de uno de 0,46.

    En números: la marca estacional oscila unas 1691 unidades en torno a su media y la estable unas 592. El error medio, el mismo en las dos: 436 unidades.

    ¿No debería ser al revés?

    Es la primera objeción de cualquiera que mire ese gráfico, y es razonable: una marca estable parece más fácil de predecir, así que debería sacar mejor nota, no peor.

    Y es más fácil de predecir. Lo que pasa es que el R² no mide eso. El R² te puntúa contra un rival muy concreto: predecir siempre la media. Nada más.

    Para la marca estacional, ese rival es malísimo. Quien prediga la media todas las semanas falla por más de nueve mil unidades cada Navidad. Ganarle es fácil, y por eso el R² sale alto. Para la marca estable, en cambio, predecir la media ya es casi acertar: el rival lo hace bien solo, y por mucho que afines apenas queda margen que ganarle.

    Dicho de otra forma: la estacionalidad es R² gratis. Una marca con picos regala al modelo un montón de variación fácil de explicar, y esa variación cuenta igual que la difícil. Una marca plana no tiene nada que regalar, así que todo lo que saque se lo tiene que ganar.

    Conviene añadir una honestidad sobre el ejemplo: ahí el error se mantiene fijo a propósito, para aislar el efecto. En la realidad las dos cosas se mueven a la vez, pero no en la misma proporción, y por una razón de fondo: lo que infla el denominador de la marca estacional es su Navidad, que es predecible, mientras que el error vive en lo que no lo es. Un pico que se repite todos los años sube el R² sin exigirle nada al modelo. Por eso la ventaja no se compensa sola.

    Y de ahí sale la versión más incómoda de todo esto: se puede subir el R² sin tocar el modelo, solo cambiando de cliente. Y al revés, el equipo que trabaja con la marca difícil va a enseñar siempre un número peor aunque lo esté haciendo mejor.

    De ahí salen tres conclusiones prácticas:

    • El R² no se compara entre clientes. Que la agencia A tenga 0,92 con una marca y la agencia B 0,78 con otra no dice absolutamente nada sobre cuál modela mejor.
    • Tampoco entre categorías. El gran consumo con picos estacionales dará siempre R² más altos que un servicio con demanda plana. No es que se entienda mejor; es que hay más variación que explicar.
    • Ni siquiera entre periodos. Un año con una campaña grande y una rotura de stock tiene más recorrido que un año tranquilo, y el mismo modelo sacará mejor nota en el movido.

    El mismo modelo, tres R² distintos

    Hay otra forma de ver lo mismo, y se puede comprobar en un minuto con cualquier modelo que tengas a mano. Este es el ajuste de ejemplo que usamos en la web para explicar esto:

    Ajuste del modelo

    Ejemplo, ventas semanales reales frente a las estimadas

    • R²0,933
    • MAPE6,8 %
    Serie de ventas semanales reales y estimadas por el modelo entre 2023 y 2026. Las dos series se solapan salvo en los picos de Navidad, donde el modelo se queda por debajo del dato real. 0 4000 8000 12.000 16.000 2023 2024 2025 2026 Unidades
    • Real
    • Modelo

    La curva del modelo sigue a la real y se queda corta en los picos. Es un ajuste normal. Pues bien, sin tocar nada de eso, estas mismas dos series dan tres R² distintos según sobre qué se calcule:

    Sobre qué se calculaR²
    Niveles: la serie tal cual0,93
    Variaciones de un periodo al siguiente0,87
    Variaciones contra el mismo periodo del año anterior−0,64

    El último es negativo, y en R² eso significa algo muy concreto: para explicar cuánto cambia el dato respecto al año pasado, este modelo lo hace peor que limitarse a repetir el dato del año pasado.

    Otra vez es el denominador. En niveles, una parte grande del mérito se la lleva la tendencia y la estacionalidad, que son fáciles de acertar. En variaciones esa parte fácil desaparece del denominador y solo queda lo difícil. Por eso, de dos proveedores igual de buenos, el que modele en niveles te va a enseñar siempre un número más alto que el que modele en variaciones. Si eliges por el R², no estás eligiendo el mejor modelo: estás eligiendo la especificación más favorecedora.

    Es el mismo mecanismo que hace que dos series con tendencia parezcan relacionadas sin estarlo, que contamos en ¿cuándo una correlación alta es espuria?.

    Por qué maximizarlo es mala idea

    Hasta aquí, por qué el R² no sirve para comparar. Queda por qué tampoco conviene perseguirlo.

    Porque sube solo. Añade una variable cualquiera a una regresión, aunque sea una columna de números aleatorios, y el R² no baja nunca. Como mucho se queda igual. Un modelo con cuarenta variables siempre enseñará un número más bonito que uno con doce, sin ser mejor en nada. El R² ajustado penaliza parte de esa inflación, y por eso es el que hay que pedir, pero solo corrige el síntoma más evidente.

    Porque a partir de cierto punto deja de explicar y empieza a memorizar. Un modelo con suficientes parámetros puede reproducir el pasado casi punto por punto. Eso no significa que haya entendido nada: significa que se ha aprendido el histórico, ruido incluido. Y el ruido no se repite. Con tres años de datos semanales, un R² de 0,99 no es una buena noticia, es una señal de alarma.

    Y porque el error que te importa no es el del pasado. Lo que vas a hacer con el modelo es decidir sobre un periodo que todavía no ha ocurrido. El R² se calcula íntegramente sobre datos que el modelo ya ha visto.

    Por qué un R² más bajo puede ser mejor modelo

    Junta las dos cosas anteriores y sale una situación que en la práctica es muy común.

    Dos modelos sobre los mismos datos. Uno tiene 0,96 y otro 0,84. El de 0,96 lleva treinta variables, varias de ellas metidas porque mejoraban el ajuste, y sus coeficientes cambian bastante cada vez que se reestima con un trimestre más. El de 0,84 tiene doce variables que están ahí por una razón, se comporta parecido dentro y fuera del periodo con el que se estimó, y sus coeficientes se mueven poco.

    El segundo es mejor modelo. No «aunque» tenga menos R²: en parte porque lo tiene. Ese 0,12 de diferencia es, en buena medida, ajuste al ruido. Y el ruido del año que viene será otro.

    Un R² más bajo también puede significar, simplemente, que los datos de ese cliente son difíciles. Una serie con poca variación, muchos factores fuera del modelo o un histórico corto da R² modestos por construcción. Castigar eso es castigar al cliente por sus datos.

    Qué mirar en su lugar

    Cinco preguntas que sí distinguen un modelo que sirve de uno que solo ajusta:

    ¿Cómo se comporta fuera del periodo con el que se estimó? Es la pregunta principal, y la única que mide lo que de verdad vas a usar. Dejar fuera los últimos meses, estimar sin ellos y comparar. Para series temporales la forma ordenada es la validación cruzada con origen móvil, que respeta el orden del tiempo en vez de barajar las observaciones.

    ¿Qué queda en los residuos? Si en lo que el modelo no explica todavía se ve estructura (picos que se repiten, un periodo que arrastra al siguiente), es que algo real se ha quedado fuera. Los diagnósticos de regresión están para eso y no cuestan nada de ejecutar.

    ¿Cuánto se mueven los coeficientes al reestimar? Si añadir un trimestre cambia un efecto a la mitad, el número del trimestre pasado tampoco era de fiar.

    ¿El error, en las unidades del negocio, es asumible? Un error medio del 7 % puede ser excelente o inaceptable según lo que se decida con él. Esa conversación es más útil que un R², y además se puede tener con alguien que no sepa estadística.

    ¿Coincide con algo medido por otra vía? Un experimento, un apagado, un test por regiones. Que el modelo acierte una cifra obtenida de forma independiente vale más que cualquier bondad de ajuste.

    Entonces, ¿el R² no sirve para nada?

    Sí sirve, y bastante, mientras se use para lo que es: una medida de ajuste dentro de un contexto fijo. Comparar dos especificaciones sobre los mismos datos, ver si una variable aporta algo, o detectar que algo va muy mal, como un R² de 0,2 donde esperabas 0,8, son usos legítimos.

    Lo que no es, es una nota. No ordena proveedores, no ordena clientes y no ordena categorías. Y cuando alguien defiende un modelo con su R² en lugar de con lo que sale de él, lo que está diciendo es que ha mirado el ajuste y no la decisión.

    Si te ha resonado

    Lo hablamos con tus números delante.

    Trae tu plan de medios y una hora. Miramos qué se puede medir con lo que ya tienes y qué te falta para llegar.

    Hablamos