회귀모형의 진단
잔차로 모형 가정과 문제 관측값 점검
회귀분석을 실행하면 회귀계수, p값, 결정계수 R² 등을 확인할 수 있습니다. 하지만 이러한 결과가 출력되었다고 해서 모형이 데이터에 적합하거나 예측을 신뢰할 수 있다는 뜻은 아닙니다.
예를 들어 실제 데이터에서는 곡선 형태의 관계가 나타나는데 직선 모형을 사용했다면, 회귀계수가 통계적으로 유의하더라도 모형이 관계의 구조를 제대로 설명하지 못할 수 있습니다. 회귀모형 진단은 모형이 데이터의 특성을 적절히 반영하는지, 추정과 통계적 추론에 문제가 없는지 확인하는 과정입니다.
회귀모형을 왜 진단해야 할까?
회귀모형은 데이터의 관계를 단순화해서 표현합니다. 이 과정에서 실제 데이터의 패턴을 놓치거나 특정 관측값에 지나치게 영향을 받을 수 있습니다. 대표적으로 다음과 같은 문제를 확인합니다.
- 비선형성: 설명변수와 종속변수의 관계가 직선으로 충분히 표현되지 않음
- 이분산성: 예측값에 따라 잔차의 분산이 달라짐
- 잔차의 비정규성: 잔차의 분포가 정규분포에서 크게 벗어남
- 관측값 간 의존성: 잔차가 시간이나 집단에 따라 연관됨
- 이상치와 영향점: 일부 관측값이 회귀계수에 지나치게 큰 영향을 미침
이 문제들은 모두 같은 의미가 아닙니다. 비선형성과 영향점은 회귀계수의 추정 자체를 흔들 수 있어 모형을 고쳐야 하는 경우가 많습니다. 반면 이분산성, 의존성, 비정규성은 계수보다는 주로 표준오차와 가설검정의 신뢰성에 영향을 주므로, 추론 방법을 바꾸는 것으로 대응할 수 있습니다. 02장 8절에서 본 구분과 같습니다.
잔차는 무엇을 알려줄까?
잔차는 실제 관측값과 모형의 예측값 사이의 차이입니다(ei = yi − ŷi). 모형이 데이터를 적절히 설명한다면 잔차에는 설명변수와 관련된 뚜렷한 패턴이 남지 않는 것이 바람직합니다. 모형이 잡아낼 수 있는 구조는 이미 회귀식이 가져갔고, 남은 것은 무작위 변동뿐이어야 하기 때문입니다.
잔차를 살펴보는 가장 기본적인 방법은 잔차 대 적합값 그래프(Residuals vs. Fitted Plot)입니다. 가로축에 예측값(적합값), 세로축에 잔차를 놓습니다.
그림 2의 왼쪽 산점도에서 각 점과 회귀선 사이의 세로 거리(주황 선)가 잔차입니다. 회귀선을 수평으로 눕혀 잔차 0의 기준선으로 만들고, 각 점을 그 기준선에서의 거리만큼 위아래에 찍으면 오른쪽 그래프가 됩니다. 설명변수가 여러 개인 다중회귀에서도 예측값은 하나이므로 같은 방식으로 그릴 수 있습니다.
바람직한 잔차 패턴: 잔차가 0을 중심으로 뚜렷한 곡선이나 깔때기 모양 없이 흩어져 있다면, 적어도 이 그래프에서는 명확한 구조적 문제가 보이지 않는다고 판단할 수 있습니다. 반대로 잔차가 일정한 패턴을 보인다면 모형의 형태나 오차 구조를 다시 살펴볼 필요가 있습니다.
선형성 진단 (Linearity)
일반적인 선형회귀에서는 설명변수와 종속변수 사이의 관계를 회귀식이 적절하게 표현해야 합니다. 여기서 선형성은 관계가 반드시 하나의 직선이어야 한다는 뜻으로만 이해하면 안 됩니다. 모형의 계수가 선형적으로 들어가는지도 중요합니다. 예를 들어 X²를 포함한 다항회귀는 계수에 대해 선형인 모형입니다(04장 2절).
곡선 관계를 직선으로 맞추면 잔차 대 적합값 그래프에 U자나 뒤집힌 U자 같은 곡선이 남습니다. 예측값이 작거나 클 때는 직선이 실제보다 낮게, 가운데에서는 높게 예측하기 때문입니다.
그림 3은 곡선 형태의 데이터에 X² 항을 넣은 모형을 적합한 결과입니다. 곡선이 데이터를 따라가고, 오른쪽 잔차 그래프에서는 직선으로 맞췄을 때 남던 U자 패턴이 사라져 0 주변에 고르게 흩어집니다. 선형성이 충분하지 않으면 다음 방법을 검토할 수 있습니다.
- 설명변수의 로그 또는 제곱항 등 변환
- 다항회귀
- 스플라인이나 다른 유연한 함수 형태
- 연구 목적에 적합한 비선형 모형
다만 그래프에 곡선이 보인다는 이유만으로 무조건 변수를 변환하기보다는, 연구 맥락과 해석 가능성을 함께 고려해야 합니다. 변환과 다항회귀는 08 변수 변환과 다항회귀에서 다룹니다.
등분산성 진단 (Homoscedasticity)
등분산성은 설명변수의 값이나 예측값에 따라 오차의 분산이 일정하다는 가정입니다. 이 가정이 충족되지 않는 현상을 이분산성(Heteroscedasticity)이라고 합니다.
그림 4의 왼쪽은 예측값이 달라져도 잔차의 퍼짐 정도가 대체로 일정한 띠 모양이고, 오른쪽은 예측값이 커질수록 잔차의 퍼짐이 커지는 깔때기 모양입니다. 매출이 큰 매장일수록 매출의 들쭉날쭉한 폭도 큰 것처럼, 값이 클수록 변동도 큰 데이터에서 흔히 나타납니다.
이분산성이 존재하면 일반적인 OLS 계수는 외생성 등 다른 조건이 충족될 때 여전히 불편추정량일 수 있지만, 고전적인 표준오차가 부정확해질 수 있습니다. 그림 4 오른쪽 데이터로 계산하면 기울기는 3.24로 같지만, 고전적 표준오차는 0.18이고 이분산성을 고려한 강건한 표준오차는 0.23입니다. 고전적 방법이 불확실성을 작게 잡아 신뢰구간을 실제보다 좁게 만든 것입니다. 따라서 t검정과 신뢰구간의 신뢰성에 문제가 생길 수 있습니다. 이 경우에는 다음을 고려할 수 있습니다.
- 이분산성에 강건한 표준오차(Heteroskedasticity-robust standard errors)
- 종속변수 또는 설명변수의 적절한 변환
- 가중최소제곱법(WLS) 등 오차 구조를 반영하는 방법
이분산성이 있다고 해서 반드시 회귀모형 자체를 폐기해야 하는 것은 아닙니다. 계수 추정과 추론 중 어떤 부분에 문제가 생기는지 구분하는 것이 중요합니다.
잔차의 정규성 진단 (Normality)
고전적인 선형회귀의 통계적 추론에서는 오차항의 정규성을 가정하기도 합니다. 정규성은 특히 소표본에서 t검정과 F검정의 정확한 분포를 확보하는 데 중요합니다. 잔차의 정규성은 일반적으로 Q–Q 플롯, 히스토그램, Shapiro–Wilk 등의 정규성 검정으로 살펴봅니다.
Q–Q 플롯의 점들이 대각선 주변에 놓이면 정규분포와 대체로 일치하는 패턴으로 볼 수 있습니다. 그림 5의 오른쪽처럼 끝부분에서 크게 벗어나거나 휘는 형태가 나타나면 꼬리나 왜도 등에 차이가 있을 수 있습니다. Q–Q 플롯의 모양별 읽는 법은 분산분석의 가정과 진단 장에서 자세히 다뤘습니다.
다만 잔차가 정규분포를 따르지 않는다고 해서 OLS 계수를 계산할 수 없는 것은 아닙니다. 표본이 충분히 크면 일부 추론은 근사적으로 유효할 수 있으며, 정규성 검정은 표본 크기에 민감하므로 그래프와 연구 맥락을 함께 고려해야 합니다.
잔차의 독립성 진단 (Independence)
관측값의 오차가 서로 연관되어 있으면 독립성 가정에 문제가 생길 수 있습니다. 특히 시계열 데이터나 같은 학교·병원·기업에 속한 관측값에서는 이러한 문제가 나타날 수 있습니다.
예를 들어 월별 매출을 분석했을 때 이번 달의 잔차가 양수라면 다음 달의 잔차도 양수인 경향이 있을 수 있습니다. 이를 자기상관(Autocorrelation)이라고 합니다.
그림 6은 이번 달 잔차를 가로축, 다음 달 잔차를 세로축에 놓은 그래프입니다. 잔차가 서로 독립이라면 오른쪽처럼 둥근 구름 모양이고 상관이 0에 가깝습니다. 자기상관이 있으면 왼쪽처럼 오른쪽 위로 기울어지는데, 이 예에서는 상관이 0.84입니다. 이번 달이 예측보다 높으면 다음 달도 높을 가능성이 크다는 뜻입니다. 이런 데이터는 관측값 40개가 있어도 독립적인 정보는 그보다 훨씬 적어서, 일반적인 표준오차가 불확실성을 작게 잡게 됩니다.
검토할 수 있는 방법은 다음과 같습니다.
- 잔차를 시간 순서로 그려 패턴 확인
- 잔차의 자기상관함수(ACF) 확인
- 연구 설계에 적합한 자기상관 검정
- 시계열 구조나 군집 구조를 반영한 표준오차 또는 모형 사용
잔차가 독립적이지 않으면 일반적인 표준오차가 부정확해질 수 있습니다. 따라서 데이터가 어떻게 수집되었는지를 고려해 적절한 진단법을 선택해야 합니다. 학교·병원처럼 집단으로 묶인 데이터는 12 혼합효과모형에서 다룹니다.
이상치, 레버리지, 영향점은 어떻게 다를까?
이 세 가지는 서로 관련되어 있지만 같은 개념은 아닙니다.
| 개념 | 의미 | 대표적인 진단 |
|---|---|---|
| 이상치 (Outlier) | 모형이 예측한 값과 실제값의 차이가 큰 관측값 | 표준화 잔차, 학생화 잔차 |
| 레버리지 (Leverage) | 설명변수 값이 다른 관측값들과 비교해 특이한 관측값 | Hat 값 |
| 영향점 (Influential Point) | 해당 관측값을 포함하느냐에 따라 추정 결과가 크게 달라지는 관측값 | Cook's distance, DFBETAs |
그림 7은 같은 데이터에 주황색 점 하나를 더했을 때 회귀선이 어떻게 바뀌는지 보여 줍니다(점선은 그 점이 없을 때의 회귀선).
- 이상치: X 값은 평범한데 Y 값이 회귀선에서 멀리 떨어져 있습니다. 잔차는 크지만 회귀선은 조금만 움직입니다.
- 레버리지: X 값이 다른 점들보다 훨씬 크지만 회귀선이 가리키는 방향에 정확히 놓여 있습니다. 선을 바꾸지 않습니다.
- 영향점: X 값이 멀리 떨어져 있으면서 회귀선에서도 벗어나 있습니다. 시소의 끝에 앉은 것처럼 회귀선을 크게 끌어내립니다.
예를 들어 대부분의 학생이 1~5시간 공부했는데 한 학생만 20시간 공부했다면, 그 학생은 설명변수 측면에서 레버리지가 높을 수 있습니다. 반면 실제 점수와 예측 점수의 차이가 매우 큰 학생은 이상치일 수 있습니다. 어느 한 가지 특성만으로 반드시 영향점이 되는 것은 아니며, 레버리지가 높으면서 잔차도 클 때 영향점이 되기 쉽습니다.
Cook's distance는 개별 관측값이 전체 회귀 추정 결과에 미치는 영향을 평가하는 데 사용됩니다. 그림 7 영향점 데이터로 계산하면 다른 관측값은 모두 0.2 이하인데 그 점만 약 13입니다. 흔히 1을 참고선으로 쓰지만 절대적인 기준은 아닙니다. 진단 지표가 높다고 해서 그 관측값을 자동으로 삭제해야 한다는 뜻은 아닙니다. 먼저 입력 오류인지 확인하고, 실제로 유효한 관측값이라면 포함·제외에 따른 결과의 민감도를 검토하는 것이 좋습니다.
회귀모형 진단 결과를 어떻게 활용할까?
진단 결과는 단순히 통과와 실패로 구분하는 것이 아니라, 문제가 발견되었을 때 적절한 대응을 선택하는 데 활용합니다.
한 가지 진단 결과만으로 해결책을 결정하지 않는 것이 중요합니다. 예를 들어 잔차의 분산이 일정하지 않다고 해서 종속변수에 로그 변환을 적용하면 항상 문제가 해결되는 것은 아닙니다. 또한 모형을 수정했다면 수정 후에도 진단을 다시 수행해야 합니다. 곡선을 고치려고 넣은 X² 항이 새로운 영향점을 만들 수도 있기 때문입니다.
결과표를 믿기 전에 잔차를 봅니다.
- 회귀모형 진단은 추정 결과가 데이터의 구조를 적절히 반영하는지 확인하는 과정입니다.
- 잔차 대 적합값 그래프는 선형성 및 등분산성 문제를 살펴보는 데 유용합니다.
- Q–Q 플롯은 잔차의 정규성을, 시간 순서 그래프와 ACF는 잔차의 의존성을 확인하는 데 도움이 됩니다.
- 이상치, 레버리지, 영향점은 구별해야 하며, 진단 지표만으로 관측값을 자동 삭제해서는 안 됩니다.
- 문제를 발견하면 데이터, 모형의 형태, 표준오차 및 연구 목적을 함께 검토해야 합니다.
다음은 07 다중공선성입니다. 설명변수끼리 강하게 연관되어 있을 때 회귀계수의 추정과 해석이 어떻게 어려워지는지 살펴보고, VIF와 같은 진단 지표를 이용해 다중공선성을 평가하는 방법을 알아봅니다.
잔차 대 적합값 그래프에서 곡선은 비선형성, 깔때기는 이분산성을 뜻하고, Q–Q 플롯은 정규성, 이웃한 잔차의 상관은 의존성을 보여 줍니다. 회귀선을 크게 바꾸는 영향점은 Cook's distance로 찾되 바로 지우지 말고 민감도를 확인합니다.