Modelos

Estadística vs siquiatría: la aparente contradicción, la profunda síntesis

[Nota: esta entrada está indirectamente motivada por mi asistencia a la presentación (y posterior adquisición) del libro “Los peligros de la moralidad” de Pablo Malo hoy día 3 de diciembre de 2021.]

Desde Freud hasta Pablo Malo son muchos los siquiatras que han intervenido en el debate público aportando su visión sobre distintos temas.

Desde ¿quién? hasta ¡tantos! son innumerables los estadísticos que han intervenido (generalmente, de modo implícito) en el debate público aportando su visión sobre distintos temas.

Causalidad inversa: más sobre los momentos "Le Verrier"

Escribí el otro día sobre los llamados momentos Le Verrier. Que, siguiendo la nomenclatura de Why ask why? Forward causal inference and reverse causal questions no son otra cosa que ejercicios de causalidad inversa con final feliz.

Efectivamente, según el artículo, las cuestiones de índole causal son de dos tipos: prospectivas y retrospectivas (o inversas), en una traducción muy libre. Las primeras, más habituales, se refieren a cuáles serán los efectos de una causa. ¿Qué pasará si aumento mi presupuesto de publicidad? ¿Qué pasará con la temperatura de un dispositivo si aumento la potencia? Etc. Son preguntas a las que responden los modelos, sea a través del estudio de una serie de coeficientes, realizando predicciones, etc.

¿Qué modelas cuando modelas?

Ahora que estoy trabajando en el capítulo dedicado a la modelización (clásica, frecuentista) de mi libro, me veo obligado no ya a resolver sino encontrar una vía razonable entre las tres —¿hay más?— posibles respuestas a esa pregunta.

La primera es yo modelo un proceso (o fenómeno), los datos llegan luego. Yo pienso que una variable de interés $latex Y$ depende de $latex X_i$ a través de una relación del tipo

La interpretación de "significativo" en un caso muy concreto

Comienzo por el final:

En el gráfico anterior se aprecian unos datos, generados mediante

n <- 100
x <- 1:n

y_base <- cos(2 * pi * x / 100)
y <- y_base + rnorm(n, 0, .4)

datos <- data.frame(x = x, y_base = y_base, y = y,
                    cos1 = cos(2 * pi * x / 100),
                    cos2 = cos(4 * pi * x / 100))

a los que se ha ido añadiendo un ruido progresivamente, es decir, una serie de outliers artificiales.

Las líneas rojas representan la predicción realizada mediante un modelo de segundo orden de Fourier (si se me permite), es decir,

Explicación de los scorings de "ciertos" modelos

Esta entrada la hago por petición popular y para rematar de alguna manera lo que incoé hace unos días. Seré breve hasta lo telegráfico:

  1. Tomo las observaciones con scorings más altos (en un árbol construido con ranger y cariño).
  2. Veo cuáles son los árboles que les asignan scorings más altos.
  3. Anoto las variables implicadas en las ramas por donde bajan las observaciones (1) en los árboles (2).
  4. Creo una matriz positiva: filas = casos, columnas = variables, valores = conteos.
  5. Y la descompongo (vía NMF). 6. Etc.

Es hasta paquetizable.

Muchos cocineros con la misma receta...

[Iba a guardar un enlace a este artículo entre mis notas, pero, qué demonios, lo dejo aquí, público, porque así lo encuentro yo y lo encontramos todos.]

¿Qué pasa/puede llegar a pasar si muchos científicos de datos analizan los mismos datos en busca de una respuesta a la misma cuestión? Una de las posibles respuestas está en Many Analysts, One Data Set: Making Transparent How Variations in Analytic Choices Affect Results. Y por evitaros un click,

Modelos como "hechos estilizados"

El otro día, una remesa de nuevos datos rompió un modelo (no mío) en producción. El modelo suponía que la forma de los datos era muy concreta y estos se rebelaron.

Un amigo me preguntó por qué se usaba un modelo paramétrico tan simple. El motivo no es otro que la búsqueda de hechos estilizados, resúmenes a muy alto nivel de la realidad que quepan y queden bien en un tuit. Aunque luego, su parecido con la realidad sea nulo.

Un recordatorio: MOMOCalor está "up and running"

Por desgracia, MoMo ya no exige presentación. Pero con los termómetros acariciando los 40º no está mal recordar la existencia de MoMoCalor, su hermanito, que trata atribuir mortalidad a los excesos de temperaturas.

¿Por qué es particularmente importante MoMoCalor hoy? Recuérdese que MoMo estima, simplemente, desviaciones de mortalidad con respecto a la que sería la normal en una fecha determinada. Cuando hay una epidemia o una ola de calor, la mortalidad crece y MoMo lo detecta. Pero cuando hay una epidemia y una ola de calor simultáneas, MoMo es incapaz de atribuir muertos las causas anómalas subyacentes. Pero MoMoCalor sí.

No hagáis esto o se darán cuenta de que sois muy cutres

Lo que no hay que hacer nunca si no quieres que se enteren de que eres inmensamente cutre es escribir código en las líneas del siguiente seudocódigo:

m = model(y ~ a + b + c)
if (modelo.p_value(a) > .05)
    m = model(y ~ b + c)

¡No, no, no, no, NO!