Найти тему
В ответ на пост #76 #исследования После рассказа был занятный вопрос - а может ли cuped ухудшить чувствительность теста. Мой теоретический ответ в моменте - нет, если будет низкая корреляция метрики с ковариаты или у ковариаты слишком большой разброс, то просто theta будет очень маленькой и получим считай что исходную метрику Но почему-то задумался о вопросе после встречи и бахнул поверх еще моделирование и теперь достаточно уверен в ответе. Коротко что сделал: - генерировал данные тест/контроль в AA/AB вариациях (без аплифта / с ним) - генерировал шум из разных распределений и подавал как ковариаты в СUPED Контроль ошибок I рода выполняется на желаемых 0.05 По мощности лучше не стало, но и не упали (картинка)
2 часа назад
В ответ на пост #75 #исследования Домучал статью ко внутренней встрече - Разбор некоторых идей по ускорению AB тестов Допишу сюда пару моментов, которые не приткнул в основной текст, но поделиться хочется: 1 - Замечал, что бывает полезно убрать данные по сотрудникам, это достаточно осознанный способ избавиться от выбросов 2 - Полезно оценивать реальную мощность критерия на метриках, дабы лучше управлять ожиданиями по анализу теста. Когда проделаете в первый раз на какой-нибудь условной выручке, можете удивиться, что ошибка II рода сильно выше того, что в дизайн кладете 3 - У меня нет однозначно верного ответа как правильно, но когда моделируете метрики, мне не очень нравится идея просто умножать распределение на константу, кажется что тритмент распространяется неравномерно и надо это учитывать, но по теме не особо экспериментировал
1 день назад
В ответ на пост #74 #исследования Продолжаю готовиться к этому рассказу, уже разобрал пару базовых преобразований данных, причем скорее в сторону их неиспользования в практике. Ниже картинка-пример почему не стоит логарифмировать метрики (касается в принципе любых преобразований изменяющих "веса" наблюдений в оценке среднего) Вообще немного странно, как смело об этих преобразованиях пишут в рекомендациях исследовательские статьи, про логарифм было например у microsoft как базовая рекомендация. Есть вариант, что они все настолько крутые, что моделирование перед использованием предполагают by design. Но чет после итогов опроса DS-ов в гугл, сомневаюсь. Поэтому делюсь мудростою, которую даже microsoft research не сразу раскрывает - все преобразования метрик надо валидировать 🗿
2 дня назад
В ответ на пост #73 #работа Продолжим по базе, вот 3 вопроса, которые меня спросили на каждой AB секции за последний год: 1) Определения pvalue и ошибок I, II рода 2) Методы ускорения тестов - обычно proxy, cuped, cupac, стратификации всем достаточно 3) Как анализировать метрики отношений? Тут обычно чуть хитрят в духе "как считать значимость по AOV" или "как найти доверительный интервал для относительного прироста" - вспоминаем дельта метод и линеаризацию Вообще почему в славный шитпостинг анналов статистики вклинился рыночек? Да потому что мою заявку одобрили на getmentor 🗿(ссылка) и уже даже одну сессию провел, кажется это норм источник домонетизации текущих активностей в параллель с проектами. Ну или как минимум источник занятных бесед и знакомств.
3 дня назад
#72 #исследования В четверг буду выступать на внутреннем митапе с разбором методов ускорения AB. Решил всю теоретическую часть и моделирование упаковать к себе в бложик в гите, раз все равно во внеурочное время делаю, поэтому за ближайшие 90 часов это надо доделать и оформить, но уже сейчас есть полезное напоминание, что дельта метод это не только про метрики отношений, а про оценку статистики любой дроби. Вот скрин итогов AA и AB с применением t-test, тут нас интересует доверительный интервал для относительного изменения. Его считаем 2 способами: - "в лоб" = берем обычный тест для разности средних и оценки доверительного интервала делим на среднее в контроле - "дельта метод" - по-нормальному считаем доверительные интервалы для метрики относительного изменения теста к контролю Что имеем (картинка) - на АА все норм - на AB доверительный интервал чаще положенного не содержит истинное значение
4 дня назад
#71 #работа Вспоминал все не мемные кейс-секции собеседований за последний год. Не понимаю почему не нахожу на первой странице гугла по запросам "вопросы на собеседовании продуктового аналитика" примерно такой список: 1 - Какая-то метрика сильно изменилась, надо быстро понять почему. 2 - Для продукта N как бы строил дашборд? Что бы вывел в отчете если надо успеть за 1 день? 3 - Мы хотим оценить эффект X на Y, как бы подходил к задаче? Я не смог вспомнить кейс собес, где были бы другие вопросы, а в 8 из 10 на самом деле хватило бы только пунктов 1 и 2. Вопросы звучат общо, но кажется на них есть достаточно универсальные схемы ответов, да нюансы будут отличаться при конкретизации задачи, но подход едва ли.
5 дней назад
#70 #исследования Я регулярно общаюсь с MLE по разным темам, как минимум это интересно, как максимум и в аналитике помогает, пара мыслей после таких диалогов: - пообщался с чуваком из рекомендаций и теперь кажется что любая задача сводится к рекомендациям 🌚 - физический смысл auc - это вероятность того, что случайно выбранные пары положительного и отрицательного класса будут правильно отранжированы - проблема auc в том, что он не учитывает "глубину" ошибки - т.е. на насколько типичных представителях класса ошибается модель. Но ведь и ничто из "золотого трио" {precision, recall, auc} или даже базовой пятерки +{f1, accuracy} не учитывает 🌚 - mae логичнее mse для задач аналитики, ведь мы хотим описать основной массив наблюдений и не особо учитывать выбросы. но почему во всех обучениях линрегу аналитиков об этом не парятся? Есть суровая гипотеза, что потому что statsmodels не позволяет это удобно делать и не будет такого красивого .summary() 🌚
6 дней назад
В ответ на пост #68 #исследования Продолжаю тыкаться в труд Вальда, нравится как он сначала идейно затем технически описывает предлагаемые концепции. Например: Базовая идея - последовательный тест это просто описание правил по тому как на каждый момент теста делать выбор одного из 3 действий: 1) Принять гипотезу H 2) Отклонить гипотезу H 3) Продолжить эксперимент для сбора данных Формальная идея - вводим для каждого m пространство вариантов M размера m всех последовательных наблюдений, для каждого m делим пространство вариантов на 3 взаимно исчерпывающих и исключающих множества R0, R1, R2 и проводим тест пока множество вариантов не попадет в множество R2 И еще момент сегодняшнего вечера, который хочу трижды зафиксировать - приятное описание основных характеристик процедуры последовательных тестов: - OC функция = L(theta) - описывает насколько хорошо тестовая процедура достигает цель осуществления правильных решений - ASN функция E(n|theta) - описывает ожидаемые затраты в размере наблюдений на проведение теста То есть тредофф в тесте то у нас тот же самый, как в "статичных" процедурах, только инструмент гибче. PS. И финальная мысль по теме - странно что вообще за 30 лет развития интернет аналитики стандартом стали "статичные" тесты, кажется что если отбросить сложность реализации, то последовательные тесты и ментально лучше ложатся на мышление бизнес пользователей и тупо кост эффективнее
1 неделю назад
#67 #жизнь Рад что теперь знаком с лекцией «Вы и ваши исследования» доктора Ричарда Хэмминга (RU перевод), узнал о ней из канала KISS Она слишком концентрированная, чтобы переписывать сюда какие-то поинты, поэтому считаю что 20 минут прочтения того стоят, лишь немного "продам" эту идею - Хэмминг крутой и поработал он с кучей других крутых людей и науки, наблюдения за этими людьми он и рассказывает, отвечая на вопрос: "что отличает тех, кто делает великую работу от остальных" Кажется это полезно будет регулярно перечитывать, дабы проверить свои действия адекватности для цели "великой работы", сейчас себе выписал следующие западающие пункты: - какие задачи важны в моей области - редко задавал себе этот вопрос в контексте прикладной работы, а надо бы - работаю за "закрытой дверью" - мало коммуницирую с коллегами из сферы - утверждение эго + работа с системой - часто трудно согласиться на компромисс с системой и отойти от того, что я считаю верным и завершенным
1 неделю назад
#66 #исследования Если вы работаете с данными в целях исследований, то почти наверняка на любом собесе спросят о p-value. У Валеры в заметке полезная ссылка на Кохави, мне тоже нравится это определение (перевод): p-value это вероятность что тестовая статистика будет такой же как наблюдаемая или больше если верны все предпосылки, в том числе сама тестируемая гипотеза Сегодня еще встретился с занятным вопросом по теме - а что будет если отбросить в определении часть "такой же как наблюдаемая или больше" - то есть просто чему будет равна вероятность встретить тестовую статистику равную полученному p-value? Ответ: 0, потому что p_value это площадь под кривой распределения статистики, а площадь под точкой равна 0
1 неделю назад
#65 #исследования Начал читать Sequential Analysis By Abraham Wald к текущему часу понравилось 3 момента: 0) Первые описания процедур последовательного тестирования так впечатлили военных, что они запретили о них подробно писать в статьях 1) Говорит, что переход в последовательному тестирования может экономить до 50% ресурсов (ака необходимых наблюдений) в тестах 2) Пока самое лаконичное встреченное объяснение что такое тестирование: Процедура тестирования - это деление пространства вариантов на две взаимоисключающие группы - Г1 и Г2, таким образом что попадание наблюдения в Г1 отклоняет гипотезу, а попадание в Г2 нет, в таком случае Г1 называем критической областью. Тогда выбор процедуры тестирования это эквивалент определения критической области.
1 неделю назад
#64 #исследования Закончил гугловский Machine Learning Crash Course, в целом норм, простой, но быстро перечитать основные моменты самое то Правда последний модуль вообще не понял "Fairness" - это новое для меня видение "справедливости" ML, где в первой половине модуля говорят ± информативно о смещениях в данных, а вторая половина растекается в чем-то в духе "права, равенство, свобода, ответственность" и к этому есть вопросы: А) Предлагают особенные функции потерь, которые будут ограничивать модель если она по некоторым осям накладывает условия. ... male/female students versus nonbinary students) by adding a penalty for differences in the prediction distributions for the two groups. Не понимаю ни идейного смысла задачи, ни рационального - если мы не хотим учитывать влияние чего-то, то почему просто не включать это в модель? Б) Топики "demographic parity, equality of opportunity, counterfactual fairness" перечитал несколько раз но так и не понял прикладную суть. Там разбирается какой-то абстрактный пример о том, что модель должна для разных групп населения давать одинаковые распределения прогнозов, но почему? Себе 3 объяснения этого модуля находил: 1) Это какой-то очень заморочный способ объяснить стратификацию, не называя ее - едва ли 2) Это неуклюжий заход в причинно-следственный анализ с учетом соц. факторов. Ну типа если вы вдруг заметите что по признаку расы можно неплохо делать кредитный скоринг, то это не значит что раса влияет на вероятность возврата, а наверняка есть опущенные переменные - уже вероятнее, но зачем тогда пытаться запрячь модель игнорировать этот фактор? 3) Это слеваченный новый модуль - мои 10 минут поиска идут в пользу этой версии, грустно. Вообще не верю что какой-то серьезный vluation|profit бизнес будет ставить задачу в духе "нам нужно лучше всех на рынке прогнозировать X, но чтобы по всем полам и расам прогноз был одинаковый"
1 неделю назад