Não foi possível enviar o arquivo. Será algum problema com as permissões?
Diferenças
Aqui você vê as diferenças entre duas revisões dessa página.
Ambos lados da revisão anterior Revisão anterior Próxima revisão | Revisão anterior | ||
disciplinas:ce718:atividades2011 [2011/06/16 11:25] eder |
disciplinas:ce718:atividades2011 [2011/08/27 21:20] (atual) eder [Códigos] |
||
---|---|---|---|
Linha 4: | Linha 4: | ||
* [[disciplinas:ce718:atividades2011:pi|Simulação, exemplos com estimação de <m>pi</m>]] (Círculo/quadrado e Agulha de Buffon) | * [[disciplinas:ce718:atividades2011:pi|Simulação, exemplos com estimação de <m>pi</m>]] (Círculo/quadrado e Agulha de Buffon) | ||
* [[disciplinas:ce718:atividades2011:va|Simulação de v.a.'s]] | * [[disciplinas:ce718:atividades2011:va|Simulação de v.a.'s]] | ||
- | ==== Priori conjugada Beta-Binomial ==== | + | * {{:pessoais:betabinobayes1.r|Beta Binomial}} |
- | <code R> | + | * {{:pessoais:laplace.r|Aproximação de Laplace}} |
- | ###------------------------------------------------------------### | + | * {{:pessoais:mci2.r|Integração Númerica (Simpson, Quadratura Gaussiana, Monte Carlo)}} |
- | ### Éder | + | * {{:disciplinas:ce718:gibbs.r|Gibbs Sampler}} |
- | ###------------------------------------------------------------### | + | * {{:disciplinas:ce718:metropolis-hastings.r|Metropolis-Hastings}} |
- | ### Solução analitica, númerica e por simulação do modelo | + | * {{http://www.leg.ufpr.br/~eder/CE718Funcoes.R|Exemplos via JAGS}} |
- | # X ~ B(n,p) | + | |
- | # p ~ Beta(alfa,beta) | + | Fazer um exemplo univariado (poisson) de Mestropolis, Independence sampler, Metropolis-Hastings, e um multivariado de Gibbs (2 efeitos aleatórios dist normal e Poisson); |
- | ###------------------------------------------------------------### | + | |
- | ###------------------------------------------------------------### | + | |
- | require(sfsmisc) | + | |
- | require(latticeExtra) | + | |
- | require(MASS) | + | |
- | #browseURL('http://cs.illinois.edu/class/sp10/cs598jhm/Slides/Lecture02HO.pdf') | + | |
- | ###------------------------------------------------------------### | + | |
- | ###------------------------------------------------------------### | + | |
- | ### grid de p | + | |
- | p <- seq(0,0.99999,by=0.001) | + | |
- | ### Priori | + | |
- | alfa <- 1 | + | |
- | beta <- 1 | + | |
- | p.priori <- dbeta(p,alfa,beta) | + | |
- | ### Verossimilhança | + | |
- | n <- 1000 | + | |
- | x <- rbinom(1,n,0.3) | + | |
- | vero <- function(p,n,x){exp(sum(dbinom(x,n,p,log=TRUE)))} | + | |
- | p.vero <- apply(matrix(p),1,vero,n=n,x=x) | + | |
- | ###------------------------------------------------------------### | + | |
- | ###------------------------------------------------------------### | + | |
- | ### Solução analitica | + | |
- | ### Posteriori | + | |
- | p.posteA <- dbeta(p,alfa+sum(x),beta+sum(n-x)) | + | |
- | ### Plotando | + | |
- | doubleYScale(xyplot(p.priori + p.posteA ~ p, foo, type = "l",lwd=3), | + | |
- | xyplot(p.vero ~ p, foo, type = "l",lwd=2,lty=2), | + | |
- | style1 = 0, style2 = 3, add.ylab2 = TRUE, | + | |
- | text = c("Priori", "Posteriori", "Verossimilhança"), columns = 3) | + | |
- | ### confirmando se a posteriori é uma fdp | + | |
- | integrate.xy(p,p.posteA) | + | |
- | ###------------------------------------------------------------### | + | |
- | ###------------------------------------------------------------### | + | |
- | ### INtegração númerica para normalização | + | |
- | ### posteriori | + | |
- | p.posteN <- (p.priori*p.vero)/(integrate.xy(p,p.priori*p.vero)) | + | |
- | ### Plotando | + | |
- | doubleYScale(xyplot(p.priori + p.posteN ~ p, foo, type = "l",lwd=2), | + | |
- | xyplot(p.vero ~ p, foo, type = "l",lwd=2,lty=2), | + | |
- | style1 = 0, style2 = 3, add.ylab2 = TRUE, | + | |
- | text = c("Priori", "Posteriori", "Verossimilhança"), columns = 3) | + | |
- | ### confirmando se a posteriori é uma fdp | + | |
- | integrate.xy(p,p.posteN) | + | |
- | ###------------------------------------------------------------### | + | |
- | ###------------------------------------------------------------### | + | |
- | ### Amostragem da posteriori | + | |
- | ns <- 100000 | + | |
- | theta_chapeu <- sum(x)/(n*length(x)) | + | |
- | theta_i <- rbeta(ns,alfa,beta) | + | |
- | u_i <- runif(ns,0,1) | + | |
- | crite <- u_i <= ((dbeta(theta_i,alfa,beta)*apply(matrix(theta_i),1,vero,n=n,x=x))/ | + | |
- | (dbeta(theta_chapeu,alfa,beta)*vero(theta_chapeu,n=n,x=x))) | + | |
- | a.posteriori <- theta_i[crite] | + | |
- | mean(a.posteriori,na.rm=TRUE) | + | |
- | ### Taxa Aceitação | + | |
- | sum(crite)/ns | + | |
- | ###------------------------------------------------------------### | + | |
- | ###------------------------------------------------------------### | + | |
- | ### Comparando os resultados | + | |
- | hist(a.posteriori,prob=TRUE) | + | |
- | rug(a.posteriori) | + | |
- | lines(density(a.posteriori)) | + | |
- | lines(p,p.posteA,col='red',lwd=3) | + | |
- | lines(p,p.posteN,col='blue',lty=2) | + | |
- | legend('topleft',c('Amostragem','Analitico','Númerica'),lty=c(1,1,2),col=c('black','red','blue')) | + | |
- | ### Intervalos via verosimilhança aproximado | ||
- | theta_chapeu+c(-1,1)*1.96*sqrt((theta_chapeu*(1-theta_chapeu))/n) | ||
- | ### IC amostragem | ||
- | quantile(a.posteriori,c(0.025,0.975)) | ||
- | ### Analitico da conjugada | ||
- | qbeta(c(0.025,0.975),alfa+sum(x),beta+sum(n-x)) | ||
- | ###------------------------------------------------------------### | ||
- | ###------------------------------------------------------------### | ||
- | </code> | ||
- | s |