만족

[데이터사이언스] Regression Performance Estimation (회귀 성능 평가) 본문

[데이터사이언스] Regression Performance Estimation (회귀 성능 평가)

데이터사이언스 Satisfaction 2021. 10. 22. 18:28

Performance

만들어진 회귀모델이 얼마나 예측을 잘 해낼 수 있는지를 측정할 수 있는 몇 가지 지표가 있다.

 

Performance: R square (R^2)

R^2= 1- Sigma(y- Predict(y))^2 / Sigma(y- E(y))^2
= 1- Sigma(실제값- 예측값)^2/Sigma(실제값- 평균값)^2

(단 y: 실제값, Predict(y): 예측값, E(y): y의 실제 평균값)

 

R^2는 위와 같이 구할 수 있으며, 값은 [0,1]사이값으로 나타난다.

 

값이 1에 가까울 수록 성능이 좋다는 것을 의미하며,

즉 예측 데이터가 실제 데이터에 얼마나 가깝게 예측되는지를 나타낸다.

(Higher is better)

 

Performance: Standard Error of Estimate

SE= sqrt( Sigma((y- Predict(y)^2) / n-2 )
= sqrt( Sigma(ε^2) / DF )

단 ε는 오차(실제값-예측값), DF는 Degree of Freedom(SE계산 시 n-2)

SE는 실제값과 예측값이 얼마만큼 분산되어 있는지를 나타낸다.

 

이 값이 클수록 실제값과 예측값이 벌어져있다는 것을 의미하므로 값이 작을수록 좋다.

(Lower is better)

 

R-square와 Standard Error는 "독립변수가 종속변수와 상관관계가 있다고 가정"하고 측정하는 방법이다.

이번에는 "도출한 Regression이 실제로 통계적으로 유의미한지"를 평가해 보자.

 

Performance: t-test

Yi= β0+ β1*Xi+ ε 
(β1은 slope; 기울기)

여기에서 β1=0이라고 가정하는 것을 귀무가설(즉 Y는 X의 변화와 관계가 없다)이라 하고

β1 !=0 이라고 가정하는 것을 대립가설(즉 Y는 X의 변화와 관계가 없다)라고 한다.

 

여기에서 α, t-value, p-value 개념을 추가해 통계적 유의미함을 검증할 수 있다.

 

α: 유의수준
t-value: t-분포 상에서 검정 통계수치
p-value: t-value에 의해 정해지는 유의확률

 

t-value= (β1-β1,0)/sqrt(σ^2/Cov(x,x))
= (β1-β1,0)/SE

만약 |t-value|가 t(α/2, n-2)보다 작거나 같을 경우 귀무가설(x와 y는 연관성이 없음)이 성립되고

|t-value|가 t(α/2, n-2)보다 클 경우 대립가설(x와 y는 연관성이 있음)이 성립된다.

 

t(α/2, n-2)는 t-table을 참고하여 구한다.

 

T-test example

만약 유의수준이 5%이고, n= 20인 경우

t(α/2, n-2)= t(5/2, n-2)= 2.101이 된다.

 

또한 t value는 위의 공식을 이용해 구할 수 있으므로

만약 |t-value|<=2.101 이면 x와 y는 연관성이 없고

|t-value|>2.101 이면 x와 y는 연관성이 있다고 할 수 있다.



Comments