«На дашборде всё отлично»: что делать инженеру, если внезапно понадобился матстат
Новый вариант регистрации показывает по дашборду +3% к конверсии. Продакт уже пишет в чат: «Катим?». Аналитик отвечает уклончиво: «результаты многообещающие». Все смотрят на вас.
Новый вариант регистрации показывает по дашборду +3% к конверсии. Продакт уже пишет в чат: «Катим?». Аналитик отвечает уклончиво: «результаты многообещающие». Все смотрят на вас.
И тут выясняется неприятное: вы не можете уверенно сказать, настоящий это рост или удачно попали в шум. Дело не в том, что вы слабый инженер. Просто статистику вам либо не читали, либо читали так, что лучше бы не читали.
Примечание Adviser
В этой статье ссылки партнеров. Это значит, что если вы что-то покупаете с нашей помощью — вы также поддерживаете dev.by. (Вот другой способ).
При этом редакция и авторы независимы в выборе темы, концепции материала, фокуса описания, подхода к услугам или товарам. Прежде чем что-то советовать, мы много читаем и смотрим по теме, говорим с экспертами.
Редакция может выражать свое мнение и пробовать всё на себе.
Если рекомендательный материал обновляется, мы указываем, что и когда поменялось, в самом начале.
Эта ситуация давно стала будничной. Команды гоняют A/B-тесты, сравнивают метрики, выкатывают фичи по данным. А навык читать эти данные у большинства разработчиков застрял на уровне «график растёт, значит, работает». Пока экспериментов мало, такое сходит с рук. А вот когда их становится больше, каждая ошибка интерпретации начинает стоить денег.
Поэтому дальше, без обещаний сделать из вас аналитика: где инженеры промахиваются чаще всего, какой минимум закрывает большую часть этих промахов и где его добрать. Все ресурсы мы отбирали честно, про каждый сказано, кому он не подойдёт.
Содержание
Почему даже сильные инженеры промахиваются
Дело почти никогда не в квалификации. Тот же инженер спокойно держит в голове архитектуру сервиса, читает планы запросов, чинит гонки в распределённой системе. Но на словах «доверительный интервал» уверенность куда-то девается. Знакомо?
Причина простая. В университете статистику дают как раздел математики: доказывают теоремы, выводят распределения, решают задачи из учебника. Потом человек приходит в продуктовую команду, где определение центральной предельной теоремы не спрашивает никто. Зато каждую неделю спрашивают другое: можно ли верить этому эксперименту и стоит ли катить фичу.
Между «вывести формулу» и «принять решение по данным» лежит пропасть, и мостить её приходится уже в бою. Обычно на своих ошибках. Три из них повторяются чаще других.
Ошибка 1. «Есть рост, значит, фича работает»
Классика жанра: новый вариант дал +3% к конверсии, команда радуется, эксперимент закрывают, фичу катят. Через неделю метрика возвращается на прежний уровень.
Что случилось: тест остановили слишком рано, данных не хватило, и случайное отклонение приняли за эффект. Человеческий мозг вообще плохо отличает закономерность от случайности. Мы склонны ждать, что даже маленькая выборка похожа на всю картину, и достраиваем структуру там, где её нет. Тема давняя: ещё в 1971 году Тверски и Канеман описали «веру в закон малых чисел», привычку принимать шум за сигнал. Когда очень хочется увидеть плюс, эффект только крепнет.
Ошибка 2. «Чего ждать, победитель и так очевиден»
Через два дня один вариант уверенно ведёт. Кажется, ждать больше нечего, останавливаем.
Загвоздка в том, что если довести тест до заранее рассчитанного размера выборки, лидер иногда меняется на противоположного. Ранние цифры шумные: выборка маленькая, разброс большой, случайные всплески легко перепрыгивают порог значимости.
Эффект измеримый, и он существенный. Если подглядывать в промежуточные результаты и останавливать тест, как только цифры понравились, доля ложных срабатываний улетает далеко за номинальные 5%. В расчётах Джохари и коллег (KDD 2017) даже на 10 тыс. наблюдений вероятность поймать ложный эффект раздувается в 5–10 раз. А при бесконечном подглядывании стремится к 100%: продолжайте смотреть — и тест рано или поздно покажет «значимость» просто по случайности.
Отсюда правило аналитиков: срок эксперимента фиксируют заранее и по дороге тест не трогают.
Ошибка 3. «Красивому графику хочется верить»
Графики умеют убеждать. Линия ползёт вверх, подписан рост на пару процентов, вывод будто бы очевиден. Но без доверительного интервала и оценки значимости тот же график запросто оказывается картинкой случайных колебаний. Разница между вариантами бывает внушительной на глаз и при этом не даёт права ни на какой вывод. Поэтому опытный аналитик смотрит не на саму линию, а на то, насколько ей можно доверять.
Рядом прячется ещё одна ловушка. Если в одном эксперименте проверять сразу много гипотез, что-нибудь выстрелит просто по случайности. Проверяете двадцать метрик с порогом 5% — в среднем одна покажет «значимость» на пустом месте. Чем больше сравнений, тем выше шанс поймать ложный сигнал. Это проблема множественных сравнений, и лечат её поправками на число тестов.
Хорошая новость: нужен не курс матстата, а практический минимум
Из этих примеров легко сделать неверный вывод: будто придётся полгода грызть матстат. Не придётся.
Для инженерных задач не нужно выводить формулы и штурмовать теорию. Достаточно понимать пять вещей:
что такое статистическая значимость и, главное, чего она не означает;
зачем нужен доверительный интервал;
почему размер выборки решает;
почему нельзя останавливать эксперимент раньше срока;
какие ошибки интерпретации встречаются чаще всего.
Достаточно, чтобы за цифрами появлялся смысл. Значимость на уровне 5% — это не «эффект точно есть», а сигнал. Если бы разницы не было, результат настолько же выраженный или сильнее, выпадал бы реже чем в одном случае из двадцати. Доверительный интервал говорит ещё честнее: не +3%, а прирост где-то от −1% до +7%. И вот тут уже видно, что радоваться рано.
Понимать эти две формулировки и не путать «статистически значимо» с «важно для бизнеса» — уже половина дела. Этот минимум и превращает A/B-тесты из магии в рабочий инструмент. Вы перестаёте кивать на красивый график и начинаете задавать правильные вопросы.
И нужно сказать прямо: весь минимум закрывается бесплатно. Два ресурса ниже вытягивают того, кому нужен именно минимум и ничего сверх. Платные курсы дальше покупают не сам минимум, а глубину, структуру и скорость: программу, задания с проверкой, системную логику.
Поэтому и мы начинаем с бесплатного, а платное берём, только если минимума окажется мало. Дальше — пять точек входа. Выбирайте не по цене, а по тому, как удобнее учиться и как далеко хотите зайти.
С чего начать бесплатно
Оба ресурса бесплатны, но, но этого набора уже хватает, чтобы закрыть практический минимум.
1. StatQuest with Josh Starmer (YouTube, бесплатно)
Джош Стармер ведёт канал с 2016 года и объясняет статистику, data science и машинное обучение нарочито просто. Доверительные интервалы, распределения, регрессии, p-value — всё через наглядные картинки и разбор на пальцах, без математической магии. Хороший способ наконец уложить в голове то, что раньше отскакивало.
Кому не подойдёт: тем, кому нужна структурированная программа с заданиями и корочкой. Это отдельные видео-объяснялки, а не курс с проверкой в конце.
2. Statistics and Probability (Khan Academy, бесплатно)
Нужно быстро восстановить базу — Khan Academy остаётся одним из лучших бесплатных вариантов. Короткие уроки по распределениям, дисперсии, стандартному отклонению, визуализации данных плюс интерактивные задания: сразу видно, поняли вы материал или просто посмотрели видео.
Кому не подойдёт: тем, у кого база уже есть и нужен уровень продуктовых экспериментов. Материал ближе к школьно-университетскому фундаменту, чем к дизайну A/B-тестов.
Платные курсы, если нужна глубина, структура или скорость
Бесплатного набора хватает для минимума, но не для всего. Три курса ниже добавляют то, чего в роликах и коротких уроках нет: последовательную программу, задания с обратной связью, системное понимание того, почему методы работают.
3. Applied Statistics for Data Analytics (Coursera, DeepLearning.AI)
Самый прикладной вход в тему. Курс собран командой DeepLearning.AI вокруг задач аналитики, а не академической теории. Четыре модуля: базовая статистика (выборки, разброс, корреляция), вероятность и симуляции, доверительные интервалы, проверка гипотез (p-value, тесты для средних и долей, сравнение двух выборок). Отдельно показывают, как подключить большую языковую модель как помощника: сформулировать гипотезу, посчитать, разобрать результат.
Кому не подойдёт: тем, кто хочет строгую математику и вывод формул. Здесь фокус на «что это значит и что с этим делать». Записаться можно бесплатно, но задания и сертификат платные.
4. Introduction to Statistics (Coursera, Стэнфорд)
Хотите не просто пользоваться инструментами, а понимать, почему они работают, — это фундаментальный курс Стэнфорда, его ведёт профессор Гюнтер Вальтер. Двенадцать модулей: описательная статистика, выборки и рандомизированные эксперименты, вероятность, центральная предельная теорема, регрессия, доверительные интервалы, тесты значимости, ресэмплинг, категориальные данные, ANOVA и, прямо по нашим ошибкам, множественные сравнения.
Кому не подойдёт: тем, кому нужен быстрый чек-лист «на завтра». Курс глубже и требует времени. Это вложение в понимание логики, а не экспресс-навык.
Если осваиваете новое через код, а не через лекции, этот трек — ваш формат. Всё обучение крутится вокруг Python: вместо абстрактных примеров вы сразу берёте данные, считаете статистики, проверяете гипотезы, учитесь читать результат. В треке пять курсов примерно на 20 часов: введение в статистику, регрессия на statsmodels (базовая и продвинутая), сэмплинг, проверка гипотез.
Кому не подойдёт: тем, кто не пишет на Python и не собирается. Без кода тут делать нечего. Платформа подписочная, бесплатного полного доступа нет.
Прежде чем согласиться с выводами любого A/B-теста или красивого дашборда, задайте себе три вопроса.
Данных вообще достаточно? Маленькая выборка или тест, оборванный раньше срока, — выводы делать рано.
Есть значимость или доверительный интервал? Сам по себе рост метрики ничего не доказывает. Вопрос в том, насколько уверенно можно утверждать, что эффект реален.
Не выдают ли случайность за закономерность? Проверяли много гипотез разом или несколько раз останавливали и перезапускали тест — шанс ошибиться заметно выше.
Если не можете ответить хотя бы на один вопрос, относитесь к результату осторожно. Это уже не доверие красивому графику, а нормальный инженерный скепсис.
Что в итоге
Аналитиком после этого текста вы не станете, и мы такого не обещали. Но следующий «Катим?» в чате вы встретите иначе. Уже не кивком на график, а вопросами: точно ли нам хватает данных, есть ли у них значимость, не проскочила ли случайность?
Простой чеклист из трех пунктов и практический минимум стоят на удивление дёшево, а окупаются быстро: вы реже станете выкатывать решения на удачу и чаще опираеться на данные, которым можно верить.
Куда идти прямо сейчас, зависит от вас. Хотите закрыть минимум сегодня же и бесплатно — открывайте StatQuest и Khan Academy. Нужна глубина, код или структура с проверкой — тогда Coursera или DataCamp под ваш формат.
Осознанность без мистики: курс, который действительно работает (+ ещё несколько не хуже)
В IT всё быстро: задачи, дедлайны, уведомления, баги, апдейты… А у кого-то в этом списке ещё и адаптация к новой стране. Новые люди, другая культура, непривычный темп. В потоке легко потерять себя, начать действовать на автопилоте. Если вы ловите себя на внутреннем напряжении, раздражении или выгорании, пора нажать на паузу. Не просто помедитировать, а освоить реальные техники управления собой.
Переход из аутстаффа в продуктовую компанию в ЕС: почему собеседования часто валятся не на стеке
Проблема может быть совсем не в алгоритмах. Рассказываем, почему сильные инженеры из сервисных компаний нередко теряются на продуктовых интервью и как понять, что докручивать — стек и алгоритмы или product sense.
Что делать, когда ваш любимый стек умирает: держаться за нишу или быстро перенести навыки
Зарплаты не растут, проекты выбирают новые технологии, а вместо разговора об опыте на собеседовании спрашивают: «Почему вы до сих пор не перешли на что-то современное?» Самая плохая реакция здесь — убедить себя, что рынок скоро передумает.
Ловушка сеньорити: что может быть важнее сильного кода для промо-комитета
Представьте ситуацию. Третий год подряд говорят на performance review, что вы переросли текущий грейд. Но как только дело доходит до промо-комитета, заявка возвращается с размытой формулировкой: «Неясен импакт за пределами вашей команды».
Хотите сообщить важную новость? Пишите в Telegram-бот
Главные события и полезные ссылки в нашем Telegram-канале
Обсуждение
Комментируйте без ограничений
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.