ベイジアンモデル平均化(BMA)の利点を示す簡単な例


12

私はベイジアンモデルアベレージング(BMA)アプローチを研究に組み込んでおり、同僚に私の仕事についてのプレゼンテーションをすぐに行います。しかし、BMAは私の分野ではそれほど有名ではありません。そのため、すべての理論を提示し、実際に問題に適用する前に、BMAが機能する理由について、簡単でありながら有益な例を紹介します。

2つのモデルから選択できる簡単な例を考えていましたが、真のデータ生成モデル(DGM)はその中間にあり、証拠はそれらのいずれかを実際に支持していません。そのため、いずれかを選択して続行すると、モデルの不確実性を無視してエラーが発生しますが、BMAでは、真のモデルはモデルセットの一部ではありませんが、少なくとも対象のパラメーターの正しい事後密度が得られます。たとえば、毎日2つの天気予報(AとB)があり、1つは天気を最もよく予測したいので、古典的な統計では、最初に2つの天気予報を見つけようとしますが、真実がその中間にある場合はどうでしょうか。 (つまり、Aが正しいこともあれば、Bが正しいこともあります)。しかし、私はそれを形式化することができませんでした。そのようなものですが、私はアイデアに非常にオープンです。この質問が具体的であることを願っています!

文献では、これまでに読んだものから良い例を見つけていません。

  • Kruschke(2011)はベイジアン統計の優れた入門書ですが、BMAにはあまり焦点を当てていません。彼が第4章で持っているコイントスの例は、ベイジアン統計の導入には最適ですが、他の研究者にBMAを使用するように説得しません。(「なぜ私は3つのモデルを持っているのですか、1つはコインが公正で、2つはどちらかの方向に偏っているということですか?」)
  • 私が読んだ他のすべてのもの(Koop 2003Koop / Poirier / Tobias(2007)Hoeting et al。(1999)、その他多数)は素晴らしい参考文献ですが、簡単なおもちゃの例は見つかりませんでした。

しかし、多分私はここで良い情報源を逃しただけです。

それで、誰かがBMAを導入するために使用する良い例がありますか?多分それは非常に有益だと思うので、可能性と事後者を示すことによってさえ多分。


短い更新:セクション2でFreedmanのパラドックスを参照するこのプレゼンテーションに出くわしました。39のランダム共変量がシミュレーションされ、最良のモデルを探すだけで最終的に有意な共変量が見つかる短い例があります。モデルの平均化は、明らかにその問題の解決策です。率直に言って、そこにある数値がどのように導き出されるのかわからないので、ここではコード付きのソリューションを投稿していません。
Christoph_J

(続く)彼らは平均して何を正確にしていますか?最高のパラメータ?すべてのパラメーター(この特定の例でのみ意味があると思います)。それでも、チャートとフリードマンのパラドックスへのヒントを組み合わせると、非常に役立ちます。多分それはいくつかを助けます。
Christoph_J

回答:


8

Xy

これに使用したRコードを以下に示します。それがあなたに刺激を与えることを願っています!

# The sample size
n <- 100

# The 'true' coefficient vector
Beta <- cbind(c(-1.5, 0.45, -3))

# Generate the explanatory variables which have an effect on the outcome
set.seed(1)
X <- cbind(rnorm(n, 0, 1), rnorm(n, 4, 2), rnorm(n, 0.5, 1))

# Convert this into probabilities
prob <- 1/(1+exp(-X %*% Beta))

# Generate some uniform numbers. If the elements are smaller than the corresponding elements in the prob vector, then return 1.
set.seed(2)
runis <- runif(n, 0, 1)
y <- ifelse(runis < prob, 1, 0)

# Add the nonsense variables
X <- cbind(X, rpois(n, 3))        # Redundant variable 1 (x4)
X <- cbind(X, rexp(n, 10))        # Redundant variable 2 (x5)
X <- cbind(X, rbeta(n, 3, 10))    # Redundant variable 3 (x6)
X <- cbind(X, rbinom(n, 10, 0.5)) # Redundant variable 4 (x7)
X <- cbind(X, rpois(n, 40))       # Redundant variable 5 (x8)
X <- cbind(X, rgamma(n, 10, 20))  # Redundant variable 6 (x9)
X <- cbind(X, runif(n, 0, 1))     # Redundant variable 7 (x10)


# The BMA
library(BMA)
model <- bic.glm(X, y,  glm.family="binomial", factor.type=FALSE, thresProbne0 = 5, strict = FALSE)

# The frequentist model
model2 <- glm(y~X, family = "binomial")

old.par <- par()
par(mar=c(3,2,3,1.5))
plot(model, mfrow=c(2,5))
par(old.par)

summary(model)
summary(model2)

2
これは良い例なので、+ 1してください。ただし、すでに指摘したように、BMAを使用するように他の人を説得することにはあまり役立ちません。実際、私はそれを実行し、BMAが古典的なアプローチよりも優れていることを納得させるのに少し時間がかかりました:最良のモデルは真のモデルではなく(最良のモデルはx2とx3のみを含みます)、model2のパラメーターはありません少なくとも関連するパラメータについては、それだけオフです。ただし、そこには存在してはならない重要なパラメーターx5とx6がいくつかあり、BMAはこれが重要ではないことを伝えるのに優れているため、これはBMAにとってプラスです。
Christoph_J

2

このための優れたリソースは次のとおりです:
Stefan Zeugner(2012)によるBMSによるベイジアンモデル平均

RパッケージBMSを使用しています。詳細については、http//bms.zeugner.eu/を参照してください。

パッケージを使用して実際の例を再現するための2つの実践的なチュートリアルは、次の場所にあります。

ベイジアン法のより一般的な動機付けと現在の紹介は、次の論文です:

時が来た:ジョンK.クルシュケ、ハーマンアギニス、ハリージュによる組織科学におけるデータ分析のためのベイズ法


リンクをありがとう、しかし彼らは私が求めているものではありません。私は実際に以前にパッケージを知っていて使用しました(それは素晴らしいです)、そしてそれらのドキュメントが本当に有益であることには同意します。しかし、繰り返しになりますが、BMAを使用する理由を(できれば5分未満で)だれかに納得させることは著者の意図ではありません。つまり、attitude例から始めて、最初のリンクをスクロールしても、「Geez、私はBMAを使ってよかった!」と叫ぶテーブルや図は実際にはありません。
Christoph_J

続く:明確にするために、これはもちろん、決して彼らの文書に対する批判ではありません。そもそも彼らの意図ではありません。たぶん私が求めている例を挙げましょう。線形回帰における異常値の問題を説明したいとします。あなたはおそらくここにあるチャートのような考えから始めるでしょう。もちろん、実際のデータの問題はそれほど簡単ではありません。外れ値などをどのように定義するかは難しいでしょう。しかし、このようなチャートを使用すると、誰もが何が起こっているかを知っています。
Christoph_J

3
@Christoph_J:このペーパーを知っていますか:indiana.edu/~kruschke/articles/KruschkeAJ2012.pdf-それはBMAについてはそれほどではありませんが、最初にベイジアンメソッドを使用するように誰かを説得することについてです-おそらくこれは役に立つものですあなた:-)
vonjd 2013

1
私はそれを知りませんでした、そしてそれはベイズの方法への本当に良い入門論文なので、リンクに+1します。ありがとう。
Christoph_J

@Christoph_J:私はそれに応じて投稿を編集しました:回答の+1は機能しませんでした。それでもまだ0(?!?)です。もう一度やり直してください-ありがとうございました:-)
vonjd
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.