Перетворення вхідних даних перед моделюванням

Кероване навчання в R: регресія

Nina Zumel and John Mount

Win-Vector LLC

Навіщо перетворювати вхідні змінні

  • Галузеві знання/синтетичні змінні
    • $Intelligence \sim \frac{mass.brain}{mass.body^{2/3}}$
Кероване навчання в R: регресія

Навіщо перетворювати вхідні змінні

  • Галузеві знання/синтетичні змінні
    • $Intelligence \sim \frac{mass.brain}{mass.body^{2/3}}$
  • Прагматичні причини
    • Лог-перетворення для зменшення динамічного діапазону
    • Лог-перетворення, якщо суттєві зміни змінної є мультиплікативними
Кероване навчання в R: регресія

Навіщо перетворювати вхідні змінні

  • Галузеві знання/синтетичні змінні
    • $Intelligence \sim \frac{mass.brain}{mass.body^{2/3}}$
  • Прагматичні причини
    • Лог-перетворення для зменшення динамічного діапазону
    • Лог-перетворення, якщо суттєві зміни змінної є мультиплікативними
    • $y$ приблизно лінійний за $f(x)$, а не за $x$
Кероване навчання в R: регресія

Приклад: прогнозування тривожності

Кероване навчання в R: регресія

Перетворення змінної hassles

Кероване навчання в R: регресія

Можливі варіанти апроксимації

Яка краща?

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

I(): трактувати вираз буквально (не як взаємодію)

Кероване навчання в R: регресія

Порівняння різних моделей

Лінійна, квадратична та кубічна моделі

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: регресія

Порівняння різних моделей

Оцініть моделі крос-валідацією

Model RMSE
Linear ($hassles$) 7.69
Quadratic ($hassles^2$) 6.89
Cubic ($hassles^3$) 6.70
Кероване навчання в R: регресія

Давайте потренуємось!

Кероване навчання в R: регресія

Preparing Video For Download...