configure
したら
avifile
がない,
と警告されたのでそれもインストールしてみた).
まあ,
現時点ではぱらぱらまんがの生成ぐらいしか,
使い道を思いつかんけど.
glmmML
による解析まで.
さてさて,
寄生率そのものの空間相関はどうすれば表現できるだろうか?
モデリングの前段階,
としてだ
……
アイデアにつまったんで,
寄生個体間の距離の平均 vs 分散の関係と,
寄生個体の場所を randomized してみたパターンを比較してみれば,
というような.
はたして,
これは使いものになるのか?
glm()
in R こんさるてぃんぐ
……
苫小牧でも R がいよいよ普及しつつあり,
めでたいことである.
さて,
今回の問題は glm()
が計算を「なげて」しまうこと.
glm()
の行列計算がとまっていた.
えー,
glm()
愛好する大学院生のみなさん,
いくらデータがたくさんあっても
(そして指導教官の無茶な「やれ」指示があったとしても)
いきなり
glm(y ~ x1 * x2 * x3 * x4 * x5 * x6, ...)
というような
「ちょー多項 (多重?) 交互作用」
いりモデルを計算させてはいけません.
まずは
glm(y ~ x1 + x2 + x3 + x4 + x5 + x6, ...)
あたりでモデル選択などやってみて,
「現象の説明に使えそう」
な項だけを
(もしホントにホントに必要だというなら)
交互作用にしてください.
交互作用とやらはせいぜい二項ぐらいまで.
repeated
(Nonlinear Regression and Repeated Measurements Libraries)
である
(Lindsey の
R code ペイジ
からダウンロードできる).
repeated
だけでなくそこらにある一連の package
をまとめてインストールしたほうがよい.
example
が相互参照したりしてるんで.
glmm
だけでなく
gnlmm
---
'gnlmm' fits user-specified nonlinear regression equations to one
or both parameters of the common one and two parameter
distributions ...
---
なんてモノまで含まれているのか.
glmm
から出力される結果オブジェクトをみると,
sd
なる coefficient が含まれている.
これは overdispersion というかランダム変量のばらつきをあらわす
パラメーターである.
また,
glmm
の結果オブジェクトは stepAIC()
への入力として使えるようだ.
glmmML
より便利そうだな
……
しかしもっと慎重に調査してみなくては,
と調査にかまけてしまった.
glmmML
とはびみょーに結果が異るな
(私が調べた数値例については,
AIC はだいたい一致していた).
現時点で判明している
glmmML()
より
glmm
が優れている点:
glmm(cbind(r, n - r) ~ x, ...)
わざが使える
(というか family = binomial
の場合にはこれしか受けつけんようだ)
stepAIC(glmm(...))
できる;
summary(glmm(...))
もできる
repeated
には隠れマルコフモデル (hidden Markov model; HMM) の推定計算関数
hidden()
まであるのか.
「隠れ」好きなヒトはどーぞ.
doc/geoRglmintro.pdf
(Unix 系なら /usr/lib/R/library/geoRglm/doc/geoRglmintro.pdf
)
とか作者
Ole Christensen
とか,
あるいはお手軽には
R News
の短い解説文:
Christensen, O. F. and Ribeiro Jr, P. J. (2002). geoRglm - a package for generalised linear spatial models. R News, 2(2), 26-28. ISSN 1609-3631.が良いだろう.
geoRglm
で使ってる
generalized linear spatial model
(GLSM)
に関する R News 解説文の核心部はわずか十数行に要約されるわけだが,
このところアタマの中がすっかり
空間相関 / MCMC / 面倒推定問題 / べいづ
な状態になってる私は (めづらしいことに)
即独即解してしまった
……
ひとことで乱暴に説明するなら,
つまりは各地点で定義される線形予測子
(linear predictor)
が「すっごーー …
(果てしなく長い)
… ーい
多次元正規分布」
になる一般化線形混合モデル,
ってコトでございますよ.
スっとんでいるけどうまい解決策だなぁ.
MCMC との相性も絶妙だし
……
というのも多次元正規分布ならば
条件つき確率分布の計算は
単なる行列計算に帰着できるからだ
(分散・共分散行列の逆行列を計算したりするだけ)
……
って自力で思いつかなかった私がアホなのかもしれないけど.
(項目) | 久保式 | GLSM |
---|---|---|
ランダム変量 | ぎぶす分布にしたがうランダム空間パターン (離散値) そのもの | 多次元正規乱数の要素 (連続値) を各地点にばらまく (まあこっちもギブス分布にしたがうわけだが) |
推定方式 | Bayes 推定もできるけれど, どちらかというと EM アルゴリズムつかった 一般化線形混合モデルの 最尤推定をねらっている | (おそらく) Bayes 推定のみ |
尤度は? | あるパラメーターセットのもとで決まる 空間パターン集合と観測パターンのあいだの 確率論的距離の期待値 | べいぢあんな事後分布にしたがう確率変数 |
Gibbs Sampler | なんとなく全地点一斉更新方式だけを考えていた (各地点を逐次的更新方式も使えるけど) | 各地点逐次更新方式だけを考えている (たぶん …… マニュアルとか詳しく読まんとわからんけど; 全地点一斉更新も原理的には可能) |
MCMC めんどくさ度 | かなりラク | 一回だけとはいえ, 莫大な個数のちょー巨大逆行列計算が必要?? |
説明 めんどくさ度 | 少し口ごもる …… かも (しかし GLSM 方式の説明をそのまま借用すれば) | かなりラクなはず …… 面倒をすべて「隠れ変数」 に押しつけることができるんで |
repeated
package の
glmm()
関数は推定の安定性において
glmmML()
よりマシとは言えない,
といった貴重な内容も.
ふーむ
……
自作関数で Nelder-Mead 法とかで問題を解かせるか,
小標本のときは混合モデル使わない,
というような対策が必要だねえ.
Schwarz. 1978. Estimating the dimension of a model. Annals of Statistics, 6: 461-464.
BIC = -2 × (最大化対数尤度) + (パラメーター数) × log(標本数)が「ふつー」である, と言っても良さそうだ (e.g. R の
lme4
や nlme
に含まれる BIC()
の定義,あるいは多くの教科書).
ところで
Ripley 御大の著書
``Pattern recoginition and neural networks''
の glossary には
BIC has two similar meanings. Akaike (1977, 1978) introduced `information criterion B'. Schwarz (1978) introduced something which has become konwn as a `Bayesian information criterion'. Although most references mean Schwarz's BIC, to avoid confusion this is also know as SBC (`Schwarz Bayes Criterion'). Both penalize the deviance by log n times the number of p of free parameters for n examples, but Akaike's has O(p) terms not depending on n.などとある. Schwarz's BIC は deviance と p log n なる本質さえおさえていれば形式は何でもヨシなのかもしれぬ. ``Akaike (1977, 1978)'' は入手困難な文献で, 何が書いてあったか不明.
BIC = (最大化対数尤度) - 0.5 × (パラメーター数) × log(標本数)を掲載している教科書の例として, ``Learning Bayesian Networks'' (Neapolitan, 2004), あるいは ``分子系統学'' (長谷川 & 岸野, 1996) など (後者は 霜月 さんにご教示いただいた).
MDL = - (最大化対数尤度) + 0.5 × (パラメーター数) × log(標本数)これは Schwarz's BIC と同等である.