Как выглядит проверка гипотезы в A/В-тесте?
Столкнулись с интересным кейсом, запустили A/B-тест в Яндекс Директ:
РК А: по ключевым словам, CPC = 669.9 руб.
РК B: по фиду, CPC = 366.7 руб.
Результаты:
СРС в РК по фиду на 50% ниже, чем в РК по ключевым словам, ставка и запросы и там и там одинаковые. И, вроде, очевидно, но как обосновать данные с точки зрения статистической значимости?
Проблемы:
1. Мы сравниваем CPC, а не СTR и не CR, а значит при росте количества кликов, наш СРС не меняется -> мы не можем подставить просто в калькулятор значения и узнать статическую значимость.
2. Для того, чтобы понять, сколько нам нужно получить кликов, чтобы определить статистическую значимость, нам нужно знать стандартное отклонение (разброс СРС по дням).
3. У нас нет стандартного отклонения, т.к. Директ не отдает статистику по каждому клику, значит остается использовать стандартное отклонение по дням:
РК А: разброс ≈ 268 руб. (σA)
РК B: разброс ≈ 68 руб. (σB)
Разница средних = 303 руб.
3. Возникает вопрос, а сколько нужно дней, чтобы посчитать стандартное отклонение? Определяем размер выборки:
n = (Zα/2+Zβ)^2 * (σA^2+σB^2) / Δ^2, где:
• Zα/2 = 1.96 (95%), Zβ =0.84 (80%), (1.96+0.84)^2=7.84
• σA^2=267.62^2=71 626.36
• σB^2= 67.6^2= 4 572.59
• σA^2+σB^2=76 198.96
• Δ2=303.23^2=91 949.44
n = 7.84×76 198.96/91 949.44 = 6.5 дней.
Итого, нужно, примерно, 7 дней на каждую РК, однако за 1 неделю мы не учитываем сезонность.
4. Проверяем разницу средних с помощью t-теста:
t=разница средних/стандартная ошибка разницы средних
t= Xa -Xb / √ S^2A/Na + S^2B/Nb, где:
Разница средних:
Показывает насколько средние CPC отличаются
• Xa -Xb = 669.9−366.7=303.23
Стандартная ошибка разницы средних:
Показывает, насколько сильно могут колебаться средние CPC из-за случайности, если эксперимент повторять много раз:
• S^2A/Na = 71 626.36/6 = 11 937.73 (дисперсия среднего в кампании A)
• S^2B/Nb = 4 572.59/5 = 914.52 (дисперсия среднего в кампании В)
• SE=√11 937.73+914.52=113.37 - разница средних CPC может случайно колебаться примерно на 113 руб.
t-статистика:
t=303.23/113.7=2.67 - разница в СРС в 2,67 раз больше, чем стандартная ошибка разницы средних.
5. Проверяем, какова вероятность получить такую разницу по таблице Стьюдента?
t, который мы посчитали = 2.67
критический t для df=5 = 2.571
t = 2.67 > df=2.571
если t больше критического, значит p-value < 0.05, значит вероятность получить t ≥ 2.67 <5%
6. Проверяем, какая вероятность получить такие значения с помощью p-value c помощью формулы:
p=2⋅(1−Ft(∣t∣,df)), где:
• ∣t∣ — модуль нашей статистики,
• df — степени свободыСчитаем df = (S^2A/Na +S^2B/Nb )^2 / (S^2A/Na)^2/nA-1 + (S^2B/Nb)^2/Nb-1,где:
Числитель:
• S^2A/Na = 71626.36/6 = 11937.73 (дисперсия среднего в кампании A)
• S^2B/Nb = 4572.59/5 = 914.52 (дисперсия среднего в кампании В)
Знаменатель:
• S^2A/Na/nA-1 = (11937.732)/(6−1)= 142 500 000/5=28 500 000
• S^2B/Nb -1 = (914.522)/(5−1)=836400/4=209 100
• Сумма = 28 709 100
df=165 165 200/28 709 100=5.75
Подставляем наши значения
p=2⋅(1−Ft(2.67,5.75))≈ 0.038
Если кампании на самом деле равны, то шанс увидеть разницу 303 руб. всего 3.8%.
Так как 0.038 < 0.05 → разница считается статистически значимой.
7. p-value нам сказал, что да, вариант B лучше варианта А, но сколько мы сэкономим с 1 клика?
Для этого посчитаем доверительный интервал.
CI=(Δ±tcrit*SE), где:
• Δ = разница средних = 303 руб.
• SE = стандартная ошибка разницы = 113.7 руб.
• tcrit = критическое значение t для df≈5.75 и α=0.05 ≈ 2.447 по таблице Стьюдента
tcrit*SE = 2.447×113.7≈278.6
нижняя граница: 303−278.6 = 24.4
верхняя граница: 303+278.6=581.6
Выводы:
✖ Проводить по всем правилам А/B-тест слишком затратно, т.к. требуется время на сбор данных, расчёт дисперсий, мощности, t-тестов и доверительных интервалов.
✖ Слишком маленькая выборка ведет к слишком большому разбросу, а значит нужно больше времени на проведение эксперимента там, где уже итак все очевидно.
✖ Даже полный тест не гарантирует ясности, экономия на клике от 22 руб. до 584 руб., разброс слишком велик.
Если статья оказалась для вас полезной, поддержите её лайком — так больше людей узнают о ней.