Как выглядит проверка гипотезы в A/В-тесте?

Как выглядит проверка гипотезы в A/В-тесте?

Столкнулись с интересным кейсом, запустили A/B-тест в Яндекс Директ:
РК А: по ключевым словам, CPC = 669.9 руб.
РК B: по фиду, CPC = 366.7 руб.

Результаты:

СРС в РК по фиду на 50% ниже, чем в РК по ключевым словам, ставка и запросы и там и там одинаковые. И, вроде, очевидно, но как обосновать данные с точки зрения статистической значимости?

Как выглядит проверка гипотезы в A/В-тесте?

Проблемы:

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 руб., разброс слишком велик.

Если статья оказалась для вас полезной, поддержите её лайком — так больше людей узнают о ней.

1
Начать дискуссию