モデリング前の入力変換

R による Supervised Learning:回帰

Nina Zumel and John Mount

Win-Vector LLC

入力変数を変換する理由

  • ドメイン知識/合成変数
    • $Intelligence \sim \frac{mass.brain}{mass.body^{2/3}}$
R による Supervised Learning:回帰

入力変数を変換する理由

  • ドメイン知識/合成変数
    • $Intelligence \sim \frac{mass.brain}{mass.body^{2/3}}$
  • 実用的な理由
    • 動的範囲を狭めるための対数変換
    • 変数の意味ある変化が乗法的なため対数変換
R による Supervised Learning:回帰

入力変数を変換する理由

  • ドメイン知識/合成変数
    • $Intelligence \sim \frac{mass.brain}{mass.body^{2/3}}$
  • 実用的な理由
    • 動的範囲を狭めるための対数変換
    • 変数の意味ある変化が乗法的なため対数変換
    • $y$ が $x$ でなく $f(x)$ に対してほぼ線形
R による Supervised Learning:回帰

例:不安の予測

R による Supervised Learning:回帰

hassles変数の変換

R による Supervised Learning:回帰

様々なあてはめ候補

最適な変換は?

  • anx ~ I(hassles^2)
  • anx ~ I(hassles^3)
  • anx ~ I(hassles^2) + I(hassles^3)
  • anx ~ exp(hassles)
  • ...

I(): 式をそのまま解釈(交互作用としてではなく)

R による Supervised Learning:回帰

モデルの比較

線形・二次・三次モデル

mod_lin <- lm(anx ~ hassles, hassleframe)
summary(mod_lin)$r.squared
0.5334847
mod_quad <- lm(anx ~ I(hassles^2), hassleframe)
summary(mod_quad)$r.squared
0.6241029
mod_tritic <- lm(anx ~ I(hassles^3), hassleframe)
summary(mod_tritic)$r.squared
0.6474421
R による Supervised Learning:回帰

モデルの比較

交差検証によるモデル評価

モデル RMSE
線形 ($hassles$) 7.69
二次 ($hassles^2$) 6.89
三次 ($hassles^3$) 6.70
R による Supervised Learning:回帰

練習しましょう!

R による Supervised Learning:回帰

Preparing Video For Download...