Об этом проекте

EconML — это пакет Python для оценки гетерогенных эффектов воздействия по наблюдательным данным с помощью машинного обучения. Он был спроектирован и создан в рамках проекта ALICE в Microsoft Research, объединяя передовые методы машинного обучения с эконометрикой, чтобы привнести автоматизацию в сложные задачи причинно-следственного вывода. Основная цель: измерить причинный эффект одной или нескольких переменных воздействия T на переменную результата Y с контролем по признакам X и W, а также то, как этот эффект меняется в зависимости от X. Методы работают с наблюдательными (неэкспериментальными или историческими) наборами данных. Для причинной интерпретации некоторые методы предполагают отсутствие ненаблюдаемых конфаундеров, тогда как другие предполагают доступ к инструменту Z, который влияет на воздействие T, но не оказывает прямого влияния на результат Y. Большинство методов предоставляют доверительные интервалы и результаты вывода. Заявленные цели дизайна включают реализацию современных методов на стыке эконометрики и машинного обучения, поддержание гибкости в моделировании гетерогенности эффектов (случайные леса, бустинг, лассо, нейронные сети) при сохранении причинной интерпретации и часто при предоставлении корректных доверительных интервалов, использование единого API и опору на стандартные пакеты Python для машинного обучения и анализа данных. Реализованные семейства оценок, показанные в README, включают: - Double Machine Learning (LinearDML, SparseLinearDML, NonParamDML, CausalForestDML) с доверительными интервалами на основе OLS или бутстрэпа. - Dynamic Double Machine Learning для панельных данных (DynamicDML). - Orthogonal Random Forests (DMLOrthoForest, DROrthoForest). - Мета-обучатели: XLearner, SLearner, TLearner. - Дважды робастные обучатели: LinearDRLearner, SparseLinearDRLearner, ForestDRLearner. - Методы инструментальных переменных: OrthoIV, NonParamDMLIV, LinearDRIV, SparseLinearDRIV, ForestDRIV, LinearIntentToTreatDRIV. Поддержка интерпретируемости включает интерпретатор дерева для модели CATE (SingleTreeCateInterpreter), интерпретатор политики (SingleTreePolicyInterpreter) и SHAP-значения для модели CATE. Выбор и валидация модели: RScorer для выбора причинной модели, скоринга и взвешенного ансамблирования; встроенный выбор модели первой стадии, который работает с классами выбора модели sklearn, такими как LassoCV или GridSearchCV, либо со списком моделей-кандидатов. Вывод: при включении объект InferenceResults предоставляет p-значения, z-статистики, стандартные ошибки и доверительные интервалы; доступен метод summary() для линейных параметрических моделей CATE, а также сводки effect_inference на уровне выборки и популяции. Обучение политик: прямое обучение политик по наблюдательным данным с использованием дважды робастного метода для офлайн-обучения политик, предсказывающего рекомендуемое воздействие. Установка выполняется через pip install econml из PyPI; установка из исходников документирована для разработчиков. Проект поддерживает активную историю релизов и документацию на pywhy.org/EconML, а также инструкции по тестированию и генерации документации для участников.