Las predicciones necesitan barras de error
(andrewpwheeler.com)- Si indicadores muy volátiles, como las tasas de criminalidad a nivel nacional, se presentan solo como predicciones puntuales, pequeñas diferencias de tendencia pueden sobreinterpretarse fácilmente, por lo que es necesario ver también los intervalos de predicción para poder juzgar
- Se entrenó un modelo ARIMA(1,1,2) de Python
statsmodelscon la tasa de delitos violentos de 1960 a 2015 y se predijo el período 2016-2025; el código y los datos están publicados en GitHub - En las predicciones a 1 año de 2016 a 2020, el error estándar es menor que 20, pero al predecir varios años en secuencia el error se acumula, y el intervalo de predicción del 95% para 2025 se amplía hasta 260.36-575.07
- Los valores reales observados en 2021 y 2022 no coincidieron con la predicción de tendencia al alza de Richard Rosenfeld, pero dentro del intervalo de predicción de ARIMA siguen siendo compatibles con el modelo
- Las predicciones de tasas nacionales de criminalidad a largo plazo son difíciles de usar directamente para respuestas de política local; para la asignación real de personal y recursos son más útiles predicciones más concretas, como el aumento de llamadas de servicio por el crecimiento urbano
Es difícil evaluar tendencias de criminalidad solo con predicciones puntuales
- Richard Rosenfeld abordó en
Criminologistla predicción de tasas de criminalidad a nivel nacional y, en un artículo publicado a fines de 2023, presentó predicciones para 2021-2025 - Aunque hay quejas de que las estadísticas criminales del FBI salen con un año de retraso, esta predicción tiene el carácter de una predicción tardía, ya que al momento de publicación incluía años que ya habían pasado
- Como las predicciones puntuales casi siempre fallan, se debe presentar junto con el valor predicho un intervalo de predicción alrededor de este
- Al ver los márgenes de error, queda claro lo fácil que se tambalean las interpretaciones basadas en pequeñas diferencias de tendencia
Experimento de predicción reproducido con ARIMA
- Para el análisis se usaron
pandas,statsmodels.tsa.arima.model.ARIMAymatplotlibde Python - Los datos se construyeron combinando
UCR_1960_2019.csvde 1960-2019 con valores adicionales de 2020-2022- La tasa de delitos violentos
VRatese calculó comoViolent / Population * 100000 - La tasa de delitos contra la propiedad
PRatese calculó del mismo modo
- La tasa de delitos violentos
- El código y los datos están en GitHub
- Para que fuera comparable con el artículo de Rosenfeld, se tomó 1960-2015 como período de entrenamiento y se ajustó un modelo ARIMA(1,1,2)
- Rosenfeld escribió que ajustó un ARIMA(1,0,2) a la tasa de delitos violentos, pero también dijo que diferenció los datos, por lo que corresponde a ARIMA(1,1,2)
- El modelo de Rosenfeld incluye factores exógenos como la inflación, pero aquí no se incluyen
- No se busca el modelo óptimo mediante una grid search aparte
Diagnóstico del modelo y cómo crece el error
- El coeficiente AR(1) del modelo ajustado resultó negativo, lo que sugiere una posible sobrediferenciación
- Según
violent.test_serial_correlation('ljungbox'), no hay autocorrelación significativa en los residuos - También podría elegirse un mejor modelo con un método ARIMA automático, pero en este caso es probable que la mayoría de los modelos ARIMA produzcan predicciones e intervalos de error muy similares
- Para 2016-2020 se puede comparar mediante predicciones a 1 año a medida que se agregan los nuevos datos
- El error estándar en este tramo es 19.813228, menor que 20
- Entra dentro del rango de error absoluto del 10% que Rosenfeld estimó como criterio de utilidad
- Al predecir varios años hacia adelante, el error se acumula
- Para predecir 2022, primero se necesita la predicción de 2021
- Para 2023 hay que predecir en cadena 2021, 2022 y 2023
- El error estándar aumenta aproximadamente como
sqrt(steps*se^2), con una estructura en la que las varianzas se suman
Intervalos de predicción y valores observados de 2016-2025
- La media predicha por el modelo ARIMA para 2016-2025 se ubica en general entre 379 y 420, pero el intervalo de predicción se amplía con el tiempo
- 2021: media 412.99, intervalo del 95% 374.16-451.82
- 2022: media 420.17, intervalo del 95% 342.16-498.18
- 2023: media 416.91, intervalo del 95% 303.53-530.28
- 2025: media 417.72, intervalo del 95% 260.36-575.07
- Las predicciones puntuales de Rosenfeld están más cerca de los valores reales que la media de ARIMA en algunos años
- Para el valor observado de 398.5 en 2020, Rosenfeld predice 394.9 y la media de ARIMA es 379.21
- Para el valor observado de 387.0 en 2021, Rosenfeld predice 404.1 y la media de ARIMA es 412.99
- Para el valor observado de 380.7 en 2022, Rosenfeld predice 409.3 y la media de ARIMA es 420.17
- El MAPE de la estimación puntual de ARIMA es peor que el de Rosenfeld en algunos tramos de la muestra retenida, pero los valores observados entran dentro del intervalo de predicción de ARIMA
- Los valores observados de 2021 y 2022 muestran que la predicción de tendencia al alza de Rosenfeld ya falló
- La predicción ARIMA es esencialmente de reversión a la media y tiende a converger al término medio en pocos pasos
Predicciones 2023-2025 más bajas tras incorporar datos recientes
- Después de agregar los datos de 2021-2022, se volvió a predecir 2023-2025
- Las predicciones actualizadas son más bajas que las predicciones de largo plazo anteriores
- 2023: media 371.98, intervalo del 95% 333.14-410.81
- 2024: media 380.09, intervalo del 95% 302.08-458.11
- 2025: media 376.40, intervalo del 95% 263.03-489.78
- En una gráfica se puede apreciar más fácilmente el tamaño de los márgenes de error
- Si se incluyen factores exógenos, en predicciones de varios años hacia adelante también hay que predecir esos factores exógenos, y se debe incorporar además su error
Límites de política pública de las predicciones macro de criminalidad
- Las predicciones de la tasa nacional de delitos violentos son difíciles de usar directamente para respuestas reales de política pública
- Una ciudad como Pittsburgh no tiene razón para usar directamente una predicción de criminalidad a nivel nacional para tomar decisiones de política
- Aunque la precisión de la predicción mejorara a niveles de 5% o 1%, sería difícil que un responsable operativo a nivel federal respondiera con algo como “la tasa de delitos violentos subirá 10 en dos años, así que apoyemos con 1342 policías más”
- A las predicciones macro de criminalidad se les critica que no hay skin in the game que asumir cuando se equivocan
- En aplicaciones reales de predicción del delito, es más práctico estimar que cuando se agrega una vivienda o departamento en una ciudad, las llamadas de servicio anuales aumentan aproximadamente en 1
- Para ciudades en crecimiento, es más adecuado planear la asignación de personal a largo plazo de esta manera
Referencias mencionadas
- Ashby, M. (2023). Forecasting crime trends to support police strategic decision making: compara errores comunes de predicción a nivel ciudad y muestra que las predicciones a varios años tienden a producir errores mucho mayores que el criterio de utilidad del 10% de Rosenfeld
- McDowall, D. (2023). Empirical Properties of Crime Rate Trends: aborda con más cautela la relación entre las tendencias macro de tasas de criminalidad y la teoría criminológica
- Rosenfeld, R. (2018). Studying crime trends: Normal science and exogenous shocks: trabajo previo relacionado con el estudio de Rosenfeld sobre tendencias macro de tasas de criminalidad
- Yim, H. N., Riddell, J. R., & Wheeler, A. P. (2020). Is the recent increase in national homicide abnormal?: examina la aplicación de fan charts al monitoreo de tendencias nacionales de homicidio
1 comentarios
Opiniones en Hacker News
Hay dos puntos interesantes aquí. Uno es el que trata el autor y el otro no. Primero, como al final del artículo, las predicciones normalmente deberían conducir a decisiones, y si ambas se separan, su valor puede volverse poco claro.
Rosenfield parece querer darles más peso, como predicción, a conclusiones estadísticas sobre datos del pasado, y eso suena dudoso. Segundo, tampoco queda claro qué deberían significar las barras de error. Una posibilidad es que sean intervalos de confianza[1], y otra es que sean desviaciones estándar. Es decir, en la práctica se estaría prediciendo la diferencia al cuadrado entre la propia predicción puntual y el resultado real.
[1] Admito que la terminología no es exacta.
No es una explicación que abarque toda la estadística, pero es una perspectiva útil al pensar en predicciones.
Por ejemplo, si es un intervalo de confianza del 95%, deberías estar igualmente dispuesto a aceptar cuotas de 19:1 a que el valor verdadero está fuera del intervalo, o cuotas de 1:19 a que el valor verdadero está dentro del intervalo. Este enfoque es correcto en general y, en las discusiones sobre incertidumbre, hace que el significado se perciba de forma mucho más tangible, convirtiéndolo en un criterio inmediatamente accionable. Si se hace bien, obliga a asignar una incertidumbre que no sea ni demasiado conservadora ni demasiado optimista.
Si la idea de dejar que el lector elija cualquiera de los dos lados de la apuesta te incomoda un poco, vas en la dirección correcta. Esa sensación disminuye cuando tienes bastante confianza en que las barras de error están bien establecidas y en que la inferencia está documentada y es defendible.
Respuesta adicional a la pregunta original: las barras de error de 1 desviación estándar son un intervalo de confianza del 68%, y 2 desviaciones estándar son un intervalo de confianza del 95%. Por supuesto, suponiendo que uno sea frecuentista.
[1] https://www.nobelprize.org/prizes/physics/1997/phillips/fact...
Por favor, debería hacerse así. Estuve en una organización que durante años ejecutó miles de experimentos en línea, y al comparar el efecto de un tratamiento nuevo, contar con barras de error ayudaba muchísimo a entenderlo mejor.
Algunas personas pensaban que eso enturbiaba el juicio. Por ejemplo, si un tratamiento nuevo producía una “mejora” del 1%, pero el intervalo de confianza iba de -10% a 10%, entonces ese experimento no te decía cómo había sido afectada esa métrica. Eso hace que la decisión se sienta arbitraria, pero precisamente ese es el punto. En ese caso la decisión realmente es arbitraria, y el intervalo de confianza te informa de eso para que puedas considerar otras compensaciones. Si el intervalo de confianza fuera de 0.9% a 1.1%, podrías tener mucha más certeza sobre el efecto.
El gran problema es que en algunos casos es extremadamente difícil obtener barras de error significativas. Por ejemplo, sería bueno imaginar una situación en la que se adjunte un valor así a cada predicción de un modelo de aprendizaje automático, pero no sé bien cómo lograrlo razonablemente para la mayoría de los tipos de modelos. Lo mismo ocurre con los experimentos en línea que requieren diseños experimentales complejos porque no se puede hacer una asignación aleatoria que produzca grupos lo suficientemente independientes.
De forma similar, para todas las métricas importantes habría que revisar regularmente histogramas, es decir, distribuciones estadísticas. Una vez tuvimos un problema de velocidad en llamadas a un gran servicio web: muchas llamadas terminaban en menos de 50 ms, pero demasiadas llegaban al timeout de 500 ms. Al mismo tiempo vimos que el histograma de velocidad tenía dos picos bien definidos y, al investigar más, descubrimos que esos dos picos representaban a usuarios desconectados y usuarios conectados. Gracias a eso pudimos ignorar una amplia porción del código y encontrar el problema de velocidad en un código de personalización desplegado recientemente, que de otro modo no habríamos sospechado.
Hace esfuerzos sorprendentes por añadirles una justificación a las decisiones arbitrarias. A veces toma la forma de modelos estadísticos que presentan el ruido como si fuera señal, y a menudo proviene de falsos expertos. No tienen la metodología ni los ciclos de retroalimentación que les permitirían saber qué están haciendo, pero poseen un aura de expertise cultivada socialmente que puede prestar legitimidad a una decisión. Antes se les llamaba chamanes, sacerdotes y astrólogos; hoy se les llama consultores de gestión y macroeconomistas.
Yo prefiero declarar explícitamente lo que está ocurriendo y literalmente lanzar una moneda. Aunque esa no es una estrategia para conseguir un gran montón de piedras brillantes.
A veces hay un único proceso que genera valores con distribuciones más o menos similares. Esa es una buena situación, porque se pueden usar varias herramientas estadísticas para planificación, inferencia, etc.
Pero en la práctica a menudo hay dos o más procesos mezclados que se hacen pasar por uno solo. Dentro de cada proceso se producen valores con distribuciones más o menos similares, pero el análisis del total agregado se vuelve confuso. Si conoces los componentes principales del falso proceso único que estás observando, siempre estarás por delante de la competencia.
[1]: https://two-wrongs.com/statistical-process-control-a-practit...
Estoy totalmente de acuerdo con esta idea. Y agregaría que las estimaciones de fechas, es decir, los plazos, también deberían tener barras de error. Al final, las fechas también son predicciones
Si un stakeholder pide una fecha, también debería especificar qué barras de error quiere. Una fecha en bruto sin estimación de incertidumbre no tiene sentido. Del mismo modo, si un ingeniero le presenta una fecha a otros stakeholders, debería incluir junto con ella alguna forma de estimación de incertidumbre. Hay una diferencia enorme entre decir que hay un 90% de probabilidad de terminar antes de X día y decir que hay un 99,9%
Es casi una distribución de ley de potencias sesgada hacia un lado. Los plazos casi nunca se terminan antes, y cuando se terminan antes, por lo general no es por mucho. En cambio, cuando se retrasan, pueden retrasarse una cantidad absurda
Construir intervalos de confianza para algo así es realmente difícil
Una estimación de fecha sin barras de error no se puede demostrar como incorrecta. Pero si dices “hay un 50% de probabilidad de terminar antes de esta fecha”, al revisar las últimas 20 estimaciones de ese tipo, aproximadamente 10 deberían haber terminado a tiempo. Si no, la estimación no está calibrada. Aun así, al menos puedes saberlo. Sin barras de error, no lo habrías sabido
La cuantificación de la incertidumbre es un aspecto descuidado en la ciencia de datos, especialmente en el aprendizaje automático. Los profesionales no siempre tienen formación estadística, y en machine learning suele prevalecer la actitud de “primero predecir y preguntar después”, por lo que este cuidado queda relegado
Yo siempre pido barras de error
En modelos no lineales generales, producir barras de error —o, más en general, distribuciones de error— que realmente describan una noción sensata de incertidumbre puede ser bastante costoso tanto en lo teórico como en lo computacional, incluso en casos ideales. Hay buenos métodos prácticos con respaldo teórico, como Monte Carlo Dropout, pero las barras de error que generan no siempre son el error que uno quiere. MC DO estima la incertidumbre debida a los pesos del modelo, pero no estima, por ejemplo, la incertidumbre causada por malos datos de entrenamiento
Estoy muy a favor de métodos que incorporen la incertidumbre de forma natural, pero hay muchos tipos de modelos que producen resultados empíricamente muy útiles y para los cuales no está claro cómo generar o interpretar eficientemente estimaciones de incertidumbre útiles
Otro tema aparte, y a menudo descuidado, es el concepto de salidas de modelo calibradas, pero eso ya es otra madriguera de conejo
Pero se invierten millones en modelos sin estos prerrequisitos, se venden como soluciones a la gente y se deja pasar con el argumento de que “si la gente los compra, debe ser porque tienen valor”. La gente también le paga a estafadores
Me recuerda a algo parecido que Walter Lewin dijo sobre las mediciones en su clase 8.01: “una medición cuya incertidumbre se desconoce no tiene sentido”
https://youtu.be/6htJHmPq0Os
Se podría decir que una predicción es una medición sobre el futuro
Fuente: https://www.edge.org/response-detail/10459
Pensé que esto iba a tratar sobre el clima
ECMWF corre modelos de ensamble; probablemente ejecuta 51 modelos simultáneos variando un poco las condiciones iniciales o cambiando parámetros del modelo dentro de cierto rango. De esos 51 modelos se pueden obtener intervalos de confianza bastante buenos
Eso sí, es un modelo de menor resolución y que se ejecuta con menos frecuencia. El modelo “HRES” tiene el doble de resolución espacial, así que supongo que no se corre como ensamble. La razón, obviamente, es que sería muy caro
[1]: https://en.wikipedia.org/wiki/Integrated_Forecast_System#Var...
https://content.meteoblue.com/en/research-education/specific...
Un ejemplo interesante en este artículo es el nowcasting: la técnica de predecir el presente o el pasado mientras se espera a que lleguen los datos
Sin rangos de error, es mala ciencia y mala estadística
Para que una predicción muestre la incertidumbre real, tendrías que estar en una posición bastante privilegiada en la que conoces el proceso generador de datos. Cuando es posible, se puede calibrar de forma aproximada con muchos datos históricos, pero aun así hay límites
Toda estimación, predicción, interpolación y extrapolación debería tener un intervalo de confianza, intervalo de predicción o intervalo de tolerancia que refleje los supuestos que el equipo incorpora al problema. Depende del campo de aplicación
Me hizo pensar en este paper[1]
“La ilusión de predictibilidad en los resultados científicos: incluso los expertos confunden la incertidumbre inferencial con la variabilidad de los resultados”
Tradicionalmente, los científicos han puesto más énfasis en comunicar la incertidumbre inferencial, es decir, la precisión de las estimaciones estadísticas, que la variabilidad de los resultados, es decir, qué tan predecibles son los resultados individuales. Este paper muestra que eso puede generar malentendidos importantes sobre las implicaciones de los resultados científicos. En concreto, en tres experimentos aleatorizados preregistrados, los participantes vieron el mismo hallazgo científico mediante visualizaciones que mostraban solo la incertidumbre inferencial, solo la variabilidad de los resultados, o ambas, y respondieron sobre el tamaño y la importancia del hallazgo. Los resultados, basados en respuestas de profesionales de la salud, científicos de datos profesionales y profesores en tenure track, muestran que la práctica habitual de visualizar solo la incertidumbre inferencial puede llevar incluso a expertos altamente capacitados a sobreestimar mucho los efectos de un tratamiento. En cambio, mostrar juntas la incertidumbre inferencial y la variabilidad de los resultados conduce, en promedio, a una percepción más precisa, manteniendo intactas otras impresiones subjetivas sobre los resultados
[1] https://www.microsoft.com/en-us/research/publication/an-illu...
Las predicciones pueden ser útiles incluso sin barras de error. A veces, una sola predicción puntual basta para decidir una acción
Pero a veces, para tomar una buena decisión, ayuda o incluso es necesario conocer toda la distribución predictiva. La frase “las predicciones puntuales siempre están equivocadas” es cierta para datos continuos, pero si se puede predecir que una acción va a subir 2,01 veces en vez de 2 veces, igual sigue siendo útil