광고효율을 높이기 위한 DSP에서의 통계이론 활용: 신뢰구간①
이 리포트는 모바일 광고효율을 높이기 위해 DSP에서 활용할 수 있는 통계이론 중 ‘신뢰구간’의 개념을 소개하고, Ad Tech에서 자주 사용되는 CTR 측정에 적용해 보면서 개념을 익히는데 그 목적이 있다.
신뢰구간이란?
신뢰 구간 정의는 관찰된 값(or 데이터)들로부터 얻어지는 (통계적) 파라미터(or ①모수) 값에 대한 구간 추정치(출처: 위키피디아)이다. 이 정의가 잘 이해가 되지 않는다면, 용어가 친숙하지 않을 가능성이 크다. 그러면 먼저 각 용어를 살펴보자. 관찰된 값은 실험(Experiment)을 통해서 얻을 수 있는 결과값(outcome)으로 볼 수 있다. 예를 들면, 1-6까지 써 있는 주사위를 던졌을 때, 얻을 수 있는 결과값들이라고 볼 수 있다. 그리고 (통계적) 파라미터는 이 결과값들의 통계치(statistics)로 볼 수 있는데, 대표적인 예는 우리에게 가장 친숙한 ②표본 평균(sample mean)이다.
주사위를 3번 던져서 1, 3, 5가 나왔다면, 이 관찰값들로부터 얻을 수 있는 통계치인 표본 평균은 (1+3+5)/3=3이다. 즉, 다시 설명하면, 신뢰 구간은 파라미터가 확률적으로 어떤 범위(bound)에 속하게 되는지를 나타낸다고 볼 수 있으며, 이 때 범위가 구간 추정치를 의미한다. 앞의 주사위 예제에서 표본 평균에 대한 계산된 구간 형태의 범위가 표본 평균에 대한 신뢰구간인 것이다. 그러면, 신뢰구간을 수식으로 좀 더 자세히 들여다보자. 그전에 신뢰구간은 통계에서 아주 유명한 정리인 ③중심 극한 정리(Central Limit Theorem)를 바탕으로 한다는 사실을 알아두면, (이론적으로) 좀 더 깊이 있는 내용을 알고 싶을 때 도움이 된다는 점을 기억하자.
신뢰 구간은 두 가지 요소로 표현되는데, 이 두 가지는 표준 오차(standard error)와 앞서 살펴본 표본 평균이다. 먼저, 표준 오차 s는 표준 오차 s는 표본(sample)들이 얼마나 흩어져 있는지에 대한 정도를 나타내는 지표라고 볼 수 있는데, 만약 표본 크기(sample size)를 n, 표본 표준 오차(sample standard deviation)를 σ ̂라 하면, 표준 오차는 다음과 같이 나타낼 수 있다:이 식에 알 수 있듯이 표본 분산 σ ̂^2을 표본 크기 n으로 나눈 뒤(분산(variance)의 평균 정도로 볼 수 있겠다), squared root를 취한 것이다. 이제 신뢰 구간을 표현하기 위한 모든 요소를 알았으니, 신뢰구간을 수식으로 표현하고 마무리를 하자. 표본 평균을 μ ̂라고 표현하면, 신뢰구간은 아래와 같다.여기서, z^*는 신뢰 수준(confidence level)으로 파라미터의 실제 값이 신뢰구간안에 들어갈 빈도수를 의미한다. 이 신뢰 수준은 표준 정규 분포인 경우 잘 알려져 있는데(표준 정규 분포를 사용하는 점이 중심 극한 정리로부터 유도된 결과라는 것을 보여준다), 자주 사용되는 z^*만 정리해보면 다음과 같고,
이를 그림으로 나타내면, 아래 그림과 같다.
이 그림은 이 정규 분포 아래 면적 전체를 100%로 봤을 때, -1.645부터 1.645까지의 면적이 전체의 90%라고 해석하면 된다. 이제 신뢰구간에 대한 개념 및 정의에 대한 설명이 끝났다. 정확히 말하면 평균에 대한 신뢰구간인데, 더 일반화된 통계치의 경우도 다르지 않다. 위 신뢰구간의 형태를 보면 알겠지만, 신뢰 구간은 표본 평균 뿐 아니라, 그 값의 신뢰 수준에 따른 구간을 결정해준다.
때문에, 표본 평균 보다는 훨씬 강력하며 우리에게 더 많은 정보를 준다는 사실을 알 수 있다. 이 신뢰구간에 대한 개념은 현재 트레이딩웍스(TradingWorks) 다양한 부분에 적용되고 있고, 점차 고도화될 예정이다. 이제 CTR의 신뢰 구간을 계산해 보면서 좀 더 신뢰 구간에 친해질 시간이다.
CTR 측정과 그 신뢰구간
광고 캠페인 A의 CTR을 측정한다고 생각해보자. 그러면, 광고 캠페인 A의 광고 소재를 노출(impression)했을때, 클릭(click)이 발생했는지, 그렇지 않았는지에 주목해야 한다. 광고 캠페인 A의 하루 동안의 노출량과 클릭에 대한 수치가 다음과 같다고 하자.
일반적 CTR은 CTR=(광고 캠페인 A의 총 클릭수)/(광고 캠페인 A의 총 노출수) 와 같이 결정되므로, 이 수치(표본)에 대한 광고 캠페인 A에 대한 CTR은, CTR_A=7,926/1,322,977≅0.005991임을 알 수 있다. 즉, 약 0.5991%의 CTR을 달성하고 있다. 이 수치가 CTR의 표본 평균이다. 하지만 이 수치는 다음날에 보면 또 다르고, 그 다음날에 보면 또 달라진다. 매일 다른 수치를 제공하고 있으니, 도대체 어떤 날의 CTR이 이 캠페인의 대표 CTR로 볼 수 있는지 헷갈린다. ④며칠치 데이터를 모아서 CTR을 구해도 그 다음날은 달라지게 된다. 아주 오랜 기간 수치를 모아야 그 변동성이 줄어들게 되는데, 그런데 신뢰구간은 높은 확률로 이 CTR이 포함될 범위를 계산할 수 있게 해주기 때문에, 그 다음날 얻게 되는 CTR도 신뢰 구간 안에 있을 확률이 높다.
그러면 CTR의 표본 평균에 대한 95%의 신뢰 수준을 갖는 신뢰구간은 어떻게 계산될까? 표본 평균(CTR_A)은 알고 있으니, 표준 오차를 계산해보자. 클릭은 발생하거나 발생하지 않기 때문에 ⑤Bernoulli distribution을 따른다고 볼 수 있는데 그러면, 표본 평균인 CTR_A가 Bernoulli distribution에서 파라미터인 p(클릭할 확률)의 측정치로 볼 수 있다. 이 측정치를 p ̂(=CTR_A)으로 쓰면, 잘 알려져 있듯 Bernoulli distribution의 분산은 p(1-p)이다. 따라서 표본에 대한 분산은 σ ̂=p ̂(1-p ̂ )을 이용하여 계산할 수 있고, p ̂=CTR_A=0.599를 대입하여, 계산해보면, σ ̂=p ̂(1-p ̂ )≅0.24이고, 표본 크기는 노출량이므로 n=1,322,977이다. 따라서 표준 오차는 다음과 같다:신뢰 수준 95%일 때 대한 신뢰 구간을 바로 계산할 수 있다. (0.005991-1.96∙0.0002086,0.005991+1.96∙0.0002086) 이를 정리하면, (0.005582144,0.6399856)와 같다. 측 이 광고 캠페인의 CTR은 신뢰 수준 95%로 0.558%와 0.639%을 양끝으로 갖는 신뢰구간을 갖게 된다. 이는 같은 조건으로 이 광고 캠페인을 100번 수행했을 때, 95번은 이 신뢰 구간 내에서 CTR_A를 갖게 된다는 것을 의미한다.
이 신뢰구간은 그 응용이 여기서만 그치지 않는다. 우리가 가장 친숙하게 접할 수 있는 대표적인 경우가 A/B 테스트에 응용되는 경우이고, 이 뿐 아니라 다양한 선택에 대한 선택권이 주어진 상황에서 의사 결정을 하는 경우에도 사용될 수 있다. 특히 이 신뢰구간의 다양한 형태의 정리(Theorem)들은 multi-armed bandit 문제를 해결하는데 응용되어 의사 결정 알고리즘의 형태로 학계에서 연구되고 있고, 최근 여러 산업에 기여하고 있으며, 이 알고리즘들은 최근에는 online machine learning 분야에서도 주목 받고 있다.
이번 리포트는 신뢰 구간의 개념과 그 개념을 적용한 예제에서 마치도록 하고, 다음에는 이 신뢰구간을 응용한 알고리즘과 그 알고리즘이 광고 효과 개선에 어떻게 응용될 수 있는지 살펴보고자 한다.
① 수학과 통계학에서 어떤 시스템이나 함수의 특정한 성질을 나타내는 변수를 의미함(출처: 위키피디아)
② 일반적으로 단어 앞에 표본(sample)이라는 단어가 있으면, 해당 수치가 표본(sample)에 대해서 계산되어 얻어짐을 의미한다.
③ 이 정리는 표본 추출에서 서로 관련이 없는(통계에서는 독립적(independent)이라고 함) 표본들의 합은(그들이 어디서 추출되었든(어떤 확률 분포에서 되었든) 상관없이) 표본이 추출되면 될수록, 정규 분포를 따르게 된다는 것을 말하고 있다.
④ 일반적으로, 이렇게 데이터를 하나의 값으로 표현하는 것을 점 추정(point estimation)이라고 하고, 점 추정의 대표적인 경우가 평균이다
⑤ 우리에게 가장 친숙한 동전을 던지는 실험을 생각하면 가장 이해가 쉬울 것이고,동전을 한 번 던지는 실험 결과에 대한 확률 분포가 Bernoulli distribution이다.
글 : 최상희 / IGAWorks A.I. Lab.에서 비딩 알고리즘을 연구 중에 있다. Multi-armed Bandit 이론 및 online mahchine learning과 의사 결정(decision making) 에 관심이 많다.