目前主流的 Python 因果推断包和教材有哪些?
随着机器学习的火爆,其强大的数据分析、建模和预测能力,已经开始影响到经济学、教育学、公共政策等其他学科领域。
多年来,在社会科学的实证研究方面,学者们将因果推断作为建模的核心方法。除了来自自然科学的RCT得到重用之外,各种准实验的因果推断方法层出不穷。
可以预见,在未来数年内,机器学习+经济学的方法,一定会对传统的计量经济学/统计学带来巨大冲击。Btw,正是大规模实践RCT的 MIT jpal 团队在19年拿下诺奖,在经济学+机器学习因果推断领域引领潮流的几位大拿(如 Stanford 的Susan Athey),说不定很快也会成为热门候选。
由此可见,Python/R +机器学习,不仅是IT领域的必备技能,也将会成为社科实证分析的重要手段。
在此,向大家介绍目前全球范围内,4个主流的综合机器学习因果推断包。
1. dowhy
开发者:微软, Amit Sharma , Emre Kiciman
简介:基于因果推理的统一语言,结合了因果图模型和潜在结果框架,支持因果假设的显式建模和测试。
2. CDT,CausalDiscoveryToolbox
开发者:Goudet Olivier
简介:基于神经网络 CGNN 的图形化(networkx ) 因果推断。基于NumPy,sklearn,PyTorch,bnlearn, 和 pcalg。
官网: GitHub - GoudetOlivier/CausalDiscoveryToolbox
3. causalml
开发者:uber
简介:基于机器学习的因果推断的综合包。主要功能包括:
- 基于实验数据,计算CATE和ITE;
- 基于决策树的算法;
- Meta-learner algorithms;
- 工具变量算法;
- 基于神经网络的算法。
官网: GitHub - uber/causalml: Uplift modeling and causal inference with machine learning algorithms
4. EconML
开发者:微软
简介:机器学习因果推断综合包,对标 causalml,安装相对容易一些。主要功能:
- 主要用于计算HTE异质性处理效应;
- 提供模型的解释,以及系数的CI置信区间;
- 基于观测数据,进行因果推断。
因果推导主要参考教材
第一本,《因果推理:基础与学习算法》
作者:[荷] 乔纳斯 , 彼得斯 ( Jonas Peters ),[德] 多米尼克 著
出版时间:2021-07-01
内容简介 :基于机器学习,作者回顾了最近十年快速发展的因果推断领域,全面总结了现有因果推断的算法和模型。本书从概率论与统计学的角度切入,讨论了因果推断常见的假设,以及假设所指向的目标。
因果关系的数学化是一个相对较新的发展,并且在数据科学和机器学习中变得越来越重要。此书提供了对因果模型以及如何从数据中学习它们的独立且简洁的介绍。
在解释了因果模型的必要性并讨论了因果推理的一些基本原则之后,该书向读者展示了如何使用因果模型:如何计算干预分布、如何从观察和干预数据推断因果模型,以及因果思想如何用于经典机器学习问题。所有这些主题首先根据两个变量进行讨论,然后在更一般的多变量情况下进行讨论。双变量情况对于因果学习来说是一个特别困难的问题,因为不存在解决多变量情况的经典方法所使用的条件独立性。作者认为分析因果关系之间的统计不对称性具有很强的指导意义,并且他们报告了他们对这个问题进行了十年的深入研究。
点评: 和机器学习充分结合的因果推断领域的集大成者。
该书还有对应的英文版: 《因果推断要素 Elements of Causal Inference: Foundations and Learning Algorithms》
第二本,《 统计学因果推断:导论 Causal Inference In Statistics - A Primer 》
PS: 目前此书还没有中文版。
#更正:经@曲包子 同学提醒,该书的中译本也已经发行:
作者:Judea Pearl; Madelyn Glymour; Nicholas P. Jewell
Judea Pearl:图领奖得主,贝叶斯网络之父。Judea Pearl 早在2005年之前,就因为“因果推导”领域的一些开创性研究而名声大噪。他当时还写了一本再版的书 《 Causality: Models, Reasoning, and Inference 》。
出版时间:2016-03-07
内容简介: 现代因果推理的许多概念和术语,对新手来说可能非常令人生畏。 Judea Pearl 提供了一本非常适合统计学初学者的书,全面介绍了因果关系领域。经典统计学的例子贯穿始终,以证明在解决数据造成的决策困境时需要因果关系。 作者还将因果方法与传统的统计方法进行比较,同时在每个部分的末尾提供问题以帮助学生学习。
第三本,《基本无害的计量经济学》 -- 2021年诺贝尔经济学得主的成名之作
虽说因果推断的数学基础由统计学家打下,生产实践则多由计算机学家完成,但是应用于学术研究最多的却是经济学家。打开一本主流的经济学期刊,你会发现实证研究占了多数,而实证的核心往往就是核心。计量经济学的核心功能,就是从社会学的角度来进行因果推断。
作者:乔舒亚・安格里斯特,约恩-斯特芬・皮施克。其中安格里斯特是MIT的经济学教授,被国内经济圈奉为“安神”。
出版时间:2012-04-01
内容简介:基于反事实框架,从计量经济学的角度介绍了大量“准实验”的因果评估方法:比如IV、PSM、DID、RD等等。。
个人点评:当计算机学家目前还在引入IV和PSM的时候,经济学圈很早前已经把准试验的方法用了一大圈了。从实证分析的角度去引入因果推断,经济学是走在其它学科前面的。
对于经管背景的同学,想从传统计量的角度去理解因果推断,还可以参考安神的另外一本主流之作:
简介:介绍了计量经济学中主流的几种因果推断方法:RCT,IV,DID,RDD等。
第四本,《Python数据科学手册》
介绍:虽然此书书名没带上“机器学习”的字眼,但是介绍的内容——NumPy、pandas、matplotlib包的使用,都是机器学习建模的基础。书中也花了很大篇幅介绍机器学习的主流包Sciki-Learn,深入浅出,方便新手入门。
另外特别推荐此书的原因在于,sklearn是机器学习建模的主流包,因果推断包的基础。比如econml,就直接引用了大量sklearn的方法进行建模。
其它书籍推荐:
- 《Causality》 ;
- 《Counterfactuals and Causal Inference: Methods and Principles for Social Research》;
- 《Observation and Experiment: An Introduction to Causal Inference》 ;
- ...
补充:基本让新手们少走弯路、少花钱的Python入门神书:
第一本是保姆级入门引导,一般读者不需要买。
第二三本是明星书籍,尤其第三本,适合一般非计算机专业的朋友入门。二选一即可。
最后一本是numpy、pandas、matplotlib的“官方指南”。作者是pandas的开发者 Wes McKinney。
持续更新中。
-----全文结束-----