Yarkoni, T., & Westfall, J. (2017). Choosing prediction over explanation in psychology: Lessons from machine learning. Perspectives on Psychological Science, 143(5), 1-23. https://doi.org/10.1177/1745691617693393

통계적 모델링에 대한 두 가지 접근법을 설명 중심과 예측 중심으로 나눌 수 있고, 그 중에서 설명 중심의 접근법이 심리학과 사회과학에서 보다 널리 받아들여져 왔다는 내용이 지난 포스팅의 핵심이었다. 그래서 어떻다는 것인가? 뭐가 문제란 것인가? 설명 중심의 접근법이 널리 받아들여지면 안되는 이유라도 있는가? 당연히 이런 질문이 나오게 될 것이다.

이 질문에 대한 Yarkoni & Westfall 의 대답을 한 마디로 요약한 것이 바로 과적합(overfitting)이다. 즉 모델이 지나치게 훈련 데이터에 맞춰져버려서, 훈련에 사용된 데이터 이외의 데이터에 대한 일반화 능력이 떨어진다는 것이다. 모든 머신러닝 교과서의 초반부에 나올 정도로 과적합은 널리 알려져 있으며 중요한 개념이다. 그런데 이건 그냥 머신러닝 동네의 개념일 뿐이라고만 생각했을 뿐, 그것을 연구방법론 시간에 배웠던 통계 모형의 적합도에 적용할 생각은 전혀 하지 못했다. 데이터에 적합한 모형이 좋은 모형이고 높은 적합도가 바람직한 것이라는 도그마에 빠져 있었을 뿐, 그것의 일반화 가능성에 대해서는 생각하지 못했던 것이다.

이 논문을 읽으면서 느꼈던 가장 충격적인 포인트가 바로 이것이었다. 내 연구를 할 때나 남의 연구를 볼 때나 마찬가지로, $R^2$ 같은 모형 적합도가 높은지 여부만을 관심의 대상으로 했을 뿐 그것의 과적합 여부에 대해서는 왜 생각하지 못했을까? 머신러닝을 처음 배운지 거의 10년이 다 됐지만 말이다. 나름의 이유는 있었다. 무작위 표집(random sampling)이라는, 어찌보면 이루기 불가능한 목표가 충족되었다(또는 될 것이다)라고 생각했던 것 같다(연구 방법론 시간에 배우니까). 즉, 지금 연구를 위해 분석하고 있는 샘플 데이터가 모집단으로부터 무작위 표집 과정을 거쳐 수집되었다면, 샘플에 대한 분석이 곧 모집단의 특성에 대해 말해줄 것이라고 (근거없이) 생각했던 것이다.

논문에서는 간단한 회귀 모형을 통한 설명이 제시되고 있는데, 사실 잘 이해는 안된다. 아래처럼 종속변수 $y$와 예측변수 $X_1$, $X_2$ 가 있는 회귀모형이 있다고 하자.

\begin{equation} y_i = \beta_0 + \beta_1X_{1i} + \beta_2X_{2i} + \epsilon_i \end{equation}

그리고 데이터를 통해 매개변수를 추정(머신러닝의 용어로는 훈련)하여 아래와 같은 방정식을 얻었다고 하자. $R^2$ 같은 모형 적합도 지수가 얼마나 모형과 데이터가 잘 들어맞는지를 말해주는 수치이다.

\[\begin{equation} \hat{y}_i = 1.6 + 0.35X_{1i} + 0.62X_{2i} \end{equation}\]

모형 적합도 지수가 높은 모형을 사용하여, 많은 연구들이 종속변수를 예측하였다고 표현한다. 즉 $X_1$과 $X_2$의 자리에 새로운 값을 집어넣어서 $y$ 의 값을 구했다면, 그것을 $X_1$과 $X_2$를 통해 $y$ 를 예측했다고 표현하는 것이다. 이러한 사고방식의 문제점은 (모집단으로부터 얻은) 특정한 샘플을 통해 구한 파라미터값을 사용한 모델이 다른 샘플에서도 동일하게 잘 작동한다고 전제하는 것이다. 여기까지는 그렇다고 치자. 사실 여기까지만으로도 과적합이라는 아이디어는 잘 설명된 것 같다.

그런데 저자들은 모형 적합도 지수인 $R^2$가 얘기하는 것은 좀 다른 내용이라고 지적한다. 모집단으로부터 (새로운) 샘플 데이터를 추출하여 모델 (1)에 피팅하는 과정을 반복하면 여러 개의 피팅된 모델들(각각 다른 파라미터 값들의 조합을 가진)이 얻어질 것인데, 오차의 제곱 합이 평균적으로 줄어드는 비율(the average proportional reduction in the sum of squared errors)이 곧 $R^2$가 의미하는 것이라고 저자들은 얘기한다. 단적으로 말하자면,

In other words, $R^2$ does not estimate the performance of a specific equation (2) but rather of the more general equation (1).

라고 한다. 대체 이게 뭔소린지 모르겠다. 통계 교과서 같은 곳을 대충 찾아봐도, $R^2$는 종속변수의 변이 가운데 독립변수에 의해 설명되는 비율이라고 되어 있다. 즉 (마치 표준오차를 구하듯이) 샘플 수집 및 모델 피팅을 여러 차례 하지 않아도 구할 수 있는 값이다. 이건 의문으로 남겨둔다.