マルコフ連鎖モンテカルロ法周りを理解したい【備忘録】
マルコフ連鎖モンテカルロ法,通称MCMCが授業で出てきました。なんかすごそうなんだけど、イマイチ分からない…
目次
そもそもベイズ推定
度数分布から理論分布へ
ヒストグラム→データの分布を視覚化!
→→しかし、階級と階級幅でグラフの形状が変わる
ヒストグラムが示すデータの分布はあくまで一例にすぎない
度数分布を度々再計算したり、1つのグラフで全体像を把握できない→理論分布を使う!
理論分布
理論分布は主観的に分布を選び利用しているだけ、厳密には一致しない。
ただ、簡単に近いものを出せるからよく使われる。
理論分布の確率密度関数と確率分布関数はそれぞれ
f(x|θ) F(x|θ)で表される。
θ=(θ1,θ2.......)で複数の母数を表す
正規分布の母数はθ=(θ1,θ2)=(μ,σ)
一様分布の母数はθ=(θ1,θ2)=(a,b)
で表わせる。
正規分布
用途:平均値付近に度数が大きく、両側に離れるに従って度数が小さくなるデータ用(身長など) 必要なもの:平均と標準偏差のみ! 式:f(x|μ(平均),σ(標準偏差)) =(式は下) という確率密度関数 (-∞<=x<=∞)$$f(x|μ,σ) = \frac{1}{\sqrt{2π}σ}{e^{-\frac{1}{2σ^2}(x-μ)^2}}$$
注意→度数分布とは違って、確率密度が使われる!
累積分布関数(確率分布関数、分布関数)
下限からxまでの確率を与える関数のこと
F(x|μ,σ)
任意の区間で使いたかったら F(a|μ,σ)-F(b|μ,σ)みたいにして使う。
性質
正規分布の95%予測区間は[μ-1.96σ,μ+1.96σ]で表される
一様分布
用途:特定範囲で均等に測定値が出るデータ用(バスの待ち時間など) 必要なもの:範囲のみ! 式:f(x|a(範囲開始),b(範囲終了)) =(式省略)という確率密度関数(a<=x<=b)
データだけでなく、母数も分布するという考え
パラメータ(母数)は1つに定まらない……
古典的にはパラーメータの真の値は1つ!」→必ずしも正しくない。
→パラーメータも確率的に分布する!
データからパラメータの分布をどのように推定する?→ベイズの定理で推定できる!
パラメータ推定「データを元に、パラメータの分布を求める」→f(θ(事後分布)|x(データ))
f(θ|x):事後分布、f(θ):事前分布、f(x|θ):尤度(ゆうど)、f(x):分母
事前分布、尤度の計算は容易。分母f(x)の計算は難しい
→このf(x)分母が計算機発展で可能になった!
尤度はモデルの当てはまりと関係ある。
f(X|θ)=f(x1,μ,σ)f(x2,μ,σ)............
事前分布は主観的な信念
体重はマイナスにはならなくて、1tは絶対超えないよね…
→無情報的事前分布を使うと、不公平のない事前分布を仮定できる
事後分布、
ベイズの定理
ベイズの定理は確率の積の法則
$$P(A|B) = \frac{P(B|A) P(A)}{P(B)}$$マルコフ連鎖モンテカルロ法(MCMC法)
同時事後分布に従う乱数を継続的にめっちゃ生成する。
最初の乱数は使わない←バーンイン、ウォームアップと呼ばれる。
第m期に発生した乱数をθ^(m)とする
それぞれの乱数列をチェーンという。
Stan→ハミルトニアンモンテカルロ法でパラメータを生成
ちゃんと乱数できてる?→グラフで可視化
マルコフ連鎖
1個前の状態だけによって次の状態が決まること
高校数学の漸化式みたいな。
モンテカルロ法
乱数とかシミュレーションを使って行う手法の総称
例:針を落として円の中に入ったもの、入らなかったものの関係から円周率を求める。
事後分布の要約
マルコフ連鎖モンテカルロ法で出したけど、要約したい。
正規分布→μで表せるみたいな感じで、事後分布にもそういうのがある。主に2種類
点推定
一つの値で分布を代表
平均値「EAP推定量」
区間推定
分布の主な範囲を区間で表す
%点「確信区間」
95%確信区間だと95%の確率で何g~何gにあるといえる。
片側区間推定
95%の確率で「高々」何gだ。(95%の確率で、何gより大きくならない)とか
生成量
マルコフ連鎖モンテカルロ法で発生されたパラメータの関数
g(θ^(t))で表される。
より強力な分析できる!
stanでは generated quantities で生成量を定義できる。
効果量
差を標準偏差で割った値。(正規化された差的な感じ)
$$ ζ_c=\frac{μ-c}{σ}$$cは基準値。標準偏差を分母に持つため、正規化され、いい感じの値になる。
効果量の点推定とか、区間推定ができる
将来のデータの%点
データを元に、次がどの様になるかを求める。
正規分布に従うと仮定→25%点はμ-0.674σになる。
25%点の事後分布は
将来のデータが区間[a,b]に観察される予測確率の事後分布
$$ g(μ^{(t)},σ^{(t)})=F(b|μ^{(t)},σ^{(t)})-F(a|μ^{(t)},σ^{(t)})$$25%点のEAP→4回に1回何g未満 とか
研究仮説が正しい確率
1、0で表す
これも生成量の一種。
例えば、μ^t >=10なら1,<10なら0 みたいな