과적합이 MMM에서 특히 위험한 이유

과적합(Overfitting)은 통계·머신러닝 전반에서 흔히 나타나는 공통 문제지만, MMM에서는 특히 더 치명적으로 작용합니다. 데이터가 주 단위·월 단위로 뭉쳐 있어 관측치 수 자체가 적은 편인데, 변수(매체 수 + 외부 변수 수)는 상대적으로 많다 보니 모델이 우연히 시기가 겹친 패턴까지 진짜 인과관계처럼 학습해버릴 여지가 큽니다. 예를 들어 특정 분기에 디스플레이 광고비를 크게 늘린 시점이 공교롭게도 경쟁사가 가격을 인상한 시점과 겹쳤다면, 실제로는 경쟁사 가격 인상이 매출을 밀어올린 것인데 모델은 이 상승분을 디스플레이 광고의 효과로 오인할 수 있습니다.

실제로 벌어지는 실패 패턴

이런 실패의 특히 곤란한 점은 결과가 겉보기엔 매우 그럴듯하게 나온다는 것입니다. 모델이 뽑아낸 리포트에는 "이번 분기 매출 상승의 상당 부분은 디스플레이 채널 기여"라는 깔끔한 문장과 그래프가 나오고, 이 결과를 그대로 받아든 팀은 자연스럽게 디스플레이 예산을 더 늘리는 방향으로 의사결정을 내리게 됩니다. 하지만 실제로는 외부 요인(경쟁사 가격 인상, 계절 성수기, 갑작스런 날씨 변화 등)이 진짜 원인이었고, 디스플레이 예산을 늘려도 다음 분기에는 기대한 만큼 매출이 오르지 않는 상황이 벌어집니다. 이 시점에서야 "지난 분석이 틀렸다"는 게 드러나는데, 이미 예산 재배분이 실행된 뒤라 되돌리는 데 추가 시간과 비용이 들고, 다음 분기 의사결정에 대한 팀 내 신뢰도까지 함께 떨어지는 부작용이 남습니다.

원인을 되짚는 순서

이런 실패가 의심되면 가장 먼저 확인해야 할 것은 모델에 투입된 변수 목록 전체입니다. 매출에 영향을 줄 수 있는 요인 중 모델에 빠진 게 없는지 — 계절성(공휴일·시즌), 자사 프로모션·할인 이력, 경쟁사의 주요 마케팅 이벤트, 거시 경제 지표(환율·소비심리지수) 등을 하나씩 대조합니다. 특정 매체의 기여도가 이상하게 크게 나온 시점과, 위에서 나열한 외부 요인 중 하나가 시기적으로 겹치는지 확인하는 게 다음 단계입니다. 겹치는 요인을 찾았다면 그 변수를 모델에 새로 추가해 재학습시키고, 재학습 전후로 문제가 됐던 매체의 기여도 추정치가 어떻게 달라지는지 나란히 비교합니다. 크게 바뀐다면 애초에 그 외부 변수가 결과를 왜곡시킨 원인이었다는 확인이 됩니다.

재발을 막기 위한 절차

한 번 이런 실패를 겪은 조직은 이후부터 모델을 새로 돌릴 때마다 투입 변수 체크리스트를 고정해 매번 빠짐없이 대조하고, 매출에 영향을 줄 만한 사건(프로모션 시작·종료일, 경쟁사 주요 이벤트, 시스템 장애일, 거시 경제 지표 급변 시점 등)을 상시로 기록해두는 이벤트 캘린더를 별도로 운영하는 방향으로 절차를 개선하는 경우가 많습니다. 또한 특정 매체의 기여도가 과거 대비 급격히 커지거나 작아지는 경우, 결과를 그대로 받아들이기 전에 "이 변화를 설명할 만한 외부 사건이 있었는가"를 먼저 확인하는 검토 단계를 의사결정 프로세스 안에 정식으로 끼워 넣는 것도 재발 방지에 도움이 됩니다. 이런 결과 검증 절차는 10강(모델 검증)에서 다루는 오차율 분석과 함께 운영하면 훨씬 더 체계적으로 잡을 수 있습니다.

변수를 다 넣어도 완전히 사라지지 않는 불확실성

외부 변수를 최대한 빠짐없이 채워 넣어도, MMM은 실험이 아니라 관측 데이터에 기반한 통계적 추정이라는 근본적인 한계가 남습니다. 아무리 변수를 늘려도 세상에 존재하는 모든 매출 영향 요인을 다 모델에 담을 수는 없고, 여전히 관측되지 않은 요인이 결과에 섞여 들어갈 여지가 있습니다. 그래서 실무에서는 MMM 결과를 "최종 정답"이 아니라 "현재까지 확보한 변수로 추정한 가장 그럴듯한 설명" 정도로 다루는 태도가 필요하고, 특히 예산 배분 폭이 큰 의사결정 앞에서는 11강에서 다룰 인크리멘털리티(리프트) 테스트로 교차 검증하는 절차를 함께 두는 것이 지금 시점에서 과적합 위험을 줄일 수 있는 가장 현실적인 방법입니다.

과적합을 조기에 감지하는 신호

과적합된 모델은 몇 가지 공통된 신호를 보입니다. 특정 매체의 기여도가 과거 어떤 분기와 비교해도 이례적으로 크거나 작게 튀는 경우, 모델이 뽑아낸 신뢰구간이 비정상적으로 좁게 나와 실제 불확실성보다 훨씬 확신에 찬 듯한 결과를 내는 경우, 그리고 학습 기간을 몇 주만 앞뒤로 옮겨 모델을 다시 돌렸을 때 채널별 기여도 순위 자체가 눈에 띄게 크게 뒤바뀌는 경우가 대표적입니다. 이런 신호가 하나라도 보이면 결과를 곧바로 의사결정에 반영하기보다, 투입 변수 목록부터 다시 점검하고 필요하면 기간을 달리해 재학습을 한 번 더 돌려보는 절차를 먼저 거치는 게 안전합니다.