선형 회귀 분석(Linear Regression Analysis) (2)
회귀 모형의 적합도 평가
1) 변동성
종속변수 전체 변동성(분산) = 회귀식이 설명할 수 있는 변동성 + 회귀식이 설명할 수 없는 변동성
$ \sum_{i = 1}^{n}(y_{i} - \bar{y})^{2} = \sum_{i = 1}^{n}(\hat{y_{i}} - \bar{y})^{2} + \sum_{i = 1}^{n}\hat{\epsilon_{i}}^{2} $
(1) SST(Total sum of squares about mean) = $ \sum_{i = 1}^{n}(y_{i} - \bar{y})^{2} $
- 종속변수 전체 변동성(분산)
(2) SSR(Regression sum of squares = $ \sum_{i = 1}^{n}(\hat{y_{i}} - \bar{y})^{2} $
- 회귀식이 설명할 수 있는 변동성
SSE(Residual(Error) sum of squares) = $ \sum_{i = 1}^{n}\hat{\epsilon_{i}}^{2} = \sum_{i = 1}^{n}(y - \hat{y_{i}})^{2}$
- 회귀식이 설명할 수 없는 변동성
-> SST = SSR - SSE
2) 회귀 모형의 적합도(결정계수, $R^{2} $)
$ R^{2} = 1 - \frac{SSE}{SST} = \frac{SSR}{SST} , (0 \leq R_{2} \leq 1) $
- 전체 변동성 중 회귀식이 설명할 수 있는 변동성의 비율
- 즉, 종속변수 y의 전체 변동 중에서 독립변수 x가 차지하는 비율
- $ R_{2} = 1 $은 회귀직선으로 종속변수의 총변동이 완전히 설명됨
- $ R_{2} = 0 $은 추정된 회귀직선은 x와 y의 관계를 전혀 설명하지 못함
- $ R_{2} $가 높게 나왔다면 독립변수와 종속변수 사이에 강한 선형관계를 의미
3) 수정된 결정계수($R_{adj}^{2} $)
$ R_{adj}^{2} = 1 - \frac{n-1}{n-(p+1)}\frac{SSE}{SST} \leq 1 - \frac{SSE}{SST} = R^{2} $
- $ n $ : 개체수, $ p $ : 변수
- $R^{2} $는 유의하지 않은 변수가 증가되더라도 항상 증가
- $R_{adj}^{2} $는 변수를 증가시킬때 생기는 패널티 역할을 하는 계수를 곱해줌으로써 보정
- 유의하지 않은 변수가 추가될 경우에도 $ R_{adj}^{2} $는 증가하지 않음
4) 모형의 검토
- 추정된 모형으로부터 독립변수와 종속변수 간 관계가 선형인지 확인
- 추정된 모형으로부터 오차항들이 서로 독립인지 확인
- 추정된 모형으로부터 오차항의 평균이 0이면 분산이 일정한 정규분포를 따르는지 확인
5) 1-of-c(C-1) encoding
- 데이터 전처리 과정에서 명목형 데이터에 대한 처리
- Nominal data가 Ordinal data처럼 처리될 경우 선형회귀분석에서는 다중공선성 문제를 야기시킬 수 있음
- 데이터의 값이 수치만 다르되, 어떠한 차이도 가지고 있지 않아야함
ex)
dog : [1.0, 0.0, 0.0]
cat : [0.0, 1.0, 0.0]
monkey : [0.0, 0.0, 1.0]
6) 데이터 구분
- 가용한 모든 데이터를 모두 학습에 사용하게 되면 과적합(Overfitting)의 위험이 있음
- 보통 70%를 학습에, 30%를 검증에 사용
7) 선형회귀분석 결과 분석
(1) 회귀 계수 (Coefficient)
- 각 변수에 대응하는 $ \beta $값
- 양수이면 양의 상관관계, 음수이면 음의 상관관계
(2) 유의확률(p-value)
- 해당 변수가 통계적으로 유의한지 알려주는 지표
- 0에 가까울수록 유의, 1에 가까울수록 유의하지 않음
- 특정 유의수준($ \alpha $, 주로 0.05)를 설정, 유의수준보다 낮은 변수만을 이용해 다시 모델링할 수 있음