モデル性能の評価

Rで学ぶ中級回帰分析

Richie Cotton

Data Evangelist at DataCamp

モデル性能の指標

  • 決定係数(R-squared): 回帰直線の当てはまりの良さ。

    • 大きいほど良い。
  • 残差標準誤差(RSE): 残差の典型的な大きさ。

    • 小さいほど良い。
Rで学ぶ中級回帰分析

決定係数の取得

library(dplyr)
library(broom)
mdl_mass_vs_length %>% 
  glance() %>% 
  pull(r.squared)
0.8226
mdl_mass_vs_species %>% 
  glance() %>% 
  pull(r.squared)
0.7163
mdl_mass_vs_both %>% 
  glance() %>% 
  pull(r.squared)
0.9694
Rで学ぶ中級回帰分析

調整済み決定係数

  • 説明変数が増えると $R^2$ は上がる。
  • 多すぎる説明変数は過学習を招く。
  • 調整済み決定係数は説明変数の多さに罰則を与える。
  • $\bar{R ^ 2} = 1 - (1 - R ^ 2) \frac{n_{obs} - 1}{n_{obs} - n_{var} - 1}$
  • 罰則は $R^2$ が小さい、または $n_{var}$ が $n_{obs}$ に対して大きいときに効く。
  • glance() では adj.r.squared 要素。
Rで学ぶ中級回帰分析

調整済み決定係数の取得

library(dplyr)
library(broom)
mdl_mass_vs_length %>% 
  glance() %>% 
  select(r.squared, adj.r.squared)
  r.squared adj.r.squared
      <dbl>         <dbl>
1    0.8226        0.8212
mdl_mass_vs_species %>% 
  glance() %>% 
  select(r.squared, adj.r.squared)
  r.squared adj.r.squared
      <dbl>         <dbl>
1    0.7163        0.7072
mdl_mass_vs_both %>% 
  glance() %>% 
  select(r.squared, adj.r.squared)
  r.squared adj.r.squared
      <dbl>         <dbl>
1    0.9694        0.9682
Rで学ぶ中級回帰分析

残差標準誤差の取得

library(dplyr)
library(broom)
mdl_mass_vs_length %>% 
  glance() %>% 
  pull(sigma)
152.1
mdl_mass_vs_species %>% 
  glance() %>% 
  pull(sigma)
313.6
mdl_mass_vs_both %>% 
  glance() %>% 
  pull(sigma)
103.4
Rで学ぶ中級回帰分析

Let's practice!

Rで学ぶ中級回帰分析

Preparing Video For Download...