GAMモデルの信頼区間


14

mgcv::gamのヘルプページを読む:

信頼モデル/信頼区間は、適合モデルを使用して予測された数量に対して容易に利用可能です

ただし、実際に取得する方法はわかりません。とがあると思ったのですpredict.gamが、type=confidenceありlevelません。作成方法を教えてください。

回答:


33

通常の方法で:

p <- predict(mod, newdata, type = "link", se.fit = TRUE)

次に、の観測値の予測の標準誤差を持つpコンポーネントが含まれていることに注意してください。次に、必要なレベルに適切な値をSEに乗算してCIを形成できます。たとえば、およそ95%の信頼区間は次のように形成されます。$se.fitnewdata

upr <- p$fit + (2 * p$se.fit)
lwr <- p$fit - (2 * p$se.fit)

必要な間隔をまたはガウス分布から適切な値に置き換えます。t

type = "link"GAMを持っているか、AMだけを持っているかは言わないで使用します。GAMでは、線形予測子のスケールで信頼区間を形成し、リンク関数の逆関数を適用して応答のスケールに変換する必要があります。

upr <- mod$family$linkinv(upr)
lwr <- mod$family$linkinv(lwr)

ここで、これらは非常に近似した間隔であることに注意してください。さらに、これらの間隔は、ポイントごとの予測値である彼らは考慮に滑らかさの選択が行われたという事実を取ることはありません。

同時信頼区間は、パラメーターの事後分布からシミュレーションを介して計算できます。私のブログにはその例があります。

平滑化パラメーターを条件としない信頼区間(つまり、平滑化パラメーターの値がわからないが、代わりに推定することを考慮した信頼区間)が必要な場合はunconditional = TRUEpredict()呼び出しに追加します。

また、これを自分で行いたくない場合は、mgcvの新しいバージョンにplot.gam()は、平滑化のプロットとその信頼区間を作成するために使用されるすべてのデータを含むオブジェクトを返す関数があることに注意してください。plot.gam()obj から出力を保存するだけです

obj <- plot(model, ....)

次に、inspectを使用しますobj。これは、スムーズごとに1つのコンポーネントを含むリストです。呼び出しに追加seWithMean = TRUEして、plot()平滑化パラメーターを条件としない信頼区間を取得します。


同時CIとパラメトリックブートストラップを行うと、コードにもう少し関与するようになるため、ポイント単位の間隔だけで十分に対応できます。そうでない場合、それらのそれぞれについてさらに例を提供できます。
モニカの復活-G.シンプソン

答えは+1。実に印象的なブログ投稿です。グラフィックスのスキルを向上させるためにしばらく勉強します。
jbowman

その印象的なブログ投稿(ucfagls.wordpress.com/2011/06/12/…)にアクセスできる方法はありますか?現在、ブログにはログインが必要です。
ジェネラマ

@geneorama私は自分のブログをWordpressから遠ざけ、1年間すべてのURLの新しいURLへのリダイレクトに対して支払いましたが、最近失効させました。ごめんなさい 新しいリンクを編集しましたが、ログインする必要はありません。(ログインは同じ投稿の2つのコピーを避けるためであり、私はまだWordpressサイトからページを削除するのが面倒でした。)
モニカの回復-G.シンプソン

元のブログ投稿(このQ&Aの編集履歴を参照)には、同時間隔の作成方法に根本的な欠陥がありました。現在の(2016年12月現在)バージョンのAnswerのリンクは、同時間隔を正しく計算します。
復帰モニカ-G.シンプソン

5

それらを単にプロットしたい場合、plot.gam関数には、shade引数を使用して信頼区間をデフォルトとするシェーディングがあります。gam.vcomp間隔の取得も参照してください。


5

パッケージmgcv(gamよりも新しい)は、信頼できる間隔を容易にプロットします。このベイジアン手法は信頼区間とは異なりますが、数値シミュレーションが示しているように、結果はほぼ同じです(mgcvでリンクされたMarra and Woodの論文を参照)。


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