본문 바로가기
Data Analysis

다중공선성이란? 제거하는 방법은?

by Urban communicator 2023. 1. 11.

소개


기계 학습과 딥 러닝의 발전으로, 전통적인 통계학에서 처리하지 못했던 문제를 처리할 수 있게 되었습니다.

그러나 이러한 고급 및 복잡한 알고리즘은 또 다른 문제를 발생시켰습니다. 

 

 

기계 학습 모델의 해석 가능성과 관련하여 선형 회귀의 단순성과 해석 가능성에 가까운 것은 없습니다. 

그러나 특히 다중공선성으로 알려진 선형 회귀의 가정이 위반 될 때 선형 회귀의 해석 가능성과 관련하여 특정 문제가있을 수 있습니다.

이 글은 독자가 선형 회귀의 가정에 익숙하다고 가정 하에 진행합니다. 

 

만약 선형회귀에 익숙하지 않은 분이라면 아래 링크를 참조하여“선형 회귀의 가정”에 대한 자세한 내용을 확인하십시오.
https://www.analyticsvidhya.com/blog/2016/07/deeper-regression-analysis-asmumptions-plots-solutions/

여기서는 다중 공선성에 관한 다음 질문을 살펴볼 것입니다.

1. 다중 공선 성이란 무엇입니까?

2. 다중 공선 성이 해석에 어떤 영향을 미치는가?
3. 우리는 그것을 어떻게 감지하고 제거합니까?


하나씩 대답해 보겠습니다. 

 

1. 다중 공선 성이란 무엇입니까?
다중공선성은 독립 변수 또는 예측 변수 사이에 상당한 의존성 또는 연관성이있는 경우를 의미합니다.

독립 변수들 사이의 유의 한 상관 관계는 종종 다중공선성 존재의 첫 번째 증거입니다.

예를 통해 이것을 이해해 봅시다.

이미지에 표시된대로 BigMart 데이터 세트의 하위 집합으로 작업하고 있다고 생각합니다.

 

 

앞에서 논의한 바와 같이, 다중공선성은 독립 또는 예측 변수 사이에 높은 상관 관계가있을 때 발생합니다.
따라서 상관 관계 행렬을 살펴 보겠습니다.

 

 

상관 관계 표에서 변수 outlet_establishment_year와 item_weight 사이에 유의 한 상관 관계가 있음을 알 수 있습니다. 

이것은 다중공선성이 존재할 수 있다는 단서가 됩니다. 

 

2. 다중공선성이 해석에 어떤 영향을 미치는가?
다음과 같은 회귀모형이 있습니다. 

 

이 모델은 4개의 독립 변수 X가 있고 해당 계수가 β로 표현됩니다.

X3 및 X4를 제외한 모든 변수가 독립적인 경우, 즉 X3과 X4는 서로 유의한 상관 관계가 있다고 가정합니다. 

 

이제 Y에 대한 각각의 독립 변수의 β 계수를 추정하기 위해, 우리는 한 번에 하나의 독립 변수의 크기를 약간 변경할 때 Y 변수 크기의 변화를 관찰합니다.

 

Case 1:
변수 X1 및 X2는 다른 모든 변수와 무관합니다.

X1 또는 X2의 크기를 변경하면 다른 독립 변수가 그 값을 변경하거나 무시할만한 양으로 유발하지 않습니다.

결과적으로 우리는 Y에 대한 독립 변수 X의 영향을 명확하게 관찰 할 수 있습니다.

 

 

Case 2:
변수 X3 및 X4의 경우 유의한 상관 관계가 있습니다.

사례 1과 동일한 절차를 적용하면 어떻게 될까요?

 

Y(빨간색)의 변화를 관찰하기 위해 X3(빨간색으로 표시됨)의 크기를 변경하려고하면 X4(오렌지)의 값에 큰 차이가있을 것입니다. 결과적으로, 우리가 Y에서 관찰하는 변화는 X3 (빨간색) 및 X4 (오렌지)의 변화 때문입니다. 결과 변화(파란색)는 실제 변화 (주황색)보다 큽니다.

그게 어떤 문제가 있나요? 

예, X3에 해당하는 계수를 추정하려고 할 때 변수 X4의 기여로 인해 계수가 과대 평가됩니다. 이 때문에 계수가 과대 평가되었습니다. 결과적으로, 이 해석은 모형을 오해하게 합니다. 

상관관계만으로 독립 변수를 제거하면 귀중한 예측 변수를 제거하는 문제가 발생할 수 있지만 여기에서는 한 번 시도해보겠습니다. 

 

3. 다중공선성을 어떻게 감지하고 제거합니까?

 

다중공선성을 식별하는 가장 좋은 방법은 데이터 세트의 모든 독립 변수에 해당하는 분산 인플레이션 계수(VIF)를 계산하는 것입니다.
VIF는 다른 독립 변수를 사용하여 독립 변수가 얼마나 잘 예측 가능한지 알려줍니다. 예제의 도움으로 이것을 이해합시다.

 

그림과 같이 9개의 독립변수가 있다고 생각하십시오.

변수 V1의 VIF를 계산하기 위해 변수 V1를 종속변수로 고려하고 다른 모든 변수는 예측 변수로 취급합니다. 

 

다른 모든 예측 변수를 사용하여 회귀모델을 훈련시키고 해당 R2 값을 찾습니다.
이 R2 값을 사용하여 VIF 값을 아래 이미지로 계산합니다.

 

공식을 살펴보면 R2 값이 증가함에 따라 VIF 값도 증가 함을 분명히 알 수 있습니다. 높은 R2 값은 다음을 나타냅니다.

 

the target independent variable is very well explained by the other independent variables

이제 변수를 제거 해야하는지 여부를 결정하기 위해 VIF 임계 값은 무엇입니까?

VIF 값을 최대한 작게하는 것이 항상 바람직하지만 그럴 경우 독립변수를 상당히 많이 제거해야 할 수 있습니다.

따라서, VIF = 5가 종종 임계 값으로 간주됩니다. 이는 5보다 큰 독립 변수를 제거해야한다는 것을 의미합니다.

이상적인 임계값의 크기는 당면한 문제입니다. 

 

선형 회귀의 힘은 모델의 간단한 해석에 있습니다. 

다중공선성을 놓치면 선형 회귀를 사용하는 이유가 크게 훼손됩니다. 

 

 

[참고 원문]

https://medium.com/analytics-vidhya/what-is-multicollinearity-and-how-to-remove-it-413c419de2f

'Data Analysis' 카테고리의 다른 글

[ML] Shapley Value의 머신러닝 적용  (0) 2023.01.13
[ML] SHAP 소개  (3) 2023.01.13
[통계] 통계 기초  (0) 2023.01.12
기계학습과 다중공선성  (0) 2023.01.11
공간 클러스터링: 종류와 사용  (0) 2021.08.20

댓글