ベイズ統計学

  • 最近の論文では、こんなものが。
    • ベイズは以下に示すRのパッケージのインストールで山のように依存関係のあるパッケージのインストールが必要となることからもわかるとおり、面倒くさい(計算量もすくないわけではない・・・)。ので、漸近近似でベイズ因子を出してみましょう、という論文。
    • これの前の論文については、こちらにも。
    • GWAS(Genome wide association studies)においては、ジェノタイプ・フェノタイプ関連検定の目的は大きく2つある
      • (1)数あるマーカーに順位をつけること
      • (2)検定に「有意」か否かの判断を下すこと
    • この2目的のためであれば、「P値と、パワー考慮の値の2つの指標でマーカーに順序を入れる」、というのでも、達成できるかもしれないけれども・・・
    • 「関連がない」という帰無仮説に対して、「関連があってもよい」という対立仮説を与える。「関連があるとしたら、どんな関連があるか、について、条件をつけて(オッズ比の範囲を与える、とか、ありそうなオッズ比に重み付けをする、とか、遺伝的リスクのモデルに制約をつける、とか)、その上で、制約条件の範囲内にて、観測データが得られる尤度と、帰無仮説の条件での尤度との比がベイズ因子
    • リスク多型のリスクについて、制約条件を与える必要があるが、たとえば、アレル頻度に依存しないリスクを想定し、リスクは弱いほうが強いよりもありそう、という立場でのリスクの与え方もあろうし、逆に、リスクとアレル頻度には関連がある、という想定も可能・・・いずれにせよ、ベイズ因子は、想定・制約によって決まってくる。
    • たとえば、リスクは、「なし」を中心に、正規分布的に強いリスクの確率が低くなると考えれば、「帰無仮説」においては、「リスクなし」を中心に、サンプリングバイアスの分の分散がある、という仮定で、観測データの観測されやすさを定量することになり、「関連があってもよい」という「対立仮説」での場合には、リスクが「なし」から「あってもよい」方向に広がる分、観測データが「ぴったりリスクなし」という状態から離れるだろう分散が大きくなるので、それにあわせた、観測されやすさを定量することになる。そして、ベイズ因子は、その比を取ったものである。
  • 引用文献では、「Asymptotic Bayes Factor(またはApproximate Bayes Factor) 漸近近似ベイズ因子」を計算している。とはいえ、ベイズ統計の「本流」もざっと。
    • 基本的には、積分の比をとる作業であり、積分が面倒くさくなるので、MCMC、Metropolis-Hastingでその部分をやりましょう、そのために、諸関数が要ります、Rでできるのは、ここまで、それ以外は、もっと、それらしいやり方でやるのがよいけれど、Rでスタートするなら・・・というのが、以下。
  • まずはR (Rでベイズ統計学)
install.packages("ctv")
library(ctv)
install.views("Bayesian")
    • マルコフチェインサンプラー "Umacs" パッケージ依存らしいが、普通にダウンロードしようにもUmacsがひょい、とは見つからない。。。
> install.views("Bayesian")
dependency ''Umacs'' is not available
> library(Umacs)
ラー:これは R 2.4.1 です。パッケージ 'Umacs' は >= 2.5.1 を必要とします
      • というわけで、Rのバージョンアップを・・・2.7.1に。
    • その上で、
install.packages("ctv")
library(ctv)
install.views("Bayesian")
    • とやり直したら、ずいぶん、依存関係が解消されて、以下のみとなった。
The downloaded packages are in
        C:\Documents and Settings\ryamada\Local Settings\Temp\RtmpY4C8R3\downloaded_packages
updating HTML package descriptions
Warning message:
dependency ‘BRugs’ is not available 
      • "BRugs"については、
  Packages that link R to other sampling engines

    * bayesmix is an R package to fit Bayesian mixture models using JAGS .
    * BRugs provides an R interface on Windows machines to OpenBUGS . It works only under Windows and used to be available from CRAN, now it is located at the CRANextras repository.
    * There are two packages that can be used to interface R with WinBUGS . R2WinBUGS provides a set of functions to call WinBUGS on a Windows system and a Linux system; rbugs supports Linux systems through OpenBUGS on Linux (LinBUGS).
    * All of these BUGS engines use graphical models for model specification. As such, the gR task view may be of interest.
      • というコメントもあるようだし、「なしでもいけるかなー」ということで、ひとまず、インストールはここまで。