いつでもAICを使えばよいというものではない

伊東宏樹

2022-06-07

生態学の統計解析で
わりとあるパターン

  1. AIC(赤池情報量基準)でモデル選択
  2. 「ベストモデル」で、係数の有意性検定

しかし

そもそも

「AICは正しいモデルを選ぶためのものではない」

粕谷 (2015)

AICは予測性能が高いモデルを選ぶ

  • 「AICの理論は平均的な予測がよいモデルを相対的に選ぶもの」
  • 「AIC最小のモデルが真のモデルとどれだけ確実に一致するか、あるいは他のモデルが否定されるかについて述べているわけではない」

粕谷 (2015)

モデルの当てはまりの良さでもない

「モデルの相対的な当てはまりの良さ」を「AICにより比較した」という論文もあったりするが…

  • 「AICは統計モデルのあてはまりの良さ (goodness of fit) ではなく、予測の良さ (goodness of prediction) を重視するモデル選択基準です」(久保 2012)
  • 「モデルの当てはまりと予測性能は違う」(伊庭 2017)

モデル選択後に検定?

  • 有意性検定: 多くのばあい、係数が0であるかないかを検定
  • モデル選択で はずれた説明変数は、係数=0としていることと等価
    • 残った変数で、あらためて係数=0か検定する意義とは?

回帰分析の目的

  1. 目的変数と説明変数の関係の記述
  2. 説明変数による目的変数の予測
  3. 目的変数に対する説明変数の介入効果の推定

竹内ほか (2022)

予測と因果はちがう

「予測を目的とした回帰モデルの偏回帰係数に因果関係的な解釈を持ち込もうとする(期待する)のはもちろんのこと,個々の偏回帰係数が生物学的・生態学的にどのような意味を持つのかを考察することも,本来の解析目的からは逸脱した,明確な理論的根拠に欠ける行為である」

竹内ほか (2022)

モデル選択後の検定・推定

  • AICに限らず、選択されたモデルという条件付きでは
    • 推定値の分布がゆがむことがある
    • 帰無仮説が棄却される確率が 有意水準どおりにならないことがある
  • 正しく推定できる手法は、統計学者が研究している (Kuchibhotla et al. 2022, Zhang et al. 2022, etc.)

実例1

  • サンプルサイズ: 1000
  • 説明変数: \(x_1, x_2, x_3 \sim \mathrm{Normal}(0, 1)\)
  • 目的変数: \(y \sim \mathrm{Normal}(0, 3^2)\)

目的変数は説明変数とは無関係

※この例は、Kuchibhotla et al. (2022) を参考にしました。

モデル

  1. y ~ 1 ←「正しい」モデル
  2. y ~ x1
  3. y ~ x2
  4. y ~ x3
  5. y ~ x1 + x2
  6. y ~ x1 + x3
  7. y ~ x2 + x3
  8. y ~ x1 + x2 + x3
  • AICによるモデル選択を 10^4 回くりかえし
  • 選択されたモデルの頻度分布を求める

AIC

各モデル(1〜8)が選択された割合

##      1      2      3      4 
## 0.5864 0.1167 0.1151 0.1142
##      5      6      7      8 
## 0.0223 0.0206 0.0209 0.0038

「正しい」モデル(model1)が選ばれた割合はおよそ59%

x1の係数の頻度分布

x1を含むモデルが選択されたばあい

x1の係数についてのp値の頻度分布

x1を含むモデルが選択されたばあい

モデル選択をしないとき

フルモデルでの、x1の係数についてのp値

BIC

各モデル(1〜8)が選択された割合

##      1      2      3      4 
## 0.9726 0.0093 0.0082 0.0096
##     5     6     7     8 
## 0e+00 0e+00 3e-04 0e+00

「正しい」モデル(model1)が選ばれた割合はおよそ97%

BICは、候補に「正しい」モデル(データを生成したモデル)を含んでいて、 サンプルサイズがじゅうぶんに大きければ、「正しい」モデルを選択するが…

実例2

  • サンプルサイズ: 50  (小サンプル)
  • 説明変数: \(x_1, x_2\)
  • 目的変数: \(y\)

以下のような式でデータが生成される。

\[ \begin{pmatrix}x_1 \\ x_2 \end{pmatrix} \sim \mathrm{MultiNormal}\left( \begin{pmatrix} 0 \\ 0 \end{pmatrix}, \begin{pmatrix} 1 & 1 \\ 1 & 9 \end{pmatrix} \right) \]

\[ y \sim \mathrm{Normal}(x_1 + 0.3 x_2, 4^2) \]

※この例は、大久保 (2022) を参考にしました。

データの例

理論的なVIF = 1.125

モデル

  1. y ~ x1
  2. y ~ x1 + x2 ←「正しい」モデル
  • AICによるモデル選択を 10^4 回くりかえし
  • 選択されたモデルの頻度分布を求める

AIC

Model 2 (「正しい」モデル) が選ばれた割合

## [1] 0.5355

およそ54%

AICc

Model 2 (「正しい」モデル) が選ばれた割合

## [1] 0.4869

およそ49%

BIC

Model 2 (「正しい」モデル) が選ばれた割合

## [1] 0.321

およそ32%

AICでmodel1が選択されたばあい

x1の係数(真値=1): 大きいほうにかたよる。

model2が選択されたばあい

x1の係数(真値=1): 小さいほうにかたよる。

x2の係数(真値=0.3): 大きいほうにかたよる。

まとめ

  • AICは予測を最適化するもの
  • モデル選択後に係数の検定をするのはアブない
  • 説明・予測・介入(因果)のなにを問題としているのか意識するようにする

参考文献

ファイルなど

今回のスライドは

https://ito4303.github.io/AIC_PMSE.html

にあります。

例題のRコード(と、スライド作成のコード)は

https://github.com/ito4303/AIC_PMSE

においてあります。