Loading [MathJax]/jax/output/CommonHTML/jax.js
본문 바로가기

통계/ISLR

Chapter 3. 선형회귀 (Linear Regression) - 1) 단순선형회귀

** 단순선형회귀 파트에서는 ISLR 교재 내용을 기반으로 아래 블로그 참고하여 내용을 정리했습니다.

개념, 이론  https://m.blog.naver.com/jhkang8420/221291682151

수학적 증명 https://rpubs.com/Jay2548/519965

3.1  단순선형회귀

단순선형회귀: 하나의 설명변수 X에 기초하여 양적 반응변수 Y를 예측하는 것

가장 단순한 지도학습법으로, 최초에 X, Y가 선형관계에 있다고 가정하여 모회귀식을 세운다. (1단계. 이론의 가정)

 

   Y=β0+β1Xi

 

그러나 실제로 β0β1은 알려져있지 않다.

따라서 우리는, 주어진 데이터(관측치, 표본)를 이용해 계수를 추정하여 회귀식을 도출해내야 한다. (2단계. 회귀직선 도출: 최소제곱법)

 

  ˆy=ˆβ0+ˆβ1xi

 

도출한 모형이 실제로 유의미한 선형관계에 있는지 가설 검정을 진행한 뒤 (3단계. 모형의 통계적 유의성: 계수의 가설검정)

 

이후 회귀 모델의 정확도를 평가하여 모형의 설명력을 확인하고 (4단계. 모델의 정확도 평가)

이를 활용하여 예측을 진행할 수 있다. (5단계. 예측)

 

이와 같이 단순회귀분석은 크게 다섯 가지 단계를 거쳐 진행된다.

 

  1단계. 이론의 가정 (CLRM 이론의 7가지 가정)

  2단계. 회귀직선 도출: 최소제곱법

  3단계. 모형의 통계적 유의성: 계수의 가설검정

  4단계. 모델의 정확도 평가

  5단계. 예측

 

 

 

1단계. CLRM 이론의 7가지 가정

Classic Linear Regression Model은 총 7가지 가정을 전제로 한다.

 

A1. 두 변수 간 선형관계가 있어야 한다.

  이론적으로 어느정도 선형관계가 있다는 전제 하에서 분석을 시작할 수 있다.

A2. 표본 추출이 무작위하게 이루어져야한다.

A3. X의 값이 두 개 이상이어야 한다.

 - 직관적 접근: 직선은 최소 2개 이상의 점이 있어야 그려질 수 있으므로

 - 수학적 접근: 계수 ˆβ의 값은 (x,y의 공분산) ÷ (x의 분산) *Sxy/S2x 이다.

                       즉, x의 값이 1개이면 x의 분산은 0이 되므로 계수 ˆβ 값을 정의할 수 없다.

 

A4. Zero-conditional Mean: E(εi|Xi)=0

- 주어진 X 값에서 오차도를 그리면 그 오차들의 평균은 0이 된다.

A5. 등분산성 (Homoskedasticity)

- 모든 Xi에 있어서 오차들이 같은 정도로 퍼져있어야한다.

A6. 독립성 (Independence)

- 오차항끼리는 독립이다. 어떤 패턴을 나타내면 안된다.

A7. 정규성 (Normalty)

- 각 Xi에서 오차들은 평균 0을 중심으로 정규분포를 이룬다.

 

- A4~A7은 오차항(ε)에 대한 가정이다.

- 오차항 ε은 모수이므로 우리는 그 값을 알 수 없다.

- 때문에 잔차항 e로 가설을 검정하여, A4~A7의 가설이 성립하면 회귀 분석을 시행한다.

 

- 가설 A1~A4가 성립된다면, 최소제곱법을 통한 회귀분석은 일관되고 편향되지 않은 결과를 도출한다.

- 가설 A5, A6이 성립된다면 최소제곱법을 통한 회귀 분석이 최선의 방법이다.

- 가설 A7이 만족되지 않으면 표본의 관찰값을 늘려 정규성을 근사적으로 만족시킬 수 있다.

 

 

 

2단계. 회귀직선 도출: 최소제곱법, ˆβ0, ˆβ1

결과 직선이 n개의 데이터 포인트에 최대한 가깝게 되도록 하는 ˆβ0, ˆβ1를 찾으려면 ⇒ 최소제곱법을 사용한다!

* 최소제곱법: 각 데이터 점들로부터 직선에 이르는 수직방향 거리를 제곱하여 합한값(잔차제곱합, RSS)을 가장 작게 만들도록 절편과 기울기를 결정하는 것

 

- 잔차 (residual) : ei=yi^yi

  i번째 관측된 반응변수 값(^yi)과 선형모델에 의해 예측된 i번 째 반응변수(yi) 사이의 차이

  y가 회귀식에 의해 얼마나 설명되지 않았는가를 나타내는 값

 

- 잔차제곱합 (Residual Sum of Squares. RSS | Sum of Squared regression Error. SSE

  RSS=e21+e22+...+e2n

               =(y1^y1)2+(y2^y2)2+...+(yn^yn)2

               =(y1^β0^β1x1)2+(y2^β0^β1x2)2+...+(yn^β0^β1xn)2

               =ni=1(yi^β0^β1xi)2

 

 잔차제곱합의 최솟값을 만드는 ^β0, ^β1를 구하려면 편미분으로 풀이한다.

 편미분 풀이식은 아래와 같다 (*아래 식에서 m1^β1, m2^β0임에 유의하자)

 

  정리

- ˆβ1=Sxy(Sx)2ˆβ0=ˆyβ1ˆx

- ˆβ1은 x,y의 공분산에서 x의 분산을 나눈 값과 같으며, ˆβ0은 본래 회귀식에 ˆβ1값을 대입해서 구한다.

 

* 잔차제곱합, 전체변화량, 잔차의 분산 등의 용어는 통계학과 수학에서 각자 다른 약어를 사용한다.

  (잔차제곱합의 경우, 통계학에서는 RSS, 수학에서는 SSE의 용어로 사용하는 등)

  표기법이 다를 뿐이지 두 약어 모두 동일한 의미로 사용하는 것으로.. 공부하면서 참고 자료등을 확인할 때 문맥을 잘 확인하면서 내용을 파악할 필요가 있다.

 

* 이 정리본에서는 두 약어를 모두 사용할 것이다.

  기본적으로 ISLR을 정리하는 것이므로 통계학 용어를 사용해서 정리하고 싶었는데,

  참고 이미지로 올리는 증명식에서는 대체로 수학에서 사용하는 약어를 사용해서.. 어쩔 수 없었다. ㅠㅠ흑흑

 

 

 

3단계. 계수의 가설검정 (모수추정. 실제 선형관계 추정)

최소제곱선으로 모회귀선을 추정하는 것은 표본의 정보모집단의 특징을 추정하는 표준통계적 방법(+확률통계)의 확장이라고 볼 수 있다.

우리는 표준통계 개념을 바탕으로, 회귀계수의 신뢰 구간을 구하여 실제 두 변수 X, Y가 선형 관계에 있는지 확인할 수 있다.

 

계수의 가설검정은 아래와 같은 순서로 확인할 것이다.

 

(1) 잔차의 분산: 오차항의 분산(모분산)에 대한 추정

(2) 회귀계수 추정값의 분산: 회귀계수의 표준오차

(3) 회귀계수의 신뢰 구간: 모평균의 신뢰구간

(4) 회귀계수 가설 검정: t통계량

 

 

(1) 잔차의 분산: 오차항의 분산(모분산)에 대한 추정

 

회귀계수의 분산을 구하려면 우선 모회귀선 오차항의 분산을 알아야하는데, 우리는 모수에 대한 정보가 없으므로 오차항의 분산을 구할 수 없다.

따라서 오차의 표본인 잔차를 이용하여, 잔차의 분산(표본분산)으로 오차항의 분산(모분산)을 추정할 것이다.

 

잔차의 분산 : 표본분산으로서 잔차의 분산은 잔차제곱합에 n-2를 나누는 방법으로 구할 수 있다.

 

 

- 일반적으로 표본분산은 편차제곱합에 (n-1)을 나누어 주며 모분산을 추정한다.

 * 표본분산에서 분모를 n-1로 계산하는 이유

    i) 수학적 접근: 확률통계에서의 증명. 표본분산의 기댓값은 모분산의 n1n배에 수렴하므로,

                          표본분산을 그대로 모분산 추정에 이용하면 확률적으로 n1n배 편향된 값을 얻을 가능성이 높다.

                          이를 막기 위해 표본분산에 nn1배를 한 값으로 모분산을 추정해야 편향되지 않는 값을 얻어낸다.

    ii) 자유도 개념: 모평균이 정해져 있을 때, 분산의 자유도는 n-1이 되므로

 

- 하지만 잔차의 분산으로 오차의 분산을 추정할 때는 (n-2)를 나누어주는 것에 유의하자.

 * 잔차의 분산에서 분모를 n-2로 계산하는 이유

    잔차에서는 자유도가 n-2가 되므로 (*자유도 관련 글 https://blog.naver.com/jhkang8420/221565825889)

 

 

(2) 회귀계수 추정값(ˆβ0+ˆβ1)의 분산: 회귀계수의 표준오차

 

1단계에서 서술한 7가지 가정이 모두 만족된다면

ˆβ0N(β0,Var(ˆβ0))

ˆβ1N(β1,Var(ˆβ1)) 가 성립한다.

 

ˆβ1 회귀계수 추정값의 분산은 오차항의 분산을 x 편차 제곱합으로 나눠준 값으로 구할 수 있다. (*참고 게시글: https://igija.tistory.com/337)

- 계수 추정값의 분산이 작을수록, 회귀계수가 유의미할 확률이 커진다.

- 분자를 확인해보면, 오차항의 분산과 회귀계수 추정값의 분산은 비례한다. 즉, 잔차가 작을수록 계수 추정값의 분산은 작아진다.

   직관적으로 보면 잔차가 작을수록 회귀직선에 실제값들이 근접해 있다는 것이므로 높은 선형관계를 가지고 있다고 볼 수 있다.

- 분모를 확인해보면, x의 편차제곱합(SST)는 1)x가 퍼져있고, 2)관측치가 많을수록 계수 추정값의 분산은 작아진다.

 

 

위 식을 정리하면 아래와 같이 계수 추정값의 분산, 즉 모회귀계수의 표준오차를 구할 수 있다. (증명은 생략)

 

 

(3) 회귀계수(β0+β1)의 신뢰구간: 모평균의 신뢰구간

 

β1의 신뢰구간(95%) : ˆβ1 ± 2SE(ˆβ1)

β0의 신뢰구간(95%) : ˆβ0 ± 2SE(ˆβ0)

 

- 여기서 표준오차에 곱하는 2는 95% 신뢰구간을 추정하기 위해 대략적으로 설정한 값임을 참고해두자.

 

 

(4) 회귀계수(β0+β1)의 가설검정: t통계량

 

단순회귀분석에서 회귀계수의 가설검정은 t통계량을 이용해 검정*한다.

 

* t검정: 모집단의 분산이나 표준편차를 알지 못해 모집단의 평균을 구하지 못할 때,

             t통계량을 이용하면, 표본평균과 표본분산으로 모평균을 구간추정할 수 있다 (두 집단 간의 평균 비교 검정에 활용)

 

- H0 (귀무가설): X와 Y 사이에 상관관계가 없다 β1=0

- H1 (대립가설): X와 Y 사이에 상관관계가 있다 β10

 

일반 정규분포에서 t통계량: (표본평균 - 모평균)/(표준오차)

t통계량 계산 : t=¯XμS/rootn=ˆβ10SE(ˆβ1)=ˆβ1SE(ˆβ1) t(n2) *자유도 (n-2)의 t분포를 따름

 

p-value*가 충분히 작으면 귀무가설을 기각하고 대립가설을 채택한다!

  *t검정에서 p-value: |t|가 t분포에서 관측될 확률

즉, X와 Y 사이에 상관관계가 있다고 결론 내릴 수 있다.

 

Q. 가설이 기각되려면 β1의 추정값이 0과 얼마나 달라야하는가?

A. SE(ˆβ1)에 따라 다르다.

  - 표준오차가 작으면 ˆβ1이 작아도 β10이 되므로 X와 Y가 서로 상관이 있다는 강한 증거가 된다.

  - 표준오차가 크면 귀무가설을 기각하기 위해 ˆβ0의 절댓값이 커야 한다.

 

 

 

4단계. 모델의 정확도 평가: 회귀직선의 설명력. R2

 

완성한 회귀직선이 얼마나 모수를 잘 설명하는 지는 R2를 구하여 평가할 수 있다.

 

* yi가 평균에서 떨어진 정도는 yi¯y

* $y_i - \overline{y}$ 값은 회귀직선으로 설명되는 부분과 아닌 부분으로 나눌 수 있다.

* 즉 , 이를 식으로 표현하면 

   yiˆy=(ˆyi¯y)+(yiˆyi)

                =(ˆyi¯y)+ei

                = (회귀식으로 설명되는 부분) + (잔차)

 

 

 

- yiˆy를 한 점이 아니라 모든 점에 적용후 합산하여 전체 변화량을 구해보자

- 그냥 변화량을 합했다가는 0이 되므로, 제곱을 해서 더해주도록 한다.

 

 

 

전체 변화량(반응변수 y의 총 분산, SSR)은 회귀직선으로 설명되는 부분(SSR)과 잔차제곱합(SSE)으로 나눠진다.

회귀직선의 설명력이 높다는 것은 SSR(Sum Squared Regression)이 높다는 뜻이된다.

(Y변수의 변화가 회귀 직선이 도출하는 추정치와 유사할수록 설명력이 높다!)

 

R2의 식을 정리하면 아래와 같다.

 

 

 

* ISLR 교재에서는 TSS, RSS와 같은 약어를 사용한다. 통계학에서는 아래 약어를 더 많이 사용하니 익혀두자.

 

R2=TSSRSSRSS=1TSSRSS

 

정리

R2은, X를 사용하여 설명될 수 있는 Y의 변동비율(proportion of variability)을 측정한다.

- R2이 1에 가까우면 반응변수 변동 중 많은 부분이 회귀식에 의해 설명되었다는 것을 의미하며,

               0에 가까우면 1)선형모델이 틀렸거나, 2)내재된 오차가 크다고 유추할 수 있다.

 

 

 

5단계. 예측

1) 평균값에 대한 예측: 회귀직선의 신뢰구간

y 평균값의 신뢰구간을 계산하면 ˆy가 실제 f에 얼마나 가까울 지 알 수 있다.

 

y의 신뢰구간(95%) : ˆy ± tα/2,n2×SE(ˆy)

 

표준오차(SE(ˆy))의 식

- 일반적으로 예측을 할 때 95% 신뢰수준, 5%의 유의수준으로 놓고 구한다.

 

 

2) 개별값에 대한 예측: 잔차항을 포함한 예측구간

ˆy의 표준오차를 잔차항까지 포함된 값으로 두고 계산 하면,

축소불가능한 오차가 포함된 신뢰구간을 구하는 것이므로, 개별값에 대한 예측구간을 구할 수 있다.

 

개별값 ˆy에 대한 표준오차는 아래와 같다.

 

 

- 개별값에 대한 예측은 일반적으로 회귀선의 신뢰구간보다 범위가 넓다.

- 이는 직관적으로 생각해도 당연한 것이, 평균값이 개별값보다 표준편차가 더 클 것이기 때문이다.

- 개별값은 변동성이 더 크다. 따라서 표준오차도 더 크다.

- 개별값이든 평균값이든, 평균은 회귀직선상의 값이 된다.

- 아래 회귀선의 신뢰구간과 예측구간에 대한 그래프를 참고하자.

 

 

 

 

 

** 응용 **

 

지금까지 배운 내용을 바탕으로 아래 단순선형회귀식의 결과표를 해석해보자.

 

1. Regression Statistics

- R Square: 0.7400  모델의 설명력. 회귀직선이 전체 데이터를 약 74% 설명함

 

2. Intercept (β0)

- Coefficient: 68.358  회귀선의 y절편 예측값. (ˆβ0)

- Standard Error: 2.084 y절편의 표준오차. SE[ˆβ0]

- t Stat: 32.797. β0=0 귀무가설에 대한 t통계량. 

- P-value: >0.0000 계산된 t통계량이 β0=0의 t분포에서 관측될 확률. 

                  p-value가 몹시 작으므로 귀무가설 기각, 대립가설 채택

                  회귀계수ˆβ0는 유의미하다고 볼 수 있음

- [Lower 95%, Upper 95%]: [64.089, 72.628]. β0의 신뢰구간.

                                               time변수가 없다면 y값은 95%의 확률로 64.089보다 크고 72.628보다 작은 값일 것이다.

 

3. Time (β1)

- Coefficient: 1.048  회귀선의 xi의 회귀계수 예측값 (ˆβ1)

- Standard Error: 0.117 회귀계수의 표준오차. SE[ˆβ1]

- t Stat: 8.927  β1=0 귀무가설에 대한 t통계량. 

- P-value0.0000  계산된 t통계량이 β1=0의 t분포에서 관측될 확률. 

                  p-value가 몹시 작으므로 귀무가설 기각, 대립가설 채택

                  회귀계수ˆβ1는 유의미하다고 볼 수 있음 (회귀 직선은 유의미하다고 말할 수 있음)

- [Lower 95%, Upper 95%]: [0.080, 1.289]. β1의 신뢰구간.

                                                변수 x1가 1씩 증가할 때마다 y는 0.089~1.289 사이의 어떤 값 만큼 증가할 것이다.