FC2ブログ
11«1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.»01

たまひびとらの絵本の実

読書好きな姉妹と弟と父母の読んだ本

【PythonとStanで学ぶ】仕組みが分かるベイズ統計学入門 

【PythonとStanで学ぶ】仕組みが分かるベイズ統計学入門
【PythonとStanで学ぶ】仕組みが分かるベイズ統計学入門

これだけベイズの本を読んでいて超恥ずかしいんだけど、本コースでベイズ推定の根本的考えがやっとわかった気がする。ベイズの解説だと、サンプリング手法の説明が多いんだけど、重要なのはサンプリング以前のコンセプトなのだ。ベイズ推定では、想定する分布のパラメータ(たとえば平均、分散)を確率的に求める。事後分布は、尤度関数(知っているもしくは自分が想定する確率密度関数にデータを入れて積をとったもの)と事前分布(わかれば)があれば、計算できる。下の例では、4点のデータを基に、パラメータ(正規分布の平均値)がどこかを区間ずっと調べて行って(b)、どのあたりがよりありそうな値か計算できる(パラメータの分布が見える)。この例では、尤度だけがあって、事前分布がない。しかし、事前分布がわからなければ一様分布(つまり定数)となるので、実質的には何も変わらない。以前に作ったこの②でも同じことをやっている。データが増えれば、尤度関数の値が変わるので、ベイズが更新されることとなる。
normal mu estimate
こうやって、どの点がありそうなのかを調べるんだけど(ありそうな値を1つづつ試すプロセスがサンプリング)、次元数(調べるパラメータの数)が増えると膨大な計算が必要になる。そこで、効率的なサンプリング(どこをどう調べるか)、という考えがでてくる。サンプリング手法として、本コースでは、MH-algo, Gibbs sampler, Hamiltonian MC が説明される。詳細つり合い条件もやっと理解できたし(2つの状態があって、双方から他方へ流れがあるとき、状態の量が増減して、結果的に2つの流れが完全に相殺しあうとき、流れは終わって定常状態になる)、Gibbs sampler では、2個のパラメータのありそうな値を探すのに、1つを固定してもう1つを探すという手続きを交互にやることがわかった。ハミルトニアンの説明もすばらしい。

もう1つ例を作ってみた。表裏の確率が0.7/0.3のコイントス。事前分布は表裏確率0.5の正規分布(分散は適当)。尤度関数は正規分布じゃないのかもしれない(上限下限のある分布を使うべきなのかも)。まあ細かいことは気にせずに、試行回数10回、20回、30回と事後分布が更新されることがわかる。試行回数0回のときは事前分布ということになる。繰り返しになるけど、尤度関数は想定された分布でのデータごとの確率密度(積)。
p(μ|X) ∝ {Πp(xn|μ)} p(μ) ということ。
cointossnoshrink.jpg



スポンサーサイト

category: プログラム

cm 0   tb 0   page top

コメント

page top

コメントの投稿

Secret

page top

トラックバック

トラックバックURL
→http://tamahibi.blog122.fc2.com/tb.php/3526-9190c866
この記事にトラックバックする(FC2ブログユーザー)

page top

訪問者数

カテゴリ

最新記事

最新コメント

最新トラックバック