So-net無料ブログ作成

R: BayesianToolsをためす [統計]

The BayesianTools R package with general-purpose MCMC and SMC samplers for Bayesian statistics で紹介されていた BayesianTools をためしてみました。

ポアソン回帰をやってみました。

library(BayesianTools)

set.seed(123)

x <- c(3, 2, 4, 3, 3, 6, 4, 1, 6, 4,
       5, 7, 4, 4, 1, 4, 0, 3, 8, 4)


loglik <- function(param) {
  ll <- sum(dpois(x, param, log = TRUE))
  return(ll)
}

setup <- createBayesianSetup(loglik, prior = NULL,
                             lower = 0, upper = 1000)
out <- runMCMC(setup, sampler = "DEzs",
               settings = list(iterations = 10000,
                               burnin = 1000,
                               thin = 1))

結果です。

> gelmanDiagnostics(out)
Potential scale reduction factors:

      Point est. Upper C.I.
par 1          1       1.01

> summary(out)
# # # # # # # # # # # # # # # # # # # # # # # # # 
## MCMC chain summary ## 
# # # # # # # # # # # # # # # # # # # # # # # # # 
 
# MCMC sampler:  DEzs 
# Nr. Chains:  3 
# Iterations per chain:  3002 
# Rejection rate:  0.589 
# Effective sample size:  9006 
# Runtime:  0.786  sec. 
 
# Parameter       MAP      2.5%    median   97.5% 
#  par 1 :       3.800    3.032    3.844    4.756 

## DIC:  104.163 
## Convergence 
 Gelman Rubin multivariate psrf:   
 
## Correlations 
      par 1
par 1     1

実際のchainは1本ですが、internal chainをつかってGelman-Rubin統計量を計算しているとのこと。

デフォルトのサンプラーの“DEzs”は“Differential-Evolution MCMC zs”ということですが、“zs”はなんだろう。


タグ:R MCMC
nice!(1)  コメント(0) 
共通テーマ:日記・雑感

nice! 1

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント