Если вы работаете с данными, которые меняются со временем — поздравляю, вы уже работаете с временными рядами. Методы анализа временных рядов позволяют отделить реальный сигнал от шума, понять, что именно движет вашими данными, и строить прогнозы, которым можно доверять.
Вместе с Павлом Беляевым, руководителем группы дата-аналитиков в Яндекс eLama и автором курса «Временные ряды», разберём на мастер-классе ключевые задачи временных рядов в аналитике. Отдельно поговорим о декомпозиции и фильтрации: зачем они нужны, как применяются и где чаще всего ошибаются.
И конечно, не обойдётся без практики: вместе с вами сядем и плотно попитоним в прямом эфире 😁
Если вы хотите увереннее работать с динамикой метрик, лучше понимать поведение данных и не путать сигнал с шумом, ждём вас на мастер-классе!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🔥5 2
Прокачиваем навыки аналитика: топ платформ для практики SQL, Python и анализа данных
Привет, коллеги! С вами снова Евгений Буторин, ментор курса «Аналитик данных» 👋🏻
Если вы готовитесь к собеседованиям на позицию аналитика, то просто читать теорию мало — нужна практика на реальных задачах. Вот моя личная подборка платформ, которые реально помогают прокачать хард скилы:
1️⃣ Leetcode. Классика. Раздел Database + SQL — must-have. Плюс куча задач на Python (pandas, data manipulation). Отлично готовит к FAANG и российским продуктовым компаниям.
2️⃣ HackerRank. Есть отдельный трек Analytics и SQL. Задачи часто берут прямо из реальных интервью. Удобно отслеживать прогресс. Дополнительно можно получить сертификат.
3️⃣ StrataScratch. Один из моих фаворитов для аналитиков. Более 1000 SQL-задач из реальных интервью в Amazon, Meta, Netflix и т. д. Есть разделение по уровню сложности и по компаниям.
4️⃣ DataLemur. Ещё один топ для SQL-аналитиков. Задачи заточены именно под data-роли, много оконных функций и бизнес-кейсов.
5️⃣ Kaggle. Когда хочется не просто SQL, а полноценный анализ данных: датасеты, notebooks, соревнования. Идеально для портфолио.
Делитесь в комментариях своими любимыми платформами для тренировки навыков аналитика 👇🏻
📈 Симулейтив | ВК | YouTube
Привет, коллеги! С вами снова Евгений Буторин, ментор курса «Аналитик данных» 👋🏻
Если вы готовитесь к собеседованиям на позицию аналитика, то просто читать теорию мало — нужна практика на реальных задачах. Вот моя личная подборка платформ, которые реально помогают прокачать хард скилы:
😶 А между делом — обязательно загляните на IT Resume. Там не только практические задания по аналитике и SQL, но и инструмент, который помогает сразу превратить прокачанные навыки в сильное IT-резюме.
Делитесь в комментариях своими любимыми платформами для тренировки навыков аналитика 👇🏻
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11🔥8👍4
Симулейтив
Присоединяйтесь к эфиру в 19:00 МСК, где вместе с Павлом Беляевым разберём ключевые задачи временных рядов в аналитике. А также порешаем реальные задачи по временным рядам на Python:
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥2 1
Симулейтив
Сегодня в 13:00 и 19:00 по МСК вы сможете посмотреть эфир с Павлом Беляевым и узнать все тонкости построения временных рядов в аналитике, а также познакомиться с нашим курсом «Временные ряды». Много практики гарантируем
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3 2🔥1
Мифы о t-тесте Стьюдента на практике
Привет, на связи Аслан Байрамкулов, автор курса по A/B-тестированию 👋🏻
«А t-тест ещё используют или уже всё?» — этот вопрос мне задают с завидной регулярностью. Короткий ответ: используют. Длинный интереснее, потому что вокруг него наросло изрядно мифов.
В 9 случаях из 10 она значит примерно: «Раньше мы гнали сырые данные прямо в t-тест, а теперь не гоним». И дальше начинается набор красивых слов — линеаризация, CUPED, поправки на множественность. Это не является заменой t-тесту, а всего лишь препроцессинг. В конце пайплайна всё равно может стоять t-тест, просто входные данные у него больше не сырые, а обработанные тем или иным подходом.
И в одном случае из 10 речь идёт о настоящей альтернативе — когда t-тест в принципе не отвечает на ваш вопрос. Вот этот случай уже серьёзный.
👉 Самая банальная история: человек мерит CTR и использует показы одного пользователя как независимые наблюдения. t-тест в этом случае занижает дисперсию, уровень ошибок уезжает вверх, и мы всё чаще находим эффекты там, где их нет.
👉 CUPED из той же серии. У вас есть история пользователя до эксперимента, она предсказывает его поведение в тесте. Вычитаем предсказуемую часть дисперсии, и мощность вырастает на 30-50 и порой более %. Но после CUPED всё равно стоит t-тест, и это тот же самый t-тест. Говорить «я заменил t-тест на CUPED» — примерно как сказать «я заменил двигатель на зимнюю резину».
👉 Подглядывание. В разных компаниях есть любители смотреть метрики каждый день и останавливать тест «когда p-value < 0.05», и реальный уровень ошибок уезжает к 20-30 и более % вместо заявленных 5%. Но это не баг t-теста. Это множественное тестирование во времени: вы фактически запускаете десятки тестов на накапливающихся данных. Одно из решений — последовательные методы в A/B тестировании. Но формулировка тут важная: корректируется не сам тест, а то, как вы пользуетесь его p-value.
☝🏻 Тяжёлые хвосты. Если вы измеряете выручку, и 1% пользователей приносит половину денег, t-тест на среднем почти бесполезен. Среднее здесь — это в основном шум от того, какой «кит» в какую группу попал. Реальный эффект в +5% на 99% пользователей спокойно прячется за одного случайного аномального клиента.
Что с этим можно делать: применять винсоризацию, логарифмирование и бутстрап для квантилей. А часто и нечто более радикальное — сменить саму метрику: мерить медиану, конверсию в платящего, ARPPU с ограничением сверху.
☝🏻 Исходные вопросы не про среднее. «Сдвинулась ли 90-я перцентиль времени загрузки?», «Изменилась ли медиана retention?». t-тест на эти вопросы просто не отвечает — он проверяет гипотезу о среднем значении, а нас могут интересовать хвост или медиана. Здесь больше помогут бутстрап и перестановочные тесты.
☝🏻 Гетерогенность. t-тест отвечает только на вопрос «сработало ли в среднем». В реальности может быть +3% в среднем, но при этом +8% на новичках и -5% на активных. И при масштабировании воздействия на всю аудиторию вы потеряете самых ценных клиентов. Никто не свяжет это с A/B-тестом, потому что «тест был положительный». Тут уже на помощь приходят мета-модели, причинные леса, аплифт-подходы.
Таким образом, «мы отказались от t-теста» — часто миф. В большинстве случаев это значит «перестали применять его на сырых данных as is», и это про грамотный пайплайн, а не про смену инструмента. Там, где t-тест действительно не подходит — есть честные альтернативы, и их стоит иметь в виду.
Не путайте эти 2 типа случаев. t-тест жив, нужно просто понимать, что он умеет, а что нет.
🟠 Записывайтесь на курс, стартуем уже в пятницу, 24 апреля: simulative.ru/ab-test
📈 Симулейтив | ВК | YouTube
Привет, на связи Аслан Байрамкулов, автор курса по A/B-тестированию 👋🏻
«А t-тест ещё используют или уже всё?» — этот вопрос мне задают с завидной регулярностью. Короткий ответ: используют. Длинный интереснее, потому что вокруг него наросло изрядно мифов.
Главная путаница вот в чём. Фраза «мы перестали использовать t-тест» у разных людей значит две совершенно разные вещи, и их надо развести.
В 9 случаях из 10 она значит примерно: «Раньше мы гнали сырые данные прямо в t-тест, а теперь не гоним». И дальше начинается набор красивых слов — линеаризация, CUPED, поправки на множественность. Это не является заменой t-тесту, а всего лишь препроцессинг. В конце пайплайна всё равно может стоять t-тест, просто входные данные у него больше не сырые, а обработанные тем или иным подходом.
И в одном случае из 10 речь идёт о настоящей альтернативе — когда t-тест в принципе не отвечает на ваш вопрос. Вот этот случай уже серьёзный.
Что касается кейсов, где t-тест действительно не подходит, то может они встречаются не столь часто, но они серьёзные. Разберу три.
☝🏻 Тяжёлые хвосты. Если вы измеряете выручку, и 1% пользователей приносит половину денег, t-тест на среднем почти бесполезен. Среднее здесь — это в основном шум от того, какой «кит» в какую группу попал. Реальный эффект в +5% на 99% пользователей спокойно прячется за одного случайного аномального клиента.
Что с этим можно делать: применять винсоризацию, логарифмирование и бутстрап для квантилей. А часто и нечто более радикальное — сменить саму метрику: мерить медиану, конверсию в платящего, ARPPU с ограничением сверху.
☝🏻 Исходные вопросы не про среднее. «Сдвинулась ли 90-я перцентиль времени загрузки?», «Изменилась ли медиана retention?». t-тест на эти вопросы просто не отвечает — он проверяет гипотезу о среднем значении, а нас могут интересовать хвост или медиана. Здесь больше помогут бутстрап и перестановочные тесты.
☝🏻 Гетерогенность. t-тест отвечает только на вопрос «сработало ли в среднем». В реальности может быть +3% в среднем, но при этом +8% на новичках и -5% на активных. И при масштабировании воздействия на всю аудиторию вы потеряете самых ценных клиентов. Никто не свяжет это с A/B-тестом, потому что «тест был положительный». Тут уже на помощь приходят мета-модели, причинные леса, аплифт-подходы.
Таким образом, «мы отказались от t-теста» — часто миф. В большинстве случаев это значит «перестали применять его на сырых данных as is», и это про грамотный пайплайн, а не про смену инструмента. Там, где t-тест действительно не подходит — есть честные альтернативы, и их стоит иметь в виду.
Не путайте эти 2 типа случаев. t-тест жив, нужно просто понимать, что он умеет, а что нет.
Если хотите разобраться более детально с этими и многими другими вопросами, то приглашаю вас на мой авторский курс, где эти темы подробно изложены в соответствующих разделах.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤3👍2
Выжмите максимум от учёбы 🔥
У нас акция! Записывайтесь до 30 апреля на курсы «Аналитик данных» или «Фуллстек-аналитик» и получите в подарок один из наших популярных тренингов на выбор:
👑 Курс Павла Беляева «Временные ряды»
👑 Курс Аслана Байрамкулова «A/B-тестирование»
👑 Тренинг Андрона Алексаняна «Как делать аналитику»
➡️ Выбирайте курс, на который хотите записаться: simulative.ru
📈 Симулейтив | ВК | YouTube
У нас акция! Записывайтесь до 30 апреля на курсы «Аналитик данных» или «Фуллстек-аналитик» и получите в подарок один из наших популярных тренингов на выбор:
И напоминаем, что у нас есть опция отложенного платежа — вы можете начать учиться сейчас, а первый платеж отсрочить на 3 или 6 месяцев.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2🔥2 2
Один день из жизни аналитика в Альфа-Банке
Привет, коллеги! С вами снова Евгений Буторин, ментор курса «Аналитик данных» 👋🏻
Я руковожу отделом CRM-аналитики в Альфа-Банке, который занимается развитием клиентской базы. Наша команда стоит из 11 человек, включая меня, и делится на 3 направления, каждое из которых делится на поднаправления.
У нас довольно классический Agile-подход: работаем спринтами (обычно одна неделя), всё планируем и отслеживаем в Jira. Используем канбан-доску, чтобы видеть поток задач в реальном времени.
Как устроен наш процесс?
На доске есть основные этапы:
➖ Backlog (бэклог) — сюда попадают все идеи и запросы от бизнеса;
➖ To Do — задачи, которые мы отобрали в спринт, приоритизировали и подготовили (с чётким описанием и критериями приёмки);
➖ In Progress — задачи в работе;
➖ Review — задачи на проверке;
➖ Modification — задачи на доработке (если в ходе проверки были выявлены недочёты);
➖ Done — задача закрыта, метрики посчитаны, рекомендации внедрены или переданы заказчику.
Какие задачи мы делаем?
🔸 Анализ эффективности CRM-кампаний и триггерных коммуникаций;
🔸 A/B-тесты гипотез по удержанию, активации и росту клиентской базы;
🔸 Построение сегментаций и когортных анализов;
🔸 Расчёт uplift, retention, LTV и других ключевых метрик;
🔸 Ad-hoc запросы от бизнеса (например, выяснить причину снижения просмотров баннеров);
🔸 Автоматизация отчётов и дашбордов, чтобы меньше времени уходило на рутину.
3 раза в неделю внутри каждого направления у нас проходит дейлики, где мы обсуждаем, над какими задачами сейчас работаем, укладываемся ли в срок, есть ли проблемы, нужно ли изменение приоритетов.
Также раз в неделю в нас проходит ретро, где мы собираемся всей командой, обсуждаем новости, проблемы с данными, делимся находками и фишками.
Сами спринты формируем в рамках встреч с заказчиками по пятницам.
Работаем мы в основном удалённо, но также каждый может по своему желанию посетить офис и встретиться с коллегами.
Расскажите в комментариях, как устроен ваш рабочий день? И если есть вопросы про работу в Альфе, пишите 👇🏻
📈 Симулейтив | ВК | YouTube
Привет, коллеги! С вами снова Евгений Буторин, ментор курса «Аналитик данных» 👋🏻
Я руковожу отделом CRM-аналитики в Альфа-Банке, который занимается развитием клиентской базы. Наша команда стоит из 11 человек, включая меня, и делится на 3 направления, каждое из которых делится на поднаправления.
У нас довольно классический Agile-подход: работаем спринтами (обычно одна неделя), всё планируем и отслеживаем в Jira. Используем канбан-доску, чтобы видеть поток задач в реальном времени.
Как устроен наш процесс?
На доске есть основные этапы:
Какие задачи мы делаем?
🔸 Анализ эффективности CRM-кампаний и триггерных коммуникаций;
🔸 A/B-тесты гипотез по удержанию, активации и росту клиентской базы;
🔸 Построение сегментаций и когортных анализов;
🔸 Расчёт uplift, retention, LTV и других ключевых метрик;
🔸 Ad-hoc запросы от бизнеса (например, выяснить причину снижения просмотров баннеров);
🔸 Автоматизация отчётов и дашбордов, чтобы меньше времени уходило на рутину.
3 раза в неделю внутри каждого направления у нас проходит дейлики, где мы обсуждаем, над какими задачами сейчас работаем, укладываемся ли в срок, есть ли проблемы, нужно ли изменение приоритетов.
Также раз в неделю в нас проходит ретро, где мы собираемся всей командой, обсуждаем новости, проблемы с данными, делимся находками и фишками.
Сами спринты формируем в рамках встреч с заказчиками по пятницам.
Работаем мы в основном удалённо, но также каждый может по своему желанию посетить офис и встретиться с коллегами.
Расскажите в комментариях, как устроен ваш рабочий день? И если есть вопросы про работу в Альфе, пишите 👇🏻
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤3👍3
Подборка для начинающих аналитиков
Привет, друзья! На связи Евгений Буторин, ментор курса «Аналитик данных» 👋🏻
Если вы только входите в аналитику и хотите дополнить свои знания и пополнить стек, вот моя личная подборка из проверенных ресурсов. Всё доступно, практично и без лишней воды. Я сам слушаю эти подкасты и когда-то они мне очень помогли.
Книги (не пытайтесь читать сразу всё, читайте постепенно)
📕 Чарльз Уилан «Голая статистика»
Лучший старт, чтобы понять, зачем вообще нужна статистика. Без формул-страшилок, с реальными примерами из жизни. После неё перестаёшь бояться «средних значений» и p-value. Идеально для новичков.
📗 Владимир Савельев «Статистика и котики»
Юмор + котики + основы статистики (дисперсия, t-критерий, критерии Манна-Уитни). Читается за вечер, а знания остаются надолго. Самый «вкусный» вход в тему.
📘 Уэс Маккинни «Python и анализ данных»
Библия для тех, кто хочет сразу работать с данными. Pandas, NumPy, визуализация — всё по делу. Качественный русский перевод, много практики.
📙 Роман Зыков «Роман с Data Science. Как монетизировать большие данные»
Российский взгляд: как данные зарабатывают деньги в бизнесе. Легко, с примерами из нашей реальности. Отлично дополняет технические книги.
📕 Джоэл Грас «Data Science. Наука о данных с нуля»
Простой и понятный обзор всей профессии: от сбора данных до первых выводов. Без сложной математики на старте.
Подкасты (слушайте в дороге или на прогулке)
Все на русском, выходят регулярно, есть на Яндекс Музыке:
🎙 «Это считается» (от Т-Банка) — будни продуктовых аналитиков. Метрики, A/B-тесты, реальные кейсы.
🎙 «Дайте данных» — аналитика + маркетинг + ML. Очень живо и по делу.
🎙 GetAnalyst (подкаст для системных и бизнес-аналитиков) — задачи, зоны ответственности, как аналитик помогает IT-команде.
🎙 Machine Learning Podcast — всё про ML и data-аналитику, но доступно даже новичкам.
🎙 Ещё советую «Ноль-один» и Data Coffee — для тех, кто хочет понять, как искать работу и проходить собеседования.
Статьи и бесплатные ресурсы
✍🏻 Раздел «Аналитика» на Habr.com — сотни статей от практикующих аналитиков. Начните с «Как стать аналитиком данных с нуля?» и бесплатной программы обучения.
✍🏻 Telegram-каналы: ищите Data New Gold, настенька и графики, Rafalytics — там ежедневные кейсы и лайфхаки.
✍🏻 И конечно, подписывайтесь на канал Симулейтив и читайте блог!
📈 Симулейтив | ВК | YouTube
Привет, друзья! На связи Евгений Буторин, ментор курса «Аналитик данных» 👋🏻
Если вы только входите в аналитику и хотите дополнить свои знания и пополнить стек, вот моя личная подборка из проверенных ресурсов. Всё доступно, практично и без лишней воды. Я сам слушаю эти подкасты и когда-то они мне очень помогли.
Книги (не пытайтесь читать сразу всё, читайте постепенно)
📕 Чарльз Уилан «Голая статистика»
Лучший старт, чтобы понять, зачем вообще нужна статистика. Без формул-страшилок, с реальными примерами из жизни. После неё перестаёшь бояться «средних значений» и p-value. Идеально для новичков.
📗 Владимир Савельев «Статистика и котики»
Юмор + котики + основы статистики (дисперсия, t-критерий, критерии Манна-Уитни). Читается за вечер, а знания остаются надолго. Самый «вкусный» вход в тему.
📘 Уэс Маккинни «Python и анализ данных»
Библия для тех, кто хочет сразу работать с данными. Pandas, NumPy, визуализация — всё по делу. Качественный русский перевод, много практики.
📙 Роман Зыков «Роман с Data Science. Как монетизировать большие данные»
Российский взгляд: как данные зарабатывают деньги в бизнесе. Легко, с примерами из нашей реальности. Отлично дополняет технические книги.
📕 Джоэл Грас «Data Science. Наука о данных с нуля»
Простой и понятный обзор всей профессии: от сбора данных до первых выводов. Без сложной математики на старте.
Подкасты (слушайте в дороге или на прогулке)
Все на русском, выходят регулярно, есть на Яндекс Музыке:
🎙 «Это считается» (от Т-Банка) — будни продуктовых аналитиков. Метрики, A/B-тесты, реальные кейсы.
🎙 «Дайте данных» — аналитика + маркетинг + ML. Очень живо и по делу.
🎙 GetAnalyst (подкаст для системных и бизнес-аналитиков) — задачи, зоны ответственности, как аналитик помогает IT-команде.
🎙 Machine Learning Podcast — всё про ML и data-аналитику, но доступно даже новичкам.
🎙 Ещё советую «Ноль-один» и Data Coffee — для тех, кто хочет понять, как искать работу и проходить собеседования.
Статьи и бесплатные ресурсы
✍🏻 Раздел «Аналитика» на Habr.com — сотни статей от практикующих аналитиков. Начните с «Как стать аналитиком данных с нуля?» и бесплатной программы обучения.
✍🏻 Telegram-каналы: ищите Data New Gold, настенька и графики, Rafalytics — там ежедневные кейсы и лайфхаки.
✍🏻 И конечно, подписывайтесь на канал Симулейтив и читайте блог!
Что добавите в свою подборку или что сейчас читаете/слушаете вы? Делитесь в комментариях!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13❤4👍4
Как switchback помог нам тестировать алгоритм ценообразования
Привет, на связи Аслан Байрамкулов, автор курса по A/B-тестированию 👋🏻
Как проверить новый алгоритм цен? Этот вопрос вызывает трудности у многих команд, занимающихся ценообразованием. У кого-то новая модель динамических цен, у кого-то другая формула комиссии, у кого-то ML подсказывает скидки.
Первый импульс — провести классический A/B на пользователях/магазинах. Часто я отговариваю от этой идеи и предлагаю подумать в сторону switchback-экспериментов. Для прайсинга классический A/B не всегда является правильным решением. Давайте разберёмся, почему.
Скидка в ЦГ (целевая группа) подняла спрос на определённые позиции. Курьеры в этих районах загружены, что привело к росту среднего времени доставки. Пользователи в КГ (контрольная группа) видят этот увеличившийся показатель времени и отказываются от заказа. Их retention упал из-за изменения, которое было осуществлено в ЦА. КГ уже не является нейтральным базовым уровнем — это группа, на которую повлияло воздействие в тесте.
Формально это нарушение SUTVA — предположения, что воздействие на одного юзера не меняет результат у другого. Иными словами, ваш A/B молча предполагает, что пользователи живут в изолированных средах и не влияют друг на друга. В нашем кейсе это явно не так, рынок общий. Задача «сравнить две параллельные вселенные» делением пользователей не решается, вселенная одна на всех.
Для привыкших делать классические A/B это не так очевидно с первого взгляда. Я видел многие команды, кто делал классический A/B на ценах, получал слабые эффекты и думал: «Прайсинг-модель так себе, попробуем другую». Было показано на пальцах, что это лишь измерение интерференции, а не эффекта, и любая новая модель будет давать ту же картину.
Switchback идёт другим путём. Вместо того чтобы делить пользователей, мы делим время/пространство.
В любой момент времени рынок целиком в одном режиме. Интерференции больше нет.
Но и здесь есть ловушки.
🔸 Первая — carryover. Переключились с treatment на control в 19:00, но заказы из предыдущего часа выполняются 40 минут и падают в учёт контрольного часа. Решение — первые 10–15 минут ячейки не учитываются в метрике (но платим понижением статистической мощности).
🔸 Вторая — эффективный размер выборки считается не в пользователях, а в ячейках. У вас миллион заказов, но если они уложились в 400 ячеек, то эффективный N = 400. Анализ мощности, посчитанный по юзерам, будет некорректен. А это влияет на ширину доверительного интервала и точность оценки. Интервалы будут кратно шире.
🔸 Третья — временная гетерогенность. Будни ≠ выходные, утро ≠ вечер, праздники и другие календарные аспекты. Если две недели switchback совпали с длинными выходными, половина дизайна улетела. Решение — стратифицированная рандомизация: treatment и control распределяются равномерно по дню недели и часу суток, а не случайно по всем ячейкам.
Часто используют регрессию с фиксированными эффектами по ячейке и кластерные SE, либо блочный бутстрап. Некоторые решения можно подсмотреть в блоге Lyft. Кто хочет теоретический подробный разбор, то рекомендую к прочтению статью Bojinov, Simchi-Levi, Zhao в Management Science (2023). В ней можно найти разбор оптимального дизайна и анализа под разные модели carryover.
Привет, на связи Аслан Байрамкулов, автор курса по A/B-тестированию 👋🏻
Как проверить новый алгоритм цен? Этот вопрос вызывает трудности у многих команд, занимающихся ценообразованием. У кого-то новая модель динамических цен, у кого-то другая формула комиссии, у кого-то ML подсказывает скидки.
Первый импульс — провести классический A/B на пользователях/магазинах. Часто я отговариваю от этой идеи и предлагаю подумать в сторону switchback-экспериментов. Для прайсинга классический A/B не всегда является правильным решением. Давайте разберёмся, почему.
Объясню на примере. Вы тестируете новую логику скидок в доставке еды. Делите юзеров 50/50: половине — новые цены, половине — старые. Ждёте неделю, считаете средний чек.
Теперь посмотрим, что в это время делает рынок.
Скидка в ЦГ (целевая группа) подняла спрос на определённые позиции. Курьеры в этих районах загружены, что привело к росту среднего времени доставки. Пользователи в КГ (контрольная группа) видят этот увеличившийся показатель времени и отказываются от заказа. Их retention упал из-за изменения, которое было осуществлено в ЦА. КГ уже не является нейтральным базовым уровнем — это группа, на которую повлияло воздействие в тесте.
Формально это нарушение SUTVA — предположения, что воздействие на одного юзера не меняет результат у другого. Иными словами, ваш A/B молча предполагает, что пользователи живут в изолированных средах и не влияют друг на друга. В нашем кейсе это явно не так, рынок общий. Задача «сравнить две параллельные вселенные» делением пользователей не решается, вселенная одна на всех.
Для привыкших делать классические A/B это не так очевидно с первого взгляда. Я видел многие команды, кто делал классический A/B на ценах, получал слабые эффекты и думал: «Прайсинг-модель так себе, попробуем другую». Было показано на пальцах, что это лишь измерение интерференции, а не эффекта, и любая новая модель будет давать ту же картину.
Switchback идёт другим путём. Вместо того чтобы делить пользователей, мы делим время/пространство.
Как это выглядит. Берём сетку «час × регион», скажем, «Москва-центр, вторник, 19:00» — одна ячейка. Каждой ячейке случайно присваиваем treatment (тест) или control (контроль). В час X весь регион видит новую цену, в час Y старую. Усредняем метрики внутри ячейки, сравниваем средние между группами.
В любой момент времени рынок целиком в одном режиме. Интерференции больше нет.
Но и здесь есть ловушки.
🔸 Первая — carryover. Переключились с treatment на control в 19:00, но заказы из предыдущего часа выполняются 40 минут и падают в учёт контрольного часа. Решение — первые 10–15 минут ячейки не учитываются в метрике (но платим понижением статистической мощности).
🔸 Вторая — эффективный размер выборки считается не в пользователях, а в ячейках. У вас миллион заказов, но если они уложились в 400 ячеек, то эффективный N = 400. Анализ мощности, посчитанный по юзерам, будет некорректен. А это влияет на ширину доверительного интервала и точность оценки. Интервалы будут кратно шире.
🔸 Третья — временная гетерогенность. Будни ≠ выходные, утро ≠ вечер, праздники и другие календарные аспекты. Если две недели switchback совпали с длинными выходными, половина дизайна улетела. Решение — стратифицированная рандомизация: treatment и control распределяются равномерно по дню недели и часу суток, а не случайно по всем ячейкам.
Отдельно про анализ результатов. T-test на уровне заказов тут не работает. Заказы внутри одной ячейки не являются независимыми: один рынок в один час коррелирован сам с собой. Если считать наивно, то стандартные ошибки будут занижены, и p-value выглядит красивее, чем есть на самом деле.
Часто используют регрессию с фиксированными эффектами по ячейке и кластерные SE, либо блочный бутстрап. Некоторые решения можно подсмотреть в блоге Lyft. Кто хочет теоретический подробный разбор, то рекомендую к прочтению статью Bojinov, Simchi-Levi, Zhao в Management Science (2023). В ней можно найти разбор оптимального дизайна и анализа под разные модели carryover.
🔥3❤2👍2
Когда switchback не нужен?
Если воздействие локально на пользователя и не влияет на соседей — новая кнопка, другой шрифт, перестановка блоков. Здесь обычный A/B работает корректно. Switchback тут только съест мощность.
Когда switchback — единственный правильный выбор?
Прайсинг в екоме, такси, доставка, шеринг-сервисы, правила комиссии, supply-side оптимизации. Всё, что меняет равновесие рынка, а не только поведение конкретного юзера.
Поделюсь с вами кейсом из своей практики. Команда тестировала новую формулу цены классическим A/B, получила p-value = 0.32, списала на отсутствие эффекта. Через полгода перезапустили этот же вариант в парадигме switchback, и обнаружили эффект +1.5% по выручке с интервалом ±0.6%. Первый тест «ничего не нашёл» не из-за отсутствия эффекта, а из-за интерференции: контрольная группа получала шум от тестовой группы через общий рынок.
Таким образом, switchback — честный дизайн для случаев, где A/B как инструмент не годится. Знать, что он существует, и уметь различать, когда он нужен, — навык, который окупается первым же сохранённым решением.
🚇 Забежать в последний вагон: simulative.ru/ab-test
📈 Симулейтив | ВК | YouTube
Если воздействие локально на пользователя и не влияет на соседей — новая кнопка, другой шрифт, перестановка блоков. Здесь обычный A/B работает корректно. Switchback тут только съест мощность.
Когда switchback — единственный правильный выбор?
Прайсинг в екоме, такси, доставка, шеринг-сервисы, правила комиссии, supply-side оптимизации. Всё, что меняет равновесие рынка, а не только поведение конкретного юзера.
Поделюсь с вами кейсом из своей практики. Команда тестировала новую формулу цены классическим A/B, получила p-value = 0.32, списала на отсутствие эффекта. Через полгода перезапустили этот же вариант в парадигме switchback, и обнаружили эффект +1.5% по выручке с интервалом ±0.6%. Первый тест «ничего не нашёл» не из-за отсутствия эффекта, а из-за интерференции: контрольная группа получала шум от тестовой группы через общий рынок.
Таким образом, switchback — честный дизайн для случаев, где A/B как инструмент не годится. Знать, что он существует, и уметь различать, когда он нужен, — навык, который окупается первым же сохранённым решением.
В моем курсе switchback — одна из тем, которой я уделяю особое внимание от дизайна ячеек и выбора длины окна до кластерного анализа и разбора реальных кейсов. Приглашаю вас в этот совместный путь, запуск уже сегодня!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4🔥4👍2
[Вебинар] Fullstack-аналитик: почему компаниям больше не нужны «узкие» специалисты
Рынок аналитики меняется — компании всё чаще ищут специалиста, который закроет задачу от сырых данных до готового решения для бизнеса. Fullstack-аналитик — это ответ на рост требований к скорости и качеству. Но как им стать и что реально нужно уметь?
На вебинаре с Ильей Ковалёвым разберём, почему классическое деление на аналитиков, инженеров данных и BI-специалистов уходит в прошлое. Поговорим о том, какие задачи теперь ложатся на одного человека и за что бизнес готов платить больше, а за что нет. И главное — покажем на примерах, как перестать быть просто оператором инструментов и начать приносить реальную ценность.
На вебинаре расскажем:
➖ Как выросли требования к аналитикам за последние 2–3 года;
➖ Почему бизнесу нужен человек, который понимает данные, умеет общаться с бизнесом и может сам собрать решение;
➖ Примеры задач, которые раньше делали 3 человека, а теперь один;
➖ Главные ошибки новичков.
❗️ 27 апреля, 19:00 МСК
😶 Зарегистрироваться на вебинар
📈 Симулейтив | ВК | YouTube
Рынок аналитики меняется — компании всё чаще ищут специалиста, который закроет задачу от сырых данных до готового решения для бизнеса. Fullstack-аналитик — это ответ на рост требований к скорости и качеству. Но как им стать и что реально нужно уметь?
На вебинаре с Ильей Ковалёвым разберём, почему классическое деление на аналитиков, инженеров данных и BI-специалистов уходит в прошлое. Поговорим о том, какие задачи теперь ложатся на одного человека и за что бизнес готов платить больше, а за что нет. И главное — покажем на примерах, как перестать быть просто оператором инструментов и начать приносить реальную ценность.
На вебинаре расскажем:
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3❤1 1
SQL для собеседований: как решать задачи с оконными функциями
Сегодня рассмотрим реальные кейсы с собеседований по SQL — задачи с оконными функциями.
Что будем разбирать?
✅ Кейс 1 — ранжирование данных;
✅ Кейс 2 — кумулятивные продажи по регионам;
✅ Кейс 3 — скользящее среднее за 7 дней;
✅ Кейс 4 — доля продукта в категории.
Эти задачи часто встречаются на собеседованиях, и понимание оконных функций (PARTITION BY, ROWS, RANK) — ключ к их решению. С помощью задач вы быстрее освоите сложные запросы и сможете отвечать на вопросы типа: «Как рассчитать среднюю продажу за неделю?» или «Как найти топ-продукты?».
👉 Получить материал
📈 Симулейтив | ВК | YouTube
Сегодня рассмотрим реальные кейсы с собеседований по SQL — задачи с оконными функциями.
Что будем разбирать?
Эти задачи часто встречаются на собеседованиях, и понимание оконных функций (PARTITION BY, ROWS, RANK) — ключ к их решению. С помощью задач вы быстрее освоите сложные запросы и сможете отвечать на вопросы типа: «Как рассчитать среднюю продажу за неделю?» или «Как найти топ-продукты?».
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4 3❤2
Как мы используем библиотеку Prophet
Всем привет, я Павел Беляев, ведущий канала Тимлидское об аналитике и автор нового курса Симулейтив «Временные ряды» 👋🏻
Одной из сильных потребностей заказчиков аналитики является прогнозирование. Бизнес хочет представлять, как будут вести себя его финансы или поведение клиентов в разных сегментах, на разных горизонтах. Это помогает ему ставить цели, планировать, выбирать направления движения — короче, собственно, управлять делами.
Мы тоже много чего прогнозируем, начинали с ARIMA, а сейчас используем Prophet. Несколько слов о том, как мы применяем эту библиотеку питона.
1️⃣ Входные данные
Это временной ряд, таблица из двух колонок — дата и прогнозируемая метрика. В ряду не должно быть пропусков, всем датам должно соответствовать непустое значение метрики. Очень желательно, чтобы данных было не меньше, чем за пару лет, чтобы уловить сезонность.
2️⃣ Регрессоры
Ещё один временной ряд, корректирующий «вес» значений в наборе данных для учёта несистемных влияний среды и других нестандартных условий.
Пример регрессора: набор из нулей и единиц, где 1 — рабочий день, 0 — выходной. Пользовательская активность сильно зависит от дня недели. Если какому-то дню в будущем соответствует 0, модель занизит значения для этого дня.
3️⃣ Гиперпараметры
Это конфиг, параметры алгоритма, значения которых устанавливаются перед запуском процесса обучения. Например, здесь можно указать, какая модель соответствует исходному ряду — мультипликативная или аддитивная. Здесь же указываются параметры сезонности.
4️⃣ Скрипт прогнозирования
Всё это подаётся на вход скрипта, который мы назвали «Ванга». В нём применяется модель и выдаётся ряд, состоящий из входного и его продолжения в будущее на заданный период.
5️⃣ Частота прогнозирования
Мы выполняем прогнозирование каждый день, новые данные не перетирают старые. Таким образом, мы корректируем прогноз и видим фактическую ошибку предыдущего прогнозирования, т. е. расхождение прогноза и факта.
6️⃣ Тюнинг гиперпараметров
Так как поведение исследуемых метрик со временем может меняться, настройки модели следует периодически переопределять. Мы делаем это раз в полгода.
📖 Немного подробнее о нашем прогнозаторе я писал в статье.
🔸 Записывайтесь, старт 15 мая: simulative.ru/time-series
📈 Симулейтив | ВК | YouTube
Всем привет, я Павел Беляев, ведущий канала Тимлидское об аналитике и автор нового курса Симулейтив «Временные ряды» 👋🏻
Одной из сильных потребностей заказчиков аналитики является прогнозирование. Бизнес хочет представлять, как будут вести себя его финансы или поведение клиентов в разных сегментах, на разных горизонтах. Это помогает ему ставить цели, планировать, выбирать направления движения — короче, собственно, управлять делами.
Мы тоже много чего прогнозируем, начинали с ARIMA, а сейчас используем Prophet. Несколько слов о том, как мы применяем эту библиотеку питона.
Это временной ряд, таблица из двух колонок — дата и прогнозируемая метрика. В ряду не должно быть пропусков, всем датам должно соответствовать непустое значение метрики. Очень желательно, чтобы данных было не меньше, чем за пару лет, чтобы уловить сезонность.
Ещё один временной ряд, корректирующий «вес» значений в наборе данных для учёта несистемных влияний среды и других нестандартных условий.
Пример регрессора: набор из нулей и единиц, где 1 — рабочий день, 0 — выходной. Пользовательская активность сильно зависит от дня недели. Если какому-то дню в будущем соответствует 0, модель занизит значения для этого дня.
Это конфиг, параметры алгоритма, значения которых устанавливаются перед запуском процесса обучения. Например, здесь можно указать, какая модель соответствует исходному ряду — мультипликативная или аддитивная. Здесь же указываются параметры сезонности.
Всё это подаётся на вход скрипта, который мы назвали «Ванга». В нём применяется модель и выдаётся ряд, состоящий из входного и его продолжения в будущее на заданный период.
Мы выполняем прогнозирование каждый день, новые данные не перетирают старые. Таким образом, мы корректируем прогноз и видим фактическую ошибку предыдущего прогнозирования, т. е. расхождение прогноза и факта.
Так как поведение исследуемых метрик со временем может меняться, настройки модели следует периодически переопределять. Мы делаем это раз в полгода.
А сам Prophet мы будем внимательно рассматривать в курсе «Временные ряды». Не пропустите возможность прокачаться в практической математике и прогнозировании, эти навыки крайне ценятся на рынке аналитики!
🔸 Записывайтесь, старт 15 мая: simulative.ru/time-series
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1🔥1
Симулейтив
[Вебинар] Fullstack-аналитик: почему компаниям больше не нужны «узкие» специалисты Рынок аналитики меняется — компании всё чаще ищут специалиста, который закроет задачу от сырых данных до готового решения для бизнеса. Fullstack-аналитик — это ответ на рост…
Уже сегодня: как стать fullstack-аналитиком и перестать быть «узким» специалистом
Друзья, тот самый вебинар про fullstack-аналитиков — уже через несколько часов! Если вы до сих пор думаете, что хороший аналитик должен только знать SQL и строить графики в Power BI — приходите, будем ломать стереотипы.
Илья Ковалёв покажет на реальных примерах, почему компании устали от «узких» специалистов и переходят на универсалов.
Спойлеры из эфира:
➖ Задача, которую раньше делили на аналитика + инженера + BI, сегодня закрывает один человек (и получает за это одну зарплату, а не три);
➖ За что на самом деле платят деньги (спойлер: не за красивые дашборды);
➖ Главная ошибка новичков — учить кнопки, а не понимать бизнес.
➡️ Зарегистрироваться
📈 Симулейтив | ВК | YouTube
Друзья, тот самый вебинар про fullstack-аналитиков — уже через несколько часов! Если вы до сих пор думаете, что хороший аналитик должен только знать SQL и строить графики в Power BI — приходите, будем ломать стереотипы.
Илья Ковалёв покажет на реальных примерах, почему компании устали от «узких» специалистов и переходят на универсалов.
Спойлеры из эфира:
Ждём вас сегодня, 27 апреля в 19:00 МСК. Будет жарко🔥
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2❤1 1
Практика: прокачиваем SQL на реальных задачах
Приготовили для вас новый формат эфиров! На практическом стриме с Евгением Буториным, ментором курса «Аналитик данных» и руководителем CRM-аналитики в Альфа Банке, разберём четыре реальные задачи, которые часто встречаются в работе аналитика. Вы увидите живые примеры кода и подходы к оптимизации сложных запросов.
На стриме разберём:
🟠 Как посчитать количество и прибыльность анализов по наименованиям, определить самый доходный и убыточный;
🟠 Как провести ABC-анализ дистрибьюторов — построить отчёт по прибыли и выручке с фильтрацией по продуктам и производителям;
🟠 Как проанализировать сочетаемость товаров в аптечной сети — выявить самые востребованные продукты по часам и дням недели;
🟠 А также ответим на ваши вопросы про реальные рабочие кейсы.
❗️ 30 апреля, 19:00 МСК, онлайн
➡️ Зарегистрироваться на стрим
Присоединяйтесь — от вашей обратной связи зависит, будем ли продолжать делать этот формат🧡
📈 Симулейтив | ВК | YouTube
Приготовили для вас новый формат эфиров! На практическом стриме с Евгением Буториным, ментором курса «Аналитик данных» и руководителем CRM-аналитики в Альфа Банке, разберём четыре реальные задачи, которые часто встречаются в работе аналитика. Вы увидите живые примеры кода и подходы к оптимизации сложных запросов.
На стриме разберём:
Присоединяйтесь — от вашей обратной связи зависит, будем ли продолжать делать этот формат
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤3 2
Давно не проводили для вас Q&A-сессии, и рады сообщить, что на связь с вами выйдет Андрон Алексанян!
Андрон более 8 лет выстраивает аналитику крупнейшим компаниям России и мира: Сбер, Mail, Skyeng, Coding Invaders и др. В 2023 году основал онлайн-университет Симулейтив, где также является преподавателем и спикером курсов. Постоянный спикер и участник наших вебинаров, а ещё активно отвечает студентам в чате!
Если у вас есть любые вопросы по профессиям в аналитике, кейсам да и вообще любые — самое время его задать! 30 апреля Андрон выберет самые интересные и разберёт их в наших каналах:
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥2👍1
Forwarded from Модель предскажет
Как автоматически находить ошибки в разметке и чистить датасеты
Привет! На связи Мария Жарова, ML-инженер в команде рекомендаций в Wildberries и ментор курса «Инженер машинного обучения» 👋🏻
Если вы когда-нибудь обучали модели, то знаете: качество данных почти всегда важнее самой модели. Неверная разметка, дубликаты, пропуски, дрейф — всё это незаметно «ломает» метрики и приводит к странным предсказаниям.
Хорошая новость — часть этих проблем можно находить автоматически!
Для этого есть библиотека Cleanlab — инструмент для анализа качества данных и поиска скрытых ошибок в датасетах🧹
Что умеет этот инструмент:
🟠 Находить потенциально неверно размеченные объекты и оценивать «уверенность» в разметке;
🟠 Искать шумные классы и пересечения между ними;
🟠 Выявлять дубликаты и аномалии;
🟠 Анализировать пропуски и проблемы в признаках;
🟠 Проверять дрейф данных между выборками.
А также Cleanlab полностью совместим со sklearn «из коробки» и умеет работать поверх любой модели.
Как это работает?
Cleanlab использует вероятностные предсказания модели, чтобы оценить, насколько разметка согласуется с паттернами в данных. Если модель стабильно «не согласна» с label’ом, объект помечается как подозрительный. Это особенно полезно для:
🟠 больших датасетов с ручной разметкой, особенно при крауд-сорсинге;
🟠 CV / NLP-задач;
🟠 пользовательских событий (где много шума).
Быстрый старт
Установка:
Пример №1 — поиск ошибок разметки для классификации:
На выходе получаем строки датасета, где разметка, вероятно, ошибочная — их можно перепроверить вручную, удалить или переразметить.
Пример №2 — автоматическая очистка датасета:
Также среди возможностей библиотеки — оценка качества разметки по классам (можно понять, какие классы путают чаще всего), а также работа с текстами и изображениями — достаточно подать эмбеддинги или вероятности любой модели.
Быстрые ссылки
➡️ Официальная документация
➡️ Страничка на PyPI с примерами
Ставьте❤️ , если было полезно — и сохраняйте, чтобы протестировать на своих датасетах!
Привет! На связи Мария Жарова, ML-инженер в команде рекомендаций в Wildberries и ментор курса «Инженер машинного обучения» 👋🏻
Если вы когда-нибудь обучали модели, то знаете: качество данных почти всегда важнее самой модели. Неверная разметка, дубликаты, пропуски, дрейф — всё это незаметно «ломает» метрики и приводит к странным предсказаниям.
Хорошая новость — часть этих проблем можно находить автоматически!
Для этого есть библиотека Cleanlab — инструмент для анализа качества данных и поиска скрытых ошибок в датасетах
Что умеет этот инструмент:
А также Cleanlab полностью совместим со sklearn «из коробки» и умеет работать поверх любой модели.
Как это работает?
Cleanlab использует вероятностные предсказания модели, чтобы оценить, насколько разметка согласуется с паттернами в данных. Если модель стабильно «не согласна» с label’ом, объект помечается как подозрительный. Это особенно полезно для:
Быстрый старт
Установка:
pip install cleanlab
Пример №1 — поиск ошибок разметки для классификации:
# ищем подозрительно размеченные объекты
label_issues = find_label_issues(
labels=y_train,
pred_probs=pred_probs
)
На выходе получаем строки датасета, где разметка, вероятно, ошибочная — их можно перепроверить вручную, удалить или переразметить.
Пример №2 — автоматическая очистка датасета:
from cleanlab.classification import CleanLearning
cl = CleanLearning(model)
cl.fit(X_train, y_train)
# уже очищенное обучение
preds = cl.predict(X_test)
Также среди возможностей библиотеки — оценка качества разметки по классам (можно понять, какие классы путают чаще всего), а также работа с текстами и изображениями — достаточно подать эмбеддинги или вероятности любой модели.
Быстрые ссылки
Ставьте
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8🔥4👍2🤩1
Хотите прокачаться в Симулейтив, но ещё оцениваете свой бюджет?
Есть способ учиться без личных расходов, о котором вы, возможно, не знали — за счёт компании, в которой вы работаете🧡
Что это значит для вас:
➖ Вы прокачиваете скилл — SQL, Python, BI, ML, аналитика данных;
➖ Получаете диплом о профпереподготовке или сертификат;
➖ Итоговый проект — на задачах вашего реального бизнеса;
➖ Бессрочный доступ к материалам.
Оставьте заявку и получите бесплатную консультацию — вместе разберём, как оформить обучение в вашей компании.
➡️ Оставить заявку: simulative.ru/korporativnoe-obuchenie
📈 Симулейтив | ВК | YouTube
Есть способ учиться без личных расходов, о котором вы, возможно, не знали — за счёт компании, в которой вы работаете
Мы запустили корпоративные программы повышения квалификации — и теперь они доступны даже от одного специалиста. Не нужно ждать, пока весь отдел соберётся учиться 😁
Что это значит для вас:
Оставьте заявку и получите бесплатную консультацию — вместе разберём, как оформить обучение в вашей компании.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍3🔥2
Симулейтив
Начинаем Q&A с Андроном!
Вопрос от Ильдара:
Вопрос от Ильдара:
Очень сомневаюсь, что профессия аналитика будет востребованной спустя 3-5 лет из-за кризиса в экономике и использования нейросетей. Как вы считаете, стоит ли вообще вкатываться сейчас в профессию и каким образом?
❤1🔥1 1