2012年1月31日火曜日

ベイズ推定を知っているフリをするための知識

このエントリーをはてなブックマークに追加
Pocket

最近はベイジアンが増えてきて、実用分野での利用も進んでいるようだ。話題としては知っておきたいが、世間一般には理解に混乱を生んでいるようだ。

ベイズ推定は入門レベルの統計学の教科書ではオマケ的な扱いがされており、実際に伝統的な統計手法を拡張している面が強い。そういう意味では、誤解や混乱があっても仕方が無い。

利用する必要があるのか無いのか良く分からない点も多いのだが、知らないと告白するのも気恥ずかしいかも知れない。自分ではベイズ推定で分析を行わない人が、ベイズ信者と話をあわせるために最低限知っておくべき事をまとめてみた。

1. ベイズ推定とは何か?

ベイズ推定とは、ベイズの定理を応用した推定手法だ。端的に理解するためには、最尤法に事前確率を導入している事だけ覚えれば良い。これで哲学的議論を全て回避してベイズ推定を把握することができる。

下の(1)式ではπ(θ)が事前確率、π(θ|x)が事後確率、f(x|θ)が尤度関数、xが観測値、θがパラメータになる。事前確率π(θ)と尤度関数f(x|θ)は分析者によって設定される。最尤法で推定するのはf(x|θ)を最大にするθだが、ベイズ推定ではπ(θ|x)を特定した上で、θの推定量もしくは信用区間を求める事になる。しかし、事前確率が定数(例えば1)であれば、最尤推定と一致する。分母のf(x)は定数なので、分子のπ(θ)が消えれば、f(x|θ)の最大化問題に置き換わるからだ。

(1)

最尤法が分からない場合はそこから学習する必要があるが、入門レベルのテキストでも紹介されており、難しい概念ではない(関連記事:Rと手作業で覚える最尤法)。

追記(2012/02/01 02:00):π(θ|x)を特定しないで、f(x|θ)π(θ)を最大化するθを求める方法をMAP推定法と言い、これはベイズ推定の近似解法と理解される。なお、π(θ|x)を特定すれば、事後確率f(θ|x)の期待値をθの推定量とするMMSE推定量が計算できたりする。

2. ベイズ推定の利点は何か?

ベイズ推定の利点は、事前確率の導入によって、極端な推定結果が出ないようにしたり、以前の推定結果を更新したり、時間や地域でパラメーター(説明変数の係数)が変化するデータにおいて“当てはまりの良い”推定結果を得ることができる事だ。

基本的な推定モデルY = Xβ + ε(Yが被説明変数、Xが説明変数、βが係数、εが誤差項)では、βは一定である事が仮定される。しかし、地域や時間でβが変化する事がある。このとき、基本的な手法では統計的に意味のある推定量を得ることが出来ない。

鎌田・須合(2006)では、応用的に事前分布のパラメーターの推定量を解釈し、構造変化が発生した時点を推定している。笹瀬・久保川(2005)では経験ベイズ法を小地域推定へ応用する事で、信頼区間が狭まる事を議論している。また階層ベイズは少ない検体で精度の高い検査を可能にするケースがあるようだ。

3. ベイズ推定で無いと分析できないの?

ベイズ推定が必要不可欠と言える状況は少ないであろう。近年の分析ではベイス推定がトレンドではあるが、パネルデータ分析の手法である変量効果モデルや、ダミー変数と他の説明変数のクロス項などの非ベイジアン的な手法でも解決できるケースが少なく無い(「パネルデータ分析」参照)。この意味ではベイズ推定に絶対的な優位性があるわけではない。

上述の鎌田・須合(2006)でもChow-testを駆使する事もできたであろうし、笹瀬・久保川(2005)も非ベイズ推定とベイズ推定を比較している以上、明らかにベイズ推定である必要は無い。より有意性の高い、もしくは推定量の分散が少ない手法として、ベイズ推定の魅力がある事は認識しておいても良いであろう。

4. 共役分布やマルコフ連鎖モンテカルロ法(MCMC)って何?

共役分布やマルコフ連鎖モンテカルロ法(MCMC)は、端的に言えば数値計算テクニックだ。

ベイズ推定の問題として、事前確率を導入したことで、(1)式の分母部分の積分計算が困難を極める事がある。何とか積分が出来るのが共役分布で、何でも計算できるようにしたのがMCMCだ。特にMCMCのバリエーションであるMetropolis-Hastings algorithm(M-Hアルゴリズム)は、分母の積分自体を不要にした計算手法で、万能性から良く紹介されている(関連記事:Rでマルコフ連鎖モンテカルロ法を試す)。

実際には、ユーザー・レベルで重要な情報ではない。最尤法の利用者が数値演算アルゴリズムに通じているわけではない。ロジット回帰をしている人が、一般化線形モデルが使われているのか、最尤法が使われているのか興味を持っているわけではない。

5. ベイズ推定はパラメーターの分布をプロットするもの?

ベイズ推定で分布をプロットするのは習慣であって、ベイズ推定の本質ではないと考えて良い。

MCMCを用いたベイズ推定では、パラメーターの確率分布を図示する事が通例になっている。これは、(1)式のπ(θ|x)の解析的な特徴が不明なので、数値的にそれを代替するためだ。これが理由なのかは分からないが、習慣的に推定量に対して仮説検定を行わずに、信用区間を表記する習慣もある。

しかし分布と信用区間を導出してあればH0:β=0の棄却確率を出す事はできるわけだし、逆に頻度主義的なアプローチにパラメーターの確率分布的なモノが無いわけではない。パラメーターから生成されるデータの分布を考えるわけだが、t値とP値はt分布に基づいている。

6. 単純ベイズ分類器って何?

データマイニング分野で「単純ベイズ分類器」が有名なためか、ベイズ推定と聞くとこれを連想する人は多いようだ(関連ページ:データマイニング・アルゴリズムのトレンド)。ナイーブ・ベイズ分類器とも言われるが、単純ベイズ確率モデルに基づいてデータを分類する手法で、一般のベイズ推定とは少し異なる。

単純ベイズ確率モデルは、一般のベイズ・モデルを単純化することで、計算を容易にしている。つまり、事前確率π(θ)は分母とは独立で、説明変数間の関係も同時確率モデルになっている。単純ベイズ分類器はベイズ推定らしくはないが、実用的な分類性能があるため、迷惑メール・フィルターなどのテキスト・データマイニングで利用が進んでいる。

7. ノン・パラメトリックでは使われないの?

ノンパラメトリックベイズモデルと呼ばれる手法がある(上田・山田(2007))。クラスタリングやグラフマイニング、自然言語処理で使われており、機械学習分野のベイズ学習も、このカテゴリーに入るようだ。ベイズ“推定”の範囲なのかは分からないが、存在する事は認識しても良いであろう。

8. ベイジアンとの付き合い方

最近の研究で流行っている為、ベイジアンと聞くと何か格調高い感じがするが、最尤法の拡張だと理解してしまうと身近になる。利用目的も一般には推定量の信頼性を高めるためだと思っておけば良い。

真面目に利用したい人はベイズ推定の入門書を読む必要があると思うが、話半分に聞いておくだけの人は上述した知識だけで十分なはずだ。ベイズ推定で出された分析結果を提示した人に、事前確率をどう設定したのか聞かないといけない事は、この程度の知識でも分かると思う。

なおベイズ推定の世界は踏み込んで行くと計量テクニックの世界が広がっているので、そういうのが好きな人には良いのだが、道具として扱うのは中々大変そうではある。

2 コメント:

zzyx さんのコメント...

π(θ|x) の最大化と、f(x|θ) π(θ) のそれとは等価です。

uncorrelated さんのコメント...

>>zzyx さん
コメントありがとうございます。
MAP推定法の部分へのコメントだと思いますが、(θ|x)の 分布形状 を特定しないで、、f(x|θ)π(θ)を最大化するθを求めると言う意味です。

コメントを投稿