Data Science
Causal Inference
В 2021 году Джошуа Ангрист, Гвидо Имбенс и Дэвид Карт получили Нобелевскую премию по экономике за 'эмпирическую революцию': доказательство того, что причинно-следственные связи можно измерить в наблюдательных данных без рандомизированных экспериментов. Карт показал, что повышение минимальной зарплаты не уничтожает рабочие места - вопреки 40 годам стандартной экономической теории.
- **Netflix A/B тесты**: каждое изменение алгоритма рекомендаций проходит рандомизированный эксперимент на 1% пользователей перед глобальным роллаутом
- **Google Causal Impact**: открытый инструмент для оценки эффекта рекламных кампаний через Bayesian структурные временные ряды без A/B теста
- **Медицинские исследования**: инструментальные переменные (генетические варианты как инструменты - Менделевская рандомизация) позволяют изучать причины болезней без неэтичных экспериментов
A/B тестирование
Microsoft провела 20 000 A/B тестов в 2012 году. Из них только 1/3 показали положительный результат. Это и есть ценность экспериментов: большинство интуитивных улучшений не работают. **A/B тест** - золотой стандарт измерения причинного эффекта. Случайное распределение пользователей в группы (контроль/вмешательство) устраняет все конфаундеры: умные и глупые, богатые и бедные, активные и пассивные - распределяются равномерно. Разница в метрике между группами - чистый каузальный эффект.
Ключевые понятия A/B теста: (1) Размер выборки: рассчитывается через power analysis (power=0.8, alpha=0.05, MDE - минимальный детектируемый эффект); (2) p-value: вероятность наблюдать такую же разницу при нулевой гипотезе; (3) Множественное тестирование: если тестировать 20 метрик, одна покажет p<0.05 случайно (поправки Бонферрони, BH); (4) Novelty effect: новый дизайн привлекает внимание сам по себе - нужно дождаться стабилизации; (5) Сетевые эффекты: соцсети не допускают независимости между пользователями - нужен cluster randomization.
Почему случайное назначение в A/B тесте делает группы сравнимыми, устраняя необходимость контролировать все конфаундеры?
Difference-in-Differences
Нельзя случайно назначить одни штаты в группу повышения минимальной зарплаты, а другие - нет. Но в 1994 году Нью-Джерси повысил минимальную зарплату, Пенсильвания - нет. **Difference-in-Differences (DiD)** использует эту 'случайную' ситуацию: сравнивает изменение занятости в Нью-Джерси до/после с изменением в Пенсильвании за тот же период. Если тренды без вмешательства были бы одинаковы (parallel trends assumption), разница различий = каузальный эффект.
DiD формула: ATT = (Y_treat_post - Y_treat_pre) - (Y_control_post - Y_control_pre). Ключевое допущение - параллельные тренды: без вмешательства обе группы изменялись бы одинаково. Как проверить: сравнить исторические тренды до вмешательства (pre-treatment parallel trends test). DiD в регрессии: Y = beta0 + beta1*Treat + beta2*Post + beta3*(Treat*Post) + epsilon, где beta3 = ATT. Staggered DiD: вмешательство происходит в разные периоды для разных юнитов - требует осторожности (Callaway-Sant'Anna estimator).
Что произойдёт с DiD-оценкой, если допущение параллельных трендов нарушено?
Инструментальные переменные
Влияет ли образование на доход? Смышлёные люди получают и образование, и высокий доход - это конфаундер. A/B тест образования невозможен. DiD без 'случайного' изменения закона - тоже. **Инструментальные переменные (IV)** решают это: нужна переменная Z, которая (1) влияет на образование (relevance), (2) влияет на доход ТОЛЬКО через образование, не напрямую (exclusion restriction), (3) не связана с неизмеримыми конфаундерами (exogeneity). Инструмент Ангриста: близость к колледжу как случайный 'толчок' к образованию.
Метод 2SLS (Two-Stage Least Squares): Stage 1: регрессия Treatment на Instrument (получаем предсказанные значения 'чистого' лечения); Stage 2: регрессия Outcome на предсказанные значения из Stage 1. Это даёт LATE (Local Average Treatment Effect) - эффект для 'compliers' (тех, кто меняет решение под влиянием инструмента). F-статистика Stage 1 > 10: инструмент достаточно силён. Проверка exclusion restriction: требует экономического аргумента, не статистического теста.
Что такое Local Average Treatment Effect (LATE) при оценке через инструментальные переменные?
Причинные графы (DAG)
Джудеа Перль получил премию Тьюринга в 2011 году за формализацию причинности. Его **Directed Acyclic Graph (DAG)** - карта причинно-следственных связей: узлы = переменные, рёбра = причинные стрелки. DAG позволяет формально определить: что нужно контролировать (adjustment set), что контролировать нельзя (коллайдеры), и возможно ли вообще идентифицировать каузальный эффект из наблюдений. Без DAG выбор ковариат для регрессии - гадание.
Ключевые концепции DAG: (1) Confounders: общие причины X и Y - нужно контролировать; (2) Mediators: X -> M -> Y - контролировать нельзя (заблокирует каузальный путь); (3) Colliders: X -> C <- Y - контролировать нельзя (открывает spurious ассоциацию); (4) Backdoor criterion: набор переменных S блокирует все 'задние двери' от X к Y; (5) do-calculus: формальный язык для вычисления P(Y|do(X=x)) из наблюдений. Python библиотека: dowhy, pgmpy.
Контроль большего числа переменных в регрессии всегда улучшает причинную оценку
Неправильный выбор ковариат (контроль коллайдеров или медиаторов) может внести смещение даже хуже, чем его отсутствие
DAG формально показывает: контроль медиатора блокирует каузальный путь, контроль коллайдера открывает spurious ассоциацию. Добавление переменных без понимания DAG - самая распространённая ошибка в прикладном причинном анализе.
Почему контроль коллайдера (collider) может навредить причинному анализу?
Ключевые идеи
- **A/B тест** - золотой стандарт: рандомизация автоматически балансирует все конфаундеры, разница метрик = чистый каузальный эффект
- **DiD** и **IV** - квази-экспериментальные методы для ситуаций без рандомизации: DiD использует 'естественные эксперименты' во времени, IV - внешний инструмент как источник случайности
- **DAG** формализует причинную структуру данных: определяет что контролировать, что нельзя, и возможна ли идентификация эффекта вообще
Связанные темы
Причинный вывод пересекается с анализом временных рядов и классическими методами ML:
- Time Series Analysis — Causal Impact использует байесовские временные ряды для оценки причинных эффектов; DiD работает с панельными данными (временные ряды для нескольких юнитов)
- Ensemble Methods — Causal forests (Wager & Athey, 2018) - расширение случайного леса для оценки гетерогенных причинных эффектов (CATE) для разных подгрупп пользователей
Вопросы для размышления
- Компания хочет измерить эффект email-рассылки на конверсию. Случайная отправка части пользователей - не вариант (нарушает CAN-SPAM). Какие методы причинного вывода можно использовать?
- DiD Card & Krueger показал, что повышение мин. зарплаты не снизило занятость. Назовите два возможных нарушения допущения параллельных трендов в этом исследовании.
- В причинном DAG: нужно ли контролировать медиатор (M: X->M->Y), если интересует общий эффект X на Y? А если нужен только прямой эффект?