SELEÇÃO BAYESIANA DE MODELOS Ricardo Sandes Ehlers Departamento de Estatística Universidade Federal do Paraná http://www.est.ufpr.br/ ehlers ehlers@est.ufpr.br RBRAS/SEABRO, Julho 2005
Alguns Exemplos seleção de ordem em modelos polinomiais; especificação da ordem em modelos (S)ARIMA; escolha do número de vizinhos em algoritmos de vizinho mais próximo; quais dentre 150 caracteristicas são relevantes? Seleção de Modelos Escolha final da estrutura do modelo no conjunto proposto de modelos candidatos. Em problemas reais, escolha tipicamente subjetiva resulta da combinação de fatores como medidas quantitativas, experiência pessoal e custo Aqui vamos considerar somente critérios quantitativos. Ricardo Ehlers Seleção Bayesiana de Modelos 2
Inferência Bayesiana Inferência Bayesiana é baseada no teorema de Bayes: π(θ) L(y θ) p(θ) y: dados observados e θ: parâmetros do modelo. Em palavras temos que distribuição a posteriori verossimilhança distribuição a priori. Queremos fazer inferência sobre uma função g(θ) calculando sua média a posteriori E π [g(θ)] = g(θ)π(θ)dθ tipicamente intratável analiticamente. Ricardo Ehlers Seleção Bayesiana de Modelos 3
Monte Carlo via cadeias de Markov Gostariamos de poder gerar θ 1,..., θ m π(θ) (Distribuição Alvo) definindo densidades de transição P (θ t, θ t+1 ) de uma cadeia de Markov. Dadas as realizações {θ (t), t = 0, 1,... } de uma cadeia de Markov que tenha π como distribuição de equilibrio então, sob certas condições θ (t) t π(θ) e 1 n n t=1 g(θ (t) i ) n E π (g(θ i )) q.c. Embora a cadeia seja por definição dependente a média aritmética dos valores da cadeia é um estimador consistente da média teórica. Ricardo Ehlers Seleção Bayesiana de Modelos 4
O Algoritmo de Metropolis-Hastings Começando em um ponto θ 0 no tempo (iteração) t = 0, a cada iteração t = 1, 2,... 1. gere um valor candidato φ q( θ t ). 2. gere u U(0, 1) e se u min { 1, π(φ) π(θ) q(φ θ t } ) q(φ θ t ) faça θ t+1 = φ, caso contrário faça θ t+1 = θ t. q é arbitrária mas na prática... q(φ θ t ) = q(φ), q(φ θ t ) = q( φ θ t ), q(φ θ t ) simétrica. Ricardo Ehlers Seleção Bayesiana de Modelos 5
O Amostrados de Gibbs O núcleo de transição é formado pelas distribuições condicionais completas π(θ i θ i ) = π(θ) π(θ)dθ i, θ i = (θ 1,..., θ i 1, θ i+1,..., θ d ). Em cada iteração obtém-se um novo valor θ gerando-se θ 1 π(θ 1 θ 2, θ 3,..., θ d ) θ 2 π(θ 2 θ 1, θ 3,..., θ d ). θ d π(θ d θ 1, θ 2,..., θ d 1) Ricardo Ehlers Seleção Bayesiana de Modelos 6
Caixa de Ferramentas BUGS (Bayesian inference Using Gibbs Sampling): WinBUGS, GeoBUGS, PKBUGS, OpenBUGS. (http://www.mrc-bsu.cam.ac.uk/bugs/) É possível rodar o WinBUGS no Linux! (http://www.est.ufpr.br/dicas) BOA (Bayesian Output Analysis Program). CODA (Convergence Diagnostics and Output Analysis). R: R-CODA, mcmc, MCMCpack, bayessurv. (http://www.est.ufpr.br/r). Programas especificos para problemas mais complexos: Nmix (Fortran): Bayesian analysis of univariate normal mixtures, implementing Richardson and Green (1997). AutoRJ (Fortran): automatic RJMCMC (Green, 2003) Informação atualizada: MCMC Preprint Service (http://www.statslab.cam.ac.uk/ mcmc). Ricardo Ehlers Seleção Bayesiana de Modelos 7
Procurando o Melhor Modelo Suponha que o número M de modelos alternativos seja muito grande. E.g. modelo linear com 10 possíveis regressoras: 2 15 = 32768 modelos alternativos, sem contar possíveis interações. Enumerar, estimar e associar uma medida de ajuste e parcimônia a cada possível modelo pode não ser a melhor estratégia. Como comparar os modelos competidores? Como fazer uma inferência média usando os modelos competidores? Ricardo Ehlers Seleção Bayesiana de Modelos 8
Abordagem Bayesiana Suponha que temos k modelos diferentes M 1,..., M k a priori atribuimos probabilidades p(m i ) a cada modelo. Para cada modelo existe um vetor de parâmetros θ i R n i com: uma verossimilhança dadas as observações p(y θ i, M i ) uma distribuição a priori p(θ i M i ). Obtemos a distribuição a posteriori tanto dos modelos quanto de seus parâmetros associados via teorema de Bayes, π(m i, θ i ) p(y θ i, M i ) p(θ i M i ) p(m i ) obtendo uma amostra desta posteriori e contando o número de vezes que cada modelo é visitado pela cadeia. Ricardo Ehlers Seleção Bayesiana de Modelos 9
Abordagem Clássica Seleção pode se basear na comparação de critérios de informação, e.g. Akaike (1974) AIC(θ i, M i ) = 2 log p(y θ i, M i ) + 2n i Schwartz (1978) BIC(θ i, M i ) = 2 log p(y θ i, M i ) + n i log T Equivalemente pode-se comparar os pesos AIC (ou BIC) w i exp( AIC(θ i, M i )/2) p(y θ i, M i ) e n i. Os pesos w i são proporcionais as probabilidades a posteriori dos modelos (em ˆθ i ) com prioris p(θ i M i ) constante e p(m i ) e n i. Ricardo Ehlers Seleção Bayesiana de Modelos 10
Deviance Information Criterion Spiegelhalter, Best, Carlin, and van der Linde (2002) DIC(θ i, M i ) = 2 log p(y θ i, M i ) + 2p D = D + p D sendo θ i = E(θ i y), D = E(D(θ i ) y) e p D = D D(θ i ). DIC é facilmente calculado durante as simulações da cadeia. Se θ 1 i,..., θ m i amostra de π(θ i ) então ( ) D 1 m D(θ k 1 m i ) e D(θ i ) D θ k i m m k=1 k=1 é uma DIC está programado no WinBUGS. Ricardo Ehlers Seleção Bayesiana de Modelos 11
Exemplo: Taxas de homicidio em Curitiba Silva, Mota, and Ehlers (2004) Y i e i, ψ i Poisson(e i ψ i ), i = 1,..., n. ψ i = exp(x β + θ i + φ i ). Dados: homicidios em 2000 por bairro de Curitiba. Modelo: Bayesiano hierárquico com componente espacial. Priori: campo aleatório Markoviano. Efeitos de covariáveis: Renda mediana, Analfabetismo, Domicilios em áreas de risco ou irregulares. Ricardo Ehlers Seleção Bayesiana de Modelos 12
Tabela 1: Valores DIC e pesos normalizados para cada modelo via WinBugs com 30000 simulações. Modelo DIC pesos Sem efeito espacial 274.551 0.0000 Sem covariáveis 261.888 0.0062 Analfabetismo 252.448 0.6936 Domicilio 292.265 0.0000 Renda 259.717 0.0183 Renda +Analfabetismo 254.249 0.2819 Analfabetismo+Domicilio 285.940 0.0000 Renda+Domicilio 291.764 0.0000 Renda+Analfabetismo+Domicilio 286.244 0.0000 Ricardo Ehlers Seleção Bayesiana de Modelos 13
under 0.285 0.285 0.472 0.472 0.669 0.669 1.243 over 1.243 Figura 1: Relative risks estimates in the Bayesian hierarchical model with covariate Illiteracy included. Ricardo Ehlers Seleção Bayesiana de Modelos 14
Um AIC Bayesiano? Dada uma amostra θ 1 i,..., θ m i π(θ i M i ) uma extensão óbvia do AIC usual é EAIC = E [AIC(θ i, M i ) y] = D(θ i, M i ) + 2n i ou D(θ i, M i ) + 2n i Idem para o EBIC = E [AIC(θ i, M i ) y]. Poderiamos usar medianas ou modas a posteriori ao invés de médias? Qual a distância entre valores destas medidas? E quando 2 ou mais modelos apresentam medidas muito similares? Ricardo Ehlers Seleção Bayesiana de Modelos 15
Exemplo: Seleção de Modelos Autoregressivos AR(k) : y t = k a j y t j + ɛ t, ɛ t N(0, σɛ 2 ) j=1 Figura 2: 114 observations of base 10 logarithms minus the mean of the annual trappings of Canadian lynx, 1821-1934. -1.0-0.5 0.0 0.5 1.0 0 20 40 60 80 100 Ricardo Ehlers Seleção Bayesiana de Modelos 16
Table 4 in Brooks, S.P. (2002) Discussion to Spiegelhalter et al. (2002). AR(k) models for Lynx data. k p D DIC EAIC EBIC π(k) w DIC k w EAIC k w EBIC k 1 1.88 206.660 206.78 209.51 0.000 0.000 0.000 0.000 2 2.85 126.580 127.72 133.19 0.243 0.000 0.003 0.858 3 3.78 127.060 129.27 137.48 0.016 0.000 0.001 0.101 4 4.76 125.520 128.75 139.70 0.007 0.000 0.002 0.033 5 5.70 125.230 129.52 143.20 0.002 0.000 0.001 0.006 6 6.62 126.300 131.68 148.09 0.001 0.000 0.004 0.000 7 7.60 122.340 128.72 147.88 0.002 0.000 0.002 0.001 8 8.61 121.810 129.19 151.08 0.002 0.000 0.001 0.000 9 9.58 122.750 131.16 155.79 0.001 0.000 0.001 0.000 10 10.54 118.940 128.40 155.76 0.002 0.001 0.002 0.000 11 11.33 106.510 117.16 147.26 0.154 0.431 0.566 0.001 12 12.61 106.890 118.27 151.10 0.268 0.356 0.325 0.000 13 13.56 108.740 121.17 156.74 0.135 0.142 0.076 0.000 14 14.46 110.770 124.30 162.61 0.067 0.051 0.016 0.000 15 15.37 112.896 127.42 168.47 0.000 0.019 0.003 0.000 Ricardo Ehlers Seleção Bayesiana de Modelos 17
Saltos Trans-dimensionais Proponha um salto do modelo M i para o modelo M j com probabilidade r ij, gere um vetor u de dimensão n j n i de uma distribuição q() faça θ j = f ij (θ i, u) onde f ij : Θ i R n j n i Θ j denota uma função bijetora. Aceite o salto com probabilidade min(1, A) onde A = π(θ j, M j ) r ji f ij (θ i, u) π(θ i, M i ) r }{{} ij q(u) (θ i, u) }{{} razão de razão de propostas alvos A escolha da distribuição proposta q é crucial para varrer o espaço paramétrico. Quando possível usar as condicionais completas, ou aproximações para as condicionais completas Brooks and Ehlers (2002) Ricardo Ehlers Seleção Bayesiana de Modelos 18
Possíveis Alvos Distribuição a posteriori conjunta π(m i, θ i ) p(y θ i, M i ) p(θ i M i ) p(m i ). Distribuição de Boltzmann ( ) log p(y θi, M i ) n i π T (θ i, M i ) exp. T MCMC + Simulated annealing: Brooks, Friel, and King (2003) MCMC + Algoritmos genéticos: Ehlers and Ferreira (2005) Ricardo Ehlers Seleção Bayesiana de Modelos 19
Seleção de Modelos ARIMA Ehlers and Brooks (2004) Reparametrização em termos de raízes inversas dos polinômios característicos AR(I)MA(p, q) : k (1 λ i L)y t = i=1 q (1 δ j L)ɛ t, ɛ t N(0, σ 2 ). j=1 Estacionaridade/inversibilidade: λ i < 1, i = 1,..., k e δ i < 1, i = 1,..., q. Possíveis saltos: Adição/Remoção de 1 raíz real ou par de raízes complexas (conjugadas). Possíveis propostas: Normal truncada, tipo Beta, tipo Logística. Ricardo Ehlers Seleção Bayesiana de Modelos 20
Tabela 2: Model probabilities and proportion of correct model for a simulated AR(3). Sample size proposal 20 50 100 200 500 1000 Truncated normal 0.0092 0.0398 0.1074 0.2677 0.4565 0.5480 0.0000 0.1500 0.3500 0.6000 0.9000 0.9500 Beta-based 0.0096 0.0441 0.1059 0.2702 0.4812 0.5404 0.0000 0.1500 0.3500 0.6500 0.9500 0.9000 Logistic-based 0.0092 0.0414 0.1058 0.2628 0.4822 0.5436 0.0000 0.1500 0.3000 0.6000 0.9500 0.9000 Ricardo Ehlers Seleção Bayesiana de Modelos 21
Figura 3: Southern oscillation index (SOI), 540 measurements taken between 1950-1995. -8-6 -4-2 0 2 4 0 100 200 300 400 500 Tabela 3: Posterior model order probabilities, 500,000 iterations after a 500,000 burn-in. Proposal d (p, q) 0 1 2 3 4 5 Truncated normal 0 1 0.0000 0.2245 0.0518 0.0503 0.0398 0.0336 2 0.0024 0.0164 0.0556 0.0292 0.0249 0.0184 3 0.0111 0.0173 0.0374 0.0286 0.0247 0.0186 4 0.0130 0.0083 0.0178 0.0134 0.0140 0.0104 5 0.0200 0.0071 0.0148 0.0113 0.0103 0.0085 1 0 0.0000 0.0135 0.0089 0.0156 0.0147 0.0193 1 0.0000 0.0023 0.0042 0.0067 0.0078 0.0105 2 0.0001 0.0018 0.0032 0.0053 0.0067 0.0086 3 0.0004 0.0020 0.0024 0.0041 0.0042 0.0058 4 0.0004 0.0012 0.0024 0.0034 0.0050 0.0060 Ricardo Ehlers Seleção Bayesiana de Modelos 22
Modelos AR com Transição Suave Logística LST AR(m, p 1,..., p m ): m regimes e p i defasagens em cada regime. y t = α 1x 1,t + (α 2x 2,t α 1x 1,t ) G 1 (y t d, γ 1, c 1 ) + + (α mx m,t α m 1x m 1,t ) G m 1 (y t d, γ m 1, c m 1 ) + ɛ t, ɛ t N(0, σ 2 ɛ ) onde G i (y t d, γ i, c i ) = 1, i = 1,..., m 1. 1 + exp[ γ i (y t d c i )] x j,t = (y t 1,..., y t pj ) α j = (α 1,..., α pj ) : coeficientes autoregressivos γ i > 0 : parâmetros de suavização c i : parâmetros de fronteira Total de parâmetros k = m j=1 p j + 2(m 1) + 1 Lubrano (2000): m = 2, p 1 = p 2 = p conhecidos. Lopes and Salazar (2005): m = 2, p 1 = p 2 = p desconhecido. Ehlers and da Rosa (2005): m, p 1,..., p m desconhecidos. Ricardo Ehlers Seleção Bayesiana de Modelos 23
A posteriori conjunta de (m, p 1,..., p m, γ, c, α, σ 2 ɛ y) é proporcional a p(y m, p, γ, c, α, σ 2 ɛ ) p(c m) p(γ m) p(m) p(σ 2 ɛ ) m p(p j m) p(α j p j ). j=1 Prioris utilizadas, onde α = (α 1,..., α m). p(c m) = α σ 2 a N(0, σ 2 ai k ) e σ 2 ɛ IG(a, b), a, b > 0. (m 1)! m 1 j=1 p(c j), c 1 < c 2 < < c m 1, 0, caso contrário p(γ m) = m 1 j=1 p(γ j ), γ j Cauchy(0, σ γ ) truncada em γ j > 0. m U{1,..., m max } e p j U{1,..., p max }, j = 1,..., m. Ricardo Ehlers Seleção Bayesiana de Modelos 24
RJMCMC em Modelos LSTAR Saltos do tipo criar/combinar: sortear entre criar novo regime ou combinar 2 regimes existentes. Criando regimes sortear j {1,..., m 1} c j = c j ɛ, c j+1 = c j + ɛ, γ j = γ jτ, γ j+1 = γ j/τ amostre α (m+1) da sua distribuição condicional completa. Combinando regimes sortear um par de fronteiras adjacentes c j < c j+1 c j = (c j + c j+1 )/2, γ j = γ j γ j+1, ɛ = (c j+1 c j )/2, τ = γ j /γ j+1 atualize os coeficientes α (m 1) Saltos dentro de um regime sortear um regime j e propor novo valor p j para p j, atualizar α (m) da condicional completa Ricardo Ehlers Seleção Bayesiana de Modelos 25
RJMCMC + Algoritmos Genéticos E.g. Modelos lineares (generalizados) E(y i ) = β 0 + β 1 x 1i + + β k x ki, k = 0,..., k max 2 k max possíveis modelos com intercepto. Dada uma população de modelos Z = (z 1,..., z M ) onde z ij = 0, 1. Propor uma nova população z através de operadores genéticos (esp. mutação e cruzamento). Aceitar a nova população com probabilidade, ( min 1, exp{ AIC(z )} P (z ), z) exp{ AIC(z)} P (z, z ) onde P (z, z ) = P r(propor salto da população z para z ) Ricardo Ehlers Seleção Bayesiana de Modelos 26
REFERÊNCIAS Referências Akaike, H. (1974). A new look at the statistical identification model. IEEE Transactions on Automatic Control 19, 716 723. Brooks, S., N. Friel, and R. King (2003). Classical model selection via simulated annealing. Journal of the Royal Statistical Society, Series B 65, 503 520. Brooks, S. P. and R. S. Ehlers (2002). Efficient construction of reversible jump MCMC proposals for autoregressive time series models. Technical report, University of Cambridge. Ehlers, R. S. and S. P. Brooks (2004). Bayesian analysis of order uncertainty in arima models. Technical Report 2004/05-B, Federal University of Paraná. Ehlers, R. S. and J. M. C. da Rosa (2005). Bayesian analysis of regime switching models with an unknown number of components. In Preparation. Ehlers, R. S. and M. A. Ferreira (2005). Trans-dimensional genetic algorithms for model selection. In Preparation. Lopes, H. F. and E. Salazar (2005). Bayesian model uncertainty in smooth transition autoregressions. Journal of Time Series Analysis. To appear. Lubrano, M. (2000). Bayesian analysis of nonlinear time series models with a threshold. In Proceedings of the Eleventh International Symposium in Economic Theory. Helsinki: Cambridge University Press. Schwartz, G. (1978). Estimating the dimension of a model. Annals of Statistics 6, 461 464. Silva, S. A., L. L. M. Mota, and R. S. Ehlers (2004). Spatial analysis of incidence rates: A Bayesian approach. Technical report, Federal University of Paraná. Technical Report 2004/02-B. Spiegelhalter, D. J., N. G. Best, B. P. Carlin, and A. van der Linde (2002). Bayesian measures of Ricardo Ehlers Seleção Bayesiana de Modelos 27
REFERÊNCIAS model complexity and fit (with discussion). Journal of the Royal Statistical Society, Series B 64, 1 34. Ricardo Ehlers Seleção Bayesiana de Modelos 28