← 목록으로
AI·데이터
#다중공선성#회귀분석#VIF#PCA#Ridge#132회
최종 업데이트 · 2026-09-30

다중공선성(Multicollinearity)

1. 개요

가. 정의

다중회귀에서 독립변수(설명변수)들 사이에 강한 선형 상관관계가 존재하여, 개별 회귀계수의 추정이 불안정해지고 해석이 왜곡되는 현상.

다중회귀분석의 본질은 여러 설명변수가 동시에 존재할 때 "다른 변수를 모두 통제한 상태에서 특정 변수 하나가 종속변수에 미치는 순수한 고유 효과"를 계수로 분리해 추정하는 것이다. 회귀계수 βⱼ가 "다른 변수가 일정할 때 Xⱼ가 한 단위 변할 때의 Y 변화량"으로 해석되는 것도 이 때문이다. 그런데 이러한 효과 분리가 통계적으로 성립하려면 각 독립변수가 서로 충분히 독립적인 정보를 담고 있어야 한다. 두 변수가 거의 같은 방향으로 함께 움직인다면, 회귀식은 "종속변수의 변화를 A가 만든 것인지 B가 만든 것인지"를 구분할 근거를 잃게 된다.

수학적으로 보면 이 문제는 설계행렬(design matrix) X의 열들이 선형종속에 가까워지는 것으로 귀결된다. 최소제곱 추정량은 β̂ = (XᵀX)⁻¹Xᵀy로 주어지는데, 열들이 선형종속에 근접하면 XᵀX가 특이행렬(비가역)에 가까워지고, 그 행렬식이 0으로 수렴하면서 역행렬의 원소가 폭발적으로 커진다. 계수 추정치의 분산은 이 역행렬의 대각원소에 비례하므로, 결국 β̂의 분산이 팽창하고 추정치가 표본이 조금만 바뀌어도 크게 요동치게 된다. 즉 다중공선성은 데이터에 오류가 있어서 생기는 문제가 아니라 변수 구조 자체에서 비롯되는 식별(identification) 문제라는 점을 이해하는 것이 핵심이다.

나. 문제점 및 필요성

다중공선성이 심하면 세 가지 증상이 나타난다. 첫째, 계수의 표준오차가 커져(분산 팽창) t검정 통계량이 작아지고, 실제로는 중요한 변수인데도 "통계적으로 유의하지 않다"는 잘못된 결론이 나온다. 둘째, 계수의 부호가 이론과 반대로 뒤집히거나 비현실적으로 큰 값으로 추정된다. 예컨대 소득과 소비를 동시에 설명변수로 넣으면 둘의 계수가 서로 상쇄·보상하면서 부호가 흔들린다. 셋째, 표본을 조금만 바꾸거나 변수를 하나 추가·제거해도 계수가 극적으로 변동해 모형의 안정성이 무너진다.

흥미로운 점은 이런 상황에서도 모형 전체의 예측력(R², F검정)은 그대로 유지될 수 있다는 것이다. 개별 변수의 기여분을 나누지 못할 뿐, 상관된 변수들이 합쳐서 만들어내는 예측은 여전히 유효하기 때문이다. 이 관찰은 대응 전략의 출발점이 된다. 즉 "변수의 영향을 해석·추론"하는 것이 목적이면 반드시 처리해야 하지만, "예측 정확도만"이 목적이라면 방치하거나 정규화로 관리하는 것으로 충분한 경우가 많다. 이처럼 분석 목적을 먼저 규정하는 것이 다중공선성 대응의 첫 단추다.

2. 발생 원인과 메커니즘

다중공선성의 원인을 이해하려면 "왜 설계행렬의 열이 선형종속에 가까워지는가"를 데이터 생성 과정으로 거슬러 올라가 살펴야 한다. 아래는 원인이 계수 불안정으로 이어지는 전체 구조를 나타낸 개념도다.

flowchart LR
  A["변수 설계 단계"] --> B["중복·파생 변수 투입"]
  A --> C["자연 상관 변수"]
  A --> G["표본 부족·좁은 분포"]
  B --> D["설계행렬 열의 선형종속 근접"]
  C --> D
  G --> D
  D --> E["XᵀX 비가역 근접"]
  E --> F["역행렬 원소 폭발 → 계수 분산 팽창"]
  F --> H["표준오차↑ · 부호 역전 · 불안정"]

첫째, 같은 정보를 단위나 척도만 바꿔 중복으로 넣는 중복 변수가 가장 심각하다. 키를 cm와 inch로 동시에 투입하면 두 열은 정확히 비례하므로 완전 공선성(perfect collinearity) 이 되고, 이 경우 XᵀX는 완전히 비가역이 되어 계수 추정 자체가 불가능해진다. 범주형 변수를 더미로 만들 때 모든 범주를 다 넣어 상수항과 완전 종속이 되는 더미 변수 함정(dummy variable trap) 도 같은 성격의 사례다.

둘째, 기존 변수로부터 산술적으로 만든 파생·합성 변수는 원 변수와 구조적으로 얽힌다. 예를 들어 "총점"과 "국어·영어·수학 점수"를 함께 넣으면 총점은 세 과목의 합이므로 완전 종속이 되고, 매출과 단가·수량을 함께 넣어도 비슷한 문제가 생긴다. 이런 파생 변수는 새로운 정보를 추가하지 못하면서 공선성만 유발한다.

셋째, 데이터가 발생하는 현실 세계 자체의 자연 상관(natural correlation) 이 실무에서 가장 흔하고 다루기 까다롭다. 소득과 소비, 주택 면적과 방 개수, 나이와 경력처럼 본질적으로 함께 움직이는 변수들은 제거하기도 어렵고 어느 것을 남길지 판단이 필요하다. 여기에 더해 표본 수가 적거나 설명변수의 분포가 좁으면(예: 특정 소득 구간만 관측) 변수 간 상관이 우연히 과장되어 공선성이 악화된다.

원인 예 성격 심각도
중복 변수 키(cm)와 키(inch) 동시 투입 완전 공선성 매우 높음(제거로 해결)
더미 변수 함정 모든 범주 더미 + 상수항 완전 종속 높음(한 범주 제외)
파생·합성 변수 총점 = 과목합, 매출 = 단가×수량 구조적 종속 높음
자연 상관 소득-소비, 면적-방 개수 근사 공선성 판단 필요
표본 부족·좁은 분포 소표본, 관측 범위 협소 우연·구조 혼재 중간

3. 진단 방법

진단의 핵심 질문은 "어떤 변수가 나머지 변수들의 선형 조합으로 얼마나 잘 설명되는가"이다. 이를 계량하는 대표 지표가 VIF(분산팽창계수, Variance Inflation Factor) 다. i번째 변수를 나머지 독립변수들로 회귀했을 때의 결정계수를 Rᵢ²라 하면, VIFᵢ = 1 / (1 − Rᵢ²)로 정의된다. 이 식의 의미는 직관적이다. Rᵢ²가 0에 가까우면(다른 변수로 설명 안 됨) VIF는 1에 가깝고, Rᵢ²가 1에 가까우면(다른 변수로 거의 완전히 설명됨) VIF는 무한대로 발산한다. 예를 들어 Rᵢ² = 0.9이면 VIF = 1/(1−0.9) = 10이 되며, 이는 해당 변수의 계수 분산이 공선성이 전혀 없을 때에 비해 10배 팽창했다는 뜻이다. 그래서 표준오차는 √10 ≈ 3.16배 커진다.

아래는 진단 절차를 단계적으로 나타낸 세부 프로세스 다이어그램이다.

flowchart TD
  S["설명변수 후보 확정"] --> C["① 상관행렬 · 쌍별 상관 확인"]
  C --> C1{"±0.8 이상?"}
  C1 -->|의심| V["② VIF 계산 · 다중 관계 포착"]
  C1 -->|없음| V
  V --> V1{"VIF ≥ 10?"}
  V1 -->|예| K["③ 조건지수 · 심각도 진단"]
  V1 -->|아니오| OK["공선성 경미 · 진행"]
  K --> K1{"조건지수 30 이상?"}
  K1 -->|예| ACT["해결 방안 적용"]
  K1 -->|아니오| OK

상관행렬은 두 변수 쌍만 보기 때문에 세 개 이상의 변수가 함께 얽히는 다중공선성은 놓칠 수 있다. 예를 들어 X₃ ≈ X₁ + X₂ 처럼 세 변수가 얽히면 X₁-X₃, X₂-X₃의 쌍별 상관은 각각 크지 않을 수 있지만 셋을 함께 넣으면 심각한 공선성이 된다. 이 한계 때문에 VIF와 조건지수(condition index) 로 보완한다. 조건지수는 XᵀX(또는 상관행렬)의 최대 고유값과 최소 고유값의 비의 제곱근으로 정의되며, 값이 클수록 행렬이 특이에 가깝다는 뜻이다. 통상 조건지수가 10~30이면 중간, 30을 넘으면 심각한 공선성으로 판단한다.

진단은 한 지표만 보고 단정하지 않고 세 방법을 단계적으로 병행하는 것이 안전하다. 먼저 상관행렬로 명백한 쌍별 문제를 걸러내고, VIF로 다변수 관계를 정량화한 뒤, 경계 사례는 조건지수와 고유값 구조까지 확인한다. 예컨대 VIF가 8~9로 임계값 10 언저리에 걸치는 변수는, 표본이 작거나 인과 해석이 중요한 분석이라면 보수적으로 처리하고, 예측 위주의 대규모 데이터라면 정규화로 흡수하는 식으로 맥락에 따라 판단을 달리한다.

방법 판단 기준 원리 한계
상관계수 독립변수 간 |r| ≥ 0.8 쌍별 선형관계 포착 3변수 이상 관계 놓침
VIF/공차 VIF ≥ 10(엄격 5), 공차=1/VIF ≤ 0.1 한 변수를 나머지로 설명한 정도 임계값이 관례적
조건지수 30 이상 시 심각 고유값 최대/최소 비의 제곱근 해석에 경험 필요

4. 해결 방안

해결책은 앞서 규정한 분석 목적(해석 vs 예측) 과 원인(중복 vs 자연 상관) 에 따라 달라진다는 점이 가장 중요하다. 하나의 정답이 있는 것이 아니라 상황별 트레이드오프를 판단하는 문제다.

해석이 목적일 때 가장 직접적인 방법은 변수 제거다. 상관이 높은 변수 쌍에서 도메인상 덜 중요하거나 측정이 부정확한 쪽을 제거한다. 다만 이론적으로 필요한 변수를 없애면 누락변수 편의(omitted variable bias) 가 생겨 남은 계수가 왜곡될 수 있으므로, "공선성 해소"와 "편향 유발" 사이의 균형을 신중히 따져야 한다. 정보 손실이 우려되면 상관된 변수들을 묶어 서로 무상관인 새 축으로 재구성하는 주성분분석(PCA)·요인분석을 쓴다. PCA는 공선성을 원천 제거하지만 새 축(주성분)이 원래 변수의 의미를 잃어 해석력이 떨어진다는 대가가 따른다.

예측이 목적이라면 계수를 0 쪽으로 수축시키는 정규화(규제) 회귀가 실용적이다. Ridge 회귀(L2 규제) 는 계수 제곱합에 페널티를 주어 공선성 하에서도 계수 분산을 크게 낮춰 안정화하며, 변수를 제거하지 않고 모두 유지한 채 다룬다. Lasso 회귀(L1 규제) 는 계수 절댓값 합에 페널티를 주어 상관 변수 중 일부 계수를 정확히 0으로 만들어 자동 변수 선택 효과를 낸다. 둘을 결합한 Elastic Net은 상관된 변수 그룹을 함께 선택하거나 배제하는 데 강점이 있어, 유전체 데이터처럼 변수가 많고 상관이 심한 고차원 문제에 자주 쓰인다.

이 밖에 표본 확대로 정보량을 늘리면 우연적 상관이 완화되고, 교호작용항·다항항으로 인한 공선성은 변수를 평균 중심으로 옮기는 중심화(centering) 로 상당 부분 줄일 수 있다.

방안 내용 적합 상황 대가·주의
변수 제거 상관 높은 변수 중 하나 제거 중복·완전 공선성, 해석 목적 누락변수 편의 위험
차원축소(PCA) 무상관 성분으로 재구성 정보 보존·다수 상관 해석력 저하
정규화 회귀 Ridge(L2)·Lasso(L1)·Elastic Net 예측 목적·고차원 약간의 편향 감수
데이터 보강·중심화 표본 확대, centering 소표본·교호작용항 근본 해결 아닐 수 있음

5. 사례 비교

구체적인 수치로 차이를 보자. 주택 가격 예측 모형에 "전용면적(㎡)"과 "방 개수"를 함께 넣었더니 면적의 VIF가 8.5로 나왔다고 하자. 두 변수는 자연 상관이 강하지만 각각 가격에 독립적 정보(같은 면적이라도 방이 많으면 선호가 다름)를 주므로 무작정 제거하기 아깝다. 이때 예측이 목적이면 Ridge로 두 계수를 안정화하는 편이 합리적이다. 반면 "정책 보고서에서 방 개수 1개 증가의 순효과"를 인과적으로 해석해야 한다면, 면적을 통제한 뒤 방 개수 계수를 신중히 해석하거나 설계를 재검토해야 한다. 같은 데이터라도 목적에 따라 처방이 갈리는 것이다.

또 다른 예로, 마케팅 데이터에서 "TV 광고비"와 "총 광고비"를 함께 넣으면(총 광고비 = TV+온라인+오프라인) 완전에 가까운 공선성이 발생해 TV 계수의 부호가 음수로 뒤집히는 일이 흔하다. 이는 파생 변수 중복의 전형이며, 총 광고비를 빼거나 채널별로만 구성하면 해결된다. 트리 기반 모형(랜덤포레스트·XGBoost)은 분기 규칙으로 작동해 공선성에 상대적으로 둔감하므로, 순수 예측이 목적이면 모형 선택 자체가 대응책이 되기도 한다.

6. 심화: 머신러닝·규제 관점의 최신 흐름

전통 통계학에서 다중공선성은 "제거해야 할 결함"으로 취급되었지만, 현대 머신러닝에서는 규제(Regularization)와 특성 공학(feature engineering)으로 관리하는 대상으로 관점이 이동했다. scikit-learn·statsmodels 같은 표준 도구는 VIF 계산과 Ridge/Lasso/Elastic Net을 기본 제공하며, 교차검증으로 규제 강도(λ)를 데이터 주도적으로 선택하는 것이 표준 실무가 되었다. 특히 변수 수 p가 표본 수 n보다 큰 고차원(p ≫ n) 상황(유전체학, 텍스트, 센서 데이터)에서는 공선성이 필연적이므로, 변수 제거보다 L1/L2 규제와 차원축소가 사실상 유일한 실용 해법이다.

MLOps·피처 스토어 관점에서는 사후 처방보다 사전 예방이 강조된다. 피처 스토어에 등록하는 단계에서 상관 높은 파생 특성을 표준화·문서화하고, 데이터 거버넌스 차원에서 중복 특성의 재생산을 막는 것이다. 또한 인과추론 분야에서는 공선성이 인과 식별의 근본 한계로 재해석되어, 단순 상관 통제가 아니라 실험설계·도구변수(IV) 같은 식별 전략으로 접근하는 흐름이 강화되고 있다.

7. 고려사항 및 시사점

  • 목적 우선 판단: 다중공선성은 통계적 결함이 아니라 분석 목적에 따른 선택 문제다. 예측 정확도만 필요한 서비스(추천·수요예측)라면 공선성을 허용하고 정규화로 관리하는 것이 합리적이지만, 정책·인과 해석이 필요한 분석(요인 효과 규명)에서는 반드시 제거·재구성해야 한다.
  • 모형 선택과의 연계: 선형·로지스틱 회귀는 공선성에 민감하지만 트리 기반 모형과 규제 모형은 상대적으로 둔감하다. 따라서 문제의 성격에 맞는 알고리즘 선택 자체가 1차 방어선이 될 수 있으며, 앙상블·규제는 자연스러운 대응 기제다.
  • 사전 예방이 최선: 사후 진단·처방보다 도메인 지식에 기반한 변수 설계로 중복·파생 변수를 애초에 넣지 않는 것이 가장 효과적이다. 이는 피처 스토어 표준화, 데이터 거버넌스, 재현 가능한 파이프라인 관리와 직결된다.
  • 임계값의 상대성: VIF ≥ 10, 조건지수 ≥ 30 같은 기준은 절대 법칙이 아니라 관례다. 표본 크기·모형 목적·업계 관행에 따라 유연하게 적용하되, 판단 근거와 처리 이력을 문서화해 재현성과 감사 추적성을 확보해야 한다.
  • 인과추론과의 경계: 공선성 통제는 상관을 줄일 뿐 인과를 보장하지 않는다. 인과 효과가 필요하면 회귀 기법을 넘어 실험설계·준실험(자연실험)·도구변수 등 식별 전략을 병행하는 것이 기술사 관점의 성숙한 접근이다.

참고자료


한 줄 요약: 다중공선성은 독립변수 간 강한 선형 상관으로 설계행렬 XᵀX가 비가역에 근접해 회귀계수 추정이 불안정해지는 식별 문제 로, VIF(≥10)·조건지수(≥30)로 진단하고 분석 목적(해석 vs 예측)에 따라 변수 제거·PCA·Ridge/Lasso/Elastic Net으로 대응하며, 현대에는 사후 제거보다 규제·특성 설계로 관리하는 대상으로 관점이 이동했다.