Блог о Data Science 💻
Привет, это мой блог о науке о данных.✌️ Рассказываю про best practice, делюсь своим опытом и анализирую рынок труда в DS! t.me/notedatasciencechat По вопросам: @travelwithtagir
Mostrar más- Suscriptores
- Cobertura postal
- ER - ratio de compromiso
Carga de datos en curso...
Carga de datos en curso...
import numpy as np
import pandas as pd
n_users = 1000
days = 21
pre_experiment_revenue = np.random.normal(loc=5, scale=2, size=(n_users, days))
control_group_revenue = np.random.normal(loc=5, scale=2, size=500)
treatment_group_revenue = np.random.normal(loc=5.5, scale=2, size=500)
pre_experiment_df = pd.DataFrame(pre_experiment_revenue, columns=[f'day_{i+1}' for i in range(days)])
pre_experiment_df['user_id'] = np.arange(n_users)
experiment_df = pd.DataFrame({
'user_id': np.arange(n_users),
'group': ['control'] * (n_users // 2) + ['treatment'] * (n_users - n_users // 2),
'revenue': np.concatenate([control_group_revenue, treatment_group_revenue])
})
data = pd.merge(experiment_df, pre_experiment_df, on='user_id')
data['user_variance'] = data[[f'day_{i+1}' for i in range(days)]].var(axis=1)
data['weight'] = 1 / data['user_variance']
data['weighted_revenue'] = data['revenue'] * data['weight']
👎 Минусы VWE:
Аномалии могут поломать оценку
Метод может быть чувствителен к аномальным значениям в предэкспериментальных данных, что может привести к некорректным оценкам весов
Необходима история по пользователям, должна быть богатая история по действиям, например, когда замеряем CTR
VWE требует значительного объема предэкспериментальных данных для точного расчета дисперсий и весов. В случае недостатка данных, результаты могут быть менее надежными
Может давать смещение
При расчете в оценке среднего мы можем получить небольшое смещение из-за перевзвешивания. Другая задача - это получение несмещенной оценки (например, как корректировка средним значением в преэкспериментальной группе при CUPED
Можно использовать с CUPED с уже перевзвешенными значениями. В статье от Facebook удалось добиться следующих результатов по снижению дисперсии в %.
CUPED only - 37,24%
VWE only - 17,31%
CUPED + VWE - 48,38%
На стратификации не смотрели, как я понимаю, но можно было бы еще, наверное снизить либо есть какие-то ограничения про которые я не знаю. А с Ratio-метрикой так вообще прикол: линеаризируем, VWE, CUPED, стратификацию
Этот метод еще освещался на Avito Analytics Meetup + был разбор статьи на YouTube
😉 Ставьте реакции, если пост был полезен, пишите комментарии. Дальше разберем стратификацию и линеаризиацию🆎 CUPED как метод сокращения дисперсии для проведения A/B экспериментов. 🤭 Всем привет! В этом посте хочу рассказать о том что такое CUPED, зачем он нужен? 🤩 CUPED (Controlled-experiment Using Pre-Experiment Data) - один из методов сокращения дисперсии при проведении экспериментов, используемый в индустрии на основе данных предэкспериментального периода. Обычно метрику, которая используется до эксперимента, называется ковариатой. 🔨 Предположим, мы дизайним эксперимент, рассчитываем MDE (Minimum Detectable Effect) и Sample Size (необходимый размер выборки для проведения A/B теста). Рассмотрим стандартную формулу для нахождения MDE подробней: MDE = (F(1-alpha / 2) + F(1 - beta)) * sqrt(Var(X)) / sqrt(sample_size) F(1-alpha / 2) - квантильная функция для 1 - ошибки первого рода (двусторонняя гипотеза) aka критическое значение для H0 F(1 - beta) - квантильная функция для мощности Var(X) - дисперсия метрики sample_size - размер выборки (обычно рассчитывается на основе трафика, целевых действий) 🕺 Обычно в экспериментах…
It s safe to say that close to 100% of ML projects which hadn’t had a well-written design document failed, whereas a sweeping majority of those systems that had been thoroughly planned found success.➡️ Когда? 2 июня 2024 с 12:00 до 12:30 ➡️ Как подключиться: Страница https://app.spatial.chat/s/ods Пароль: festfinaleparrot
Пару дней назад мы написали твиттер тред по нашему AI-продукту VIBE, которым Я занимаюсь последние полгода и который уже успел собрать 11,000 пользователей…