5.9 상관관계, 인과관계, 그리고 예측

상관관계는 인과관계가 아닙니다

상관관계(correlation)를 인과관계(causation)와 또는 인과관계를 예측하는 것과 혼동하지 않는 것은 중요합니다. 변수 \(x\)는 변수 \(y\)를 예측할 때 유용할 수 있습니다만, 이것이 \(x\)\(y\)의 원인이 된다는 의미는 아닙니다. \(x\) \(y\)의 원인이 될 수 있습니다만, \(y\)\(x\)의 원인이 될 수도 있고, 또는 둘 사이의 관계는 단순한 인과관계보다 더 복잡할 수 있습니다.

예를 들면, 매달 해변 리조트에서 물에 빠져 죽은 횟수를 해당 기간에 팔린 아이스크림 수와 함께 모델링할 수 있습니다. 이 모델이 그럴듯한 예측값을 줄 수 있습니다. 그 이유는 아이스크림 때문에 물에 빠져 죽지 않기 때문이 아니라, 더운 날에 사람들이 아이스크림을 더 많이 먹고 더운 날에 수영을 할 가능성도 높기 때문입니다. 따라서 두 변수(아이스크림 판매량과 물에 빠져 죽는 것)가 상관 관계가 있습니다만, 하나가 다른 하나의 원인인 것은 아닙니다. 두 가지 변수 모두 제 3의 변수인 기온이 원인입니다. 이것이 바로 생략된 변수가 반응변수(response variable)와 적어도 하나 이상의 예측 변수(predictor variable) 모두에 영향을 미치는 “혼선 (confounding)”의 예입니다.

우리가 사용하는 예측 모델에 포함되지 않는 어떤 변수가 반응변수(response ariable)와 하나 이상의 예측변수(predictor variable) 모두에 영향을 줄 때, 이것을 혼선자(confounder)로 다룹니다. 혼선(confounding)은 어떤 변수들이 다른 변수들에 영향을 주고 있는지 판단하기 어렵게 만들지만, 항상 예측 작업을 더 어렵게 만들지는 않습니다.

비슷하게, 아침에 길가에서 자전거 타는 사람의 수를 보고 오후에 비가 올 것인지 예측하는 것도 가능할 것입니다. 평소보다 자전거 타는 사람들이 적을 때는, 그 날에 오후에 비가 올 것이라서 그럴 수 있습니다. 모델이 그럴듯한 예측값을 낼 수 있겠지만, 이것은 자전거 타는 사람이 비를 오지 않게 하기 때문이 아니라, 사람이 공개된 일기 예보에서 비가 오지 않는다고 말할 때 자전거를 더 많이 탈 것이라서 그런 것입니다. 이 경우에, 인과관계가 있습니다만, 여기서 이야기하는 예측 모델과는 방향이 반대입니다. 비가 올 것이라는 예측 때문에 자전거 타는 사람이 줄어듭니다. 즉, \(x\) (강우)가 \(y\) (자전거 타는 사람)에 영향을 미칩니다.

두 변수 사이에 상관관계가 없을 때나 모델과는 반대로 인과관계(causality)가 성립할 때도, 또는 혼선(confounding)이 있더라도, 상관관계(correlations)가 예측 작업에서는 유용하다는 것을 이해하는 것이 중요합니다.

하지만, 인과관계를 결정할 수 있으면, 종종 더 나은 모델이 가능합니다. 이 예제에서, 아이스크림 판매량과 물에 빠져 죽는 것은 온도와 해변 리조트에 방문하는 사람 숫자에 영향을 받을 것입니다. 다시 한번 강조하지만, 높은 기온 때문에 실제로 사람이 죽는 것은 아닙니다만, 이러한 변수는 사람이 왜 수영을 하는지와 더욱 직접적으로 관련이 있습니다. 따라서 물에 빠져 죽는 것에 대한 더 나은 모델에는 아마도 온도, 방문자 수가 들어가고 아이스크림 판매량이 빠질 것입니다.

상관관계를 가지는 예측변수로 예측하기

두 개 이상의 예측변수(predictor)가 큰 상관관계를 가질 때, 각각의 효과를 정확하게 분리하는 것은 항상 쉽지 않은 일입니다. 2000년부터 2011년 데이터를 가지고 어떤 회사의 2012년 월별 매출을 예측하는 상황을 가정해봅시다. 2008년 1월에 새로운 경쟁자가 시장에 들어왔고, 시장 점유율을 가져가기 시작했습니다. 동시에, 경제 상황이 나빠지기 시작했습니다. 여러분은 여러분의 예측 모델에서, (지역 지상파 광고 시간을 이용하여 측정한) 경쟁자의 활동과 (GDP를 이용하여 측정한) 경제 상황 둘 다를 넣었습니다. 두 예측변수의 효과를 분리하는 것은 두 변수가 크게 상관관계를 가지고 있기 때문에 가능하지 않을 것입니다.

예측변수(predictor variable)의 효과들을 분리할 필요없이 예측값을 계산할 수 있기 때문에 상관관계를 가지는 에측변수들이 있다는 것은 실제로 예측할 때 큰 문제는 아닙니다. 하지만, 시나리오에 예측변수 사이의 관계가 들어가야만 하기 때문에, 시나리오 예측에서는 문제가 됩니다. 다양한 예측변수(predictor variable)의 기여도에 대한 과거 데이터 분석이 필요한 경우에도 문제가 됩니다.

다중공선성과 예측

밀접하게 관련된 주제는 다중 회귀에 2개 이상의 예측변수(predictor variable)로 비슷한 정보가 주어질 때 나타나는 다중공선성(Multicollinearity)입니다.

이 성질은 두 예측변수(predictor variable)의 상관관계가 아주 높은 상황(즉, 상관 계수가 1이나 -1에 가까울 때)에서 나타날 수 있습니다. 이 경우에, 변수 중에서 하나의 값을 알면 다른 변수의 값을 추정할 수 있습니다. 따라서, 두 예측변수는 비슷한 정보를 주고 있는 셈입니다. 예를 들면, 발 크기는 키를 예측하는데 사용할 수 있습니다만, 같은 모델에서 왼쪽 발과 오른쪽 발의 크기를 모두 사용한다고 해서 예측값을 더 나쁘게 만들지는 않을 것이더라도 더 나아지게 만들지는 않을 것입니다.

다중공선성은 예측변수(predictor variable)의 선형결합(linear combination)이 예측변수의 다른 선형결합과 매우 상관관계가 높을 때도 나타날 수 있습니다. 이 경우에는, 첫 번째 예측변수의 묶음 값을 알면 두 번째 예측변수의 묶음의 값에 대한 정보를 많이 알 수 있습니다. 따라서, 두 묶음이 비슷한 정보를 주고 있는 셈입니다.

가변수 함정(dummy variable trap)은 다중공선성(multicollinearity)의 특별한 경우입니다. 분기별 데이터를 가지고 있고 4개의 가변수(\(d_1,d_2,d_3\) 그리고 \(d_4\))를 사용하는 상황을 가정해봅시다. 그러면 \(d_4=1-d_1-d_2-d_3\)이고, 따라서 \(d_4\)\(d_1+d_2+d_3\) 사이에는 완벽한 상관관계가 있습니다.

완벽한 상관관계의 경우에는(즉, 가변수 함정처럼 상관계수가 +1이나 -1인), 회귀 모델을 추정할 수 없습니다.

상관관계가 크면(+1이나 -1에 가깝지만 같지는 않은), 회귀 계수를 계산하여 추정하는 것이 어렵습니다. 사실, 몇몇 소프트웨어(특히, 마이크로소프트 엑셀)은 아주 정확하지 않은 계수 추정치를 낼 수 있습니다. 대부분의 유명한 통계 소프트웨어는 계수 추정치에 대해 다중공선성의 효과를 제한하는 알고리즘을 사용할 것입니다만, 정말 조심할 필요가 있습니다. R, SPSS, SAS, Stata 같은 주요 소프트웨어 패키지는 모두 이러한 문제를 할 수 있는 한 피하기 위한 추정 알고리즘을 사용합니다.

다중공선성이 나타날 때, 각 회귀 계수와 관련된 불확실성은 클 것입니다. 이것은 추정하기 어렵기 때문입니다. 결과적으로, 회귀 계수에 대한 통계 검정(즉, t-검정)을 신뢰할 수 없게 됩니다. (예측할 때는 이러한 검정에 거의 관심을 두지 않습니다.) 또한, 예측값으로 이어지는 각각의 나뉜 예측변수(predictor variable)에 대해 정확하게 서술할 수 없을 것입니다.

미래 예측변수(predictor variable)의 값이 예측변수의 과거 값의 범위를 벗어날 때 예측값을 신뢰할 수 없게 될 것입니다. 예를 들면, 둘 사이의 상관관계가 아주 높은 예측변수 \(x_1\)\(x_2\)를 이용하는 회귀 모델을 맞춘다고 가정해봅시다. 그리고 맞춘 데이터에서 \(x_1\)의 값이 0과 100사이의 범위에 포함된다고 가정해봅시다. 그러면 \(x_1>100\) 또는 \(x_1<0\)에 기초한 예측값은 신뢰할 수 없게 될 것입니다. 예측변수의 미래 값이 과거의 범위를 훨씬 넘어설 때는 항상 살짝 위험합니다만, 다중공선성(multicollinearity)이 있을 때는 특별히 위험합니다.

좋은 통계 소프트웨어를 사용하고 있고, 예측변수(predictor variable) 각각이 구체적으로 기여하는 양에 관심이 없고, 예측변수의 미래 값이 과거 범위에 들어가면, 특별히 걱정할 필요가 없습니다 — 완벽한 상관관계가 나타나는 경우를 제외하고는 다중공선성(multicollinearity)이 문제가 되지 않습니다.