Stan

Cointegración: un modelo generativo

[Esta entrada tiene que ver con una nueva manía que he adquirido con la edad: construir modelos generativos para esos modelos explicados siempre de una manera sumamente críptica.] La cointegración es una relación muy particular entre dos (o más) series temporales. Una de ellas, $latex x_t$ puede ser cualquiera. Tanto da. Vamos a construir la cointegrada, $latex y_t$. Para ello, primero, necesitamos una serie más, una serie estacionaria, p.e., $latex \nu_t$.

Modelos de conteos con sobredispersión (con Stan)

R
Esta entrada muestra cómo afrontar (con Stan) un problema que encontré el otro día en un lugar que no puedo mencionar pero en el que sé que me leen (y los destinatarios sabrán que va por ellos). El contexto es el siguiente: se hace un test A/B donde la variable de interés son unos conteos. Hay varios grupos (aquí los reduciré a dos) y los datos siguen aproximadamente (aquí omitiré la parte de la inflación de ceros) una distribución de Poisson.

Colinealidad y posterioris

En esta entrada voy a crear un conjunto de datos donde dos variables tienen una correlación muy alta, ajustar un modelo de regresión y obtener la siguiente representación de la distribución a posteriori de los coeficientes, donde se aprecia el efecto de la correlación entre x1 y x2. El código, library(mvtnorm) library(rstan) library(psych) n <- 100 corr_coef <- .9 x <- rmvnorm(n, c(0, 0), sigma = matrix(c(1, corr_coef, corr_coef, 1), 2, 2)) plot(x) x1 <- x[,1] x2 <- x[,2] x3 <- runif(n) - 0.

ABC (I)

Que quiere decir approximate Bayesian computation. Es un truco para pobres y desafortunados que no pueden quitarle la A a BC y usar directamente cosas como Stan o similares. El que no quiera prioris, además, puede usar el ABC para estimar la forma de la verosimilitud alrededor de una estimación puntual. Por supuesto, el objetivo es obtener una estimación de la posteriori para poder medir la incertidumbre de parámetros, etc. La idea es que se dispone de unos datos, $latex X$ y un mecanismo de generación de datos $latex X^\prime = f(\theta)$, donde $latex \theta$ es un vector de parámetros.

Curso de estadística aplicada con Stan: ejercicio 1

A primeros de julio impartí un curso de estadística bayesiana aplicada con Stan. Tengo que examinar a los alumnos y he aquí el primero de los ejercicios: En un país, se extrae una muestra de 2000 hombres y mujeres con la siguiente distribución: men <- 170 + 3 * rt(1000, 6) women <- 160 + 2 * rt(1000, 5) heights <- c(men, women) Ajusta una distribución (una mezcla de dos distribuciones de Student) usando los datos anteriores, i.

Las tres culturas

Breiman habló de las dos. Dice, y tiene razón, que: Según él, la estadística tradicional rellena la caja negra con: ¡Aburrido, aburrido, aburrido! Aburrido y limitado (aunque, hay que admitirlo, útil en ocasiones muy concretas). Breiman sugiere sustituir las cajas negras que encontramos en la naturaleza por otras cajas negras conceptuales: Que es aún más aburrido y patrimonio, además, de toda suerte de script kiddies. La tercera cultura reemplaza la caja negra por un modelo generativo que simula el comportamiento de la naturaleza (i.

Kriging con Stan

Este mes de julio, cuórum mediante, impartiré en la UPC un curso que he maltitulado, mor de brevedad, Estadística Bayesiana Aplicada. Los cursos de estadística bayesiana son teoría, mucha teoría, y unos ejemplos tontos que quieren justificarla. Del tipo: hagamos lo que ya sabemos hacer de otra manera más; busquemos una alternativa molona al p-valor (y usémosla como usar íamos un p-valor, por supuesto), etc. Mi curso debería haberse titulado algo así como: Problemas reales (aunque simplificados por motivos estrictamente pedagógicos) resueltos con tecnología bayesiana porque, si no, dígame Vd.

Sobre el problema de las martingalas: ¿cuántos sabíais la respuesta?

Pues no se sabe bien. Además, habrá quién pudiéndola haber averiguado, prefirió dejarse llevar por la intuición y errar. Pero volvamos a los hechos. Dado En un país hipotético, las familias tienen críos hasta que nace el primer varón. En un año, en promedio, nacen: — Carlos Gil Bellosta (@gilbellosta) December 10, 2017 la pregunta urgente es: ¿cuántos podrían haber conocido la respuesta? Suponiendo que el conocimiento de la respuesta es algo binarizable (¿lo es?

"Intervalos" de confianza con forma de rosquilla

Envalentonado por el comentario de Iñaki Úcar a mi entrada del otro día, que me remitía a este artículo, decidí rizar el rizo y crear intervalos de confianza no ya discontinuos sino con otra propiedad topológica imposible: homeomorfos con un toro. Y aquí está: El modelo, el código y demás, library(rstan) library(ggplot2) n <- 100 a1 <- 1 a2 <- 1 sigma <- 0.4 datos <- data.frame(x1 = rnorm(n, 2, 0.

Va de si hay una o dos lambdas

R
Un año, el 2016, mueren 1160 personas en accidentes de tráfico. El anterior, 1131, i.e., 29 menos. Ruido estadístico aparte, ¿aumentan? Comenzamos a optar. Primera elección subjetiva: son muestras de una Poisson de parámetro desconocido. La pregunta: ¿el mismo? Una manera de estudiar lo anterior es plantear 1160 ~ poisson(lambda * (1 + incr)) 1131 ~ poisson(lambda) y estudiar la distribución de incr. Que a saber qué distribución tendrá (teóricamente). Pero, ¿importa?

Vivimos en un mundo opaco e interconectado

Vivimos en un mundo opaco: como en los cuentecillos de Asimov, somos usuarios de tecnologías que ni conocemos ni controlamos. Parametrizamos nuestras máquinas y las echamos a correr. Poco más podemos hacer que fiarnos de quienes nos las proporcionan. Luego pasan cosas como que, de repente, resulta que Stan, en las últimas versiones, ha estado produciendo muestras sesgadas. ¿Qué resultados condicionará eso río abajo? Un caso mucho más famoso es el de la resonancia magnética (fMRI): un error en el software concomitante pone bajo sospecha hasta 40000 artículos sobre estudios del cerebro.

Lo que pasa cuando omites la priori con variables categóricas

R
Stan. Modelo multinivel. Variable categórica. Codificación con ceros y unos. Matriz. Coeficiente vector[n_ccaa] Cccaa. Sin priori. Catástrofe: (Coeficientes hasta 15000. Sin tasa, con tiempo. Los valores desorbitados, en ceros de la dummy). Priori. for (i in 1:n_ccaa) Cccaa[i] ~ cauchy(0, 20); ¿Por qué no? Tachán: (¿Para qué verbos?)