27 votos

Dado que ahora tenemos un poder de cálculo ilimitado (en relación con las normas históricas), ¿necesitamos usar métodos estadísticos en lugar de simulaciones?

En 2016, Allen Downey escribió una publicación en su blog titulada "There is still only one test" que discute las ventajas de realizar simulaciones en lugar de pruebas estadísticas tradicionales. Argumenta que dado que la computación es ahora decenas de miles de veces más rápida en comparación con las normas históricas, los métodos analíticos tradicionales en estadística ya no tienen sentido. Por ejemplo, cuando se descubrió la prueba t en 1908, fue extremadamente útil ya que todos los cálculos se hacían a mano. Pero en la actualidad, un iPhone puede realizar cálculos estadísticos cerca de 10^11 veces más rápido de lo que podría hacerlo una persona a mano en 1908.

Para citar a Downey:

Estos métodos analíticos eran necesarios cuando la computación era lenta y costosa, pero a medida que la computación se vuelve más barata y rápida, son menos atractivos porque:

  1. Son inflexibles: Si usas una prueba estándar, estás comprometido a utilizar una estadística de prueba y un modelo particular de hipótesis nula. Es posible que debas utilizar una estadística de prueba que no sea apropiada para tu dominio del problema, solo porque se preste para el análisis. Y si el problema que estás intentando resolver no encaja en un modelo prefabricado, estás fuera de suerte.

  2. Son opacos: La hipótesis nula es un modelo, lo que significa que es una simplificación del mundo. Para cualquier escenario del mundo real, existen muchos modelos posibles, basados en diferentes suposiciones. En la mayoría de las pruebas estándar, estas suposiciones son implícitas y no es fácil saber si un modelo es apropiado para un escenario particular.

Una de las ventajas más importantes de los métodos de simulación es que hacen explícito el modelo. Cuando creas una simulación, te ves obligado a reflexionar sobre tus decisiones de modelado, y las simulaciones mismas documentan esas decisiones.

También proporciona un ejemplo práctico de tal simulación en esta publicación de blog. Esto me hace preguntar:

  1. Con la potencia computacional disponible hoy en día, ¿por qué seguimos realizando pruebas estadísticas tradicionales en lugar de crear modelos explícitos y ejecutar millones de simulaciones para averiguar el verdadero valor p de una observación?
  2. ¿Todavía existen escenarios donde los métodos estadísticos tradicionales son preferibles a las simulaciones?

28voto

icelava Puntos 548

He codificado pruebas de permutación para modelos de efectos mixtos lineales que contenían interacciones, porque algunos coautores estaban preocupados por la no normalidad de los residuos.

Fue una cantidad enorme de trabajo. Y muy propenso a errores debido a la complejidad. Absolutamente no habría querido depurar mi propio código medio año después. Solo puedo imaginar el dolor para alguien más que tenga que hacerlo.

Y los resultados, en términos de valores p de las estadísticas F, fueron extremadamente cercanos a los de las pruebas paramétricas estándar.

Estoy totalmente de acuerdo en que es una ventaja si las pruebas se hacen explícitas a través de la simulación y la permutación. Sin embargo, diría que los enfoques basados en remuestreo pueden ser al menos tan opacos como los métodos paramétricos estándar. Y mientras que el remuestreo es de hecho más flexible que los métodos paramétricos (que, de hecho, son bastante flexibles), esta flexibilidad es útil exactamente en situaciones más complejas donde un enfoque de remuestreo es muy complicado de codificar. Y aún más difícil de explicar a los no estadísticos.

Además, la gran mayoría de las estadísticas se realiza (probablemente) por no estadísticos con un aprendizaje estadístico más o menos profundo: psicólogos, científicos de STEM, ingenieros. Simplemente no hay suficientes estadísticos y científicos de datos afinados a las estadísticas. Ya es bastante difícil para los no estadísticos entender cuándo usar qué prueba. Creo que es poco realista esperar que entiendan estadísticas (y tengan las habilidades necesarias de programación y desarrollo de software) lo suficiente como para utilizar rutinariamente alternativas basadas en remuestreo. Sí, esto sería absolutamente deseable. Simplemente no realista.

25voto

James Puntos 21

Stephan como siempre tiene muy buenos puntos (+1).

Además de las complejidades con las implementaciones, algunos otros puntos incluyen:

  • Métodos modernos bastante estándar como GLMMs son bastante intensivos en computación. Intenta correr un GLMM Gamma en un conjunto de datos moderadamente grande... una vez. Incluso con funciones dedicadas, procesamiento en paralelo y una CPU moderna a partir de 2024, $1000$ repeticiones de un ajuste de modelo a $n > 10,000$ muestras lleva horas.
  • Trabajo en riesgo crediticio, donde no es inusual tener millones, o incluso decenas de millones de filas. Incluso métodos bastante simples pueden tardar mucho tiempo en bootstrap. Esto aún podría valer la pena para una sola prueba final, pero la prueba y error es un dolor cuando cada paso tarda una eternidad en ejecutarse.
  • El remuestreo a menudo ya es parte del flujo de trabajo. Validación cruzada, ejecuciones repetidas de validación cruzada, ejecuciones repetidas de validación cruzada anidada... varias capas profundas, un tiempo de cómputo adicional de $1000 \times$ se acumula rápidamente.

14voto

user164061 Puntos 281

Esta es una pregunta recurrente en formas ligeramente diferentes. Véase por ejemplo:

El aspecto común en estas preguntas es que la gente piensa que las simulaciones pueden reemplazar los cálculos.

Se malinterpreta el motivo detrás de utilizar suposiciones en los cálculos:

  • A menudo, el problema no es la falta de potencia computacional, sino la falta de datos. Las suposiciones nos permiten hacer estadísticas con pocos datos. El bootstrap, utilizando la función de distribución empírica, no ayudará mucho si esa función de distribución empírica no describe con precisión la distribución de la población.
  • A menudo, los cálculos se realizan para comprender mejor el problema. Una fórmula brinda una visión del mecanismo subyacente y el comportamiento del sistema cuando cambian los parámetros. Con una simulación, es posible que no sepamos qué sucede si ciertos parámetros cambian. Por ejemplo, las relaciones entre la media, la varianza, el tamaño de la muestra, etc. se pueden revelar si hacemos una descripción de algún resultado en términos de una fórmula en lugar de una tabla con números de una simulación. Al tener el resultado en términos de una fórmula, las relaciones son claras.

Diría que los argumentos y conclusiones del artículo del blog están un poco equivocados. Afirma que hay una distinción entre las suposiciones implícitas y explícitas del modelo y cómo esto sería diferente con los métodos de simulación, pero no está claro de dónde viene esto. La simulación no está haciendo nada diferente, excepto aplicar el modelo de una manera diferente (usando simulaciones en lugar de cálculos exactos).

El ejemplo de las tuercas en el enlace al blog es un buen ejemplo. La simulación de la distribución de una estadística chi-cuadrado es simplemente una forma de evitar hacer los cálculos directamente, pero no está haciendo suposiciones diferentes.

Creo que un problema así ha ocurrido anteriormente como una pregunta aquí. Involucra variables Poisson correlacionadas con una suma condicional. Esto se puede resolver de la misma manera que la derivación de la prueba chi-cuadrado (¿Por qué la prueba de chi-cuadrado utiliza el conteo esperado como la varianza?). Mientras buscaba un enlace a esa pregunta, aquí hay un caso similar: Probabilidad de ganar un premio de una rifa con múltiples ganadores con múltiples participaciones. Hay algunas suposiciones del modelo y podemos resolver o aproximar las ecuaciones o podemos obtener una respuesta basada en simulaciones. La imagen a continuación muestra los resultados de las simulaciones y los cálculos en esa pregunta/respuesta

trama de simulación con cálculo

La simulación y el cálculo generan la misma imagen. Pero, el cálculo es mucho más que simplemente esos números que la simulación también proporciona; también proporciona la respuesta como una fórmula $P(\text{sin premio}) = \exp(-\alpha k_\text{entradas})$ que nos hace comprender mucho mejor el problema.

Las simulaciones a menudo pueden ayudar cuando las ecuaciones son difíciles de resolver, pero una simulación solo te da un número, no resuelve las ecuaciones con una fórmula como resultado.

4voto

g2mk Puntos 161

¡Las simulaciones son geniales! ...siempre y cuando los modelos que impulsan las simulaciones sean precisos. Hay muchos sistemas en el mundo que aún no comprendemos completamente, o cuyos modelos solo son precisos en cierto grado. Por ejemplo, aunque los modelos meteorológicos siguen mejorando, estamos lejos de predecir con precisión dónde y cuándo van a llegar los huracanes del próximo año. Sería imposible para nosotros simular ese comportamiento con precisión en el momento actual, porque el sistema es más complejo y vasto de lo que somos capaces de entender lo suficientemente bien como para predecir con precisión mediante simulación.

Sin embargo, las estadísticas siguen siendo útiles en tales casos. Es posible que no sepamos dónde y cuándo van a llegar precisamente los huracanes, pero podemos tomar datos existentes y aplicar estadísticas para crear un modelo de riesgo sobre qué tan probable sería un huracán en un período de tiempo determinado para alguna ubicación (o conjunto de ubicaciones) basado en una combinación de esos datos históricos y los modelos limitados que tenemos.

Alguien mucho más sabio que yo (no podría decirte quién, creo que alguien en Reddit) dijo algo así como "Las estadísticas son el estudio de cosas que aún no hemos descifrado cómo estudiar". Para todo lo que entendemos muy bien, las simulaciones tienden a ser mucho mejores que los modelos estadísticos, pero debemos reconocer que hay mucho que aún no comprendemos.

Después de todo, "el sistema es complicado, nuestro conocimiento es limitado" -Dr. Tong Yu, P.Eng

2voto

Sepehr Nazari Puntos 123

Además de las otras respuestas, a veces tu simulación debe ser ejecutada un número increíble de veces si quieres tener alguna esperanza de reducir la varianza de la muestra en tus métricas a niveles manejables.

Como ejemplo simple, imagina que quieres usar la simulación para evaluar qué tan buenas son las estrategias de búsqueda en rejilla de diferencias. Siendo un buen experimentalista, decides que probablemente deberías randomizar completamente la rejilla: el punto de inicio, el objetivo y el desorden. Mantengámoslo simple y digamos que tienes una rejilla de 10x10. Enfoquémonos en el desorden por ahora. Supongamos que cada celda de la rejilla puede contener o no contener desorden. Por lo tanto, podemos modelar las posiciones de todo el desorden en la tabla simultáneamente con un solo número binario de 100 dígitos (un bit por celda de la rejilla). Un número binario de este tamaño tiene 1.2676506002×10³⁰ posibles valores diferentes. Si el resultado de tu simulación es sensible a la disposición del desorden en la rejilla, esto representa una fuente de variabilidad potencialmente masiva en tu simulación, y es posible que necesites ejecutar tu simulación decenas de miles de veces o más para obtener métricas significativas. Y esto solo fue un problema ficticio.

En general, si tu simulación está en una rejilla de n dimensiones o en un espacio de n dimensiones para n mayor que uno, puedes encontrarte con este problema.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X