모델링 전 입력 변수 변환

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...