「データ解析のための統計モデリング入門」をひと通り読んだ.本書はGLMからMCMCによる分布推定までの一連の統計モデリングの流れを,生態学における研究の問題に即したテストデータやRを使った解析例とともに解説した本である.本書を書かれた久保さんの講義資料は前々から拝見していたのだが,今回はそれが全体を通して非常によくまとまっている印象を受けた.やはり実例に沿った例題があって,それを解決するためのストーリーが組まれていると,何が問題で何をすべきなのか,そしてその評価方法を含めてハッキリとしていて読みやすい.Rのコードに関しても,コマンドの実行方法からその解釈の仕方まで丁寧に解説が組まれており,数式とのつながりもわかりやすい.個人的には,後半のMCMCの実験に関しては大部分をWinBUGSにお任せで,シミュレーションの過程が少し不明瞭だった感じもするのだが,限られた紙面でMCMCの細かい実装方法を説明するよりかは既存のツールを使ったほうが全体の流れとしても良かったのだろう.


さて,本書を読み始める前に必ず目に通すべきなのが,公式ページにも貼られている各章のつながりや線形モデルの発展の図だ.全体の流れを俯瞰できるほか,実際に中を読みながら今ある問題と図とを照らし合わても,自分が今どういった位置づけの中で何を解いているのかということを把握することができる.

これが非常に参考になったので,個人的にも自分の読書ノートに書きなぐったまとめ図を清書して作ってみた.ほとんど久保さんの図を真似ただけだが,2つの図を組み合わせ感じでストーリーに沿った形で線形モデルの発展をなぞっている.基本的に章の間をつなぐような自問自答の形を取っており,各章には推定するパラメータと手法の代表的なものを付け加えている.

以下に簡単な読書ノートを載せておく.Rのコードを使った実験はまだできていないが,とりあえずはMCMCの実装くらいまではやりたいと思う.なお,このまとめには多分に間違いが含まれている可能性があるので,もし参考にされる際には注意していただきたい.

個別記事

全体的に

  • 確率の表記の仕方に注意
    • ただ単にパラメータを取る時の確率なのか条件付き確率なのか,文脈に沿ってきちんと把握しておく
    • ポアソン分布の文脈におけるp(x|\lambda) は,\lambda というパラメータ(平均)を取る時のポアソン分布の確率値(他にp(x;\lambda) とも書くパターン)
    • 後半のMCMCに入ると条件付き確率が出てくる

2章

  • 「ある植物の1個体から得られる種子の数に何か法則はあるか?」
  • 確率分布の単純なあてはめ
  • ポアソン分布を選ぶ理由は,非負の整数で![(0,\infty] ](http://chart.apis.google.com/chart?cht=tx&chl=%280%2C%5Cinfty%5D+)だから

3章

  • 「植物のサイズや施肥効果と種子の数に何か関係はあるか」
  • 説明変数を組み込んだ統計モデル
  • log(\lambda_i) = \beta_1 + \beta_2 x_i
  • (リンク関数) = (線形予測子) の関係
    • PRMLでは,リンク関数は連結関数と訳されている
  • 対数リンク関数では,要素の効果が積で表される
    • \exp(\beta_1 + \beta_2 x_i + \beta_3) = \exp(\beta_1) \times \exp(\beta_2 x_i) \times \exp(\beta_3)

4章

  • モデル選択
  • 良いモデル/悪いモデルと考えた時に,何が良いモデルなのか
  • 当てはまりの良さだけを考えてはいけない
    • 機械学習で言うところの過学習
  • AIC(赤池情報量基準)
  • 平均対数尤度の推定値 / 最大対数尤度のバイアス補正
  • 最大対数尤度 <=> 最小逸脱度

5章

  • 尤度比検定
    • Neyman-Pearsonの検定のわくぐみ
  • 帰無仮説のモデルと対立仮説のモデルの逸脱度の差\delta D_{1,2}
  • Neyman-Pearsonの検定のわくぐみでは帰無仮説が棄却できるかどうかを判断する(Type I Error)
  • 有意水準を設定する
    • パラメトリックなブートストラップ法(シミュレーション)
    • \chi^2 分布を使った近似計算
  • 棄却できない場合には結論が出ない

6章

  • 「植物のサイズや施肥効果と種子の生存数に何か関係はあるか」
  • ロジスティック回帰
    • 二項分布とロジットリンク関数の組み合わせ
  • 相互作用項による積の効果x_i f_i を考える
  • 割り算値の統計モデリングの危険性とオフセット項

7章

  • 複数の確率分布を部品とする統計モデリング
    • 個体のばらつき(個体差)
  • GLMMは人間が観測できないけど応答変数(種子の生存数)に効いてそうな部分の効果をGLMに組み込んだもの
  • 固定効果とランダム効果
  • サンプル数の分だけ必要なパラメータをまとめて最尤推定できないので積分して分布を混ぜる
  • 無限個の二項分布をまぜることで平均よりも分散が大きいような確率分布になる
  • 反復/擬似反復

8章

  • MCMCで分布を推定
    • ランダム効果を複数組み込んだモデルにすると多重積分の数が多くなり最尤推定に時間が掛かる場合
    • または最尤推定が解析的に求められない場合
  • MCMCといっても結局やりたいことはパラメータを知りたいということ
    • Rのglm()関数で一瞬で求まったものを,MCMCのシミュレーションで求めているだけ
  • MCMCサンプリングにより定常分布が定まる & 定常分布は尤度に比例する
  • マルコフ連鎖からサンプリングすることと事後分布からサンプリングすることが同じ

9章

  • GLMのベイズモデル化
  • 求めているものが値なのか分布なのかを意識する
  • 無情報事前分布を用いたベイズ統計モデル
    • 平べったい分布
    • [\infty,\infty] の範囲で好きな値を取っていい」ことを表現するための分布
  • gibbsサンプリングによるMCMCアルゴリズム(複数パラメータのサンプリング)

10章

  • 「調査場所の差」を考慮にいれる
    • これも結局は個体差
  • 階層事前分布・階層ベイズモデル
  • 階層に関しては「生態学のためのベイズ法」にある図が分かりやすい

11章

参考

生態学のためのベイズ法」は実際の生態学の解析事例が豊富に書かれている.具体的にどういう生物を対象にどういった測定値を用いて解析したみたいな話が色々書いてあるので,モデル化の際のイメージがしやすい.しょっぱなからベイジアンなので,慣れてない人には少し抵抗があるかもしれない.久保さんのところ(URL)にも色々と情報あり.この本はRとWinBUGS.

Rによるモンテカルロ法入門」は,乱数を発生させて数値計算を行うモンテカルロ法自体について書かれているので,扱っている内容はMCMCに限らずモンテカルロ積分なども含まれている.こちらはWinBUGSを使わず全編Rでコードが書かれているので,RでMCMCを実装するときの参考になる.

久保本であまり触れられていなかった理論方面では,「計算統計 2 マルコフ連鎖モンテカルロ法とその周辺 (統計科学のフロンティア 12)」と「マルコフ連鎖モンテカルロ法 (統計ライブラリー)」の2冊あたりが良さそう.前者の計算統計の方は,久保本の編集にも携われた伊庭氏が書かれたMCMCの解説.後者の方は理論寄りながらも後半では社会学方面の研究の実例が色々と載っており,ポアソン回帰やロジスティック回帰など各事例の数式を追ったり実例を見るのに適している.こちらはRとWinBUGSが混じっている.

参考:ランダム効果について