ガムモデルの結果の解釈


8

mgcvR のパッケージを使用していくつかの一般化された加法モデルをフィッティングしており、2つのモデル間でテストしたいと考えています。用語を削除できるかどうか。しかし、(私が知る限り)矛盾する結果が出ています。

追加されm1たの滑らかな項を持つモデルは、、AIC、説明された逸脱度、およびF検定を使用してモデルを比較するときにx、より良い適合を与えるように見えます。ただし、平滑化項の重要性は重要ではありません(モデルにスプラインではなく線形共変量として追加した場合も同様です)。Radj2

スムーズタームテストの私の解釈は正しいですか?私がヘルプページを理解できたのは、テストは概算であったということですが、ここにはかなり大きな違いがあります。

モデルの出力

m1 <- gam(out ~ s(x) + s(y) + s(z), data=dat)
> summary(m1)
# 
# Family: gaussian 
# Link function: identity 
# 
# Formula:
# out ~ s(x) + s(y) + s(z)
# 
# Parametric coefficients:
#               Estimate Std. Error t value Pr(>|t|)
# (Intercept) -7.502e-16  1.209e-01       0        1
# 
# Approximate significance of smooth terms:
#        edf Ref.df     F  p-value    
# s(x) 4.005  4.716 1.810    0.136    
# s(y) 8.799  8.951 4.032 4.01e-05 ***
# s(z) 7.612  8.526 5.649 4.83e-07 ***
# ---
# Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
# 
# R-sq.(adj) =  0.213   Deviance explained = 24.8%
# GCV = 6.9741  Scale est. = 6.6459    n = 455

> AIC(m1)
#[1] 2175.898

> m2 <- gam(out ~ s(y) + s(z), data=dat)
> summary(m2)
# 
# Family: gaussian 
# Link function: identity 
# 
# Formula:
# out ~ s(y) + s(z)
# 
# Parametric coefficients:
#              Estimate Std. Error t value Pr(>|t|)
# (Intercept) 1.705e-15  1.228e-01       0        1
# 
# Approximate significance of smooth terms:
#        edf Ref.df     F  p-value    
# s(y) 8.726  8.968 5.137 6.78e-07 ***
# s(z) 8.110  8.793 5.827 1.55e-07 ***
# ---
# Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
# 
# R-sq.(adj) =  0.187   Deviance explained = 21.7%
# GCV =  7.144  Scale est. = 6.8639    n = 455

> AIC(m2)
#[1] 2187.168

> anova(m1, m2, test="F")
# Analysis of Deviance Table
# 
# Model 1: out ~ s(x) + s(y) + s(z)
# Model 2: out ~ s(y) + s(z)
#   Resid. Df Resid. Dev      Df Deviance      F    Pr(>F)    
# 1    433.58     2881.6                                      
# 2    437.16     3000.7 -3.5791   -119.1 5.0073 0.0009864 ***

編集:コメントからモデルを追加

> summary(m3 <- gam(out ~ s(x) + s(y) + s(z), data=dat, select=TRUE))

#Family: gaussian 
#Link function: identity 

#Formula:
#out ~ s(x) + s(y) + s(z)

#Parametric coefficients:
#              Estimate Std. Error t value Pr(>|t|)
#(Intercept) -1.588e-14  1.209e-01       0        1

#Approximate significance of smooth terms:
#       edf Ref.df     F  p-value    
#s(x) 4.424      9 1.750  0.00161 ** 
#s(y) 8.260      9 3.623 5.56e-06 ***
#s(z) 7.150      9 5.329 4.19e-09 ***
#---
#Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

#R-sq.(adj) =  0.212   Deviance explained = 24.7%
#GCV = 6.9694  Scale est. = 6.6502    n = 455

mgcv::gamペナルティ付き回帰を行います。設定するselect = TRUEと、フィッティング中にモデルから項を削除できます。ただし、目標が予測の場合は、独立したトレーニングとテストのデータセット、または少なくとも相互検証を使用することをお勧めします。
Roland、

ローランドに感謝します。を追加しましたがselect、これをどのように解釈するかはさらにわかりません。これにより、r2、aicなどの点で近似統計がほぼ同じ(やや悪い)モデルになりますが、s(x)項のp値ははるかに低くなりました。したがって、パラメータが縮小されていない場合は、何が変更されているのでしょうか。
user2957945 2016

@ user2957945質問を編集して、使用したモデルからの出力を含めることができますselect = TRUEか?
Gavin Simpson

@GavinSimpson様こんにちは、モデルの出力を追加しました。ありがとう
user2957945

回答:


2

tl; dr:AICは予測的ですが、p値は推論用です。また、あなたの有意性のテストは単に力を欠いているかもしれません。

s(x)=0

mgcv

x


ありがとう。実は私は誤解していた。私は何をテストしなければならないこととモデルs(x)用語し、次いでモデルxというよりない(x。滑らかな曲線がなく完全に省略より線形()と比較して必要とされているかどうかをテストへの円滑な用語(または他の)デフォルトの意義
user2957945 16

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