評估模型效能

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 的迴歸分析中級

一起來練習吧!

R 的迴歸分析中級

Preparing Video For Download...