Большое спасибо за этот вебинар! Все по полочкам, как всегда)
@karinashakhgeldyan881 Жыл бұрын
отлично. можно с pValue сделать ряд оценок. 1. рассчитать дов. интервал. 2. сяитвть не по накоплкнным данным, в по усредненным pvalue на ежкдневных выборках. 3. усреднить pvalue в накоплкнных данных. оценить дов. интервалы pvalue
@clockfixer50492 жыл бұрын
У меня такое чувство, что такая частота попаданий p-value под threshold в этих симуляциях связана с уж очень большим стандартным отклонением. И мне кажется, этот момент немного выпал из поля зрения, но снижение дисперсии в выборках является еще одним способом увеличения MDE.
@ВячеславКузичев-ж5щ Жыл бұрын
Очень круто и интересно
@mukhtarbimurat5106 Жыл бұрын
Kruto, thanks a lot!
@freedom_analyst Жыл бұрын
Спасибо. Очень понятным языком)
@ЕвгенийСеребряков-ч8у Жыл бұрын
Спасибо, Master...
@osvab0003 жыл бұрын
Евгений - большое спаcибо и за видео и за деланную работу по просвещению масс и погружению в ML
@sviatoslavgladii79253 жыл бұрын
Добрый день, Когда можно ждать часть с продолжением про калькуляторы, мощность, как определить длину эксперимента? Спасибо за курсы на степике и видео на KZbin
@karpovcourses3 жыл бұрын
15 июня karpov.courses/webinar_anatoly
@АлинаМиллер-ъ9ж2 жыл бұрын
@@karpovcourses здравствуйте, а можно ссылку обновить?не работает(
@mikhaill87123 ай бұрын
Так вычисляй мощность, а не только p-value. И останавливай тест тогда когда p-value ниже 0.05 и мощность выше 80 процентов. Если в аб тесте конверсия оказывается намного выше, чем рассчитывалось изначально, то разумеется тест может быть остановлен досрочно и подглядывать можно хоть каждый день.
@alexn3497 Жыл бұрын
Огонь
@ДмитрийВавулин-н6т Жыл бұрын
24:25 Ох уже эти профдеформация программиста, начинать подсчёт с нуля: "то есть 100 и 102: отличаются на 3 единицы"))
@АнтонБугаев-б9ъ2 жыл бұрын
Анатолий и команда, Большое спасибо за семинар. Не могу поженить в голове два факта. Помогите, пожалуйса, разобраться. 1) В лекции мы видим, что pvalue ведет себя непредсказуемо. Может опускаться и понижаться. 2) С другой стороны, мы знаем, что выборочное среднее - это состоятельная оценка. Т.е. при увеличении размера выборки, оценка должна стремиться к реальной. И в этом случае (если оценки в контрольной и тестовой группах стремятся к реальным) различия, как мне кажется, должны по мере проведения теста только усиливаться (и pvalue должен постоянно снижаться). Где я ошибся в рассуждении?
@sadking1102 жыл бұрын
Определение состоятельной оценки у тебя неправильное)
@nyTuHecTDeTeu3 жыл бұрын
После 30ой минуты почувствовал себя крипово. Как словно фильм по Стивену Кингу) P-value в натуре под 0,05 а в реальности различий нет. Брр.
@nyTuHecTDeTeu3 жыл бұрын
Вообще да, вопрос сделки) Я по большей части тесты в микробизнесе провожу, там P-value 0,05 нужно месяц ждать. И чисто по экономическому эффекту выгоднее повести 5 тестов за неделю пусть даже с P-value 0,2.
@JT-ed3dk3 жыл бұрын
А где видео про разницу т теста, манна уитни и бутстрепа?
Это Монте Карло расчеты можно прерывать по достижении нужной сходимости, а тут совсем непонятно, как сходимость этих рядов работать будет…
@mlpython10893 жыл бұрын
Очень интересно. Спасибо. А если из А/В тестируемых в конце теста пуассоновским бутстрапом наделать семплов и многократно оценить различия, поможет?
@mlpython10893 жыл бұрын
Нет. Не помогло уж слишком изначально большая дисперсия задана. import pandas as pd import numpy as np from scipy import stats import seaborn as sns import matplotlib.pyplot as plt %matplotlib inline mu_control, sigma_control, n_control = 100, 20, 1000 mu_experiment, sigma_experiment, n_experiment = 100, 20, 1000 N = n_control #samples B = 10 #bootstraps def make_sample(original_sample, B, N, index): np.random.seed(index) new_sample = [] # samples = np.random.multinomial(B, [1/B]*B, N)[:, index] samples = np.random.poisson(1, (N, B))[:, index] for i in range(N): if samples[i] != 0: for j in range(samples[i]): new_sample.append(original_sample[i]) return new_sample np.random.seed() daily_data_control = np.random.normal(mu_control, sigma_control, n_control) daily_data_experiment = np.random.normal(mu_experiment, sigma_experiment, n_experiment) p = [] for i in range(B): control_sample = make_sample(daily_data_control, B, N, i) experimental_sample = make_sample(daily_data_experiment, B, N, i) fit = stats.ttest_ind(control_sample, experimental_sample) p.append(fit[1]) plt.plot([0, len(p)-1], [0.05, 0.05], "r--") plt.plot(p) plt.xlabel("bootstraps") plt.ylabel("p") plt.ylim(0, 1) plt.show()
@antologyz3 жыл бұрын
Добрый день, спасибо за лекцию, очень интересно и познавательно. А где можно сам файл с расчетами посмотреть?
@karpovcourses3 жыл бұрын
приложили к видео
@gillan113 жыл бұрын
@@karpovcourses что-то пошло не так
@karpovcourses3 жыл бұрын
@@gillan11 что не так?)
@gillan113 жыл бұрын
@@karpovcourses да, это с ютуб на декстопе проблема - не раскрывает описание полностью. На планшете нормально
@Trepetsky2 жыл бұрын
Хах) трейдинг на p-value)) посмеялся) Кстати, насчёт долгих экспериментов, на адронном коллайдере долгие, не знаю сколько, но там до 5 сигм и разницы в величинах очень маленькие.
@КириллЧе-я5ы2 жыл бұрын
Ядерная физика - нормальное распределение, пожалуй, единств случай в природе
@Stas0ya3 жыл бұрын
а почему не посчитать среднее за весь период?
@ВалерийКурышев-ч3о3 жыл бұрын
А нельзя просто тренд p-value построить и по нему принимать решение - останавливать эксперимент или нет?
@karpovcourses3 жыл бұрын
нежелательно)
@fastfo0d5434 ай бұрын
походу рандомайзер сломанный, как может каждый раз показывать различие когда его нет? это уже не проблема подглядывания
@sumailsumailov15723 жыл бұрын
Затрагетизировался тоже
@leobreydo93183 жыл бұрын
Так, а в чем проблема? По цене рисков разницы нет. Вы ведь ничего не теряете в худшем случае, да и код для группы В уже написан. Никогда, кстати, не видел большой полезности в А/В тестировании - статистические тесты не могут ничего доказать, могут лишь опровергнуть, а целью А/В тестирования является именно доказательство, что одно лучше другого:) Тоесть, да, эффект какой-то есть, но он очень, скажем осторожно, второстепенный...
@МихаилРогов-з6т3 жыл бұрын
Вопрос достаточно странный, очень интересно как вы будете вообще оценивать хоть что-то в продакшен системе без A/B тестов (хотя бы оффлайн). Во-первых мы не можем гарантировать, что та или иная фича не сделает все хуже, чем было раньше (даже учитывая показанные в видео проблемы, мы с крайне малой вероятностью пропустим ухудшение метрик). Во-вторых, бизнесу важно понимать какой профит вообще от вашей деятельности, а аргумент в стиле "ну мы это уже написали, значит можно выкатывать" не прокатит - я не думаю что с таким подходом вашу команду/отдел/проект будут долго держать. Бизнес зачастую хорошо понимает что такое A/B тесты и что без них никаких выводов о качестве работы просто не получится сделать (не исключено что аналитики просто приучили бизнес верить A/B, но это другая история). К тому же им надо что-то адекватное в отчетах написать) В-третьих, для ML моделей без подобного тестирования вообще никуда, как бы если у вас итеративная разработка, то как вы поймете что новая модель не хуже? Тут существуют серьезные риски, тк без тестирования на проде вы не можете гарантировать вообще ничего, а выкатывать без тестирования тоже приведет к печальным последствиям. Насчет возможности доказать или опровергнуть, в видео сказали что стат тестирование просто дает нам некоторые вероятностные оценки, тут нет доказательств в математическом смысле, только оценивание. И если вы знаете способ сильно лучше A/B, то вперед (без сарказма, если есть что-то крутое, что вы знаете)