모델 평가
여기서는 선형 회귀 모델을 평가하는 다양한 기준을 살펴본다. 이러한 기준에는 결정 계수, 조정 결정 계수, 설명 변수 평가, F 통계량 등이 있다.
선형 회귀 모델을 살펴보는 주요 함수는 summary( )다. summary( )는 일반 함수로, 주어진 인자에 대한 요약 정보를 보여준다. ‘4.5.1 데이터를 그룹으로 묶은 후 함수 호출하기’ 절에 보인 것처럼 데이터 프레임을 인자로 주면 데이터 프레임에 대한 요약 정보를 알려주며 기계 학습 모델이나 통계 모델을 인자로 주면 각 모델의 요약 정보를 알려준다.
다음은 차량의 주행 속도와 제동 거리 간의 선형 회귀 모델에 대한 요약 정보를 살펴본 예다.
> summary(m)
Call:
lm(formula = dist ~ speed, data = cars)
Residuals:
Min 1Q Median 3Q Max
-29.069 -9.525 -2.272 9.215 43.201
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -17.5791 6.7584 -2.601 0.0123 *
speed 3.9324 0.4155 9.464 1.49e-12 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 15.38 on 48 degrees of freedom
Multiple R-squared: 0.6511, Adjusted R-squared: 0.6438
F-statistic: 89.57 on 1 and 48 DF, p-value: 1.49e-12
위 실행 결과를 한 부분씩 나누어 살펴보자. summary( ) 함수의 가장 처음에는 어떤 포뮬러를 사용해 선형 회귀를 수행했는지 알려준다. 해당 부분은 다음과 같다.
Call: lm(formula = dist ~ speed, data = cars)
Residuals 부분에서는 실제 데이터에서 관측된 잔차를 보여준다.
Residuals: Min 1Q Median 3Q Max -29.069 -9.525 -2.272 9.215 43.201
Coefficients에서는 모델의 계수와 이 계수들의 통계적 유의성을 알려준다.
Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) -17.5791 6.7584 -2.601 0.0123 * speed 3.9324 0.4155 9.464 1.49e-12 *** --- Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
마지막으로 결정 계수R-squared와 수정 결정 계수Adjusted R-squred는 모델이 데이터의 분산을 얼마나 설명하는지를 알려주며, F 통계량F-statistics은 모델이 통계적으로 얼마나 의미가 있는지를 알려준다.
Residual standard error: 15.38 on 48 degrees of freedom Multiple R-squared: 0.6511, Adjusted R-squared: 0.6438 F-statistic: 89.57 on 1 and 48 DF, p-value: 1.49e-12