О проверке результатов: link 🔗
Поиграться можно тут: link 🔗
Зачем оценивать размер выборки? link 🔗
Но нельзя же верить Bootstrap'у постоянно? Существует множество методов (z-test, t-test и др.). Что этого и для чего используются можно глянуть (СПОЙЛЕР: патриотам не смотреть! )
[EN] VK link 🔗
[EN] Study A/B testing (GitHub) link 🔗
[EN] scipy Documentation (library in Python) link 🔗
[EN] statsmodels Documentation (library in Python) link 🔗
[EN] A/B testing: A step-by-step guide in Python link 🔗
Советую посмотреть про различные методы подсчета результатов A/B теста. Дам псевдо-дшку для того, чтобы было понимание, cами показатели можете видеть на картинке (используйте proportion z-test)
- COUNT - количество пользователей, которые посетили сайт
- SELL - количество пользователей, которые купили продукт
- CR - конверсия, отношение продаж к количеству пользователей.
Фух, вроде всё. Если есть дополнения, пишите в комменты, будем рады! За труды ставьте реакции, пишите комментарии, зовите друзей)
Поиграться можно тут: link 🔗
Зачем оценивать размер выборки? link 🔗
Но нельзя же верить Bootstrap'у постоянно? Существует множество методов (z-test, t-test и др.). Что этого и для чего используются можно глянуть (
[EN] VK link 🔗
[EN] Study A/B testing (GitHub) link 🔗
[EN] scipy Documentation (library in Python) link 🔗
[EN] statsmodels Documentation (library in Python) link 🔗
[EN] A/B testing: A step-by-step guide in Python link 🔗
Советую посмотреть про различные методы подсчета результатов A/B теста. Дам псевдо-дшку для того, чтобы было понимание, cами показатели можете видеть на картинке (используйте proportion z-test)
- COUNT - количество пользователей, которые посетили сайт
- SELL - количество пользователей, которые купили продукт
- CR - конверсия, отношение продаж к количеству пользователей.
Фух, вроде всё. Если есть дополнения, пишите в комменты, будем рады! За труды ставьте реакции, пишите комментарии, зовите друзей)
❤11👍4
Заскуль питона (Data Science) pinned «Самая любимая тема, пожалуй, для всех продактов, встречаем, A/B тесты! По факту мы тестируем то, как ведет себя метрика при изменении в продукте В нашей команде есть админ, который их не признает Какие термины нужно обязательно знать? Выборка - подмножество…»
Заскуль питона (Data Science) pinned «Совместно с Enjoyer’ом HSE (ПМИ) @ArseniySem Планируем организовать встречу в мск на следующей неделе (предположительно выходные). Пообщаемся поближе, обсудим какие-то классные кейсы, да и просто отдохнём. По поводу места будем решать на неделе 🥹 Возможно…»
Друзья, всем привет, мы определились с местом, где проведем нашу первую, но не последнюю встречу. Циферблат Москва Кузнецкий Мост по адресу: г. Москва, ул. Кузнецкий мост 19, стр.1. Если у вас есть возможность прийти, будем рады вас видеть. В опросе ниже проголосуйте за день, в который вам будет удобней всего встретиться с нами!
Друзья, всем привет, на этой неделе не удалось встретиться, админ сожалеет. Я озадачился тем, чтобы попробовать поступить в ШАД (Яндекс), это будет неплохой опыт, как для меня, человека, который учится даже не по направлению бизнес-информатики))))
Первый пост по теме подготовка кШАДУ АДУ, объявляется открытым. Набор будет в апреле следующего года, поэтому можно попробовать заспидранить основные моменты. Пока что на руках есть рекомендации от Яндекс, которые они дают для этого.
1. Алгоритмы: построение и анализ (Т. Кормен, Ч. Лейзерсон, Р. Риверст, К. Штайн)
2. Задачи и теоремы линейной алгебры (В. Прасолов)
3. Основные понятия теории вероятностей (А. Колмогоров)
4. Курс теории вероятностей и математической статистики (Б. Севастьянов)
5. Курс комбинаторики А. М. Райгородского на YouTube.
6. Тренажёры по написанию кода: Codeforces, LeetCode или TopCoder
и т.д. и т.п., можно глянуть по ссылке от ЯШКИ.
Ну что ж, поехали. #собираюсьвад
Первый пост по теме подготовка к
1. Алгоритмы: построение и анализ (Т. Кормен, Ч. Лейзерсон, Р. Риверст, К. Штайн)
2. Задачи и теоремы линейной алгебры (В. Прасолов)
3. Основные понятия теории вероятностей (А. Колмогоров)
4. Курс теории вероятностей и математической статистики (Б. Севастьянов)
5. Курс комбинаторики А. М. Райгородского на YouTube.
6. Тренажёры по написанию кода: Codeforces, LeetCode или TopCoder
и т.д. и т.п., можно глянуть по ссылке от ЯШКИ.
Ну что ж, поехали. #собираюсьвад
YouTube
Комбинаторика - Райгородский Андрей Михайлович
Share your videos with friends, family, and the world
👨💻9🔥3
ШАД.zip
638 MB
🟡⚫️🔴⚪️ Откопал инфу по ШАД, к которой готовился один из выпускников. Выгружалась zip достаточно долго, потому что исходник был на сайте, который был залочен для РФ, press F.
Навигация:
1_Online_Test – решение задач с теста на Питоне от автора
2_Exams – задачи с экзаменов 2012-2018 и их решения.
3_Interviews – задачи с интервью прошлых лет и их решения.
4_Books – все книги, перечисленные в программе для поступления в ШАД, плюс еще много разных полезных книг, которыми пользовался автор при подготовке.
5_Formulae – различные конспекты, формулы и шпаргалки. Если нужно освежить в памяти отдельные темы или нет времени целиком прочитать книги.
6_Problemsets – задачи, близкие к экзаменам и интервью в ШАД. Сейчас там лежат листки по теорверу ФКН Вышки.
More_materials – дополнительные материалы по подготовке, на которые наткнулся в Интернете. Сам не успел ими воспользоваться, интересные задачи там найдутся
#готовлюськаду
Навигация:
1_Online_Test – решение задач с теста на Питоне от автора
2_Exams – задачи с экзаменов 2012-2018 и их решения.
3_Interviews – задачи с интервью прошлых лет и их решения.
4_Books – все книги, перечисленные в программе для поступления в ШАД, плюс еще много разных полезных книг, которыми пользовался автор при подготовке.
5_Formulae – различные конспекты, формулы и шпаргалки. Если нужно освежить в памяти отдельные темы или нет времени целиком прочитать книги.
6_Problemsets – задачи, близкие к экзаменам и интервью в ШАД. Сейчас там лежат листки по теорверу ФКН Вышки.
More_materials – дополнительные материалы по подготовке, на которые наткнулся в Интернете. Сам не успел ими воспользоваться, интересные задачи там найдутся
#готовлюськаду
🔥11👍6❤3👨💻1
This media is not supported in your browser
VIEW IN TELEGRAM
Всем доброе утро 😎
Сегодня пост ✅
Сегодня пост ✅
🐳8❤6😁4
Коллеги, всем привет! Пора подвести итоги этого года.
> поучаствовать в хакатоне и занять 8-е место из 250.
> создан канал и набрано 455 подписчиков, спасибо всем.
> пройдены различные курсы, админ за 6 месяцев успел практиковаться в аналитике.
Просмотрено:
SQL, Python, статистика, A/B тесты, PowerBI / Tableu / SuperSet, API, JSON.
> ВСЕ админы устроились на работку.
А вообще кто мы? Студенты 3-го курса РАНХиГС, которые поняли, что хотят поменять что-то в своей жизни. Мы изначально манагеры (в корочке это написано).
Изначально этот канал создавался для того чтобы скидывать полезные материалы и находить отклик среди других людей.
В следующем году хочу, чтобы каждый оставался с нами, обещаем больше контента. От команды желаем не раскисать и топить дальше, вы справитесь!
Планы на следующий год:
> Продуктовая аналитика, подтянуть A/B.
> ML, Deep Learning
> ШАД (посмотрим по загруженности).
> Еще админов, чтобы не было провала по времени в контенте.
> Возможно устроиться на стажку, посмотрим. Если захотим, будем скидывать всё то, что необходимо для подготовки.
Какие прогнозы на следующий год?
Всё также. Если вы думаете, что очень много нормальных аналитиков, Data Scientist'ов, ML'щиков в СНГ, это не правда, стремитесь быть лучше, всё будет классно.
Еще раз спасибо всем, вы заставляетесь двигаться вперед. Надеюсь, вы также находите отклик, просматривая материалы на канале. Дальше - больше!
Ждем ваших комментариев, чтобы понимать чего хотите от нас, обещаем, что в новый год все исполнится)
- Гляньте вот этот курс по SQL, это очень классный материал.
> Список материалов
Хэндбук от Яндекс по ML
Хэндбук от Яндекс по Python
Источник знаний - Google. Что-то не понимаете, гуглите (правило любого аналитика)
Телеграм канал - это наше общее детище, над которым мы работаем все ВМЕСТЕ, поэтому если у вас есть какие-то вопросы / желание помочь - пишите.
P.S: Админ не может погрязнуть в учебе
> поучаствовать в хакатоне и занять 8-е место из 250.
> создан канал и набрано 455 подписчиков, спасибо всем.
> пройдены различные курсы, админ за 6 месяцев успел практиковаться в аналитике.
Просмотрено:
SQL, Python, статистика, A/B тесты, PowerBI / Tableu / SuperSet, API, JSON.
> ВСЕ админы устроились на работку.
А вообще кто мы? Студенты 3-го курса РАНХиГС, которые поняли, что хотят поменять что-то в своей жизни. Мы изначально манагеры (в корочке это написано).
Изначально этот канал создавался для того чтобы скидывать полезные материалы и находить отклик среди других людей.
В следующем году хочу, чтобы каждый оставался с нами, обещаем больше контента. От команды желаем не раскисать и топить дальше, вы справитесь!
Планы на следующий год:
> Продуктовая аналитика, подтянуть A/B.
> ML, Deep Learning
> ШАД (посмотрим по загруженности).
> Еще админов, чтобы не было провала по времени в контенте.
> Возможно устроиться на стажку, посмотрим. Если захотим, будем скидывать всё то, что необходимо для подготовки.
Какие прогнозы на следующий год?
Всё также. Если вы думаете, что очень много нормальных аналитиков, Data Scientist'ов, ML'щиков в СНГ, это не правда, стремитесь быть лучше, всё будет классно.
Еще раз спасибо всем, вы заставляетесь двигаться вперед. Надеюсь, вы также находите отклик, просматривая материалы на канале. Дальше - больше!
Ждем ваших комментариев, чтобы понимать чего хотите от нас, обещаем, что в новый год все исполнится)
- Гляньте вот этот курс по SQL, это очень классный материал.
> Список материалов
Хэндбук от Яндекс по ML
Хэндбук от Яндекс по Python
Источник знаний - Google. Что-то не понимаете, гуглите (правило любого аналитика)
Телеграм канал - это наше общее детище, над которым мы работаем все ВМЕСТЕ, поэтому если у вас есть какие-то вопросы / желание помочь - пишите.
P.S: Админ не может погрязнуть в учебе
karpov.courses
Симулятор SQL | karpov.courses
Запишитесь на бесплатный интерактивный симулятор SQL онлайн для практики: online-training в школе Karpov Courses.
👍30🔥4❤1
Я же выпускаю посты, где реакции?
P.S: угадайте, к чему подводка...
30 реакций и админ сядет за пост 😎
P.S: угадайте, к чему подводка...
30 реакций и админ сядет за пост 😎
❤🔥24🐳8🤨5🔥4🤓3❤1🥰1🤯1🍾1
… А дело в том, что я, видимо, не так распределил контрольные и тестовые группы.
Всем привет, я снова вернулся с A/B тестами, но хочется более структурно разобрать все нюансы и тонкости. Запускаю пилотный пост, если все понравится, буду продолжать выпускать.
Кажется, что знание этого, поможет вам устроиться на позицию продуктового аналитика. Кто это такой и вообще чем они занимаются, расскажу в следующем посте.
Начнём с вводных:
Теория вероятностей и математическая статистика.
- Закон больших чисел
- Понимание того, что случайные события можно свести к системе.
- Различные виды распределений. Что за распределение, его особенности, про это будет следующий пост.
- Математика: мода, медиана, математическое ожидание, дисперсия.
Мода - самое часто встречающееся число в выборке
Медиана - середина интервала после упорядочивания элементов по возрастанию
Математическое ожидание - среднее в генеральной совокупности
Дисперсия - средний показатель отклонения значения от среднего.
Вообще, какая основная задача A/B тестов? Это растить продукт за счёт проведения экспериментов с различными вариантами страницы, приложения и так далее. Понятно, что просто внедрить новую фичу в наш продукт не получится, поскольку это затратно по средствам и мы не понимаем, как пользователи могут отреагировать на данное нововведение. Таким образом, нам нужно на основе наших данных свести среднее значение метрики к среднему.
Как мы это можем сделать?
⁃ Доверительные интервалы.
⁃ Бесконечно симулировать эксперименты, чтобы в конечном счете получить среднее значение.
⁃ Использовать непараметрические методы при сравнении.
Что нужно для А/Б теста?
Сформулированная гипотеза
Нулевая гипотеза - то, что у нас есть в базисе. Например, что, после изменения показатели метрики не изменятся.
Альтернативная гипотеза - то, что мы хотим проверить. После изменения показатели метрики изменятся.
Размер выборки - один из важных показателей, который определяет сколько людей необходимо для получения статистически значимого результата.
Понятно, что теория вероятностей и статистика имеет какую-то математическую ошибку, поэтому будем изначально закладывать при проведении эксперимента.
Ошибка первого рода - вероятность отклонить верную нулевую гипотезу (обычно 5%).
Ошибка второго рода - вероятность не
отклонить неверную нулевую гипотезу (обычно 20%).
Как запомнить? Вот, представьте, вы пришли со вспоротым животом в поликлинику, а, вместо того, чтобы прооперировать вас, врачи сказали, что все хорошо, можете идти домой (ошибка первого рода, мы отклонили верную нулевую гипотезу). Представьте, что вы пришли в больницу, узнать свой диагноз, а врачи там считают, что разрезать всех, а после, зашивать, это норма (ошибка второго рода, мы приняли неверную нулевую гипотезу) 🤔
О какой же метрике все это время идёт речь? Тот таргет, который мы проверяем. Это может быть CTR, показатель конверсии, средний чек и другое 🎯
Изучаемая метрика - после результатов проведения мы будем опираться либо на усреднённые данные этой метрики в каждой из групп, либо на другое, обобщающее число в выборке 💻
Время проведения - очень важная метрика, поскольку при первичном проведении, захочется увидеть статистически значимый результат, например, у нас все выполнилось, среднее во B группе, больше, чем среднее в A группе, поэтому останавливаем проведение ⏳
Минимальный ожидаемый эффект - прирост по метрике, который мы хотим получить при формулировании гипотезы 📈
Пример формулирования гипотезы: Изменение системы выдачи на сайте позволит увеличить показатель конверсии на 20%. Нулевая гипотеза: Ничего не изменится, средние в двух группах равны. Альтернативная гипотеза: Средние в двух группах не равны 😊
Друзья, я хочу выкатить исчерпывающие посты по A/B тестам, возможно, без ML. Поэтому, если у вас есть какие-то идеи про что написать, с чем вы сталкиваетесь на работе, пишите, буду рад почитать, оформим как рабочий кейс. Здесь главное, больше практики что ли 🏋️♀️
Всем привет, я снова вернулся с A/B тестами, но хочется более структурно разобрать все нюансы и тонкости. Запускаю пилотный пост, если все понравится, буду продолжать выпускать.
Кажется, что знание этого, поможет вам устроиться на позицию продуктового аналитика. Кто это такой и вообще чем они занимаются, расскажу в следующем посте.
Начнём с вводных:
Теория вероятностей и математическая статистика.
- Закон больших чисел
- Понимание того, что случайные события можно свести к системе.
- Различные виды распределений. Что за распределение, его особенности, про это будет следующий пост.
- Математика: мода, медиана, математическое ожидание, дисперсия.
Мода - самое часто встречающееся число в выборке
Медиана - середина интервала после упорядочивания элементов по возрастанию
Математическое ожидание - среднее в генеральной совокупности
Дисперсия - средний показатель отклонения значения от среднего.
Вообще, какая основная задача A/B тестов? Это растить продукт за счёт проведения экспериментов с различными вариантами страницы, приложения и так далее. Понятно, что просто внедрить новую фичу в наш продукт не получится, поскольку это затратно по средствам и мы не понимаем, как пользователи могут отреагировать на данное нововведение. Таким образом, нам нужно на основе наших данных свести среднее значение метрики к среднему.
Как мы это можем сделать?
⁃ Доверительные интервалы.
⁃ Бесконечно симулировать эксперименты, чтобы в конечном счете получить среднее значение.
⁃ Использовать непараметрические методы при сравнении.
Что нужно для А/Б теста?
Сформулированная гипотеза
Нулевая гипотеза - то, что у нас есть в базисе. Например, что, после изменения показатели метрики не изменятся.
Альтернативная гипотеза - то, что мы хотим проверить. После изменения показатели метрики изменятся.
Размер выборки - один из важных показателей, который определяет сколько людей необходимо для получения статистически значимого результата.
Понятно, что теория вероятностей и статистика имеет какую-то математическую ошибку, поэтому будем изначально закладывать при проведении эксперимента.
Ошибка первого рода - вероятность отклонить верную нулевую гипотезу (обычно 5%).
Ошибка второго рода - вероятность не
отклонить неверную нулевую гипотезу (обычно 20%).
Как запомнить? Вот, представьте, вы пришли со вспоротым животом в поликлинику, а, вместо того, чтобы прооперировать вас, врачи сказали, что все хорошо, можете идти домой (ошибка первого рода, мы отклонили верную нулевую гипотезу). Представьте, что вы пришли в больницу, узнать свой диагноз, а врачи там считают, что разрезать всех, а после, зашивать, это норма (ошибка второго рода, мы приняли неверную нулевую гипотезу) 🤔
О какой же метрике все это время идёт речь? Тот таргет, который мы проверяем. Это может быть CTR, показатель конверсии, средний чек и другое 🎯
Изучаемая метрика - после результатов проведения мы будем опираться либо на усреднённые данные этой метрики в каждой из групп, либо на другое, обобщающее число в выборке 💻
Время проведения - очень важная метрика, поскольку при первичном проведении, захочется увидеть статистически значимый результат, например, у нас все выполнилось, среднее во B группе, больше, чем среднее в A группе, поэтому останавливаем проведение ⏳
Минимальный ожидаемый эффект - прирост по метрике, который мы хотим получить при формулировании гипотезы 📈
Пример формулирования гипотезы: Изменение системы выдачи на сайте позволит увеличить показатель конверсии на 20%. Нулевая гипотеза: Ничего не изменится, средние в двух группах равны. Альтернативная гипотеза: Средние в двух группах не равны 😊
Друзья, я хочу выкатить исчерпывающие посты по A/B тестам, возможно, без ML. Поэтому, если у вас есть какие-то идеи про что написать, с чем вы сталкиваетесь на работе, пишите, буду рад почитать, оформим как рабочий кейс. Здесь главное, больше практики что ли 🏋️♀️
👍12🔥3
Понятно, что нужно учитывать статистику и без этого никак, поскольку изначально, вам может казаться, что если тот или иной показатель в двух группах отличается, например, среднее метрики, то этот вариант является успешней, чем другой.
Например, мы хотим понять, как изменение дизайна отразилось на пользователях. Взяли первую группу, не меняли ничего, получили, что из 100 пользователей 60 нравится сайт. В другой группе, мы поменяли дизайн, выбрали 10 человек, из них 7 сказали, что нравится. Казалось бы показатели 0,6 и 0,7, однако, не все так просто, потому что данные значения могли получится случайно. Это как бросить много раз монетку. Понятно, что вероятность выпадения 1/2 (это работает при большом количестве подбрасываний), однако, из 100 бросков может выпасть 90 орлов и 10 решек. Этот пример я рассмотрю в следующем посте.
Вторая часть не заставит себя долго ждать, если наберется достаточное количество реакций. Поговорим про распределения, p-value (критерий, определяющий значимость теста) и различных статистических методах по проверке гипотез, количество групп (оказывается можно запускать и A/B/n тестирование, но есть очень много подводных камней, квантили и другое (приближаемся к математике). Тренировочные датасеты будут, их можно найти на Kaggle, периодически буду выкладывать 🤩
Полезные материалы 🅰️🅱️
Карпов. Матстат
«Учебник» по A/B тестам, для ознакомления можно глянуть Ссылка
Как провести A/B тестирование
A/B testing [EN]
VK A/B testing [EN]
Пишите комментарии, ставьте реакции, буду ждать фидбека 😎
Например, мы хотим понять, как изменение дизайна отразилось на пользователях. Взяли первую группу, не меняли ничего, получили, что из 100 пользователей 60 нравится сайт. В другой группе, мы поменяли дизайн, выбрали 10 человек, из них 7 сказали, что нравится. Казалось бы показатели 0,6 и 0,7, однако, не все так просто, потому что данные значения могли получится случайно. Это как бросить много раз монетку. Понятно, что вероятность выпадения 1/2 (это работает при большом количестве подбрасываний), однако, из 100 бросков может выпасть 90 орлов и 10 решек. Этот пример я рассмотрю в следующем посте.
Вторая часть не заставит себя долго ждать, если наберется достаточное количество реакций. Поговорим про распределения, p-value (критерий, определяющий значимость теста) и различных статистических методах по проверке гипотез, количество групп (оказывается можно запускать и A/B/n тестирование, но есть очень много подводных камней, квантили и другое (приближаемся к математике). Тренировочные датасеты будут, их можно найти на Kaggle, периодически буду выкладывать 🤩
Полезные материалы 🅰️🅱️
Карпов. Матстат
«Учебник» по A/B тестам, для ознакомления можно глянуть Ссылка
Как провести A/B тестирование
A/B testing [EN]
VK A/B testing [EN]
Пишите комментарии, ставьте реакции, буду ждать фидбека 😎
Stepik: online education
Основы статистики
Курс знакомит слушателей с основными понятиями и методами математической статистики. В течение трех недель мы рассмотрим наиболее широко используемые статистические методы и принципы, стоящие за ними. Полученных знаний будет достаточно для решения широкого…
👍16🔥5
Первая моя гипотеза о том, что если все выкладывать одним постом, количество реакций будет больше. Как это проверить? Одновременно выпустить пост, но на разных каналах, причём, контрольные и тестовые группы не должны пересекаться…
👍5
Ладно, меня заставили отредактировать, ждите пост…
19.01.2023
19.01.2023
😢8😱4😁1🤩1🤡1
Подводка была классная, новый тренд, что ли. Так вот, продолжаем, A/B тест не удался.
Зачем нам вообще все это? Стать топ продуктовым аналитиком (кем?). Тот, кто анализирует конкретный продукт, смотрит за определенными метриками, заставляет за основе данных принимать менеджменту конкретные решения.
Приступим к распределениям (нам нужно понимать специфику данных, что вообще с ними можно делать).
- Равномерное (плотность распределения = const, вероятность выпадения каждого элемента одинакова). Пример: бросание кости, угадывание числа от 1 до 1000.
- Бернулли (в качестве значения либо 1, либо 0). Пример: подбрасывание монеты (орел и решка), совершение целевого действия на сайте (либо да, либо нет, конверсия).
- Биномиальное (распределение количества успехов, т.е. привязка к количеству экспериментов из Бернулли).
- Нормальное (распределение, которое задается средним и стандартным отклонением (корнем из дисперсии), значением, показывающим то, насколько значения отклоняются от среднего значения. Большинство явлений можно объяснить, используя данное распределение. В экспериментах, желательно, все сводить к нормальным распределениям, сокращая дисперсию, логарифмируя переменные, симулируя много раз эксперимент. Пример: Рост, вес жителей РФ.
- Логнормальное распределение. Распределение с жирным хвостом, где большая часть данных сосредоточена слева, а может продолжаться до бесконечности. Например, средний чек покупателей в гипермаркете "Глобус". Средний чек сосредоточен слева, но имеются и семьи, которые закупаются на 20к+ за раз.
- Экспоненциальное распределение. Используется при анализе временных рядов. Время ожидания целевого действия, интервалы времени между событиями.
Нам необходимо при анализе любых метрик понимать их природу, откуда они взяты и как это можно использовать в дальнейшем. О свойствах каждого из распределений можно посмотреть в источниках, которые прикреплю ниже. Важно понимать, что вообще мы можем с этим делать.
Окей, вроде бы первично понятно, что есть какие-то распределения, частота / вероятность каждого из событий с отложенными значениями. Вопрос, что дальше?
Для начала вернемся к предыдущему посту и посмотрим о чем рассказывалось ранее. Есть какое-то p-value, о котором админ обещал рассказать. Так вот. делюсь. Это вероятность получить такое же или более экстремальное значение. Условно, у нас проводится A/B тест, мы смотрим на разницу между средними значениями метрики в разных группах.
Мы можем получить. как отклонение по метрику в худшую сторону (левосторонний тест), в лучшую сторону (правосторонний тест) и в обе стороны (двусторонний тест). Симуляция разниц между средними поможет получить среднее значение. Говорят, что если p-value < alpha (ошибка первого рода), то мы отклоняем нулевую гипотезу. Вопрос, почему так?)
Задача: мы опросили 100 пользователей Ozon, 60 из них нравится дизайн нашего сайта. Наши дизайнеры провели тест с новым дизайном и из 10 человек, 8 выразили respect 🫡. Вопрос, можно ли выкатывать версию дизайнеров в продакт?
H0 - разницы между группами нет (CR1 = CR2)
H1 - разница между группами есть ( CR1 ≠ CR2)
Размер выборки: 100 + 10 = 110
Мы должны свести все к одному распределению.
CR (средн) = 68/110
Diff (CR) = 0,2
a = 0.05
B = 0,2
Зачем нам вообще все это? Стать топ продуктовым аналитиком (кем?). Тот, кто анализирует конкретный продукт, смотрит за определенными метриками, заставляет за основе данных принимать менеджменту конкретные решения.
Приступим к распределениям (нам нужно понимать специфику данных, что вообще с ними можно делать).
- Равномерное (плотность распределения = const, вероятность выпадения каждого элемента одинакова). Пример: бросание кости, угадывание числа от 1 до 1000.
- Бернулли (в качестве значения либо 1, либо 0). Пример: подбрасывание монеты (орел и решка), совершение целевого действия на сайте (либо да, либо нет, конверсия).
- Биномиальное (распределение количества успехов, т.е. привязка к количеству экспериментов из Бернулли).
- Нормальное (распределение, которое задается средним и стандартным отклонением (корнем из дисперсии), значением, показывающим то, насколько значения отклоняются от среднего значения. Большинство явлений можно объяснить, используя данное распределение. В экспериментах, желательно, все сводить к нормальным распределениям, сокращая дисперсию, логарифмируя переменные, симулируя много раз эксперимент. Пример: Рост, вес жителей РФ.
- Логнормальное распределение. Распределение с жирным хвостом, где большая часть данных сосредоточена слева, а может продолжаться до бесконечности. Например, средний чек покупателей в гипермаркете "Глобус". Средний чек сосредоточен слева, но имеются и семьи, которые закупаются на 20к+ за раз.
- Экспоненциальное распределение. Используется при анализе временных рядов. Время ожидания целевого действия, интервалы времени между событиями.
Нам необходимо при анализе любых метрик понимать их природу, откуда они взяты и как это можно использовать в дальнейшем. О свойствах каждого из распределений можно посмотреть в источниках, которые прикреплю ниже. Важно понимать, что вообще мы можем с этим делать.
Окей, вроде бы первично понятно, что есть какие-то распределения, частота / вероятность каждого из событий с отложенными значениями. Вопрос, что дальше?
Для начала вернемся к предыдущему посту и посмотрим о чем рассказывалось ранее. Есть какое-то p-value, о котором админ обещал рассказать. Так вот. делюсь. Это вероятность получить такое же или более экстремальное значение. Условно, у нас проводится A/B тест, мы смотрим на разницу между средними значениями метрики в разных группах.
Мы можем получить. как отклонение по метрику в худшую сторону (левосторонний тест), в лучшую сторону (правосторонний тест) и в обе стороны (двусторонний тест). Симуляция разниц между средними поможет получить среднее значение. Говорят, что если p-value < alpha (ошибка первого рода), то мы отклоняем нулевую гипотезу. Вопрос, почему так?)
Задача: мы опросили 100 пользователей Ozon, 60 из них нравится дизайн нашего сайта. Наши дизайнеры провели тест с новым дизайном и из 10 человек, 8 выразили respect 🫡. Вопрос, можно ли выкатывать версию дизайнеров в продакт?
H0 - разницы между группами нет (CR1 = CR2)
H1 - разница между группами есть ( CR1 ≠ CR2)
Размер выборки: 100 + 10 = 110
Мы должны свести все к одному распределению.
CR (средн) = 68/110
Diff (CR) = 0,2
a = 0.05
B = 0,2
🔥8🤯3👍2🐳1
🐍 Пример симуляции в Python
- тест Шапиро-уилка
- QQ-plot
- Критерий Лиллифорса
- Критерий хи-квадрат Пирсона
📖 Полезные материалы:
Калькулятор для A/B
Ещё один калькулятор
Про распределения
❗️ Настоятельно рекомендую смотреть открытые лекции Яндекса по A/B тестам + Матемаркетинг на Youtube, очень много всего. От понижения дисперсий (про это поговорим дальше) до множественного A/B тестирования и сокращения времени проведения A/B тестов в несколько сотен раз!
import numpy as np
import pandas as pd
np.mean([np.random.binomial(1, 68/110, size = 10).mean() - np.random.binomial(1,68/110, size = 100).mean() >= 0.2 for i in range (10000)])
# output:
# p-value ~ 0,21, что больше, чем a(0,05), значит нулевую гипотезу не отвергаем.
P.S: для тестирований есть специальные калькуляторы, в которых вы можете также поиграться.
Распределение с вероятностями (весами), было тестовое задание в OZON с симуляцией данных и дальнейшего исследования.🐲
Пример на Python для пяти элементов с соответствующими вероятностями pi import numpy as np
list = np.arange(1,6)
sNumbers = np.random.choice(list, size = 1000, replace = True, p = [0.35, 0.25, 0.2, 0.15, 0.05])
pd.DataFrame(sNumbers).value_counts(normalize = True)
🤯
Проверка распределения на нормальность (необходимо для корректности расчета разницы между распределениями):- тест Шапиро-уилка
- QQ-plot
- Критерий Лиллифорса
- Критерий хи-квадрат Пирсона
📖 Полезные материалы:
Калькулятор для A/B
Ещё один калькулятор
Про распределения
❗️ Настоятельно рекомендую смотреть открытые лекции Яндекса по A/B тестам + Матемаркетинг на Youtube, очень много всего. От понижения дисперсий (про это поговорим дальше) до множественного A/B тестирования и сокращения времени проведения A/B тестов в несколько сотен раз!
Mindbox: автоматизируем маркетинг
Калькулятор A/B-тестов Mindbox: выборка и анализ результатов
Рассчитайте размер выборки и проверьте значимость результатов A/B-теста с калькулятором Mindbox: open rate, click rate, конверсии и доверительные интервалы.
❤14👎1🐳1