Gibbs SamplerのRao-Blackwellization


9

私は現在、マルコフ連鎖モンテカルロ法で確率ボラティリティモデルを推定しています。これにより、ギブスとメトロポリスのサンプリング方法を実装しています。

ランダムなサンプルではなく、事後分布の平均を取ると仮定すると、これは一般にRao-Blackwellizationと呼ばれるものですか?

全体として、これは事後分布の平均に対する平均をパラメーター推定値として取得することになります。

回答:


10

ランダムなサンプルではなく、事後分布の平均を取ると仮定すると、これは一般にRao-Blackwellizationと呼ばれるものですか?

私は確率論的ボラティリティモデルについてはあまり詳しくありませんが、ほとんどの設定で、後部から描画するためにギブスまたはMHアルゴリズムを選択する理由は、後部がわからないためです。多くの場合、事後平均を推定する必要があります。事後平均がわからないため、事後からサンプルを抽出し、サンプル平均を使用して推定します。したがって、事後分布から平均をどのように取ることができるかわかりません。

代わりに、Rao-Blackwellized推定量は完全な条件付きの平均の知識に依存します。それでもサンプリングは必要です。以下で詳しく説明します。

事後分布を2つの変数)で定義し、事後平均を推定したいとします。これで、ギブスサンプラーが利用可能であった場合、それを実行するか、MHアルゴリズムを実行して後方からサンプリングできます。E [ θ | データ]θ=(μ,ϕE[θdata]

ギブスサンプラーを実行できる場合は、が閉じた形でわかり、この分布の平均がわかります。その意味をます。はとデータの関数であることに注意してください。φ * φ * μf(ϕμ,data)ϕϕμ

これは、後部からを積分できることも意味するため、周辺後部は(これは完全にはわかっていませんが、定数まではわかっています)。ここで、が不変分布であるようなマルコフチェーンを実行し、この周辺事後からサンプルを取得します。質問はμ F μ | D A T A F μ | D A T A ϕμf(μdata)f(μdata)

周辺事後からこれらのサンプルのみを使用して事後平均をどのように推定できますか?μϕμ

これは、Rao-Blackwellizationを介して行われます。

E[ϕdata]=ϕf(μ,ϕdata)dμdϕ=ϕf(ϕμ,data)f(μdata)dμdϕ=ϕf(μdata)dμ.

したがって、周辺事後からサンプルしたとします。次に、 μ φ = 1X1,X2,XNμ

ϕ^=1Ni=1Nϕ(Xi),

のRao-Blackwellized推定量と呼ばれます。同じことは、関節辺縁部からシミュレーションすることによっても行うことができます。ϕ

(完全にデモ用)。

サンプリングしたい後方未知結合があるとします。データはいくつかのであり、次の完全な条件式 のy μ | φ Y N φ 2 + 2 Y Y 2θ=(μ,ϕ)y

μϕ,yN(ϕ2+2y,y2)
ϕμ,yGamma(2μ+y,y+1)

これらの条件を使用してギブスサンプラーを実行し、結合後部からサンプルを取得します。これらのサンプルをます。あなたはのサンプル平均を見つけることができます秒、それはのための事後平均のための通常のモンテカルロ推定量になり ..f(μ,ϕy)(μ1,ϕ1),(μ2,ϕ2),,(μN,ϕN)ϕϕ

または、ガンマ分布

E[ϕ|μ,y]=2μ+yy+1=ϕ.

ここではあなたに与えられたデータであり、したがって知られています。その場合、Rao Blackwellized推定量はy

ϕ^=1Ni=1N2μi+yy+1.

事後平均の推定量がサンプルを使用せず、サンプルのみを使用することに注意してください。いずれにしても、ご覧のとおり、マルコフ連鎖から取得したサンプルをまだ使用しています。これは確定的なプロセスではありません。ϕϕμ


したがって、パラメーターの事後分布がわかっていると仮定すると(私の知る限り、ギブスサンプリングを適用すると、偶然にも当てはまります)、ランダムサンプルではなく分布の平均を取ると、Rao-Blackwellized推定器になりますか?私はあなたの答えを正しく理解したと思います。本当にありがとうございました!
mscnvrsy

不正解です。ギブスサンプリングでは、パラメーターの事後分布はわかりませんが、各パラメーターの完全な条件付き事後分布はわかります。2つの間に大きな違いがあります。上記では、事後はであり、これは不明です。ギブスサンプラーが機能するには、と両方を知っている必要があります。。また、2番目の理解も間違っています。周辺後部からサンプルを取得し、それらのサンプルを使用してサンプル平均を計算して、RB推定量を見つける必要があります。f(μ,ϕdata)f(μϕ,data)f(ϕμ,data)μϕ
Greenparker

@mscnvrsy助けるための例を追加しました
Greenparker '18

わあ、これを明確にしてくれてありがとう。したがって、完全な条件付き分布を知っていると仮定すると、条件付き分布の理論的平均を使用して、これらの理論的平均(Eφ| y、yなど)の平均を計算して、RB推定量を取得できますか?これにより、パラメーターの推定値の分散が最小限になりますか?
mscnvrsy 2016

独立したサンプルを取得している場合、はい、推定量の分散を最小限に抑えますが、マルコフチェーンを扱っているため、RBは必ずしも分散を減少させないことが一般的に知られており、分散が増加する場合もあります。チャーリー・ガイヤーによるこの論文は、この点についていくつかの例を示しました。
Greenparker

9

次に、ギブスサンプラーを使用して、辺縁後部からの(たとえば)サンプルの効率を向上させることができます。これをと呼びます。注 したがって、限界密度いくつかの値での条件付き密度の期待値である所与時点で。π2(θ2|y)

π2(θ2|y)=π(θ1,θ2|y)dθ1=π2|1(θ2|θ1,y)π1(θ1|y)dθ1=E(π2|1(θ2|θ1,y))
θ2θ2θ2θ1θ2

これは、条件分解 分散がある分散分解補題ために興味深いものです。。また、です。特に、 ギブスサンプラーは実現ます。その結果、を 推定した方がよい は、点にを使用する従来のカーネル密度推定よりも

Var(X)=E[Var(X|Y)]+Var[E(X|Y)],
Var(X|Y)E{(XE(X|Y))2|Y}Var(E(X|Y))=E[(E(X|Y)E(X))2]
Var(X)Var[E(X|Y)].
(θ1i,θ2i)π2(θ2|y)
π^2(θ2|y)=1Mi=1Mπ2|1(θ2|θ1i,y)
θ2iθ2 -条件付き分布がわかっている場合(もちろん、そもそもギブスサンプリングを使用する理由です)。

とが、平均ゼロ、分散1、相関 2変量正規分布であると仮定します。つまり、 明らかに、わずかに、ですが、これを知らないふりをしてみましょう。が与えられたの条件付き分布がことはよく知られています。XYρ

π(x,y)exp{12(1ρ2)(x2+y22ρxy)}
YN(0,1)YX=xN(ρx,1ρ2)

いくつかの所与の実現の密度の"ラオ-ブラックウェル"推定でその後で として、カーネル密度の推定値とRBアプローチを比較してみましょうM(X,Y)Yy

π^Y(y)=1Mi=1M11ρ22πexp{12(1ρ2)(yρxi)2}
library(mvtnorm)

rho <- 0.5
R <- 50
xy <- rmvnorm(n=R, mean=c(0,0), sigma= matrix(c(1,rho,rho,1), ncol=2))
x <- xy[,1]
y <- xy[,2]

kernel_density <- density(y, kernel = "gaussian")
plot(kernel_density,col = "blue",lty=2,main="Rao-Blackwell estimates from conditional normals",ylim=c(0,0.4))
legend(1.5,.37,c("Kernel","N(0,1)","Rao-Blackwell"),lty=c(2,1,3),col=c("blue","black","red"))
g <- seq(-3.5,3.5,length=100)
lines(g,dnorm(g),lty=1) # here's what we pretend not to know

density_RB <- rep(0,100)
for(i in 1:100) {density_RB[i] <- mean(dnorm(g[i], rho*x, sd = sqrt(1-rho^2)))}
lines(g,density_RB,col = "red",lty=3) 

RBの見積もりは、条件付きの情報を利用するため、はるかに優れていることがわかります。

ここに画像の説明を入力してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.