Recent Posts
Recent Comments
Archives
반응형
250x250
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Today
Yesterday

Total
05-06 00:01
관리 메뉴

Hey Tech

[통계] 회귀분석(Linear Regression) 절차 및 방법 본문

AI & 빅데이터/데이터 분석 with 통계

[통계] 회귀분석(Linear Regression) 절차 및 방법

Tony Park 2021. 7. 28. 22:08
728x90
반응형

📚 목차

1.  회귀분석 절차 소개
2.  데이터 경향성 확인
    2.1.  산점도 행렬
    2.2.  상관분석
3.  모델 적합성 확인
    3.1.  분산 분석(F-검정)
    3.2.  수정 결정계수 확인
        3.2.1.  수정결정계수란?
        3.2.2. 수정 결정계수 기반 모델 적합성 판단
    3.3.  잔차(오차) 분석
        3.3.1.  잔차의 기본 가정
        3.3.2.  가중최소제곱(Weighted Least Squares)
4.  회귀계수 계산 및 유의성 확인
    4.1.  회귀계수 계산
        4.1.1.  최소자승법이란?
        4.1.2.  최소자승법 기반 회귀계수 계산
    4.2.  회귀계수 유의성 검정(t-검정)
    4.3.  설명변수 간 다중공선성 확인
        4.3.1.  다중공선성이란?
        4.3.2.  다중공선성 발생 원인
        4.3.3.  다중공선성 확인 방법
        4.3.4.  다중공선성 해결방법 종류
        4.3.5.  다중공선성 해결방법(1) 변수선택법
        4.3.6.  다중공선성 해결방법(2) 정규화

1.  회귀분석 절차 소개

회귀분석 절차는 크게 4가지로 아래 표 1 과 같습니다.

절차 내용
① 데이터 경향성 확인 - 목표변수와 설명변수 간 산점도 분석 및 상관관계 분석을 통해 데이터 경향성 확인
② 모델 적합성 확인 - 분산분석을 통해 모델 적합성 확인
- 결정계수 확인을 통해 모델 설명력 확인
- 잔차의 기본 가정 확인(잔차의 정규성, 등분산성, 독립성 등)
③ 회귀계수계산 및 유의성 확인 - 설명변수 간 다중공선성 확인
- t-검정을 통해 회귀계수의 유의성 확인
- 목표변수에 영향을 주는 설명변수(i.e.., 영향인자) 선택 및 해석
④ 모델 선정 - 모델 적합성, 오차의 기본 가정 확인을 통해 최종 모델 선정

표 1.  회귀분석 절차

2.  데이터 경향성 확인

회귀분석의 첫 번째 절차는 데이터 경향성 파악입니다. 산점도 행렬을 시각화하고 상관분석을 통해 목표변수와 설명변수 간의 관계를 확인하는 과정입니다. 그럼 각각에 대해 알아보도록 하겠스빈다.

2.1.  산점도 행렬

그림 1.  산점도 행렬 예시

가장 먼저, 2개의 연속형 변수 간의 관계 확인을 위해 좌표 평면에 데이터를 행렬 형태로 표시하는 산점도를 시각화합니다(그림 1). 이를 통해 설명변수(X)의 변화에 따른 목표변수(Y)의 추이를 어느정도 확인하실 수 있을 뿐만 아니라 이상치 유무도 확인할 수 있습니다.

2.2.  상관분석

다음으로 상관분석을 수행합니다. 2개의 연속형 변수 간 선형관계를 표준화된 계수를 활용하여 분석할 수 있습니다. 상관계수는 -1 부터 1 사이의 값으로 표현되며, 절댓값 1에 가까울수록 상관관계가 크게 나타난다고 해석합니다.또한, 상관계수가 음(negative)의 값인 경우에는 음의 상관관계가, 반대로 양(positive)의 값인 경우에는 양의 상관관계가 있다고 합니다. 아래 그림 2는 상관분석 결과 예시입니다.

그림 2. 상관분석 예시

3.  모델 적합성 확인

데이터 경향성 파악이 끝났다면, 모델의 적합성을 파악해야 합니다. 모델의 적합성은 분산 분석, 결정계수 확인을 통한 모델의 설명력 확인, 잔차의 기본 가정 만족 여부를 통해 판단할 수있습니다. 이어지는 내용에서 분산 분석, 결정계수, 잔차의 기본 가정을 확인하는 절차에 대해 각각 알아보겠습니다.

3.1.  분산 분석(F-검정)

분산 분석의 F-검정을 활용해 모델의 유의성을 검정합니다. 귀무 가설과 대립 가설은 각각 아래와 같습니다.

  • 귀무가설 \(H_0\): 모든 \(\beta_i = 0\) (i.e., \(\beta_1 = \beta_2 = \beta_3= ... = \beta_k = 0)\)
  • 대립가설 \(H_1\): 적어도 하나의 회귀계수  \(\beta_i\)는 \(0\)이 아니다.

F-검정 통계량 중 p-value 값을 확인하여 0.05보다 작다면 대립가설을 채택합니다. 즉, 적어도 하나 이상의 회귀계수가 0이 아니라는 뜻이기 때문에 모델은 적합하다고 말할 수 있습니다.

3.2.  수정 결정계수 확인

3.2.1.  수정 결정계수란?

수정 결정계수(Adj \(R^2\): Adjusted coefficient of determination)는 실제로 목표변수(\(Y\))에 영향을 주는 설명변수(\(X\))에 의해 설명되는 정도를 나타냅니다. 수정 결정계수는 결정계수(\(R^2\))가 설명변수 개수가 증가할수록 설명력이 증가하는 한계점을 보완하기 위해 설명변수 개수 만큼 penalty를 주는 지표입니다.

3.2.2.  수정 결정계수 기반 모델 적합성 판단

수정 결정계수는 \(0\)부터 \(1\) 사이의 값을 가지며 \(1\)에 가까울수록 좋은 모델이라고 할 수 있습니다.

3.3.  잔차(오차) 분석

3.3.1.  잔차의 기본 가정

분산분석(F-검정)이 유의하거나 결정계수가 커도 잔차의 기본 가정이 위배된다면 모델이 적합하다고 할 수 없습니다. 따라서 아래 4가지 가정을 만족하는지 반드시 확인할 필요가 있습니다.

  • 잔차\((\varepsilon_i)\)의 정규성 \(\varepsilon_i\) ~ \(N(0, \sigma^2)\)
  • 잔차의 평균 \(E(\varepsilon_i)=0\)
  • 잔차의 등분산성: 잔차의 분산은 \(\sigma^2\)이고 모든 설명변수 값에 대해 동일한 분산을 가짐
  • 잔차항 간 독립성

3.3.2.  가중최소제곱(Weighted Least Squares)

만약 잔차의 등분산성이 성립하지 않을 경우 가중최소제곱법을 활용하여 잔차의 이분산성*을 해결할 수 있습니다. 가중최소제곱은 회귀 모수의 오차항 분산에 반비례하는 가중치를 부여함으로써 가중 오차제곱합을 최소하는 방법입니다.

 

* 이분산 자료에 일반적인 최소제곱법 적용 시, 추정통계량의 신뢰도가 상실되며 회귀계수의 표준오차를 과소 추정하거나 회귀계수를 과대 추정하게 됩니다.

 

4.  회귀계수 계산 및 유의성 확인

이제 선택된 모델의 회귀계수를 계산하고 유의성을 검정해야 하며, 다중공선성을 확인하고 필요한 조치를 취해야 합니다. 각 절차에 대해 알아봅니다.

4.1.  회귀계수 계산

회귀선의 기울기와 Y 절편(intercept)은 최소자승법(Least Square Method)을 통해 계산할 수 있습니다.

4.1.1.  최소자승법이란?

최소자승법이란 잔차의 제곱 합(Sum of Squared Error, SSE)이 최소가 되는 적합선(i.e., 회귀선)을 찾는 방법입니다. 여기서 잔차란 적합선 상의 예측값(직선 위의 값)과 실제 관측값 간의 차이를 의미합니다.

4.1.2.  최소자승법 기반 회귀계수 계산

수식으로 나타내면 다음과 같습니다.

 

1) 잔차제곱합

$$ SSE = \displaystyle\sum_{i=1}^{n}e_{i}^{2} = \displaystyle\sum_{i=1}^{n}(y_{i} - \beta_{0} - \beta_{1}x_{i})^2 $$

 

2) 잔차제곱합의 최소화

$$ \min\sum_{i=1}^{n}e_i ^2 = \min\sum_{i=1}^{n}(y_i - \hat{y_i})^2 = \min\sum_{i=1}^{n}(y_i-\beta_0 - \beta_1 x_i)^2 $$

 

3) 절편과 기울기의 편미분

$$ \frac{{\partial L}}{{\partial} \beta_{0}} = -2 \displaystyle\sum_{i=1}^{n}(y_{i} - \beta_{0} - \beta_{1}x_{i}) = 0 $$

$$ \frac{{\partial L}}{{\partial} \beta_{1}} = -2 \displaystyle\sum_{i=1}^{n}(y_{i} - \beta_{0} - \beta_{1}x_{i})x_i = 0 $$

 

4) 절편 및 기울기값 도출

$$ \hat{\beta_{1}} = \frac{\sum_{i=1}^{n}(x_{i}-\bar{x})(y_{i}-\bar{y})}{\sum_{i=1}^{n}(x_{i} - \bar{x})^2} $$

$$ \hat{\beta_{0}} = \bar{y} - \hat{\beta_{1}\bar{x}} $$

4.2.  회귀계수 유의성 검정(t-검정)

이제 위와 같이 추정된 회귀계수와 표준오차를 이용해 회귀계수 유의성을 t-검정을 통해 확인합니다. 일반적으로 설명변수의 계수에 대해서 유의성 검정을 실시하며 Y 절편의 유성은 판단하지 않습니다. 귀무가설과 대립가설은 각각 아래와 같습니다.

  • 귀무가설 \(H_0\): 개별 회귀계수  (\(\beta_i \))는 \(0\)이다.
  • 대립가설 \(H_1\): 개별 회귀계수 (\(\beta_i \))는 \(0\)이 아니다.

t-검정을 통해 얻은 p-value 값이 \(0.05\)보다 작다면 대립가설을 채택합니다. 즉, 개별 회귀계수가 \(0\)이 아니라는 의미이기 때문에 회귀계수가 유의하다고 판단할 수 있습니다.

4.3.  설명변수 간 다중공선성 확인

다음 절차로 설명변수 간의 다중공선성을 확인하고 이에 따른 조치를 취해주어야 합니다. 먼저 다중공선성에 대해 알아보겠습니다.

4.3.1.  다중공선성이란?

다중공선성은 설명변수 간의 선형관계가 높아 발생하는 문제로서 최소장승법으로 추정한 모델의 회귀계수에 대한 신뢰성이 떨어지는 현상을 말합니다. 이는 설명변수의 회귀계수와 유의성 여부 판단에 오류를 유발할 수 있어 다중공선성 문제를 해결해야 합니다.

4.3.2.  다중공선성 발생 원인

1) 설명변수들 간의 높은 선형(상관)관계가 있는 경우

2) 편향된 표본 데이터를 추출한 경우

4.3.3.  다중공선성 확인 방법

1) 산점도 또는 상관계수 확인을 통해 설명변수 간의 선형관계를 파악합니다.

2) 분산팽창계수(Variation Inflation Factor, VIF)를 확인합니다.

- 분산팽창계수 \(> 10\)인 경우(또는 5 이상), 다중공선성이 존재한다고 말합니다.

- 수식: \(VIF_j = \frac{1}{1-R_j^2}\) (\(R_j^2\): 회귀모델의 설명력)

4.3.4.  다중공선성 해결방법 종류

다중공선성을 해결하는 방법은 변수 제거 여부에 따라 나뉩니다. 각각에 대해 알아보겠습니다.

 

✅ 1) Feature Selection: 변수를 제거하는 방법

- 직접 제거: 상관계수 등의 지표를 기반으로 직접 변수를 제거하는 방법

- 후진제거법(Backward Elimination)

- 전진제거법(Forward Selection)

- 단계적 선택법(Stepwise)

- 모든 가능한 조합의 회귀분석(All Possible Regression)

- LASSO Regression(Least Absolute Shrinkage and Selection Operator)

- 기타 변수 선택 알고리즘(e.g., 유전 알고리즘 등)

 

✅ 2) Feature Extraction: 변수를 제거하지 않는 방법

- AutoEncorder 등의 딥러닝 기법

- 주성분 분석(PCA)

- Ridge Regression

 

✅ 3) Feature Selection & Extraction

- Elastic Net Regression

 

* 본 포스팅에서는 위의 방법들 중에서 변수선택법(후진제거법, 전진제거법, 단계적 선택법, 모든 가능한 조합의 회귀분석) 및 정규화(LASSO Regression, Ridge Regression, Elastic Net Regression)에 대해 중점적으로 다룹니다.

 

4.3.5.  다중공선성 해결방법: (1) 변수선택법

변수선택법은 크게 후진제거법, 전진선택법, 모든 가능한 조합의 회귀분석으로 4가지가 있으며, 각각에 대해 알아보겠습니다.

 

✅ 1) 후진제거법(Backward Elimination)

- 더 이상 제거할 변수가 없다고 판단될 때까지 설명력이 가장 작은 변수부터 순차적으로 제거하는 방법입니다.

- 제거된 변수는 추가할 수 없다는 단점이 존재합니다.

 

✅ 2) 전진선택법(Forward Selection)

- 상수항을 시작으로 설명력이 큰 변수부터 선택해 모델에 포함시키며 더 이상 추가하는 게 의미없다고 판단될 때 변수 선택법을 중단합니다.

- 회귀식에 추가된 변수는 제거할 수 없다는 단점이 존재합니다.

 

✅ 3) 단계적 선택법(Stepwise)

- 전진선택법과 후진선택법을 조합하여 한계점을 보완한 방법론입니다.

- 반복적으로 전진선택법에 따라 중요 변수를 모델에 추가하고, 후진선택법에 따라 중요하지 않은 변수는 제거합니다.

- 전진선택법에 의해 포함된 변수는 제거할 수 없고 후진선택법에 따라 제거된 변수는 다시 포함될 수 없다는 단점이 존재합니다.

 

✅ 4) 모든 가능한 조합의 회귀분석(All Possible Regression)

- \(k\)개의 설명변수가 있을 때, 설명변수 1개만 포함하는 모델부터 \(k\)개 모두를 포함하는 모델까지 모든 변수들의 조합을 고려하는 방법입니다.

 

4.3.6.  다중공선성 해결방법: (2) 정규화(Regularization)

정규화란?

- 정규화는 회귀모델의 회귀계수에 제약조건을 부여함으로써 모델의 과최적화 방지, 모델의 분산* 감소, 모델의 일반화(안정성) 성능을 높이는 기법입니다.

- 평균제곱오차(Mean Squared Error, MSE)를 최소화하는 최소자승법 적용 및 회귀계수에 추가적인 제약조건을 적용합니다.

- 변수 선택(subset selection): 중요 변수는 선택하고 중요하지 않은 변수는 제거합니다.

- 계추 축소(shrinkage): 덜 중요한 변수의 계수의 절댓값 크기를 낮춥니다.

 

* 분산(variance): 예측값과 예측치 평균 간 차이의 제곱 = 예측치의 흩어진 정도, 편향과 trade-off 관계

* 편향(bias): 실젯값과 예측값의 평균 간 차이

 

정규화는 왜 필요할까?

- 영향력이 없는 설명변수의 회귀계수를 \(0\)에 가깝게 선택하면 모델에 포함되는 입력변수의 개수를 줄일 수 있습니다.

- 설명변수 개수를 줄이면 아래와 같은 장점이 존재합니다.

 

  • 잡음(noise) 제거를 통해 모델 정확도 개선
  • 모델 연산속도 증가
  • 다중공선성 문제 완화를 통해 모델의 해석능력 향상

회귀분석 정규화 종류

회귀분석 정규화 종류는 크게 Ridge, LASSO, Eleastic Net Regression이 있습니다. 각 특징에 대해 비교하면 아래 표 2와 같습니다.

구분 Ridge Regression LASSO Regression Elastic Net Regression
제약식 \(L_2\) 규제 \(L_1\) 규제 \(L_1 + L_2\) 규제
변수선택 불가능 가능 가능
장점 - 변수 간 상관관계가 증가해도 모델의 좋은 성능 유지 - 변수 선택을 통해 우수한 해석력
- 낮은 MSE
- 변수 간 상관관계와 변수선택을 조합한 정규화로서 해석력 우수
단점 - 회귀계수가 \(0\)에 가까워짐
- 변수선택 모델이 아님
- 상관성이 높은 변수가 있는 경우 오직 하나의 변수만 선택 - 상관관계가 큰 변수는 동시 선택되거나 제거됨

표 2. 회귀분석 정규화 종류별 특징


오늘은 회귀분석의 기본적인 절차 및 방법에 대해 알아봤습니다.

포스팅 내용에 오류가 있을 경우 아래에 👇👇👇 댓글 남겨주시면 감사드리겠습니다.

그럼 오늘도 건강하고 즐거운 하루 보내시길 바랍니다 :)

고맙습니다.

728x90
반응형
Comments