Astronomía y Exploración Espacial

Educación Universitaria / Exoplanetas y astrofísica observacional

Inferencia bayesiana y MCMC

Teorema de Bayes, verosimilitud gaussiana y priors; el algoritmo de Metropolis–Hastings con demostración del balance detallado; diagnósticos de convergencia (Gelman–Rubin, autocorrelación, tamaño efectivo); emcee; ejemplo completo ajustando una curva de velocidad radial.

⏱ 180 min probabilidad condicional y teorema de Bayescadenas de Markovbalance detalladoestimadores y varianzaautocorrelaciónfunción χ²criterios de información revision

Al terminar podrás:
  • Formular la inferencia de parámetros orbitales como un problema bayesiano con verosimilitud gaussiana y priors explícitos.
  • Demostrar que la cadena de Metropolis–Hastings satisface el balance detallado y tiene la posterior como distribución estacionaria.
  • Diagnosticar la convergencia con el estadístico R̂ de Gelman–Rubin, el tiempo de autocorrelación integrado y el tamaño efectivo de muestra.
  • Ajustar una curva de velocidad radial con MCMC, resumir la posterior e interpretar correlaciones y degeneraciones.
  • Comparar modelos con ΔBIC y conocer el papel de la evidencia y de emcee en la práctica.

1. Motivación: del mejor ajuste a la distribución de los parámetros

Ilustración: Motivación: del mejor ajuste a la distribución de los parámetros

El periodograma nos dio un periodo candidato; ahora queremos los parámetros orbitales con sus incertidumbres y correlaciones: ¿cuánto vale KK y con qué error? ¿Está ee realmente distinta de cero? ¿Hay un segundo planeta? Mínimos cuadrados responde a la primera pregunta solo si el modelo es casi lineal y los errores gaussianos; la inferencia bayesiana responde a todas y lo hace con un único objeto, la distribución posterior de los parámetros, que explora con cadenas de Markov. En exoplanetas es la metodología estándar (Gregory 2005; Foreman-Mackey et al. 2013), y se aplica igual a curvas de luz de tránsito, a cosmología o a ondas gravitacionales.

2. Teorema de Bayes y verosimilitud gaussiana

Ilustración: Teorema de Bayes y verosimilitud gaussiana

Para parámetros θ\boldsymbol\theta y datos DD,

p(θ ∣ D)=p(D ∣ θ) p(θ)p(D),p(D)=∫p(D ∣ θ) p(θ) dθ,p(\boldsymbol\theta\,|\,D) = \frac{p(D\,|\,\boldsymbol\theta)\,p(\boldsymbol\theta)}{p(D)}, \qquad p(D) = \int p(D\,|\,\boldsymbol\theta)\,p(\boldsymbol\theta)\,d\boldsymbol\theta ,

con la verosimilitud L(θ)=p(D∣θ)\mathcal L(\boldsymbol\theta) = p(D|\boldsymbol\theta), el prior p(θ)p(\boldsymbol\theta) y la evidencia p(D)p(D) (una constante para estimar parámetros; esencial para comparar modelos). Si cada dato tiene error gaussiano independiente de desviación σi\sigma_i conocida y el modelo predice mi(θ)m_i(\boldsymbol\theta),

ln⁡L=−12∑i=1N[yi−mi(θ)σi]2−∑iln⁡σi−N2ln⁡2π=−χ2(θ)2+const.\ln\mathcal L = -\frac12\sum_{i=1}^N\left[\frac{y_i - m_i(\boldsymbol\theta)}{\sigma_i}\right]^2 - \sum_i\ln\sigma_i - \frac N2\ln 2\pi = -\frac{\chi^2(\boldsymbol\theta)}{2} + \mathrm{const}.

Con prior uniforme, el máximo a posteriori coincide con el mínimo de χ2\chi^2: mínimos cuadrados es el caso particular bayesiano de priors planos y errores gaussianos (problema 1). Si sospechamos que los errores están subestimados (ruido estelar), se añade un término de jitter ss: σi2→σi2+s2\sigma_i^2 \to \sigma_i^2 + s^2, con ss un parámetro más (y entonces ∑ln⁡σi\sum\ln\sigma_i ya no es constante).

Priors

El prior codifica lo que sabemos antes de ver los datos y debe declararse. Para un parámetro de posición (como γ\gamma o tpt_p) el prior uniforme es natural; para un parámetro de escala positivo que abarca órdenes de magnitud (PP, KK) es más honesto el prior de Jeffreys p(θ)∝1/θp(\theta) \propto 1/\theta (uniforme en ln⁡θ\ln\theta), que no favorece ninguna década (problema 6). Para ee y ω\omega se suele muestrear en (ecos⁡ω,esin⁡ω)(\sqrt e\cos\omega, \sqrt e\sin\omega), que da prior uniforme en ee y evita la singularidad de ω\omega en e=0e = 0. Si el prior es informativo (p. ej. M⋆M_\star de una isocrona) se incluye como gaussiana.

3. Metropolis–Hastings

Ilustración: Metropolis–Hastings

Queremos muestras θ(1),θ(2),…\boldsymbol\theta^{(1)}, \boldsymbol\theta^{(2)}, \ldots distribuidas según π(θ)∝L(θ)p(θ)\pi(\boldsymbol\theta) \propto \mathcal L(\boldsymbol\theta)p(\boldsymbol\theta) sin conocer la constante de normalización. El algoritmo de Metropolis–Hastings (Metropolis et al. 1953; Hastings 1970):

  1. Desde el estado actual x\mathbf x, proponer x′\mathbf x' con una densidad de propuesta q(x′∣x)q(\mathbf x'|\mathbf x).
  2. Calcular α=min⁡ ⁣{1, π(x′) q(x∣x′)π(x) q(x′∣x)}\alpha = \min\!\left\{1,\ \dfrac{\pi(\mathbf x')\,q(\mathbf x|\mathbf x')}{\pi(\mathbf x)\,q(\mathbf x'|\mathbf x)}\right\}.
  3. Con probabilidad α\alpha aceptar (x(k+1)=x′\mathbf x^{(k+1)} = \mathbf x'); si no, repetir el estado (x(k+1)=x\mathbf x^{(k+1)} = \mathbf x).

Con propuesta gaussiana simétrica (paseo aleatorio), q(x′∣x)=q(x∣x′)q(\mathbf x'|\mathbf x) = q(\mathbf x|\mathbf x') y α=min⁡{1,π(x′)/π(x)}\alpha = \min\{1, \pi(\mathbf x')/\pi(\mathbf x)\}: siempre se sube, y se baja con probabilidad igual al cociente. En logaritmos: aceptar si ln⁡u<ln⁡π(x′)−ln⁡π(x)\ln u < \ln\pi(\mathbf x') - \ln\pi(\mathbf x) con u∼U(0,1)u \sim U(0,1). Es lo que implementa metropolisHastings en src/lib/math/mcmc.ts.

Por qué funciona: balance detallado

Teorema. La cadena de Metropolis–Hastings tiene a π\pi como distribución estacionaria.

Demostración. El núcleo de transición para x′≠x\mathbf x' \ne \mathbf x es T(x′∣x)=q(x′∣x) α(x′∣x)T(\mathbf x'|\mathbf x) = q(\mathbf x'|\mathbf x)\,\alpha(\mathbf x'|\mathbf x). Supongamos π(x′)q(x∣x′)≤π(x)q(x′∣x)\pi(\mathbf x')q(\mathbf x|\mathbf x') \le \pi(\mathbf x)q(\mathbf x'|\mathbf x) (el otro caso es simétrico). Entonces α(x′∣x)=π(x′)q(x∣x′)/[π(x)q(x′∣x)]\alpha(\mathbf x'|\mathbf x) = \pi(\mathbf x')q(\mathbf x|\mathbf x')/[\pi(\mathbf x)q(\mathbf x'|\mathbf x)] y α(x∣x′)=1\alpha(\mathbf x|\mathbf x') = 1, de modo que

π(x) T(x′∣x)=π(x) q(x′∣x) π(x′)q(x∣x′)π(x)q(x′∣x)=π(x′) q(x∣x′)=π(x′) T(x∣x′).\pi(\mathbf x)\,T(\mathbf x'|\mathbf x) = \pi(\mathbf x)\,q(\mathbf x'|\mathbf x)\,\frac{\pi(\mathbf x')q(\mathbf x|\mathbf x')}{\pi(\mathbf x)q(\mathbf x'|\mathbf x)} = \pi(\mathbf x')\,q(\mathbf x|\mathbf x') = \pi(\mathbf x')\,T(\mathbf x|\mathbf x') .

Esta igualdad es el balance detallado. Integrando en x\mathbf x: ∫π(x)T(x′∣x) dx=π(x′)∫T(x∣x′) dx=π(x′)\int\pi(\mathbf x)T(\mathbf x'|\mathbf x)\,d\mathbf x = \pi(\mathbf x')\int T(\mathbf x|\mathbf x')\,d\mathbf x = \pi(\mathbf x'), es decir, si el estado actual se distribuye según π\pi, el siguiente también: π\pi es estacionaria. (Los rechazos, que dejan x′=x\mathbf x' = \mathbf x, satisfacen el balance trivialmente.) ■\blacksquare

Que la cadena converja a π\pi desde cualquier punto exige además irreducibilidad y aperiodicidad, garantizadas por una propuesta gaussiana con soporte en todo el espacio. Lo que el teorema no dice es cuánto tarda: de eso tratan los diagnósticos.

La escala de la propuesta

Con pasos muy pequeños casi todo se acepta pero la cadena avanza como un paseo aleatorio lentísimo; con pasos muy grandes casi todo se rechaza. Para blancos gaussianos de dimensión dd la tasa de aceptación óptima es ≈0.23\approx 0.23 (0.44 en d=1d = 1), con escala ≈2.4 σpost/d\approx 2.4\,\sigma_{\rm post}/\sqrt d (Roberts, Gelman & Gilks 1997). En nuestro ejemplo (§5), multiplicar la escala por 0.2, 1 y 5 da aceptaciones de 0.90, 0.56 y 0.045, y tiempos de autocorrelación de KK de 203, 23 y 36 pasos: el centro gana.

4. Diagnósticos de convergencia

Ilustración: Diagnósticos de convergencia

Gelman–Rubin

Se corren mm cadenas desde puntos iniciales dispersos, de longitud nn tras descartar el calentamiento (burn-in). Para cada parámetro escalar, sean WW la media de las varianzas intracadena y B=n Var(medias de las cadenas)B = n\,\mathrm{Var}(\text{medias de las cadenas}) la varianza entre cadenas. El estimador de la varianza de la posterior

V^=n−1nW+1nB,R^=V^/W\hat V = \frac{n-1}{n}W + \frac1n B, \qquad \hat R = \sqrt{\hat V/W}

sobrestima Var(θ)\mathrm{Var}(\theta) si las cadenas no se han mezclado (cada una explora una región distinta: BB grande), mientras que WW la subestima; ambos convergen y R^→1\hat R \to 1. Criterio práctico: R^<1.1\hat R < 1.1 (1.01 en trabajos exigentes). Un R^≈1\hat R \approx 1 no demuestra convergencia (todas las cadenas pueden estar atrapadas en el mismo modo), pero R^≫1\hat R \gg 1 sí demuestra lo contrario. Implementación: gelmanRubin.

Autocorrelación y tamaño efectivo

Las muestras consecutivas están correlacionadas. Para una cadena xkx_k con función de autocorrelación normalizada ρ(ℓ)\rho(\ell), el tiempo de autocorrelación integrado es

τ=1+2∑ℓ=1∞ρ(ℓ),\tau = 1 + 2\sum_{\ell=1}^{\infty}\rho(\ell) ,

y la varianza de la media muestral es Var(xˉ)=τ σ2/n\mathrm{Var}(\bar x) = \tau\,\sigma^2/n: una cadena de nn pasos vale como neff=n/τn_{\rm eff} = n/\tau muestras independientes. La suma se trunca con la ventana automática de Sokal (parar en el primer M≥cτ(M)M \ge c\tau(M), c=5c = 5; es lo que hace emcee) porque los ρ(ℓ)\rho(\ell) de retardo grande son puro ruido. Para un proceso AR(1) con coeficiente ϕ\phi, τ=(1+ϕ)/(1−ϕ)\tau = (1+\phi)/(1-\phi) (test con ϕ=0.9\phi = 0.9: τ=19\tau = 19). Regla práctica: correr al menos 50τ50\tau pasos por cadena, y descartar unos pocos τ\tau como calentamiento. Implementación: tiempoAutocorrelacion, tamanoEfectivo.

emcee: el muestreador de conjunto

El paseo aleatorio requiere elegir una escala por parámetro, y falla con correlaciones fuertes. Goodman & Weare (2010) propusieron evolucionar un conjunto de LL caminantes donde cada uno se mueve a lo largo de la recta que lo une con otro caminante elegido al azar («stretch move», x′=xj+Z(x−xj)\mathbf x' = \mathbf x_j + Z(\mathbf x - \mathbf x_j) con ZZ de densidad ∝1/Z\propto 1/\sqrt Z en [1/a,a][1/a, a], a=2a = 2), aceptando con probabilidad min⁡{1,Zd−1π(x′)/π(x)}\min\{1, Z^{d-1}\pi(\mathbf x')/\pi(\mathbf x)\}. El algoritmo es invariante afín: su rendimiento es el mismo para una gaussiana muy alargada y para una esférica, sin ajuste manual. emcee (Foreman-Mackey et al. 2013) es la implementación de referencia en Python, con estimación de τ\tau incorporada; en esta lección usamos Metropolis–Hastings por transparencia, pero en la práctica profesional se usa emcee o muestreo anidado (dynesty, MultiNest) cuando además se quiere la evidencia.

5. Ejemplo: la curva de velocidad radial de 51 Peg

Ilustración: Ejemplo: la curva de velocidad radial de 51 Peg

Datos: las mismas 40 medidas sintéticas de la lección anterior (P=4.2293P = 4.2293 d, K=59K = 59 m s⁻¹, γ=−33 250\gamma = -33\,250 m s⁻¹, σ=13\sigma = 13 m s⁻¹, 61 noches). Modelo circular de cuatro parámetros θ=(P,K,γ,t0)\boldsymbol\theta = (P, K, \gamma, t_0):

mi=γ+Kcos⁡ ⁣[2π(ti−t0)P],ln⁡π(θ)=−12∑i(yi−mi)2σ2+ln⁡p(θ),m_i = \gamma + K\cos\!\left[\frac{2\pi(t_i - t_0)}{P}\right], \qquad \ln\pi(\boldsymbol\theta) = -\frac12\sum_i\frac{(y_i - m_i)^2}{\sigma^2} + \ln p(\boldsymbol\theta),

con priors uniformes P∈[4.0,4.5]P \in [4.0, 4.5] d, K∈[0,200]K \in [0, 200], γ∈[−34 000,−32 000]\gamma \in [-34\,000, -32\,000], t0∈[−5,5]t_0 \in [-5, 5] d. Cuatro cadenas de 40 000 pasos desde puntos dispersos, escalas de propuesta (0.002,2,2,0.01)(0.002, 2, 2, 0.01), calentamiento 5000. Resultados (mcmc.ts, semillas fijas):

ParámetroVerdaderoMedia ± σ[p16, p84]R^\hat Rτ\tau (pasos)
PP (d)4.22934.2324±0.00814.2324 \pm 0.0081[4.2244, 4.2405]1.003258
KK (m s⁻¹)5956.2±3.056.2 \pm 3.0[53.2, 59.2]1.00019
γ\gamma (m s⁻¹)−33 250−33 250.2±2.1-33\,250.2 \pm 2.1[−33 252.3, −33 248.1]1.00010
t0t_0 (d)0−0.074±0.074-0.074 \pm 0.074[−0.148, −0.001]1.003268

Aceptación 0.56 en las cuatro cadenas. Comentarios:

  • Comparación con la teoría lineal. Para una sinusoide bien muestreada, σK=σ2/N=2.91\sigma_K = \sigma\sqrt{2/N} = 2.91 m s⁻¹ y σγ=σ/N=2.06\sigma_\gamma = \sigma/\sqrt N = 2.06: la posterior reproduce ambos (3.0 y 2.1). KK cae a 0.9 σ del valor verdadero: una realización de ruido normal.
  • Degeneración PP–t0t_0. Cambiar PP en δP\delta P desplaza la fase en el centro de la campaña en 2π(30 d)δP/P22\pi(30\ \mathrm d)\delta P/P^2, que se compensa con t0t_0: la posterior es una «banana» alargada y la cadena de paseo aleatorio la recorre despacio (τ≈260\tau \approx 260 frente a 10–20 en los otros). Con 35 000 pasos útiles, neff≈135n_{\rm eff} \approx 135 por cadena para PP: suficiente para la media (error de Monte Carlo σP/4×135=0.0003\sigma_P/\sqrt{4\times135} = 0.0003 d) pero escaso para colas. Es el caso típico en que emcee (invariante afín) o reparametrizar (t0t_0 referido al centro de la campaña) gana mucho.
  • Precisión del periodo. σP=0.008\sigma_P = 0.008 d es 25 veces menor que la resolución del periodograma (0.030.03 d): el periodograma localiza, el ajuste refina.

Comparación de modelos

¿Hay planeta? Comparamos el modelo constante (k=1k = 1 parámetro, χ2=400.5\chi^2 = 400.5) con el circular (k=4k = 4, χ2=48.2\chi^2 = 48.2 en el máximo). El criterio de información bayesiano BIC=χ2+kln⁡N\mathrm{BIC} = \chi^2 + k\ln N da ΔBIC=−352.3+3ln⁡40=−341\Delta\mathrm{BIC} = -352.3 + 3\ln 40 = -341: evidencia abrumadora (umbral habitual ∣ΔBIC∣>10|\Delta\mathrm{BIC}| > 10). El BIC es una aproximación a −2ln⁡p(D)-2\ln p(D) válida para NN grande y posteriores gaussianas; la comparación rigurosa usa la evidencia, que penaliza automáticamente la complejidad (factor de Occam) y que calculan el muestreo anidado o la integración térmica.

6. Análisis de error

Ilustración: Análisis de error
  • Error de Monte Carlo. La incertidumbre de cualquier promedio de la cadena es σpostτ/n\sigma_{\rm post}\sqrt{\tau/n}; para percentiles extremos (p. ej. el límite al 99 % de ee) hace falta neff≳103n_{\rm eff} \gtrsim 10^3–10410^4.
  • Calentamiento. Si se incluye, sesga las medias hacia el punto inicial; se detecta en la traza y con R^\hat R sobre tramos.
  • Multimodalidad. Si el periodograma tiene alias comparables (lección anterior), la posterior tiene varios modos y el paseo aleatorio no salta entre ellos: hay que lanzar cadenas desde cada alias o usar muestreo anidado.
  • Modelo erróneo. Ningún muestreador corrige un modelo incompleto (segundo planeta, actividad estelar): se ve en los residuos y en un jitter ajustado mucho mayor que σi\sigma_i.

Problemas

1. (Demostración) Mínimos cuadrados como caso bayesiano. Demuestra que con errores gaussianos independientes y prior uniforme el máximo a posteriori minimiza χ2\chi^2, y que si el modelo es lineal, m=Xθm = \mathbf X\boldsymbol\theta, la posterior es gaussiana con media (XTC−1X)−1XTC−1y(\mathbf X^T\mathbf C^{-1}\mathbf X)^{-1}\mathbf X^T\mathbf C^{-1}\mathbf y y covarianza (XTC−1X)−1(\mathbf X^T\mathbf C^{-1}\mathbf X)^{-1}, con C=diag(σi2)\mathbf C = \mathrm{diag}(\sigma_i^2).

Demostración

ln⁡π=−χ2/2+const\ln\pi = -\chi^2/2 + \mathrm{const} con prior uniforme, así que maximizar π\pi es minimizar χ2\chi^2. Para m=Xθm = \mathbf X\boldsymbol\theta, χ2=(y−Xθ)TC−1(y−Xθ)\chi^2 = (\mathbf y - \mathbf X\boldsymbol\theta)^T\mathbf C^{-1}(\mathbf y - \mathbf X\boldsymbol\theta) es cuadrático en θ\boldsymbol\theta: desarrollando y completando cuadrados, χ2=(θ−θ^)TA(θ−θ^)+const\chi^2 = (\boldsymbol\theta - \hat{\boldsymbol\theta})^T\mathbf A(\boldsymbol\theta - \hat{\boldsymbol\theta}) + \mathrm{const} con A=XTC−1X\mathbf A = \mathbf X^T\mathbf C^{-1}\mathbf X y θ^=A−1XTC−1y\hat{\boldsymbol\theta} = \mathbf A^{-1}\mathbf X^T\mathbf C^{-1}\mathbf y. Entonces π∝exp⁡[−12(θ−θ^)TA(θ−θ^)]\pi \propto \exp[-\tfrac12(\boldsymbol\theta - \hat{\boldsymbol\theta})^T\mathbf A(\boldsymbol\theta - \hat{\boldsymbol\theta})]: gaussiana de media θ^\hat{\boldsymbol\theta} y covarianza A−1\mathbf A^{-1}. El test de mcmc.ts comprueba este resultado para una recta: la media y la desviación de la cadena coinciden con la fórmula. ■\blacksquare

2. (Demostración) Hastings con propuesta asimétrica. Demuestra que si se usa una propuesta no simétrica (p. ej. lognormal para un parámetro positivo) pero se acepta con min⁡{1,π(x′)/π(x)}\min\{1, \pi(\mathbf x')/\pi(\mathbf x)\} sin el cociente q(x∣x′)/q(x′∣x)q(\mathbf x|\mathbf x')/q(\mathbf x'|\mathbf x), la distribución estacionaria no es π\pi. Calcula cuál es para q(x′∣x)=N(x+δ,s2)q(x'|x) = \mathcal N(x + \delta, s^2) con deriva δ\delta y blanco uniforme en una caja grande.

Demostración

Con α′=min⁡{1,π(x′)/π(x)}\alpha' = \min\{1, \pi(\mathbf x')/\pi(\mathbf x)\} el balance detallado exige π(x)q(x′∣x)α′(x′∣x)=π(x′)q(x∣x′)α′(x∣x′)\pi(\mathbf x)q(\mathbf x'|\mathbf x)\alpha'(\mathbf x'|\mathbf x) = \pi(\mathbf x')q(\mathbf x|\mathbf x')\alpha'(\mathbf x|\mathbf x'); si π(x′)≤π(x)\pi(\mathbf x') \le \pi(\mathbf x), el lado izquierdo es π(x′)q(x′∣x)\pi(\mathbf x')q(\mathbf x'|\mathbf x) y el derecho π(x′)q(x∣x′)\pi(\mathbf x')q(\mathbf x|\mathbf x'), iguales solo si qq es simétrica. En el ejemplo, dentro de la caja π\pi es constante y α′=1\alpha' = 1: la cadena es un paseo aleatorio con deriva δ\delta por paso, que se acumula en la pared de la caja: la estacionaria es una distribución concentrada en el borde, no la uniforme. La corrección de Hastings, q(x∣x′)/q(x′∣x)=exp⁡[−2δ(x′−x)/s2]q(\mathbf x|\mathbf x')/q(\mathbf x'|\mathbf x) = \exp[-2\delta(\mathbf x' - \mathbf x)/s^2], penaliza los pasos en la dirección de la deriva y restaura la uniformidad. ■\blacksquare

3. Gelman–Rubin a mano. Tres cadenas de n=1000n = 1000 pasos para KK tienen medias 55.1, 57.8 y 56.4 y varianzas 8.9, 9.4 y 9.1. Calcula WW, BB, V^\hat V y R^\hat R. ¿Han convergido? ¿Y si las medias fueran 50, 57 y 63?

Ver solución

W=9.13W = 9.13; media de medias 56.43, varianza muestral de las medias =[(1.33)2+(1.37)2+(0.03)2]/2=1.82= [(1.33)^2 + (1.37)^2 + (0.03)^2]/2 = 1.82, B=1000×1.82=1820B = 1000\times1.82 = 1820; V^=0.999×9.13+1.82=10.94\hat V = 0.999\times9.13 + 1.82 = 10.94; R^=10.94/9.13=1.095\hat R = \sqrt{10.94/9.13} = 1.095: en el límite, conviene correr más. Con medias 50, 57, 63: varianza =42.3= 42.3, B=42 300B = 42\,300, V^=51.4\hat V = 51.4, R^=2.37\hat R = 2.37: no han convergido (o la posterior es multimodal).

4. (Computacional) Escala de la propuesta. Con el ejemplo de §5 (o con una gaussiana 2D correlacionada, ρ=0.95\rho = 0.95), corre Metropolis con escalas 0.1σ0.1\sigma, σ\sigma, 2.4σ/d2.4\sigma/\sqrt d y 10σ10\sigma. Tabula aceptación, τ\tau y neffn_{\rm eff} y verifica que el máximo de neffn_{\rm eff} cae cerca de aceptación 0.2–0.4.

Esquema en Python
import numpy as np
rng = np.random.default_rng(0)
C = np.array([[1, 0.95], [0.95, 1]]); Ci = np.linalg.inv(C)
logp = lambda x: -0.5 * x @ Ci @ x
def tau_int(x, c=5):
    x = x - x.mean(); n = len(x); acf = np.correlate(x, x, 'full')[n-1:] / (x @ x)
    t = 1.0
    for M in range(1, n // 2):
        t += 2 * acf[M]
        if M >= c * t: return t
    return t
for s in (0.1, 1.0, 2.4 / np.sqrt(2), 10.0):
    x = np.zeros(2); lp = logp(x); X = []; acc = 0
    for _ in range(50000):
        xp = x + s * rng.standard_normal(2); lpp = logp(xp)
        if np.log(rng.random()) < lpp - lp: x, lp, acc = xp, lpp, acc + 1
        X.append(x.copy())
    X = np.array(X)[5000:]; t = tau_int(X[:, 0])
    print(s, acc / 50000, t, len(X) / t)

Con ρ=0.95\rho = 0.95 la escala óptima isótropa sigue siendo mala (τ\tau de cientos) porque la posterior es una aguja: motivación directa de los muestreadores invariantes afines.

5. (Computacional) Ajuste completo. Reproduce §5 con tu propio Metropolis (o con emcee): cuatro cadenas, trazas, R^\hat R, τ\tau, histogramas marginales y el diagrama PP–t0t_0. Reparametriza con t0′=t0−30t_0' = t_0 - 30 d (centro de la campaña) y compara τP\tau_P. Añade después el parámetro de jitter ss y comprueba que su posterior es compatible con cero.

Ver solución

Con t0t_0 referido al centro de la campaña la correlación PP–t0t_0 casi desaparece (la fase en el centro ya no depende de PP) y τP\tau_P baja de ∼260\sim 260 a unas decenas de pasos. Con jitter, ln⁡π\ln\pi incluye −∑ln⁡σ2+s2-\sum\ln\sqrt{\sigma^2 + s^2}; la posterior de ss se apila en 0 (límite al 84 % de unos pocos m s⁻¹), como debe ser con datos que ya tienen σ\sigma correcto. Con emcee: 32 caminantes, 5000 pasos, get_autocorr_time().

6. (Demostración) Prior de Jeffreys. Demuestra que p(θ)∝1/θp(\theta) \propto 1/\theta es el único prior en θ>0\theta > 0 invariante ante cambios de unidades θ→cθ\theta \to c\theta, y que equivale a un prior uniforme en ln⁡θ\ln\theta. Para K∈[0.1,1000]K \in [0.1, 1000] m s⁻¹, ¿qué fracción de la masa del prior cae por debajo de 1 m s⁻¹ con el prior uniforme y con el de Jeffreys?

Demostración

Invariancia: p(θ)dθ=p(cθ)d(cθ)p(\theta)d\theta = p(c\theta)d(c\theta) para todo cc ⇒ p(θ)=c p(cθ)p(\theta) = c\,p(c\theta); con θ=1\theta = 1, p(c)=p(1)/cp(c) = p(1)/c. Y p(ln⁡θ)=p(θ) dθ/dln⁡θ=p(θ)θ=constp(\ln\theta) = p(\theta)\,d\theta/d\ln\theta = p(\theta)\theta = \mathrm{const}. Uniforme: 0.9/999.9=0.09 %0.9/999.9 = 0.09\,\% por debajo de 1 m s⁻¹ (el prior «sabe» que KK es grande). Jeffreys: ln⁡10/ln⁡104=25 %\ln 10/\ln 10^4 = 25\,\%. ■\blacksquare

7. Occam. Para los datos de §5, un modelo con excentricidad libre (k=6k = 6) alcanza χ2=46.9\chi^2 = 46.9. Calcula ΔBIC\Delta\mathrm{BIC} frente al circular y decide. ¿Qué dice el teorema de Wilks sobre Δχ2=1.3\Delta\chi^2 = 1.3 con 2 grados de libertad extra?

Ver solución

ΔBIC=(46.9−48.2)+2ln⁡40=−1.3+7.4=+6.1\Delta\mathrm{BIC} = (46.9 - 48.2) + 2\ln 40 = -1.3 + 7.4 = +6.1: el circular es preferible. Wilks: bajo la hipótesis nula (e=0e = 0) Δχ2∼χ22\Delta\chi^2 \sim \chi^2_2, y Pr⁡(χ22>1.3)=e−0.65=0.52\Pr(\chi^2_2 > 1.3) = e^{-0.65} = 0.52: la mejora es la esperada por azar. (En rigor e=0e = 0 está en la frontera del espacio de parámetros, lo que modifica la distribución; el BIC es más conservador.)

✦ Autoevaluación

  1. 1. Con errores gaussianos independientes y prior uniforme, el máximo de la posterior coincide con
  2. 2. En Metropolis con propuesta simétrica, una propuesta con mayor probabilidad posterior que el estado actual
  3. 3. El balance detallado π(x)T(x′|x) = π(x′)T(x|x′) garantiza que
  4. 4. Un R̂ de Gelman–Rubin de 2.4 indica
  5. 5. Una cadena de 40 000 pasos con tiempo de autocorrelación τ = 260 equivale a unas
  6. 6. La ventaja principal del muestreador de conjunto de Goodman–Weare (emcee) es
Responde todas para comprobar.

Lecturas

  • Gregory, P. C. (2005). Bayesian Logical Data Analysis for the Physical Sciences, cap. 3 (fundamentos), cap. 11 (ajuste no lineal) y cap. 12 (MCMC, con el ejemplo de velocidad radial).
  • Hogg & Foreman-Mackey (2018). Data analysis recipes: Using MCMC, ApJS 236, 11: guía práctica, breve y honesta sobre qué funciona.
  • Foreman-Mackey et al. (2013), PASP 125, 306 (emcee) y Goodman & Weare (2010): el muestreador invariante afín.
  • Gelman & Rubin (1992), Stat. Sci. 7, 457; Sokal (1997): diagnósticos de convergencia y autocorrelación.
  • Perryman (2018). The Exoplanet Handbook, §2.3 y §6.4: inferencia de órbitas por velocidad radial y tránsitos.
🍎 Guía para el profesor
Tiempo
2 clases de 90 min
Resultado de aprendizaje
Al finalizar, el estudiante formula un ajuste orbital como inferencia bayesiana, implementa Metropolis–Hastings, diagnostica la convergencia con R̂ y τ, e interpreta la posterior y la comparación de modelos.
Evidencia de aprendizaje
Entrega del problema 5 (ajuste completo con trazas, R̂, τ, marginales y reparametrización) y del problema 2 (demostración de Hastings).

Materiales

  • Python 3 con NumPy; opcionalmente emcee y corner
  • src/lib/math/mcmc.ts y velocidadRadial.ts
  • Hogg & Foreman-Mackey 2018 (lectura previa, 20 páginas)

Secuencia sugerida

Clase 1. Bayes, verosimilitud gaussiana y priors (§2); Metropolis–Hastings con la demostración del balance detallado (§3); experimento en vivo con la escala de la propuesta.

Clase 2. Diagnósticos (§4) sobre las cadenas del ejemplo; ajuste de 51 Peg (§5) con discusión de la degeneración PP–t0t_0 y de ΔBIC. Laboratorio: problemas 4 y 5.

Errores frecuentes

  • Confundir verosimilitud con posterior y olvidar declarar los priors.
  • Tomar R̂ ≈ 1 como prueba de convergencia: solo R̂ ≫ 1 es concluyente.
  • Usar la desviación de la cadena sin tener en cuenta τ al estimar errores de Monte Carlo.
  • Elegir la escala de propuesta sin mirar la aceptación ni τ; o usar una propuesta asimétrica sin la corrección de Hastings.
  • Comparar modelos por χ² sin penalizar parámetros.
Palabras clave de esta lección (12)

Términos del glosario que aparecen en el texto. Cada uno enlaza a su ficha completa.

  • MCMC (Monte Carlo con cadenas de Markov) Un método para explorar al azar todas las combinaciones posibles de los parámetros de un modelo, pasando más tiempo en las más probables. Con él se obtienen las «barras de error» de los exoplanetas.
  • Inferencia bayesiana Una manera de razonar con probabilidades: empiezas con lo que crees (a priori), miras los datos y actualizas tu creencia (a posteriori). Es como los astrónomos estiman la masa de un planeta con su incertidumbre.
  • Velocidad radial La parte de la velocidad de una estrella que la acerca o la aleja de nosotros, medida por el efecto Doppler. Un planeta hace que su estrella se «bambolee», y ese vaivén delata al planeta y su masa.
  • Presión de degeneración Una presión que aparece cuando la materia está tan apretada que los electrones no caben más juntos, por una regla de la física cuántica. Sostiene a las enanas blancas aunque estén frías.
  • Regresión lineal Trazar la recta que mejor pasa «por el medio» de una nube de puntos. Así Hubble encontró que la velocidad de las galaxias crece con su distancia, y la pendiente de esa recta es su famosa constante.
  • Periodograma Una herramienta para encontrar ritmos escondidos en datos tomados a ratos irregulares: para cada posible periodo dice qué tan bien «encaja» una onda. Así se descubre el periodo de un planeta en los datos de velocidad radial.
  • Tránsito Cuando un planeta pasa por delante de su estrella y le quita una pizca de brillo, como una polilla cruzando frente a un faro. Midiendo esa bajada se calcula el tamaño del planeta.
  • Excentricidad Un número entre 0 y 1 que dice cuán achatada es una órbita: 0 es un círculo perfecto, y cuanto más cerca de 1, más alargada. La de la Tierra es 0,017, casi un círculo; la del cometa Halley, 0,97.
  • Exoplaneta Un planeta que gira alrededor de otra estrella distinta del Sol. Se conocen más de 5000 desde 1995; la mayoría se descubrieron viendo cómo tapan un poquito de luz de su estrella al pasar por delante.
  • Logaritmo La pregunta «¿a qué potencia hay que elevar 10 para obtener este número?». log(1000) = 3. Convierte multiplicaciones en sumas y comprime números enormes: por eso las magnitudes de las estrellas usan logaritmos.
  • Magnitud aparente Número que dice qué tan brillante se ve una estrella desde la Tierra. Cuanto más pequeño, más brillante: Sirio tiene −1,5 y las estrellas más débiles que ves a simple vista, 6.
  • Onda gravitacional Ondulaciones del propio espacio-tiempo que viajan a la velocidad de la luz, producidas por masas enormes que se aceleran, como dos agujeros negros que chocan. Se detectaron por primera vez en 2015.

Ver todo el glosario →

Referencias

  • Gregory, P. C. (2005). Bayesian Logical Data Analysis for the Physical Sciences, Cambridge University Press, caps. 3, 11 y 12.
  • Foreman-Mackey, D., Hogg, D. W., Lang, D. & Goodman, J. (2013). emcee: The MCMC Hammer. PASP 125, 306. doi:10.1086/670067. arXiv:1202.3665.
  • Goodman, J. & Weare, J. (2010). Ensemble samplers with affine invariance. Comm. Appl. Math. Comp. Sci. 5, 65. doi:10.2140/camcos.2010.5.65.
  • Gelman, A. & Rubin, D. B. (1992). Inference from iterative simulation using multiple sequences. Statistical Science 7, 457. doi:10.1214/ss/1177011136.
  • Metropolis, N., Rosenbluth, A. W., Rosenbluth, M. N., Teller, A. H. & Teller, E. (1953). Equation of state calculations by fast computing machines. J. Chem. Phys. 21, 1087.
  • Hastings, W. K. (1970). Monte Carlo sampling methods using Markov chains and their applications. Biometrika 57, 97.
  • Hogg, D. W. & Foreman-Mackey, D. (2018). Data analysis recipes: Using Markov chain Monte Carlo. ApJS 236, 11. arXiv:1710.06068.
  • Sokal, A. D. (1997). Monte Carlo methods in statistical mechanics: foundations and new algorithms. En Functional Integration, Plenum.
  • Perryman, M. (2018). The Exoplanet Handbook, 2.ª ed., §2.3 y §6.4.