Не AБы какие тесты
1.08K subscribers
62 photos
48 links
Канал - оголтелая реклама курсов по A/B, ну еще размышления по A/B, статистике и не только.

https://t.me/smatrosov - до связи
Download Telegram
Привет, товарищи-статистики!

Прошло пару дней с наступления 25-го года, можно уже немного пошевелить мозгами, держите пост про фидуциальный вывод в статистике. Но пост будет больше как история, почти без математики, и не только потому, что ещё новогоднее настроение)

Сейчас в статистике превалируют два подхода:
- частотный (фреквенсистский) - некоторый параметр (среднее) неизвестен, но фиксирован, получаем данные, считаем точечное значение, строим доверительный интервал

- байесианский - есть некоторые предварительные (априорные) представления о параметре, - вероятности его значений, поэтому на основе данных мы обновляем (уточняем) наши представления, то есть получаем апостериорное распределение параметра.

И хотя если задать приор параметра в байесе максимально неопределенным, оба подхода в A/B сойдутся по результатам, превалирует все же частотный. Потому что любой приор параметра отличный от неопределенного сомнителен, так как субъективен: имея данные я могу по-разному задать априорное распределение, просто потому, что данные теряют актуальность с некоторым течением времени и истинное, например, Mu (среднее) также смещается, вопрос в том, какой период брать. Проблема-то в том, что разные приоры дают разные результаты при A/A тестах: один даст меньше ошибок 1-го рода, но больше 2-го рода, а чуть поменяешь его - наоборот, в общем так себе с контролем параметров. Поэтому-то частотники могут высказать о баейсианцах что-то вроде: “придумываете данные (приоры), а потом тесты свои проводите, получая каждый раз разное, фу!”. Подробнее критика A/B по Байесу тут.

...Но так ли далеко они друг от друга и, может, можно как-то подбирать “правильные” приоры? Думаю над этим.

Ведь на самом деле стат. подходов аж четыре штуки, к предыдущим прибавляются следующие:
- лайклихудистский (likelihoodism) - тут он так, просто к слову, но вообще, он уже известен тем, кто использует последовательное тестирование (sequential testing), в рамках таких тестов как SPRT и mSPRT. Вообще это близкий родственники байесианского: приор дает распределение вероятности значений параметра, которые в свою очередь используются для оценки правдоподобия (likelihood), то есть что данные были получены с учетом конкретной значения параметра.

- фидуциальный (fides - вера, доверие) - увы, умершее дитя Фишера, основная суть которого в выводе на базе данных правдоподобного (которому можно “доверять”) распределения для параметра, например для среднего - его распределение в абсолютных величинах. И вот про это и поговорим подробнее. Но предупрежу: это больше рассказать про то, что стало историей, а не то, что имеет место на практике.

Ёмко о фидуциальном выводе читаем далее
Привет, товарищи-статистики.

Недавно впервые за много лет выиграл в розыгрыше призов, лицензию игры MFS 2024 (пруф - тут он тоже нужен, иначе еще за рекламу сочтёте) - это было неожиданно и приятно.

Чуть раньше писал о том, что получил лицензию частного пилота (продолжение рассказа еще пишу), так вот, есть у меня планы озадачиться VR-полётами. Поэтому одним из пунктов была покупка MFS 2024, подводные мне были известны: современная классика игрового рынка - сырой продукт, но летать по гугл-картам того стоит.

В связи с СВО Steam не только перестал пополняться обычными методами (благо сейчас есть сервисы), но и часть игр перестала быть доступной для покупки для российского регион. Надо было искать обходы, один из них оказался следующим: получение игры в подарок через предварительный перевод тем, кто это может подарить игру. Вопрос в том, а можно ли доверять тому, кому деньги отдаешь. В целом, биржи ок, но вот MSF штука дорогая, как-то не хотелось идти на риск, искал дальше. И поиск привел меня на группу FlyWithLeo, пролистал и добавился на будущее. В праздники увидел объявление о конкурсе, от участников ничего и не требовалось кроме как согласиться.

Ловко ввернём сюда любимую статистику: это должен быть рандомный отбор из +600 человек, то есть p~1/600. Дело не в том, как же повезло, нет, а в том, что я рекомендую относится к конкурсам такого рода по-самурайски: "вы уже проиграли". Поэтому добавились, поставили себе напоминалку на день итогов, что участвуете (т.к. если победитель не отзовётся, то будет выбор нового победителя) и... забыли. Потому что рандом безжалостен и в ваше положение не войдет) Собственно, почти, так и сделал, - забыл напоминалку себе поставить. И 7-го числа получил сообщение в ЛС от организатора Лео, мол, ты победил, а далее: kind of reminder поскорее выйти на связь, иначе тыква вместо приза! Честно, было очень неожиданно, к тому же розыгрыш был Deluxe издания, а тут он стоит весьма дорого и я его не планировал брать, стандарта вполне хватило бы.

Подарок в стиме от Лео получил, свои договорённости он выполнил: надеюсь, скоро опробуем с супругой. Но закину маленькую интригу, что это будет не просто абы какой VR, планы там приличные. А о том, почему вообще в целом я иду в VR, расскажу во втором посте про полёты.

P.S. Повторюсь, не реклама, я вообще не собираюсь тут что-то размещать "а тебе и не предлагают", чем сам не пользуюсь и не знаю, как работает. Просто делюсь личным опытом взаимодействия, вдруг тут тоже кто думает о покупке MFS 2024.
Привет, comrades-статистики,

По мотивам поста Лены (всячески рекомендую ее канал).

О генерации гипотез.

Последние несколько лет в моде быть продуктовым аналитиком, об этой роли пишут много красивых слов, хотя по мне так, как показывает практика и ожидания заказчиков, это дата-аналитик с фокусом на некоторой части бизнеса: в основном, всё сужается до приложения (самая частая вотчина просто), а точнее даже некоторой его части, за которую отвечает продакт и к кому определяется этот аналитик в помощь.

То есть существует специализация - анализировать данные именно на приложении, все прочее рынок пока что за продуктовое не принимает (и зря!). Чтобы делать это успешно, нужно разбираться с трекерами (AppMetrica, Amplitude пр.), которые будут поставлять вам логи событий, а также исследовать пути пользователя и дизайнить-считать A/B.

Это-то и отличает продуктового от прочих. Продолжение.
Привет, мои дорогие товарищи-статистики,

Возлагаешь на PO ответственность (пост выше) - помогай.

У гипотез в рамках конечности бюджета есть одно неприятное свойство: не все из них будут успешны, а времени и бюджет отнимут. И вроде это очевидно, но из этой конструкции всегда выбивается человеческий фактор.

Вот представьте, что у вас есть стратегия выигрыша у казино. Однако это стратегия допускает с ненулевой вероятностью, что, условно, десять ваших ставок подряд могут оказаться проигрышными. То есть по идее мы должны придерживаться стратегии и дальше, если игра будет “10 из 10”. Но насколько хватит у вас _морали_ следовать ей после 5-и проигрышей подряд? После 7-го? К 9-ому?

А если не вы игрок, а тот, кому вы ее посоветовали (=бизнес) - насколько его хватит? И вот ты объясняешь бизнесу, что да, такое может быть, но надо “просто продолжать”: вопрос не в том, усидит ли он на пятой точке ровно, нет, вопрос в том усидите ли вы на ней или будете выкинуты за борт?.. Особенно если рядом подпевают из какой-нибудь платформы Индус-3000 про автоматический успешный успех нажатием кнопки, только согласись контрактик подписать.

Отсюда при приоритизации фичей неплохо было бы учитывать вероятность успеха каждой из них для возможности провести "стат. тест" а-ля вероятность, что n гипотез будут неудачны.

Приоритизация по PIE, где P - Probability
Привет, товарищи-шкодеры,

Пора поговорить о современных требованиях к хардам по части написанию кода и пр., то есть о том, что нужно уметь в Python/SQL и пр. для аналитики данных в целом. В конце я дам комментарий по поводу того, что я об этом всём думаю.

В общем, окончательно прошла эра “код работает и уже хорошо, а вообще только в основном SQL запросы писал”. Требования стали на порядок выше.

Все, что приведу ниже взято на базе практик в X5, в особенности ребят, с кем работаю (лучшей команде большой привет!), а также собеседований, опыта ребят из других крупных компаний типа Yandex, OZON и пр. Что-то из без того известно, но не делается, а что-то может быть и новеньким для вас:

Что нужно по Python, SQL и т.д.
Привет, товарищи-статистики!

Новые свидетели A/B с нами: пару недель назад успешно дошёл до финала 7-ой поток, отзывы выше.

Все отзывы мне дороги, - большое спасибо за ваши слова!, - но позволю себе выделить три:
- первый от того, для кого это все либо вновинку (“вкат с нуля”),
- второй от того, кто “пытался раньше, но не вышло” (и нет острой потребности, так как человек Product Owner),
- а третий (он последний) от участника прошлого потока, который возвращался к материалу.

Первые два прошли не всё, но они прошли базу (примерно половина), а это значит, словами третьего, что “ты уже будешь понимать больше чем 70% аналитиков, я не шучу, я общался”.

Не обошлось без очередных обновлений:

1. Занятий и в этот раз стало больше, - теперь наше с вами статистическое путешествие будет длится не менее 3 месяцев!
Что нового:
- Стратификация и Variance Weighted Estimators
- Paired t-test и тест Welch’a
- Switchback тесты, Проблемы конечной популяции
- Ошибки S/M, False Positive Risk
- Погружение в комбинаторику для вывода формулы Хи-Квадрат (честно, мне просто в какой-то момент надоело “вот так из воздуха” предоставлять формулу этого теста)
- Тест Колмогорова-Смирнова

В материалах про множественное тестирование переработал тему про A/B и много-много метрик: там разобрана Non-Parametric Combination и то, на что меня навел статистик Матвей Славенко (рекомендую его канал душно про дату) - поправка Хоторна-Бретца-Вестфалла. А в теме про FDR рассмотрена поправка Benjamini-Krieger-Yekutieli.

Ребят с прошлых потоков - посмотрите, пожалуйста, оно того стоит.

Да, последние темы теперь это уже прям более сложные штуки, но все так организовано, чтобы вы привыкли к этому времени к математике (а она будет): к моменту вывода формулы в n-слайдах вы уже будете оперировать свойствами дисперсии, ожидаемого значения, корреляции и ковариации. И все это будет приправлено школьной алгеброй.

Для следующего потока я уже разбил 4-ую встречу про Conf. Intervals и Z-тест на две; про Хи-Квадрат будет аж целых 3, иначе получается слишком много даже за две встречи.

К всякими временным рядам пока всё-таки не созрел, разве что может быть начну готовить материал про A/B Байесу.

2. Материал каждой лекции я пересматриваю перед встречей, поэтому он в очередной раз был переработан в сторону большей детализации. И будет перерабатываться и впредь, поток за потоком: это уже обычное дело. И всё же фидбек был и в этот раз тем же - быстровато)) Пытаюсь понять, как это поправить.

Также дополнил и то, что пишу до и после встреч - теперь заготовки занимают более 100 страниц A4) Напомню, для меня обычное дело в тексте повспоминать школьный курс алгебры а-ля возведения в степень и взятия логарифма: как-то это, что это и пр.

3. Запросы на “посмотреть бы в коде” также поступали, но тут пока без изменений - ничего нет :(. И всё же я слышу вас, буду что-то делать в этом направлении. Пока же хочу сделать обновляющийся mindmap, на который меня натолкнул участник 7-ого потока, Константин (спасибо!). Кажется, это перспективнее.

4. Google Meet меня подводит чаще обычного в этом потоке, думаю над тем, чем можно его заменить.

Продолжение далее.
Запуск нового потока!

Начинаю неспешный набор на 8-ой поток "Наглядное АB-тестирование: от основ до современных стандартов",

Старт примерно в начале апреля, мне вновь надо время на отдых, расписание пока составляю, но оно точно будет с небольшими перерывами.

Обучение идет по вечерам, в 19 по Мск, 2-3 раза в неделю, не менее 3-х месяцев.

Список актуальных тем на скрине, о чем они - тут.

Цена теперь - 40к, и будет точно расти, но и материала стало больше! А вот условия всё те же: "каждый поток веду лично, оказывая максимальное сопровождение по материалу; веду с удовольствием, в душе педагог; подача такая, будто надо объяснить детям, чтобы они могли объяснить это другим детям"

Желающие приобщиться к делу Госсета и Фишера, смелее пишите мне в ЛС @smatrosov :) По курсу общаться только со мной.

Отзывы в посте выше.

P.S. Те, кто писал ранее - о вас помню, вы записаны, свяжусь.
Привет, товарищи-статистики!

На днях очень крутой чел, Саша Сахнов, глава стат. анализа в X5, выпустил полезное видео про t-test и мифы вокруг него. Я сразу отправлю на таймкод, который хотел бы прояснить исключительно в моменте, когда Саша будет показывать пример про логнормальное распределение. Хочется верить, я не окажу медвежью услугу коллеге)

Сначала посмотрите аккурат вместе с разбором примера с выборками до 30к из логнормального распределения, где проверка идет через кумулятив p-value (ожидается равномерное, так как верна H0). Посмотрели? Прекрасно, у Саши пример корректен, но если вы подумали, что "ага, y ну всё, вижу логнормальное - t-test не принимаю", то вы неправы.

Почему? Сейчас объясню
Привет, товарищи-статистики!

Рад представить вам новую статью, уже 4-ую статью на Хабре, про Welch's test.
https://habr.com/ru/companies/X5Tech/articles/896182/

Писал я порядочно по времени; по ощущения ментально она меня опустошила не меньше, чем Mann-Whitney, и честно сказать, местами я еще сомневаюсь в некоторых частях, кроме, пожалуй, вывода оценки d, degrees of freedom.
Что вас ждет:
- Ряд сравнений с t-test'ом и то, где Welch может быть полезен.
- Разбор того, с чем на самом деле вы имеете дело, когда имеете дело со статистикой Welch'a
- Вывод корректировки d. Это будет долго, но я все постарался разжевать и сделать увлекательным
- Обзор литературы, который касается как предварительных тестов, так и о предположении изменчивости дисперсии

Вышло, как всегда, много: достойный соперник Mann-Whitney и Мета-анализу :)
Привет, товарищи-статистики!

Вчера мой товарищ Влад, с которым мы работали в X5 и который теперь работает в Авито, выдал ML-базу: bias-variance decomposition через очень последовательное переписывание MSE - среднеквадратичной ошибки как метрики, оценивающей результатах нашего моделирования.

Я встречался с этой метрикой много раз в рамках материалов про ML, как и с идей bias-variance tradeoff, но в таком виде MSE, в котором и есть буквально bias и variance, признаюсь, увидел впервые. Выглядит как очень красиво, наконец-то есть связь с tradeoff не просто на уровне логического осмысления, но и через метрику!

Влад очень последовательно показывает вывод с применением классических свойств дисперсии и мат. ожидания, поэтому за преобразованием следить очень легко! К тому же есть промежуточные пояснения и подробные комментарии - всё как я люблю, в общем.

P.S. И как-то странно получается, но не так давно видел замечательное видео про то, почему у MSE именно квадрат (это тоже считается классикой вывода), к материалу будет только в плюс, видео на английском
С прошедшим Днём международной солидарности трудящихся, товарищи!

Раз уж у нас идут последовательно праздники за праздниками, то почему бы не поговорить вновь и про последовательное тестирование, которое может позволить нам совершенно валидно остановить тест раньше времени?

На этот раз поговорим о Group Sequential Testing, который легко интерпретировать и внедрить, да и честно сказать, он мне стал нравится куда больше из-за своей простоты, чем mSPRT.

Вас ждут:
- Разбор Alpha-spending функции
- границы по Pocock
- метод Lan, Kim и DeMets
- Futility как возможность остановить тест, когда тщетны наши попытки эффект обнаружить
- Beta-spending от Pampallona и Kim как раз для Futility

В общем, читайте про Group Sequential Testing
Привет, сomrads-statisticians!

Пока пишу очередной пост-разбор по статистике, хочу порекомедовать конференцию по аналитике Aha!25, так считаю, что и как Матемаркетинг, это действительно мероприятие стоящие вашего времени и денег. Она пройдет 29-30 мая в Москве, МГУ, кластер «Ломоносов» (Раменский бульвар, 1).

Программа
по ссылке

Сам я буду в этот раз слушателем онлайн, поэтому не смогу увидеть никого из аналитической тусочки, эх. Но расскажу, что хочу послушать, тут не будет ничего неожиданного, я бы сказал, тут прям база:

- Артем Ерохин, X5 Tech "Проксимируй это: как использовать прокси-метрики умнее?". Метрики - это самое сложное на мой взгляд в AB, с ними больше подводных, чем с критериями, а с прокси так вообще: пойди еще докажи, что они прокси для целевой. Артем расскажет про современный подход в работе с ними так, что fit - use (но это неточно)

- Диля Хакимова, Яндекс, "Формула доверия: аналитические доверительные интервалы для Ratio- и Uplift-метрик". Диля говорит, что ее материал уникален с точки зрения вывода, плюс будет полный гайд, ну посмотрим. Если все понравится - напишу может даже пост.

- Дарья Леонова, Garage8, "A/B-тесты для миддлов и продактов: как выйти за рамки "Просто запускаем эксперименты". Там хоть и будет про типичные ошибки и сценарии, но мало ли что-то новое проскочит. Главное, что обещала Дарья, это показать системный подход. Интересно его сравнить с нашим, можем дополню последний.

Ну и еще про временные ряды, то, что мне по душе уж который год:
- Александр Исаков, Яндекс.Лавка, "Как прогнозировать тысячи временных рядов и не сойти с ума". Во-первых, это опыт конкурента :), во-вторых, временные ряды, камон! Посмотрим, насколько Саша будет конкретен в своем докладе.


Билеты можно купить тут.
Да, недешево, но подразумевается, что купит их вам компания, в которой вы работаете: поэтому идите к HR и просите обещанное когда-то в вакансии - возможность посетить конференцию для собственного роста!

Промокод 15%
ABBATESTING15
Не пропускаем понедельник, товарищи-статистики!

Хотел продолжить серию про секвентальное тестирование, но уже довольно свежий (!) и интересный алгоритм показался мне прям сильно сложнее для объяснения, чем тот, что был ранее, поэтому сегодня поговорим про оценку кумулятивного эффекта - то, как несколько изменений, по которым были тесты, повлияли совместо.

Классическая и очень простая история это выделить глобальную контрольную группу, - holdout, - на которую какое-то время не будет распространяться никаких улучшений.

Но что если такую группу выделить по каким-то причинам невозможно, а оценить нужно?
Причины могут быть от технических до прое "забыли".

В начале года столкнулся с тем, что нужно было продумать, как оценить кумулятив при сценарии невозможности выделения holdout'a. И на методологию от Airbnb, которая мне очень пришлась по душе (так как математически выведена оценка!), меня навел Влад. Статья ниже написана в том числе благодаря его материалам, большое ему спасибо!

Статья начинается со слов "Winner's Curse", Проклятье победителя: смысл в том, что в рамках аукциона, где продается неких товар, победитель аукциона (а это часто наибольшая ставка) скорее всего заплатит больше, чем фактическая стоимость товара. Так и в рамках наивного суммирования эффектов от прошедших тестов - скорее всего оценка будет завышенной.

Разберем Winner's Curse: Bias Estimation for Total Effects of Features in Online Controlled Experiments