[논문이야기] 측정오차 하 광고 시계열 모델링 연구 ②

측정오차의 종류
광고 업계에서 측정오차로 인해 발생하는 다양한 문제들
포아송 회귀 시계열 모형의 MAE 확인 결과, 낮은 측정오차는 오히려 '예측'에는 도움을 줘

[논문이야기] 측정오차 하 광고 시계열 모델링 연구 ①에서 이어집니다.

이전 글에서는 디지털 광고가 ‘1인 1 스마트폰 시대’에 힘입어 광고 시장의 메인스트림으로 우뚝 올라서게 됐으며, 이제는 업계 차원에서 ‘측정오차’에 대한 적절한 조치가 필요한 시점이라고 화두를 던졌죠.

이번 글부터는 통계적 모델링을 통해 측정오차가 실제 광고 성과에 어떤 영향을 미치는지 본격적으로 살펴보겠습니다.

‘계통오차’와 ‘랜덤오차’로 구분되는 측정오차

측정오차에 대한 얘기를 조금 더 해볼까요? 측정오차는 계통오차(Systematic Error)와 랜덤오차(Random Error)로 구분됩니다. 계통오차는 일종의 방향성을 가집니다. 예컨대 실제 값(참값)보다 대개 큰 값으로 측정된다는 것이죠. 이를 오차가 ‘drift’를 가진다고도 표현합니다. 랜덤오차는 말 그대로 참값을 기준으로 무작위로 측정값이 결정되는 것을 말합니다.

한편 측정값은 어떻게 분포(distributed)할까요? 가령 drift의 크기를 $\alpha$, 참 값을 $\mu$라고 하면 측정값이자 확률변수 ‘${x}$’는 통계적으로 $N(\mu + \alpha, \sigma^{2})$를 따를 것이라 볼 수 있습니다. 즉 측정값은 참 값을 기준으로 $\alpha$ 만큼 커지면서도(계통오차) $\sigma^2$ 만큼의 변동성(랜덤오차)를 가진다는 것이죠.

계통오차는 데이터 전처리와 스케일링을 통해 해소가 가능하기 때문에 분석가 입장에서 해결이 어려운 부분은 아닙니다. 즉 위 측정값에서 $\alpha$ 만큼의 ‘방향성’만 제외해주면 된다는 것입니다. 한편 위에서 변동성으로 정의되는 랜덤오차는 측정오차의 크기를 크게 좌우하면서 아래의 문제를 발생시키는데, 이를 해결하기 위해서는 분석가 입장에서 좀 더 통계학적으로 다듬어진 대처가 필요합니다.

회귀 모델(regression model)의 독립변수에 측정오차가 포함될 경우, 추정된 회귀계수의 절댓값이 0 부근으로 줄어드는 이른바 ‘Regression Dilution’이 발생하게 됩니다. 이해를 돕기 위해 측정오차가 가득한 독립변수가 회귀식에 포함됐다고 해봅시다. 이때 해당 독립 변수는 랜덤 요소에 의해 무작위로 변동하므로 해당 회귀계수의 효과는 당연히 없다고(0) 나올 것입니다. 이는 기본적인 선형회귀모형(linear regression model) 뿐만 아니라, 모든 선형/비선형모형에 공통적으로 발생하는 문제입니다.

디지털 광고 데이터가 들어오는 환경과 ‘측정오차’ 간 상호 영향

지금까지는 측정오차에 대한 개념을 알아봤습니다. 이제는 본격적인 모델링 작업을 위해 디지털 광고 데이터가 들어오는 환경을 살펴보겠습니다. 이전 글에서 매체사들도 측정오차에 대응하기 위해 노출, 클릭, 광고비 등의 성과 데이터를 지속적으로 갱신한다고 말했죠. 1주일까지 데이터가 업데이트된다고 했을 때, 데이터를 처음 받아봤을 때는 업데이트가 아직 되지 않았으니, 측정오차가 상당히 많이 포함됐을 것이라 짐작할 수 있습니다. 그러다 하루가 지나면 데이터가 업데이트됐으니 꽤 정확해졌을 것이고, 다음 날에는 더더욱 정확해졌을 것입니다. 이러한 과정을 거치며 특정 일자의 데이터가 가지는 측정오차는 지수적(exponentially)으로 감소하는 경향을 보이게 됩니다.

이처럼 데이터 포인트(업데이트 시점)마다 측정오차의 크기가 달라지기 때문에, 모형 적합도(Goodness of Fit) 외에도 잔차(residual)의 이분산성(Heteroskedasticity) 문제가 발생할 수도 있습니다. 이분산성 문제가 발생할 경우 통계학의 해석적(Analytic) 관점에서는 추정량이 비효율성을 띠게 됩니다. 또한 예측(Predictive)적 관점에서는 기존 데이터를 통해 새로운 값을 예측하는 외삽법(Extrapolation)이 저조한 성능을 낸다는 문제점이 있습니다.

또한 광고비가 커질수록 측정오차의 크기도 커집니다. 이는 광고비를 100원 사용했을 때는 측정오차가 몇 원 정도로 발생하는 한편, 광고비를 100만원을 사용하면 측정오차가 몇만원 이상 차이가 발생할 수 있는 것과 동일한 맥락입니다. 따라서 광고비를 기준으로 일정 퍼센트(%) 증감이 랜덤하게 부여되는 승법(Multiplicative) 모형으로 구성하는 것이 자연스럽습니다. 한편 승법 모형에서도 가법(Additive) 모형과 마찬가지로 Regression Dilution이 발생함이 알려져 있습니다.

모형 및 변수 선택

종속변수는 ‘유저들이 광고반응 이후 웹이나 앱에서 행동한 이벤트 횟수’로 했습니다. 이때 이벤트 참여, 회원 가입, 구매와 같은 이벤트들은 0건, 1건, 2건과 같이 가산적(Countable)이므로, 가산 데이터의 특성을 최대한 반영할 수 있는 모델링이 필요하게 됩니다.

독립변수의 경우 ‘광고사가 통제할 수 있는 광고비’와 ‘광고비의 시차(Lag)’ 변수만을 사용하겠습니다. 노출수, 클릭수와 같은 지표들은 광고가 송출된 이후 확인 가능한 변수이기 때문입니다. 즉 사전에 광고사가 통제할 수 없으니 비즈니스 관점에서 제외한다는 것입니다. 또한 광고비와 노출수는 상관관계가 높아 두 변수가 가지고 있는 정보량(Information)이 비슷하다는 측면도 있습니다.

한편 측정오차의 영향을 파악하기 위해서는 광고비에 측정오차를 부여해 데이터를 고의로 ‘오염’시키는 과정을 거쳐야합니다. 이때 측정오차의 크기는 통상 업계에서 발견되는 크기 이내로, 여러 경우에 대해 시뮬레이션(simulation)을 진행하겠습니다.

제안하는 모형은 포아송 회귀(Poisson Regression) 기반의 시계열 모형(time series model)과 포아송 칼만 필터(Poisson Kalman Filter) 두 가지가 되겠습니다. 가산 데이터의 특성을 반영하기 위해 포아송 분포(Poisson Distribution) 기반의 모형을 선정했습니다.

포아송 회귀를 사용한 이유는 잔차의 이분산성 문제를 회피할 수 있기 때문입니다. 즉 포아송 회귀를 비롯한 일반화선형모형(GLM)의 특성상 연결함수(Link Function)을 통해 가정한 평균-분산 관계에만 주목하기 때문에, 앞서 언급한 이분산성 문제를 어느 정도 회피할 수 있게 됩니다.

또한 포아송 칼만 필터를 사용하면 측정오차 문제를 일정 부분 회피할 수 있게 됩니다. 이 모델은 관측 방정식(Observation Equation)에서 포아송 분포를 반영하면서도, 상태 방정식(State Equation)을 통해 관측 방정식의 부정확함(측정오차 포함)을 내재적으로 보완하는 특성이 있기 때문입니다.

포아송 회귀 시계열 모형으로 측정오차의 영향을 확인해 보자

먼저 포아송 회귀 기반 시계열 모형으로 측정오차의 영향을 확인해 보겠습니다.

\[\log(\lambda_{t}) = \beta_{0} + \sum_{k=1}^{7}\beta_{k}\log(Y_{t-k} + 1) + \alpha_{7}\log(\lambda_{t-7}) + \sum_{i=1}^{8}\eta_{i}Spend_{(t-i+1)}\]

여기서 Spend는 현재 시점부터 7 시점 전까지의 광고비이며, beta는 광고비 외, 잔차에 내재된 시차 효과를 반영한 것입니다. 또한 alpha를 통해 요일별 효과를 반영했습니다.

(그림 1)포아송 시계열 모델 분석표

장황할 수 있어 생략했지만, 모형 적합도나 복잡도를 따졌을 때 해당 모형이 데이터를 합리적으로 반영한 것으로 확인했음을 밝힙니다.

사실 우리가 보고 싶은 것은 측정오차인데요, 과연 측정오차는 모형의 예측에 어떤 영향을 줬을까요? 이를 확인하기 위해서는 먼저 시계열 데이터 교차검증(Cross-Validation)에 대해 알아볼 필요가 있습니다.

보통 데이터를 교차검증할 때는 K-fold나, LOO(Leave-One-Out) 과 같은 방식을 사용합니다. 그러나 순서(sequence)가 존재하는 시계열 데이터의 경우 일정 데이터를 제외하는 것이 합리적이지 않기 때문에 다음과 같은 방식을 활용합니다.

  • 초기 d개 데이터 포인트로 모형 적합, 원하는 미래 구간 예측
  • 1개 데이터포인트를 포함해 (d+1) 개 데이터 포인트로, 모형 적합, 미래 구간 예측
  • 위의 과정을 반복

그림으로 나타내면 다음과 같습니다.

(그림 2)시계열 교차검증/출처=Hyndman, R.J., & Athanasopoulos, G. (2021) Forecasting: principles and practice, 3rd edition

해당 교차검증 방법으로 미래 1구간(1-step)의 예측정확도를 계산했으며, 측정 기준은 포아송 분포를 감안해 MAE(Mean Absolute Error)로 삼았습니다.

(그림 3)측정오차의 크기/데이터 사이즈 별 시계열 교차검증 결과

재밌는 결과가 도출됐는데요, 위 표에서 낮은 수준(0.5 ~ 0.7)의 측정오차 크기에서는 측정오차가 없는 모델 보다낮은 MAE를 기록했습니다. 상식대로라면 측정오차가 없는 모형이 더 좋아야 하지 않았을까요?

이는 측정오차가 가져다준 정규화(Regularization)로 인한 현상입니다. 즉 측정오차로 인해 회귀계수에 Attenuation(감쇠 효과)이 발생하면서 고(高) 분산 문제를 일정 부분 해결하고 있다는 것입니다. 다시 말해 측정오차가 Regularization에서 우리가 관심을 가지는 $\lambda$(정규화 파라미터)의 역할을 하는 것이죠.

(그림 4)적절하게 적합된 모형(좌) 및 과적합된 모형(우) 예시
(그림 5)$\lambda = 0$ (좌) 및, $\lambda = \infty$ 모형(우) 예시

그림 5를 봅시다. 만약 측정오차의 분산이 무한대까지 커지게 된다면, 해당 변수는 우측 그림처럼 쓸모가 없게 됩니다. 이 경우 모형은 종속변수의 표본평균으로만 적합 되며, 결정계수는 0으로 나타나겠죠. 그렇지만 우리는 좌측처럼 아예 Regularization을 하지 않은 모형이 좋지 않은 것도 알고 있습니다. 결국 적절한 타협점을 찾기 위해 “Listen to Data”를 하는 것이 매우 중요하다는 것입니다.

다시 모형 결과로 돌아가 봅시다. 낮은 수준의 측정오차는 분명 MAE 관점에서 이득을 안겨주지만, 높은 수준의 측정오차에서는 원래 데이터 대비 모형의 MAE가 더 높음을 알 수 있습니다. 또한 측정오차는 최근 데이터에만 생기기 때문에, 데이터 크기가 증가할수록 측정오차를 포함한 데이터 대비 측정오차가 없는 데이터 비중이 커지게 돼 측정오차의 영향이 줄어듦을 확인할 수 있습니다.

데이터 크기가 증가하면서 MAE가 점차 개선되는 것은 무슨 의미일까요? 처음에는 복잡한 모형으로 인해 모형이 High Variance인 상태였으나, 데이터가 점점 많아지면서 모형이 점차 데이터를 잘 설명하고 있다는 것입니다.

‘예측적’ 모델링에서 적절한 측정오차는 도움이 수도 있다

지금까지의 결과를 정리해 보면 적은 수준의 측정오차는 MAE 측면에서 도움이 될 수 있다는 것입니다. 측정오차가 무조건 나쁘다는 것은 아니라는 의미죠. 그렇지만 우리가 사전에 독립변수의 측정오차 크기를 정할 수는 없는 노릇이기 때문에, 측정오차 문제를 해결하는 모형이 좋을지, 혹은 측정오차를 감안하는 모형이 좋을지 판단이 어려울 수 있습니다.

현재보다 Regularization(정규화)를 더 하는 것이 좋은지를 판단하기 위해서는 모형에 $\lambda$가 추가된 제약식을 추가해 테스트하는 방법이 있습니다. 이 경우 측정오차가 릿지 회귀(Ridge Regression)와 같은 형태로 작동했으므로, 마찬가지로 L2 Regularization으로 테스트하는 것이 적절할 것입니다.

만약 현재보다 정규화를 ‘덜’해야 한다면 어떻게 하는 것이 좋을까요? 이 경우 매체사에서 업데이트해 준 최신 데이터를 다운로드 받아서 측정오차를 줄이거나, ‘반복측정 분산분석’의 아이디어를 활용해 측정오차의 크기를 줄이는 데이터 전처리 방법을 사용해 볼 수 있겠습니다.

[논문이야기] 측정오차 하 광고 시계열 모델링 연구 ③으로 이어집니다.