本文章はStan Development Team. 2015. Stan Modeling Language Users Guide and Reference Manual, Version 2.7.0.の5章Regression ModelsのProper Uniform Priors: Interval ConstraintsからTruncated Priorsまでの翻訳となります。
訳者は勉強がてら翻訳しようと思っただけで、プログラムの専門家でもデータ解析の専門家でもありません。そのため誤訳・意味の取り違えなどあると思いますが、その際はご指摘いただけると幸いです。翻訳ペースは気分しだいです。ご了承ください。
とうとうStan manual翻訳プロジェクトがGithubに立ち上がり、本格化し始めたので、出来る限り協力して行きたと思います。
###Properな一様事前分布: 区間の制約
以下のように書くことで、properな一様事前分布の取りうる範囲の上限、下限を定めることができます。
real<lower=0.1, upper=2.7> sigma;
上記はsigmaの事前分布として Uniform(0.1, 2.7)が与えられていることを示しています。
すべての制約と同様に、すべてのsigmaの値のサポートを提供することはモデル構築において重要です。例えば、以下のコードではsigmaは正の値を取り、かつ限られた範囲の一様分布からサンプリングされることが示されています。
parameters {
real<lower=0> sigma;
...
model {
// *** bad *** : support narrower than constraint
sigma ~ uniform(0.1, 2.7)
このコードではsigmaのサンプリング範囲が(0.1, 2.7)からの範囲に制限されています。この値はもともと提示された(0. ∞)よりも狭い範囲です。これにより、初期化が困難になる、サンプリング中に止まってしまう、ランダムウォークへの移行が困難になってしまう可能性があります。
####境界の見積もり
区間制約パラメータの境界付近を推定する場合、一般的に事前分布がモデルに適していないような結果が帰ってきます。また、サンプリングや最適化の際にアンダーフロー、オーバーフローによる問題が発生する可能性もあります。
###無情報事前分布
回帰分析の際にNormal(0, 1000)のような事前分布を使うことは珍しいことではありません。1000のように事前分布のスケールが推定したい回帰係数の値に比べて数桁大きい場合、このような事前分布は推定値に対して何の効果も提供していない事になります。
我々は下記のようなBUGSでの実例 (Lunn et al., 2012) から、デフォルトスケールの事前分布の危険性を示します。
\sigma^{2} ~ InvGamma(0.001, 0.001)
このような事前分布は合理的な事後分布の値の外にあまりにも多くの確率質量が集中してしまうため、対称的な一般的な事前分布と異なり、事後分布の歪みに大きな影響を及ぼす可能性があります。これらの詳細についてはGelman, 2006に詳細を示しています。
###切断事前分布
Stanにおいて変数の下限が0と宣言されている場合には、その分布はproperな切断正規分布として扱われます。Stanでは0での切り捨てを宣言する必要はなく、確率密度を指定するだけで構いません。
この際にはまず下記のように変数を宣言した後、
real<lower=0> sigma;
事前分布を下記のように与えてやることでsigmaに半正規分布を与えることができます。
sigma ~ normal(0, 1000);
より詳細に書くと下記のように示されますが、
p(\sigma) = \frac{normal(\sigma | 0, 1000)}{1-normalCDF(\sigma | 0, 1000)} \propto normal(\sigma | 0, 1000)
Stanでは半正規密度の正規化に必要な、正規累積分布 (CDF) の計算を避けることが出来ます。一方、事前分布の位置やスケールがパラメータである場合や切り捨てのポイントがパラメータである場合には、標準CDFの項が一定にならないため、切り捨てを行うことが出来ません。
###参考資料
Stan Development Team. 2015. Stan Modeling Language Users Guide and Reference Manual, Version 2.7.0.
Gelman A., 2006. Prior distributions for variance parameters in hierarchical models.
Lunn et al., 2012. The BUGS
Book: A Practical Introduction to Bayesian Analysis