Вопросы по теме «Размер выборки и мощность теста»
Расчёт размера выборки, MDE, мощность теста, ошибка второго рода — без этого нельзя корректно спланировать эксперимент. Сколько дней держать тест? Хватит ли трафика для обнаружения эффекта в 2%? На собеседовании эти вопросы задают почти всегда, и от кандидата ждут конкретных формул и рассуждений.
Всего в этом разделе 20 вопросов. Каждый — с правильным ответом и кратким разбором теории. Разбито на 4 части по 5 вопросов.
Вопросы 1–5 из 20
1Что означает `beta` в A/B тесте?
A`beta` — вероятность ошибки I рода, то же что `alpha`
B`beta` — вероятность не обнаружить реальный эффект заданного размера, то есть ошибка II рода
C`beta` — доля пользователей в `control`
D`beta` — минимальный эффект, который мы хотим поймать, то есть `MDE`
Ответ: `Beta` — вероятность ошибки II рода (пропустить реальный эффект); `power = 1 - beta`.
`beta` описывает риск ложноотрицательного вывода: эффект существует, но тест его не выявил при выбранном пороге. Соответственно, `power = 1 - beta` — вероятность обнаружить эффект размера `MDE` или больше, если он действительно есть. При планировании эксперимента обычно задают целевой `power`, например 80% или 90%.
2Ежедневный поток eligible пользователей удвоился, а требуемый `sample size` на группу и разбиение `50/50` не изменились. Что ожидаемо произойдет с `test duration`?
A`test duration` вырастет в 2 раза, потому что больше трафика дает больше шума
B`test duration` не изменится, потому что `sample size` зависит только от `alpha`
C`Test duration` уменьшится примерно в 2 раза, потому что скорость набора `sample size` удвоилась.
D`test duration` уменьшится примерно в 2 раза, потому что скорость набора `sample size` удвоилась
Ответ: При фиксированном `sample size` и стабильном `50/50` длительность примерно обратно пропорциональна потоку: трафик ×2 → `test duration` ≈ /2.
Если в день приходит вдвое больше eligible пользователей, то вдвое быстрее набираются `N_treat` и `N_control`. При тех же целевых `sample size` на группу это примерно вдвое сокращает календарную `test duration`. На практике поправку могут давать выходные и сезонность, но базовая зависимость остается почти линейной.
3Вы повышаете требование к `power` с 80% до 90% при фиксированных `alpha` и `MDE`. Что ожидаемо случится с `sample size`?
A`sample size` уменьшится, потому что выше `power`
B`sample size` увеличится, потому что нужно снизить `beta` и надежнее отделить эффект от шума
CНичего не изменится, `power` не связан с `sample size`
D`sample size` увеличится только в `treat`, а `control` можно оставить прежним
Ответ: Более высокий `power` означает меньший `beta`, и для этого обычно нужен больший `sample size`.
Требование `power = 90%` означает, что вы хотите с высокой вероятностью находить эффект размера `MDE`, если он есть. Это эквивалентно снижению `beta` и требует больше наблюдений для той же метрики и `variance`. Поэтому при прочих равных `sample size` растет.
4Вы держите `MDE` и `power` фиксированными, но хотите снизить `alpha` с 5% до 1%. Что в среднем произойдет с требуемым `sample size`?
A`sample size` увеличится, потому что при меньшем `alpha` критерий строже при тех же `MDE` и `power`
B`sample size` уменьшится, потому что меньший `alpha` означает меньше проверок
C`sample size` не изменится, потому что `alpha` влияет только на интерпретацию `p-value`
D`sample size` станет ровно в 2 раза больше независимо от метрики
Ответ: Уменьшение `alpha` делает критерий строже и обычно увеличивает требуемый `sample size` при фиксированных `MDE` и `power`.
Когда вы снижаете `alpha`, вы уменьшаете допустимую вероятность ложноположительного вывода. Чтобы при этом сохранить прежний `power` для того же `MDE`, нужно больше данных, иначе тест будет слишком консервативным. Поэтому требуемый `sample size` на группу обычно растет.
5Калькулятор дал требование `N_treat = 20000` и `N_control = 20000` по `user_id`. В эксперимент ежедневно попадает 5000 новых `user_id`, разбиение `50/50`. Какая минимальная `test duration` в днях, если трафик стабилен?
A4 дня
B5 дней
C6 дней
D8 дней
Ответ: `test duration` примерно равна требуемому `sample size` на группу, деленному на ежедневный поток в группу.
При `50/50` из 5000 `user_id` в день каждая группа получает примерно 2500 `user_id` в день. Чтобы набрать `N_treat = 20000`, нужно `20000 / 2500 = 8` дней. Аналогично для `N_control`, поэтому минимальная `test duration` около 8 дней при стабильном трафике.
Хотите тренировать интерактивно?
В приложении — таймер, прогресс, стрики и 1700+ вопросов по всем темам.
Тренировать в Telegram