회귀분석을 돌렸는데 이상합니다. 모형 전체는 유의하고 R²도 .40이 넘는데, 개별 변수는 하나도 유의하지 않습니다. 아니면 상관분석에서 분명히 정적 상관이었던 변수가 회귀에서는 음의 계수로 나옵니다. 둘 다 다중공선성(multicollinearity)의 전형적인 증상입니다.
이 글은 다중공선성 하나만 끝까지 파고듭니다. 무엇이 문제인지, SPSS에서 어떤 값을 어떤 순서로 보는지, VIF 기준이 왜 문헌마다 다른지, 그리고 진단이 나온 다음 실제로 무엇을 해야 하는지까지 다룹니다. 회귀분석 절차 전체가 필요하다면 SPSS 다중회귀분석 실전 튜토리얼을 먼저 보시고, 여기서는 그 글의 ‘가정 5’ 하나를 확대해 본다고 생각하시면 됩니다.
다중공선성은 정확히 무엇이 문제인가
다중공선성이란 독립변수들끼리 지나치게 강하게 상관된 상태입니다. 흔한 오해가 하나 있습니다. 다중공선성은 모형의 예측력을 망치지 않습니다. R²도, F도, 예측값도 멀쩡합니다. 망가지는 것은 오직 개별 회귀계수의 해석입니다.
이유는 회귀계수의 정의에 있습니다. 회귀계수는 “다른 변수를 고정했을 때” 그 변수 고유의 기여입니다. 그런데 두 변수가 거의 같이 움직이면 ‘다른 변수를 고정한 상태’에 해당하는 자료가 거의 없습니다. 정보가 없으니 추정이 흔들리고, 그 흔들림이 표준오차의 팽창으로 나타납니다. 표준오차가 커지면 t 값이 작아지고, 그래서 계수가 유의하지 않게 됩니다.
실제로 나타나는 증상은 넷입니다.
- 모형은 유의한데 개별 계수는 유의하지 않다. 가장 대표적인 신호입니다.
- 계수의 부호가 상식이나 상관계수와 반대로 나온다.
- 변수를 하나 넣고 뺄 때마다 다른 계수가 크게 흔들린다.
- 표준화 계수의 절댓값이 1을 넘는다. 심각한 수준의 신호입니다.
1단계 — 진단 순서: 네 가지를 차례로 본다

진단 1. 독립변수 간 상관행렬
가장 먼저 볼 것이자 가장 자주 생략되는 것입니다. <분석 → 상관분석 → 이변량>에서 독립변수만 넣고 상관행렬을 뽑습니다. 두 변수의 상관이 .80을 넘으면 경고, .90을 넘으면 거의 확실한 문제로 봅니다. 이 단계에서 잡히면 원인이 명확해 대처도 쉽습니다.
다만 상관행렬만으로는 부족합니다. 세 변수가 짝짓기로는 각각 .60 정도인데 셋을 합치면 거의 완전히 겹치는 경우가 있고, 이런 다변량 겹침은 이변량 상관에 잡히지 않습니다. 그래서 다음 지표가 필요합니다.
진단 2. VIF와 공차
회귀 대화상자의 <통계량 → 공선성 진단>을 체크하면 계수표 오른쪽에 공차(Tolerance)와 VIF(분산팽창지수)가 붙습니다.
VIF의 의미는 정확합니다. 어떤 독립변수를 나머지 독립변수 전부로 회귀했을 때의 결정계수를 R²j라 하면, VIF = 1 / (1 − R²j)이고 공차 = 1 − R²j = 1/VIF입니다. 그러니 VIF = 10이라는 것은 그 변수의 90%가 다른 변수들로 설명된다는 뜻이고, VIF = 5는 80%입니다. 이렇게 보면 기준의 의미가 훨씬 분명해집니다.
그런데 임계값은 문헌마다 다릅니다. 이 점을 알고 쓰는 것이 중요합니다.
- VIF 10 초과 — 가장 널리 쓰이는 기준입니다. 회귀분석 표준 교재 계열(Kutner 등)에서 제시되어 국내 논문 대다수가 이 값을 인용합니다.
- VIF 5 초과 — 더 엄격한 관행으로, 사회과학과 경영학 분야에서 널리 쓰입니다. 5에서 10 사이는 ‘주의 구간’으로 다루는 경우가 많습니다.
- VIF 3 또는 2.5 초과 — 생태학 등 일부 분야에서 채택하는 보수적 기준입니다.
- 공차 기준 — .1 미만이면 위험, 엄격하게는 .2 미만부터 주의로 봅니다.
요컨대 5와 10 사이는 회색지대입니다. 논문에는 “VIF는 1.4~3.2로 기준치 10을 밑돌아”처럼 채택한 기준을 명시하는 편이 안전하고, 값이 6~8 사이라면 왜 문제로 보지 않았는지 한 문장을 덧붙이는 것이 좋습니다.
진단 3. 상태지수와 분산비율
같은 <공선성 진단> 옵션은 공선성 진단이라는 별도 표도 출력합니다. 여기에 상태지수(Condition Index)와 분산비율(Variance Proportions)이 있습니다. 잘 안 읽히지만 어떤 변수들이 서로 얽혀 있는지를 알려 주는 유일한 표라 진단에는 가장 유용합니다.
널리 인용되는 판정 방식(Belsley 계열)은 이렇습니다. 상태지수가 30을 넘는 차원을 찾고, 그 행에서 분산비율이 .90 이상인 변수가 두 개 이상이면 그 변수들이 서로 공선 관계에 있다고 봅니다. 상태지수 15~30은 중간 정도의 의존을 시사한다는 해석도 함께 쓰입니다.
읽는 예시. 독립변수가 셋인 모형에서 차원 4의 상태지수가 34.7이고, 그 행에서 ‘조직몰입’의 분산비율이 .94, ‘직무만족’이 .91, 나머지 변수가 .03이라고 합시다. 이때 결론은 명확합니다. 세 변수 전부가 아니라 조직몰입과 직무만족 두 개가 서로 얽혀 있는 것이고, 손댈 대상도 그 둘로 좁혀집니다. VIF는 “이 변수가 문제다”까지만 말해 주지만 이 표는 “누구와 얽혀서 문제다”까지 말해 줍니다. 상수항의 분산비율이 함께 높게 나오는 것은 흔한 일이며, 변수를 중심화하지 않았을 때 자연히 생기는 현상이므로 그 자체를 문제로 보지는 않습니다.
진단 4. 계수 자체의 이상 징후
숫자 기준을 통과하더라도, 앞에서 정리한 네 가지 증상(부호 반전, 표준화 계수 절댓값 1 초과, 변수 투입에 따른 급격한 변동)이 보이면 실질적인 문제가 있다고 판단해야 합니다. 기준값은 어디까지나 관례이지 진단의 전부가 아닙니다.
2단계 — 원인을 먼저 분류한다
해결책을 고르기 전에 왜 겹쳤는지를 알아야 합니다. 원인에 따라 손댈 곳이 완전히 다릅니다.
- 구조적 공선성. 자료의 성질이 아니라 우리가 변수를 만든 방식 때문에 생깁니다. 상호작용항(X×M), 제곱항(X²), 총점과 하위요인을 함께 투입한 경우가 대표적입니다.
- 자료 기반 공선성. 실제로 두 개념이 현실에서 같이 움직입니다. 교육수준과 소득, 직무만족과 조직몰입처럼요.
- 설계 실수. 같은 척도의 총점과 하위점수를 같이 넣거나, 범주가 k개인 변수에 더미를 k개 만든 경우입니다. 후자는 완전공선성이라 SPSS가 변수 하나를 자동으로 제외해 버립니다. 더미는 반드시 k − 1개만 만듭니다.
- 표본 부족. 사례가 적으면 변수들의 독립적 변동을 관찰할 자료가 부족해집니다.
변수 역할과 조작적 정의가 정리되어 있지 않으면 이 분류부터 막힙니다. 그 단계가 헐겁다면 독립·종속·매개·조절·통제변수 구분과 조작적 정의로 돌아가 변수표를 먼저 확정하십시오.
3단계 — 해결 방법 다섯 가지

해결 1. 변수 제거 — 단, 이론적 근거를 붙여서
가장 간단하고 가장 자주 쓰입니다. 다만 “VIF가 높아서 뺐다”만으로는 부족합니다. 왜 그 변수를 남기고 저 변수를 뺐는지가 이론이나 연구 목적에서 나와야 합니다. 두 변수 중 선행연구가 더 두텁고 척도의 신뢰도가 더 높은 쪽을 남기는 것이 일반적인 기준입니다. 제거한 뒤에는 R²가 거의 떨어지지 않는다는 사실을 함께 보고하면 판단의 정당성이 강해집니다.
해결 2. 변수 합성
두 변수가 사실상 같은 개념을 재고 있다면 평균이나 표준점수 합으로 하나의 지표로 묶습니다. 이 판단은 요인구조로 뒷받침하는 것이 정석이라, SPSS 탐색적 요인분석(EFA) 실전 튜토리얼에서 두 변수가 한 요인으로 묶이는지 먼저 확인하는 순서가 좋습니다. 합성한 뒤에는 새 변수의 신뢰도를 다시 보고해야 합니다.
해결 3. 위계적 투입으로 나누어 보고
겹치는 변수들을 같은 단계에 넣지 않고 블록을 나누어 순차 투입하면, 각 블록이 추가로 설명하는 분산(ΔR²)을 근거로 이야기를 할 수 있습니다. 개별 계수를 놓고 다투지 않아도 되므로 실무적으로 매우 유용한 우회로입니다. 변수를 버리지 않아도 된다는 점이 가장 큰 장점입니다.
해결 4. 정규화 회귀 계열
능형회귀(ridge regression)나 주성분회귀는 계수 추정을 안정화하는 통계적 해법입니다. 다만 SPSS 기본 메뉴에서는 접근이 번거롭고, 계수 해석이 어려워져 사회과학 학위논문에서는 잘 쓰이지 않습니다. 예측이 목적이고 개별 계수 해석이 덜 중요한 연구에서 검토할 만합니다.
해결 5. 표본 늘리기
근본적이지만 대개 현실적이지 않습니다. 다만 표본이 작아서 생긴 불안정이라면 이것이 유일한 정답이며, 그 사실을 연구의 한계점과 제언에 적는 것이 정직한 마무리입니다.
4단계 — 상호작용항의 평균중심화, 오해를 바로잡자
조절효과를 검증하려고 X×M 상호작용항을 만들면 VIF가 20, 30까지 치솟습니다. 여기서 거의 모든 지도교수가 “평균중심화(mean centering)를 하라”고 말하고, 실제로 중심화하면 VIF가 2~3으로 떨어집니다. 그래서 “중심화가 다중공선성을 해결한다”는 믿음이 널리 퍼져 있습니다.
절반만 맞습니다. 방법론 문헌이 반복해서 지적해 온 바에 따르면, 중심화가 제거하는 것은 비본질적 다중공선성, 즉 변수의 척도 원점 때문에 생기는 인위적인 겹침뿐입니다. 중심화 전후로 상호작용항의 회귀계수, 표준오차, t 값, 유의확률, 모형의 R²는 전혀 달라지지 않습니다. 실제로 정보가 부족한 정도는 그대로이기 때문입니다.
그렇다면 왜 하느냐. 해석을 위해서입니다. 중심화하면 상호작용 모형에서 X의 계수가 “M이 평균일 때 X의 효과”라는 의미 있는 값이 됩니다. 중심화하지 않으면 “M이 0일 때”가 되는데, 5점 척도에서 M = 0은 존재하지 않는 값이라 해석이 불가능합니다. 조절효과 검증의 전체 절차는 매개효과·조절효과 분석과 PROCESS 매크로에서 다룹니다.
따라서 논문에는 이렇게 씁니다. “상호작용항 투입에 따른 다중공선성 문제를 완화하고 계수 해석을 명확히 하기 위해 독립변수와 조절변수를 평균중심화한 뒤 상호작용항을 산출하였다.” ‘해결했다’가 아니라 ‘완화하고 해석을 명확히 했다’가 정확한 표현입니다.
5단계 — 논문에 어떻게 보고하는가
보고 위치는 두 곳입니다. 회귀 결과표에 VIF 열을 추가하고, 결과 절 첫머리에 가정 점검 문단으로 한두 문장을 넣습니다.
| 변수 | B | SE B | β | t | 공차 | VIF |
|---|---|---|---|---|---|---|
| 직무자율성 | .312 | .061 | .334 | 5.12*** | .704 | 1.42 |
| 상사지원 | .245 | .058 | .271 | 4.22*** | .641 | 1.56 |
| 보상공정성 | .118 | .064 | .126 | 1.84 | .595 | 1.68 |
주. *** p < .001. 공차는 모두 .1 이상, VIF는 모두 10 미만으로 다중공선성 문제는 없는 것으로 판단하였다.
문제가 없을 때 — 회귀분석의 기본 가정을 검토한 결과, 공차는 .595~.704, 분산팽창지수(VIF)는 1.42~1.68로 나타나 판단 기준인 공차 .1, VIF 10을 모두 충족하여 다중공선성 문제는 없는 것으로 판단하였다.
문제가 있어 조치했을 때 — 최초 모형에서 조직몰입과 직무만족의 상관이 .87로 높고 두 변수의 VIF가 각각 8.4와 8.1로 나타나 다중공선성이 우려되었다. 두 변수가 이론적으로 유사한 태도 변인을 측정한다고 판단하여, 선행연구에서 본 연구의 종속변수와 더 직접적으로 연결되는 조직몰입만을 최종 모형에 포함하였다. 그 결과 모든 변수의 VIF가 2.3 이하로 낮아졌으며, 모형의 설명력은 .41에서 .39로 소폭 감소하는 데 그쳤다.
두 번째 문단이 좋은 서술의 본보기입니다. 발견 → 판단 근거 → 조치 → 조치 이후 결과가 모두 들어 있어 심사위원이 되물을 여지가 없습니다. 결과 절 전체의 시제와 서술 규칙은 논문 연구 결과(Results) 작성법을 참고하십시오.
“다중공선성 문제는 없는 것으로 판단하였다”를 매번 다시 쓰고 있다면
가정 점검 문단은 모형마다 숫자만 바뀌는 정형 문장이라, 모형이 네 개면 같은 문장이 네 번 나옵니다. Tesify AI 학술 에디터로 반복 문단의 표현과 연결어를 정돈하면 원고 전체의 문체가 고르게 맞춰집니다. 어떤 기준을 채택할지, 어떤 변수를 뺄지 같은 판단은 연구자가 내리고, 문장을 학술 문체로 다듬는 작업만 맡기는 방식이 안전합니다.
심사에서 자주 지적되는 실수
- VIF를 아예 보고하지 않는 것. 독립변수가 셋 이상이면 거의 반드시 질문이 나옵니다.
- 기준을 밝히지 않는 것. “다중공선성은 없었다”만 쓰면 무엇과 비교했는지 알 수 없습니다.
- VIF가 8인데 ‘10 미만이므로 문제없다’로 끝내는 것. 회색지대라는 사실을 인정하고 한 문장을 덧붙이는 편이 낫습니다.
- 변수를 뺀 사실을 숨기는 것. 최초 모형과 최종 모형을 모두 보이는 편이 오히려 신뢰를 얻습니다.
- 중심화로 ‘해결했다’고 쓰는 것. 완화와 해석 명확화가 정확한 표현입니다.
- 더미변수를 범주 수만큼 만드는 것. k − 1개가 원칙이며, 빠진 한 범주가 기준집단이 됩니다.
자주 묻는 질문
VIF가 3인데 계수가 유의하지 않습니다. 다중공선성 때문인가요?
아닐 가능성이 큽니다. VIF 3은 대부분의 기준에서 문제가 아닙니다. 표본 크기가 부족하거나 실제로 그 변수의 고유 효과가 작은 것일 수 있습니다.
통제변수의 VIF가 높은데도 문제인가요?
통제변수의 계수를 해석하지 않는다면 실질적 영향은 작습니다. 다만 통제변수가 관심 독립변수와 겹치는 경우에는 관심 변수의 계수까지 흔들리므로 반드시 확인해야 합니다.
상관이 .70인 두 변수를 꼭 하나 빼야 하나요?
상관 .70 자체는 자동 탈락 기준이 아닙니다. 두 변수를 함께 넣었을 때의 VIF와 상태지수, 그리고 계수의 안정성을 함께 보고 판단하십시오.
로지스틱 회귀에서도 VIF를 볼 수 있나요?
로지스틱 회귀 대화상자에는 공선성 진단 옵션이 없습니다. 실무적으로는 같은 독립변수 조합으로 선형회귀를 한 번 돌려 VIF만 확인하는 우회 방법이 널리 쓰입니다.
구조방정식모형에서도 같은 문제가 생기나요?
생깁니다. 잠재변수 간 상관이 지나치게 높으면 판별타당도 문제가 되며, 이 경우에는 VIF가 아니라 평균분산추출(AVE)과 상관제곱을 비교하는 방식으로 점검합니다.
정리
다중공선성은 예측력이 아니라 계수 해석을 망가뜨립니다. 상관행렬 → VIF·공차 → 상태지수·분산비율 → 계수의 이상 징후 순으로 진단하고(1단계), 구조적인지 자료 기반인지 설계 실수인지 원인을 분류한 뒤(2단계), 변수 제거·합성·위계적 투입·정규화 회귀·표본 확대 중에서 고르고(3단계), 상호작용항이라면 중심화의 역할을 정확히 이해한 채 쓰고(4단계), 표에 VIF 열을 넣고 조치 과정까지 문장으로 남기면(5단계) 됩니다. 기준값은 관례이지 법칙이 아니라는 점만 기억하면, 이 항목은 심사에서 더 이상 약점이 되지 않습니다.
