[備忘録]glmmstanとbrmsでwaicの比較

投稿日:2015年12月16日 更新日:

本記事では「glmmstanとbrmsでwaicの比較」についてサクッと解説しています。

[備忘録]glmmstanとbrmsでwaicの比較

glmmstanとbrmsで研究データを解析しています。

waicを比較する方法を調べたので、忘れないうちにメモです。

以下すべて太字がwaicの比較に必要なコードです。

間違っていたり、もっと良いやり方があったら、ぜひご指摘ください。

glmmstanでwaicの比較

glmmstanでwaicの比較は、どうしたらよいかわからなかったので、ちょっと調べたら以下のように記述すると出力できました。

looパッケージを呼び出して比較しています。

library(glmmstan)
library(loo)
fit0 <- Pglmmstan(a ~ b + (1|d), data = dat, chains = 4, tier = 5000, family = “gaussian”)
fit1 <- Pglmmstan(a ~ b + c + (1|d), data = dat, chains = 4, tier = 5000, family = “gaussian”)
log_lik1 <- extract_log_lik(fit0)
waic1 <- waic(log_lik1)
print(waic1)
log_lik2 <- extract_log_lik(fit1)
waic2 <- waic(log_lik2)
print(waic2)
compare(waic1, waic2)

結果は、以下のようにelpd_waicの差で示されます。

> log_lik1 <- extract_log_lik(fit0)
> waic1 <- waic(log_lik1)
> print(waic1)
Computed from 10000 by 86 log-likelihood matrix
Estimate SE
elpd_waic -158.5 3.6
p_waic 4.8 0.5
waic 317.0 7.3
> log_lik2 <- extract_log_lik(fit1)
> waic2 <- waic(log_lik2)
> print(waic2)
Computed from 10000 by 86 log-likelihood matrix
Estimate SE
elpd_waic -139.4 4.4
p_waic 53.8 3.4
waic 278.9 8.8
> compare(waic1, waic2)elpd_diff se weight1 weight2 
 19.1 2.0 0.0 1.0

ちなみにglmmstanの並列化は、Pglmmstanと書くだけでOKです。

brmsでwaicの比較

brmsはパッケージに書いてある通り、以下のように記述するとwaicの比較ができます。

library(brms)
rstan_options(auto_write = TRUE)
options(mc.cores = parallel::detectCores())
fit0 <- brm(a ~ b + (1|d), data = dat, n.chains = 4, n.iter = 2000, n.warmup = 1000, n.cluster = 2, family = “gaussian”)
fit1 <- brm(a ~ b + c+ (1|d), data = dat, n.chains = 4, n.iter = 2000, n.warmup = 1000, n.cluster = 2, family = “gaussian”)
WAIC(fit0)
WAIC(fit1)
WAIC(fit0,fit1)

結果は、以下のようにwaicの差で示されます。

> WAIC(fit0)
 WAIC SE
 316.48 7.3
> WAIC(fit1) WAIC SE
 301.9 8.91
> WAIC(fit0,fit1) WAIC SE Weights
fit0 316.48 7.30 0
fit1 301.90 8.91 1
fit0 - fit1 14.57 3.89

ちなみに、library(brms)の直下にある以下のコードは、並列化するために書いています。

rstan_options(auto_write = TRUE)
options(mc.cores = parallel::detectCores())

 

その他、参考になる資料は以下です。

brmsパッケージ

 

 
まとめ:【備忘録】glmmstanとbrmsでwaicの比較
本記事では「glmmstanとbrmsでwaicの比較」についてサクッと解説しました。
役に立てば嬉しいです。

おすすめ記事一覧

1

きょうごく本記事では「現在の職場は人間関係が最悪で、労働条件も悪く、日々消耗しています。より好待遇な職場に移りたいです。おすすめの求人転職サイト・エージェントを教えてください」という疑問にお答えします ...

2

きょうごく本記事では「いまの職場は人間関係も労働条件も悪いので、より好待遇な職場で働くために転職したいです。医療福祉系の転職は転職サイトや転職エージェントを使ってもよいですか。おすすめはどこですか」と ...

3

きょうごく本記事では「コミュニケーション能力を高めたい。けど、そもそもコミュニケーション能力って何だろう?コミュニケーション能力の本質を理解したい」という疑問にお答えします こんな方におすすめ コミュ ...

4

きょうごく本記事では研究を学べるおすすめ本を紹介した記事のまとめます こんな方におすすめ 研究を学べるおすすめ本を知りたい 選りすぐりのおすすめ研究本で学びたい 本記事を書いているぼくは作業療法士であ ...

5

大学院に進学したい作業療法士向けのまとめ記事。 本記事では、大学院進学に興味のある作業療法士向けに書いた記事をまとめました。 今後も記事は増える予定ですが、これから大学院進学を検討している人はぜひ参考 ...

6

きょうごく本記事では、このブログで解説した作業療法士を目指す高校生のための記事をまとめています 本記事の内容 『作業療法士が何なのかよく分からない』という人から、『作業療法士になりたい』といった方向け ...

7

きょうごく本記事では学会発表・学会参加で失敗したくない人向けの記事をまとめています こんな方におすすめ 学会発表・学会参加のコツを知りたい 本記事では学会発表・学会参加で失敗したくない 学会発表のレベ ...

-研究
-

Copyright© 京極真の研究室 , 2019 All Rights Reserved.