《基于Python的因果推断》[42M]百度网盘|pdf下载|亲测有效
《基于Python的因果推断》[42M]百度网盘|pdf下载|亲测有效
《基于Python的因果推断》[42M]百度网盘|pdf下载|亲测有效
《基于Python的因果推断》[42M]百度网盘|pdf下载|亲测有效
《基于Python的因果推断》[42M]百度网盘|pdf下载|亲测有效

基于Python的因果推断 pdf下载

isbn:9787519897406
出版社 中国电力出版社
出版年 2025-03-01
页数 407页
ISBN 9787519897406
装帧 精装
评分 8.9(豆瓣)
限时特惠 00:00:00
活动结束后恢复原价
纸质书参考价 ¥23
电子版限时价 ¥5.99 省 18 元

选择版本

不满意全额退款
发货失败双倍赔偿
邮箱即时发送

内容简介

本篇主要提供基于Python的因果推断电子书的pdf版本下载,本电子书下载方式为百度网盘方式,点击以上按钮下单完成后即会通过邮件和网页的方式发货,有问题请联系邮箱ebook666@outlook.com

产品特色

这是一本关于因果推断的通俗易懂的入门书,重点介绍了Python 数据分析社区非常熟悉的工具和理论方法。

编辑推荐

编辑推荐

多花一美元的在线营销能吸引多少买家?哪些顾客有了折扣优惠券才会购物?如何确定最Z优定价策略?因果推断是确定您手中拥有的杠杆如何影响您想要追求的业务指标的最Z好办法。这只需要几行Python代码而已。

本书作者阐述了因果推断在估计影响和效应方面尚未开发的巨大潜力。管理者、数据科学家,以及业务分析人员将学习到A/B测试、线性回归、倾向性评分、合成控制、双重差分等经典因果推断方法和基于机器学习的异质效应估计等新进展。每种方法都用行业应用示例加以说明。


专家推荐

“Matheus撰写了这本教你如何摆脱玩具模型,掌握处理现实数据和解决重要实际问题最Z新方法的最Z好的书。”

——Sean J. Taylor,

数据分析公司Motif Analytics

首席科学家

“本书是因果推断的入门书,重点介绍了Python数据分析社区非常熟悉的工具和环境。”

——Nick Huntington-Klein,

经济学教授,

The Effect: An Introduction to Research Design and Causality作者


内容简介

本书将帮助读者:学习如何理解因果推断的基本概念。将业务问题定义为因果推断问题。理解偏差如何干扰因果推断。学习因果效应如何能够因人而异。将相同客户不同时间的观测用于因果推断。在随机化不可行的时候利用地理和回溯实验。检验非遵从性偏差和效应稀释。

作者简介

Matheus Facure是Nubank的经济学家和高级数据科学家。他在很多商务场景成功应用了因果推断技术,从自动实时信用卡决策到交叉邮件与营销预算优化。

内页插图

精彩书评

  ★“Matheus撰写了这本教你如何摆脱玩具模型,掌握处理现实数据和解决重要实际问题新方法的好书。
  ——Sean J.Taylor,数据分析公司Motif Analytics,首席科学家
  
  ★“本书是因果推断的入门书,重点介绍了Python数据分析社区非常熟悉的工具和环境。”
  ——Nick Huntington-Klein,经济学教授,The Effect:An Introduction to Research Design and Cousality作者

目录

目录

前言 .1

第一部分 基础知识 . 11

第1 章 因果推断导论 .13

1.1 什么是因果推断 13

1.2 为什么要做因果推断 . 14

1.3 机器学习与因果推断 . 15

1.4 关联关系与因果关系 . 16

1.4.1 处理和结果 17

1.4.2 因果推断的基本问题 18

1.4.3 因果模型. 19

1.4.4 干预 21

1.4.5 个体处理效应 23

1.4.6 潜在结果. 23

1.4.7 一致性假设与稳定单元处理值假设 24

1.4.8 关注的因果量 25

1.4.9 因果量示例 27

1.5 偏差 30

1.5.1 偏差方程. 31

1.5.2 偏差可视化 33

1.6 识别处理效应 35

1.6.1 独立性假设 37

1.6.2 基于随机化的识别 . 37

1.7 本章小结 41

第2 章 随机试验与统计学 43

2.1 随机化的强制独立性 . 43

2.2 A/B 测试示例 . 45

2.3 理想试验 49

2.4 最危险的方程 50

2.5 估计的标准误差 54

2.6 置信区间 55

2.7 假设检验 63

2.7.1 零假设 . 64

2.7.2 检验统计量 66

2.8 p 值 . 67

2.9 功效 69

2.10 样本量计算 71

2.11 本章小结 73

第3 章 图形化因果模型 74

3.1 关于因果关系的思考 . 74

3.1.1 因果关系的可视化 . 76

3.1.2 咨询顾问聘用示例 . 78

3.2 图形化因果模型的速成课 80

3.2.1 因果链 . 80

3.2.2 因果分叉. 82

3.2.3 因果失范或因果对撞 83

3.2.4 关联流备忘单 85

3.2.5 因果图查询 86

3.3 识别的再认识 89

3.4 CIA 与调整公式 91

3.5 正值假设 92

3.6 利用数据的因果识别示例 93

3.7 混淆偏差 95

3.7.1 替代混淆. 96

3.7.2 再论随机化 97

3.8 选择偏差 98

3.8.1 限定对撞因子 99

3.8.2 调整选择偏差 103

3.8.3 限定中介变量 106

3.9 本章小结 107

第二部分 偏差调整 111

第4 章 线性回归的不合理有效性 113

4.1 线性回归 113

4.1.1 为什么需要模型 114

4.1.2 A/B 测试中的回归 116

4.1.3 回归调整 118

4.2 回归理论 122

4.2.1 单变量线性回归 124

4.2.2 多变量线性回归 124

4.3 弗里希- 沃- 洛弗尔定理和正交化 125

4.3.1 去偏步骤 126

4.3.2 去噪步骤 129

4.3.3 回归估计的标准误差 . 129

4.3.4 最终结果模型 131

4.3.5 FWL 总结 132

4.4 作为结果模型的回归 134

4.5 正值性和外推 . 136

4.6 线性回归的非线性 137

4.6.1 处理的线性化 139

4.6.2 非线性FWL 和去偏 141

4.7 虚拟变量的回归 142

4.7.1 条件随机实验 143

4.7.2 虚拟变量 145

4.7.3 饱和回归模型 148

4.7.4 方差加权平均回归 150

4.7.5 去义和固定效应 152

4.8 遗漏变量偏差:回归视角下的混杂因子 155

4.9 中性控制 157

4.9.1 噪声诱导控制 158

4.9.2 特征选择:偏差与方差的权衡 . 160

4.10 本章小结 . 162

第5 章 倾向性评分 163

5.1 管理培训的影响 163

5.2 基于回归的调整 165

5.3 倾向性评分基础 167

5.3.1 倾向性得分估计 168

5.3.2 倾向性得分和正交化 . 169

5.3.3 倾向性得分匹配 169

5.3.4 逆倾向性加权法 171

5.3.5 IPW 的方差 174

5.3.6 倾向性权重的稳定化 . 178

5.3.7 伪群体 180

5.3.8 选择偏差 181

5.3.9 偏差- 方差权衡 182

5.3.10 正值性 183

5.4 基于设计的识别与基于模型的识别 186

5.5 双重稳健估计 . 186

5.5.1 处理容易建模的示例 . 189

5.5.2 结果容易建模的示例 . 192

5.6 面向连续处理的广义倾向性得分 . 194

5.7 本章小结 201

第三部分 效应异质性与个性化.203

第6 章 效应异质性 205

6.1 从ATE 到CATE 206

6.2 为什么预测结果不是答案 . 207

6.3 利用回归估计CATE 210

6.4 评估CATE 预测结果 214

6.5 按模型分位数划分的效应 . 215

6.6 累积效应 220

6.7 累计增益 221

6.8 目标转换 225

6.9 预测模型适用于效应排序 . 226

6.9.1 边际递减收益 227

6.9.2 二元结果 227

6.10 用于决策的CATE 229

6.11 本章小结 . 233

第7 章 元学习器 235

7.1 用于离散性处理的元学习器 236

7.1.1 T 学习器 237

7.1.2 X 学习器 241

7.2 用于连续性处理的元学习器 246

7.2.1 S 学习器 247

7.2.2 双重/ 去偏机器学习 252

7.3 本章小结 260

第四部分 面板数据 263

第8 章 双重差分法 265

8.1 面板数据 266

8.2 经典双重差分法 269

8.2.1 带有结果增长的双重差分法 271

8.2.2 带最小二乘法的双重差分法 273

8.2.3 带有固定效应的双重差分法 274

8.2.4 多时间段 275

8.2.5 推断分析 277

8.3 识别假设 280

8.3.1 平行趋势 280

8.3.2 无预期假设和稳定单元处理效应假设 283

8.3.3 严格外生性假设 283

8.3.4 无时间变化混杂因子 . 284

8.3.5 无反馈 286

8.3.6 无结转效应和无滞后因变量 286

8.3.7 效应时变性 . 287

8.3.8 带有协变量的双重差分法 289

8.4 双重稳健的双重差分法 . 293

8.4.1 倾向性评分模型 293

8.4.2 结果增量模型 293

8.4.3 整合所有要素 294

8.5 交错采用 296

8.5.1 时变的效应 . 302

8.5.2 协变量 306

8.6 本章小结 307

第9 章 合成控制 309

9.1 在线营销数据集 310

9.2 矩阵表示 313

9.3 作为水平回归的合成控制 . 315

9.4 标准合成控制 . 319

9.5 带有协变量的合成控制 . 322

9.6 去偏合成控制 . 327

9.7 推断分析 331

9.8 合成双重差分法 334

9.8.1 双重差分法回顾 334

9.8.2 合成控制回顾 335

9.8.3 估计时间权重 337

9.8.4 合成控制与双重差分法 340

9.9 本章小结 342

第五部分 替代实验设计 345

第10 章 地理与回溯实验 347

10.1 地理实验 . 348

10.2 合成控制设计 349

10.2.1 处理单元的随机集合 352

10.2.2 随机搜索 355

10.3 回溯实验 . 358

10.3.1 序列的潜在结果 360

10.3.2 估计延滞效应的阶 361

10.3.3 基于设计的估计 363

10.3.4 最优回溯设计 . 368

10.3.5 稳健方差 371

10.4 本章小结 . 374

第11 章 非遵从性和工具变量 376

11.1 非遵从性 . 376

11.2 扩展潜在结果 379

11.3 工具变量识别假设 . 381

11.4 第一阶段 . 384

11.5 简化形式 . 385

11.6 两阶段最小二乘法 . 386

11.7 标准误差 . 387

11.8 额外的控制变量和工具变量 . 389

11.8.1 手工实现两阶段最小二乘法 391

11.8.2 矩阵实现 392

11.9 断点设计 . 394

11.9.1 断点设计假设 . 395

11.9.2 意向处理效应 . 397

11.9.3 工具变量估计 . 398

11.9.4 簇聚 . 399

11.10 本章小结 400

第12 章 展望 . 403

12.1 因果发现 . 404

12.2 连续决策 . 404

12.3 因果强化学习 405

12.4 因果预测 . 406

12.5 域自适应 . 406

12.6 结束语 . 407


前言/序言

前言

想象自己是一名刚刚步入快速发展、前途光明的数据科学领域的新手。虽然尚未精通机器学习知识,但你完全相信自己有这个能力。你可能已经学完了几门该领域的线上课程,甚至在Kaggle 平台的数据挖掘和预测竞赛中取得过不错的成绩。你或许正在准备甚至迫不及待地运用所掌握的知识去解决实际问题。一切顺风顺水。

领导还会问:“嗨,请算算我们实际取得了多少新增的客户付费营销份额。刚开始的时候,的确我们看到有些客户来自付费营销渠道,但是看上去在免费应用方面却有下降。我们认为,有些来自付费营销渠道的客户即使不付费也会来”。这就意味着一个新的挑战,但是,这个挑战是什么呢?你如何知道没有付费营销将会发生什么呢?或许,在营销活动开始前后,你会比较免费应用和付费应用的总数。但是,在一个快速发展的公司里,你应该如何才能知道营销活动改变不了什么(见图2)?

再换个话题,将自己当作一名业内大咖的风险分析师,刚受雇于一家贷款公司。首要任务是完善该公司的信用风险模型。目标是建立一个自动决策系统,用于评估客户信誉(为客户担保)并决定公司可以为客户提供的贷款额度。当然,系统的错误将会导致严重的代价,特别是如果给出的信贷额度过高的话。

这样的决策系统,关键在于明确信贷额度对客户违约可能性的影响程度。客户能否管理大额信贷?是否具备偿还能力?是否会陷入过度支出和难以控制的债务危机?为了把握这些动向,你首先应该根据给出的贷款额度绘制信贷平均违约率曲线。出乎意料的是,数据显示出非预期的结果,如图3 所示。信用卡额度与信贷违约率看上去呈反比例关系。如何实现提高信贷额度而又能降低信贷违约风险呢?有理由怀疑,你会去跟其他分析师交流这个问题。答案很简单也不意外:贷款公司将向违约概率小的客户提供更多信贷。因此,提高信贷额度并不能降低违约风险,事实正好相反。低违约风险会提高信贷额度。尽管如此,还是没能解决最Z早的问题:如何根据数据建立信贷风险与信贷额度的关系模型。原本也并不指望系统知道更大的信贷额度意味着违约风险的降低。而且,仅仅为了看看结果如何而想当然地在A/B 测试中随机确定信贷额度,必定是徒劳无功的,因为错误的信贷额度决策,代价高昂。

上述问题的共同点是,需要知道改变能够控制的事情(营销预算和信贷额度)如何影响希望得到的商务结果(客户应用和违约风险)。影响或效果评价长期以来是现代科学的重要支柱,但直到最Z近,在将这些工具手段加以体系化,形成所谓“因果推断”领域的方面,才取得了重大进展。而机器学习的进展以及对实现基于数据的决策自动化的普遍意愿也将因果推断引入工业部门和公共机构。然而,因果推断工具尚未广泛被决策者或数据科学家们了解。

为此,作者曾经写过一本名为《勇敢者与求真者的因果推断》(CausalInference for the Brave and True)的在线图书。该书以严谨而又不失轻松的方式介绍了因果推断的传统工具和最Z新进展,而且全部附带开源的Python 软件。本书作者试图再进一步,从应用角度论述所有相关内容,不仅更新了示例,而且进行了更直观的解释说明。作者希望本书能够成为解决所有基于数据的决策问题的起点。

前提要求

本书是利用Python 实现的因果推断的导论,但并不是一般的入门书。之所以是导论,是因为本书聚焦于应用实践,而不是关于因果推断的严谨的证明和定理。而且,本书作者更倾向于给出简单而直观的解释说明,而不是完整的复杂的论述。之所以又不是一般的入门书,是因为作者希望你已经具备关于机器学习、统计学和Python 编程的知识。内容并不高深,但本书还是会涉及你应该已掌握的一些概念和术语。

例如,书中会有如下的文本描述:

首先需要处理的是,连续型变量处处使得P(T=t)=0。原因在于,概率是密度曲线下面积,而单点的面积总为零。为了避免这种情况,可以用条件密度f(T|X) 代替条件概率P(T=t|X)。

本书并不过多介绍什么是密度以及为什么密度不同于概率。再举一个关于机器学习的例子:

你也可以用机器学习模型估计倾向性评分(propensity score),但需加倍小心。第d一,要确保机器学习模型能够输出校准过的概率预测。第二,需要采用折外预测(out-of-fold predictions)以避免过拟合所产生的偏差。这里仍然不解释机器学习模型是什么,也不解释机器学习模型输出校准过的预测是什么意思,过拟合是什么,折外预测又是什么。因为这些都是数据科学的基本概念,你应自行掌握。

建议你阅读本书之前具备以下知识:

? Python 基础知识,包括 pandas、NumPy、Matplotlib、scikit-learn 等最Z常用的数据科学库。即使你的专业是经济学,也不必担心会不会用好那些非常繁杂的代码。你只需要掌握基础知识就行。

? 统计学基础概念,例如分布、概率、假设检验、回归、噪声、期待值、标准差以及独立性。第2 章将对统计学做一回顾,有助于新手学习。

? 数据科学基础概念,例如机器学习模型、交叉验证、过拟合以及一些最Z常用的机器学习模型(梯度提升、决策树、线性回归、逻辑回归)。

? 高等数学知识,例如函数、对数、根、矩阵、向量,以及导数和积分等大学数学知识。

本书的主要对象你是各行各业的数据科学家。如果你是这样的人,那么肯定具备了前面提到的先决知识。而且请谨记,这样的受众很多,各自拥有很多不同的技能。因此,本书将提供一些面向高水平读者的备注、段落或章节。无需担心不理解本书的某些内容,你仍能够从书中受益匪浅。有时掌握了一些基础知识之后还可以再次阅读,重新认识。

内容概要

第d一部分介绍因果推断的基本概念。第d1 章介绍因果推断的关键概念,这些概念用于说明降价的效应。第2 章讨论A/B 测试(也称随机对照试验)的重要性,它不仅是决策工具,也是用于对标其他因果推断工具的黄金标准。该章也将回顾一些统计学概念。第3 章偏理论介绍,包括因果识别与图模型。该方法(按字面意思)确定关于因果过程的假设并明确如何理清因果关系。

学完第d一部分的内容后,你应该具备了因果推断思考的基础。

第二部分介绍从关联性理清因果性的两种方法:线性回归与倾向加权。第4章介绍线性回归,但以不同于为大多数数据科学家所熟悉的角度。将会了解到一种重要的偏差消除方法——正交化。第5 章介绍倾向性评分与双重鲁棒估计。

第三部分在第二部分的基础上介绍机器学习和大数据技术。因果推断可被视为个性化决策工具。通过食品配送服务应用示例,尝试了解应该给哪些客户提供折扣券以便提升他们的参与度,也了解哪些客户并不需要这些优惠。第6章介绍异质治疗效应问题。第7 章介绍机器学习与因果推断交叉融合的新进展。该章将学习T- 学习器、X- 学习器、S- 学习器,以及双重/ 去偏机器学习等方法,都结合个性化治疗问题加以阐述。

第四部分考察引入时间维度的因果推断。有时人们拥有相同客户或市场多个时间段的记录数据,汇聚称作面板数据集。将学习如何利用面板去发现付费营销的实际影响,即使无法随机确定谁看到相关的广告。第8 章将介绍双重差分模型及其相关最Z新进展。第9 章介绍合成控制(及其变种),也是结合市场促销影响理解的问题。

第五部分详细介绍不考虑随机性情况的替代实验设计方法。第d10 章介绍旨在找到治疗区域和控制区域的地理实验法和用于分析部位有限而又想确定治疗效果的回溯实验法。后者针对相同部位反复治疗和中止治疗。第d11 章介绍非遵从实验和工具变量法。该章也简单介绍不连续设计(discontinuity design,或断点设计)。

排版约定

本书采用以下排版约定。

斜体(Italic)

表示新术语、URL、电子邮件地址、文件名和文件扩展名。

等宽字体(Constant Width)

表示程序清单,在段落内表示程序元素,例如变量、函数名称、数据库、数据类型、环境变量、语句和关键字。

粗体等宽字体(Constant width bold)

表示应由用户原封不动输入的命令或其他文本。

斜体等宽字体(Constant width italic)

表示应该替换成用户提供值的文本,或者由上下文决定的值。

代码示例使用

本书的补充材料, 包括代码示例、练习等, 可从https://github.com/matheusfacure/causal-inference-in-python-code 处下载利用。

使用代码示例,如遇到技术性问题,请反馈给邮箱support@oreilly.com。

本书为你开展工作助一臂之力。通常情况下,如果代码示例随本书提供,那么你可以将其用于自己的程序和文档中。你不必联系我们以获得许可,除非你要复用大量的代码。例如,编写一段使用了本书几块代码段的程序无需获得许可。但是,出售或传播O’Reilly 书籍的代码示例则必须申请许可。引用本书知识回答问题以及引用代码示例不需要许可。将本书大量代码示例编入产品说明书则需要得到许可。

我们欢迎(但不是强制要求)标明本书信息。这些信息通常包括书名、出版商以及ISBN 书号。例如,“Causal Inference in Python,Matheus Facure(O’Reilly). Copyright 2023 Matheus Facure Alves, 978-1-098-14025-0”。

如果你觉得代码示例使用不合理或者没被许可,请通过邮件 permissions@oreilly.com 联系我们。

O’Reilly 在线学习平台(O’Reilly Online Learning)

近40 年来,O’Reilly Media 致力于提供技术和商业培训、知识和卓越见解,来帮助众多公司取得成功。

我们拥有独一无二的专家和革新者组成的庞大网络,他们通过图书、文章、会议和我们的在线学习平台分享他们的知识和经验。O’Reilly 的在线学习平台允许你按需访问现场培训课程、深入的学习路径、交互式编程环境,以及O’Reilly 和200 多家其他出版商提供的大量文本和视频资源。有关的更多信息,请访问http://oreilly.com。

联系我们

任何有关本书的意见或疑问,请按照以下地址联系出版社。

美国:

O’Reilly Media, Inc.

1005 Gravenstein Highway North

Sebastopol, CA 95472

中国:

北京市西城区西直门南大街2号成铭大厦C座807室(100035)

奥莱利技术咨询(北京)有限公司

我们为本书专设网页,在上面列有勘误信息、示例以及其他信息。你可以访问网页,地址为https://oreil.ly/causal-inference-in-python。

关于本书与课程的新闻与信息,请访问https://oreilly.com。

我们的LinkedIn:https://linkedin.com/company/oreilly-media。

我们的Twitter:https://twitter.com/oreillymedia。

我们的YouTube:https://youtube.com/oreillymedia。

致谢

首先,感谢无所不能的编辑Virginia Wilson。感谢你的反应和耐心,没有你,可能也就无法成就本书。其次,感谢Nicole Butterfield 以及O’Reilly 的整个团队,支持我完成我的这本处女作并给予充分的信任。特别感谢Danny Elfanbaum 在写作过程中帮我解决了相关技术问题。

作者感谢所有技术评阅人,他们付出宝贵的时间审阅了本书。感谢Laurence Wong 为本书提供了非常详细的评论以及指出完善之处。感谢Adrian Keister进行全书审阅后给出了非常中肯的意见,而且还运行了代码并提出了非常重要的修改建议。正是有了这些反馈。本书得到了明显的改进。感谢Jorge Reyes 千方百计地发现技术描述中难以发现的错误,既坦诚指出问题又不吝谬赞。感谢Roni Kobrosly 给予的提高本书易读性和趣味性的建议。感谢Subhasish Misra 的有益反馈,特别是关于第5 章的反馈意见。感谢Shawhin Talebi 建议增加一些密切相关的话题内容。

感谢所有给予内容相关反馈的朋友。感谢Guilherme Jardim Duarte 帮忙审阅Pearlian causality 相关内容,特别是第3 章。感谢Henrique Lopes 和Juliano Garcia 帮忙审阅因果推断与商务应用的相关内容,第4 章、第6 章和第7 章因此得到了很大的改进。感谢Raphael Bruce 关于第4 章的直率而准确的意见反馈。感谢Luis Moneda 给予的专业支持、关于因果性的多次讨论,以及帮忙审阅第d1 章。统计学是门难度大的学科,感谢Denis Reis 审阅第2 章,从而让作者如释重负。

技术类书籍的写作有时是孤勇的行为,正因为如此,本人为能得到很多令人高兴和尊重的专业人士的支持帮助而感到幸运万分。他们是Sean J. Taylor、Pedro H. C. Sant’Anna、Nick C. Huntington-Klein、Carlos Cinelli、Joshua Angrist 和Scott Cunningham。没有你们的善意反馈,作者可能早就放弃了。

很荣幸从事这样有许多相互帮助和相互关心的研究人员的工作。非常感谢Kaspar Wüthrich 耐心回答作者关于合成控制法的问题并审阅了合成控制t 测试章节。非常感谢Jinglong Zhao 在非传统试验设计方面的贡献,回答作者关于合成控制法和折返试验设计。感谢Peter Hull,在线性回归方面造诣颇深。

感谢所有与作者交往过的学者们,他们让作者对因果性有了更深刻的认识:Pedro H. C. Sant’Anna、Carlos Cinelli、Nick C.Huntington-Klein 和Peter Hull。另外,感谢Nubank 公司的朋友和同事们,他们总是愿意与作者讨论最Z有趣最Z有挑战性的因果推断问题:Arthur Goes、Nilo Kruchelski、Pedro Igor、Tatyana Zabanova、Diandra Kubo、Pedro Bair?o、Fernanda Leal、Murilo Nicolau、Mariana Sanches、Victor Dalla、Euclides Filho、Guilherme Peixoto、Silvano Filho、Alexandre Floriano、Ana Ortega、Hector Lira、Lucas Estevam、Risk Slangen 和André Segalla。

感谢Edigar Antonio Lutero Alves 审读全书并给予了精准的评论反馈,他是父亲也是榜样。

感谢Elis Jord?o Stropa 始终与作者同在并支持作者的近乎疯狂的想法和项目。感谢她在本书写作期间特别是Francisco 出生后一如既往的耐心。她是位了不起的妻子和母亲。



产品特色

这是一本关于因果推断的通俗易懂的入门书,重点介绍了Python 数据分析社区非常熟悉的工具和理论方法。

编辑推荐

编辑推荐

多花一美元的在线营销能吸引多少买家?哪些顾客有了折扣优惠券才会购物?如何确定最Z优定价策略?因果推断是确定您手中拥有的杠杆如何影响您想要追求的业务指标的最Z好办法。这只需要几行Python代码而已。

本书作者阐述了因果推断在估计影响和效应方面尚未开发的巨大潜力。管理者、数据科学家,以及业务分析人员将学习到A/B测试、线性回归、倾向性评分、合成控制、双重差分等经典因果推断方法和基于机器学习的异质效应估计等新进展。每种方法都用行业应用示例加以说明。


专家推荐

“Matheus撰写了这本教你如何摆脱玩具模型,掌握处理现实数据和解决重要实际问题最Z新方法的最Z好的书。”

——Sean J. Taylor,

数据分析公司Motif Analytics

首席科学家

“本书是因果推断的入门书,重点介绍了Python数据分析社区非常熟悉的工具和环境。”

——Nick Huntington-Klein,

经济学教授,

The Effect: An Introduction to Research Design and Causality作者


内容简介

本书将帮助读者:学习如何理解因果推断的基本概念。将业务问题定义为因果推断问题。理解偏差如何干扰因果推断。学习因果效应如何能够因人而异。将相同客户不同时间的观测用于因果推断。在随机化不可行的时候利用地理和回溯实验。检验非遵从性偏差和效应稀释。

作者简介

Matheus Facure是Nubank的经济学家和高级数据科学家。他在很多商务场景成功应用了因果推断技术,从自动实时信用卡决策到交叉邮件与营销预算优化。

内页插图

精彩书评

  ★“Matheus撰写了这本教你如何摆脱玩具模型,掌握处理现实数据和解决重要实际问题新方法的好书。
  ——Sean J.Taylor,数据分析公司Motif Analytics,首席科学家
  
  ★“本书是因果推断的入门书,重点介绍了Python数据分析社区非常熟悉的工具和环境。”
  ——Nick Huntington-Klein,经济学教授,The Effect:An Introduction to Research Design and Cousality作者

目录

目录

前言 .1

第一部分 基础知识 . 11

第1 章 因果推断导论 .13

1.1 什么是因果推断 13

1.2 为什么要做因果推断 . 14

1.3 机器学习与因果推断 . 15

1.4 关联关系与因果关系 . 16

1.4.1 处理和结果 17

1.4.2 因果推断的基本问题 18

1.4.3 因果模型. 19

1.4.4 干预 21

1.4.5 个体处理效应 23

1.4.6 潜在结果. 23

1.4.7 一致性假设与稳定单元处理值假设 24

1.4.8 关注的因果量 25

1.4.9 因果量示例 27

1.5 偏差 30

1.5.1 偏差方程. 31

1.5.2 偏差可视化 33

1.6 识别处理效应 35

1.6.1 独立性假设 37

1.6.2 基于随机化的识别 . 37

1.7 本章小结 41

第2 章 随机试验与统计学 43

2.1 随机化的强制独立性 . 43

2.2 A/B 测试示例 . 45

2.3 理想试验 49

2.4 最危险的方程 50

2.5 估计的标准误差 54

2.6 置信区间 55

2.7 假设检验 63

2.7.1 零假设 . 64

2.7.2 检验统计量 66

2.8 p 值 . 67

2.9 功效 69

2.10 样本量计算 71

2.11 本章小结 73

第3 章 图形化因果模型 74

3.1 关于因果关系的思考 . 74

3.1.1 因果关系的可视化 . 76

3.1.2 咨询顾问聘用示例 . 78

3.2 图形化因果模型的速成课 80

3.2.1 因果链 . 80

3.2.2 因果分叉. 82

3.2.3 因果失范或因果对撞 83

3.2.4 关联流备忘单 85

3.2.5 因果图查询 86

3.3 识别的再认识 89

3.4 CIA 与调整公式 91

3.5 正值假设 92

3.6 利用数据的因果识别示例 93

3.7 混淆偏差 95

3.7.1 替代混淆. 96

3.7.2 再论随机化 97

3.8 选择偏差 98

3.8.1 限定对撞因子 99

3.8.2 调整选择偏差 103

3.8.3 限定中介变量 106

3.9 本章小结 107

第二部分 偏差调整 111

第4 章 线性回归的不合理有效性 113

4.1 线性回归 113

4.1.1 为什么需要模型 114

4.1.2 A/B 测试中的回归 116

4.1.3 回归调整 118

4.2 回归理论 122

4.2.1 单变量线性回归 124

4.2.2 多变量线性回归 124

4.3 弗里希- 沃- 洛弗尔定理和正交化 125

4.3.1 去偏步骤 126

4.3.2 去噪步骤 129

4.3.3 回归估计的标准误差 . 129

4.3.4 最终结果模型 131

4.3.5 FWL 总结 132

4.4 作为结果模型的回归 134

4.5 正值性和外推 . 136

4.6 线性回归的非线性 137

4.6.1 处理的线性化 139

4.6.2 非线性FWL 和去偏 141

4.7 虚拟变量的回归 142

4.7.1 条件随机实验 143

4.7.2 虚拟变量 145

4.7.3 饱和回归模型 148

4.7.4 方差加权平均回归 150

4.7.5 去义和固定效应 152

4.8 遗漏变量偏差:回归视角下的混杂因子 155

4.9 中性控制 157

4.9.1 噪声诱导控制 158

4.9.2 特征选择:偏差与方差的权衡 . 160

4.10 本章小结 . 162

第5 章 倾向性评分 163

5.1 管理培训的影响 163

5.2 基于回归的调整 165

5.3 倾向性评分基础 167

5.3.1 倾向性得分估计 168

5.3.2 倾向性得分和正交化 . 169

5.3.3 倾向性得分匹配 169

5.3.4 逆倾向性加权法 171

5.3.5 IPW 的方差 174

5.3.6 倾向性权重的稳定化 . 178

5.3.7 伪群体 180

5.3.8 选择偏差 181

5.3.9 偏差- 方差权衡 182

5.3.10 正值性 183

5.4 基于设计的识别与基于模型的识别 186

5.5 双重稳健估计 . 186

5.5.1 处理容易建模的示例 . 189

5.5.2 结果容易建模的示例 . 192

5.6 面向连续处理的广义倾向性得分 . 194

5.7 本章小结 201

第三部分 效应异质性与个性化.203

第6 章 效应异质性 205

6.1 从ATE 到CATE 206

6.2 为什么预测结果不是答案 . 207

6.3 利用回归估计CATE 210

6.4 评估CATE 预测结果 214

6.5 按模型分位数划分的效应 . 215

6.6 累积效应 220

6.7 累计增益 221

6.8 目标转换 225

6.9 预测模型适用于效应排序 . 226

6.9.1 边际递减收益 227

6.9.2 二元结果 227

6.10 用于决策的CATE 229

6.11 本章小结 . 233

第7 章 元学习器 235

7.1 用于离散性处理的元学习器 236

7.1.1 T 学习器 237

7.1.2 X 学习器 241

7.2 用于连续性处理的元学习器 246

7.2.1 S 学习器 247

7.2.2 双重/ 去偏机器学习 252

7.3 本章小结 260

第四部分 面板数据 263

第8 章 双重差分法 265

8.1 面板数据 266

8.2 经典双重差分法 269

8.2.1 带有结果增长的双重差分法 271

8.2.2 带最小二乘法的双重差分法 273

8.2.3 带有固定效应的双重差分法 274

8.2.4 多时间段 275

8.2.5 推断分析 277

8.3 识别假设 280

8.3.1 平行趋势 280

8.3.2 无预期假设和稳定单元处理效应假设 283

8.3.3 严格外生性假设 283

8.3.4 无时间变化混杂因子 . 284

8.3.5 无反馈 286

8.3.6 无结转效应和无滞后因变量 286

8.3.7 效应时变性 . 287

8.3.8 带有协变量的双重差分法 289

8.4 双重稳健的双重差分法 . 293

8.4.1 倾向性评分模型 293

8.4.2 结果增量模型 293

8.4.3 整合所有要素 294

8.5 交错采用 296

8.5.1 时变的效应 . 302

8.5.2 协变量 306

8.6 本章小结 307

第9 章 合成控制 309

9.1 在线营销数据集 310

9.2 矩阵表示 313

9.3 作为水平回归的合成控制 . 315

9.4 标准合成控制 . 319

9.5 带有协变量的合成控制 . 322

9.6 去偏合成控制 . 327

9.7 推断分析 331

9.8 合成双重差分法 334

9.8.1 双重差分法回顾 334

9.8.2 合成控制回顾 335

9.8.3 估计时间权重 337

9.8.4 合成控制与双重差分法 340

9.9 本章小结 342

第五部分 替代实验设计 345

第10 章 地理与回溯实验 347

10.1 地理实验 . 348

10.2 合成控制设计 349

10.2.1 处理单元的随机集合 352

10.2.2 随机搜索 355

10.3 回溯实验 . 358

10.3.1 序列的潜在结果 360

10.3.2 估计延滞效应的阶 361

10.3.3 基于设计的估计 363

10.3.4 最优回溯设计 . 368

10.3.5 稳健方差 371

10.4 本章小结 . 374

第11 章 非遵从性和工具变量 376

11.1 非遵从性 . 376

11.2 扩展潜在结果 379

11.3 工具变量识别假设 . 381

11.4 第一阶段 . 384

11.5 简化形式 . 385

11.6 两阶段最小二乘法 . 386

11.7 标准误差 . 387

11.8 额外的控制变量和工具变量 . 389

11.8.1 手工实现两阶段最小二乘法 391

11.8.2 矩阵实现 392

11.9 断点设计 . 394

11.9.1 断点设计假设 . 395

11.9.2 意向处理效应 . 397

11.9.3 工具变量估计 . 398

11.9.4 簇聚 . 399

11.10 本章小结 400

第12 章 展望 . 403

12.1 因果发现 . 404

12.2 连续决策 . 404

12.3 因果强化学习 405

12.4 因果预测 . 406

12.5 域自适应 . 406

12.6 结束语 . 407


前言/序言

前言

想象自己是一名刚刚步入快速发展、前途光明的数据科学领域的新手。虽然尚未精通机器学习知识,但你完全相信自己有这个能力。你可能已经学完了几门该领域的线上课程,甚至在Kaggle 平台的数据挖掘和预测竞赛中取得过不错的成绩。你或许正在准备甚至迫不及待地运用所掌握的知识去解决实际问题。一切顺风顺水。

领导还会问:“嗨,请算算我们实际取得了多少新增的客户付费营销份额。刚开始的时候,的确我们看到有些客户来自付费营销渠道,但是看上去在免费应用方面却有下降。我们认为,有些来自付费营销渠道的客户即使不付费也会来”。这就意味着一个新的挑战,但是,这个挑战是什么呢?你如何知道没有付费营销将会发生什么呢?或许,在营销活动开始前后,你会比较免费应用和付费应用的总数。但是,在一个快速发展的公司里,你应该如何才能知道营销活动改变不了什么(见图2)?

再换个话题,将自己当作一名业内大咖的风险分析师,刚受雇于一家贷款公司。首要任务是完善该公司的信用风险模型。目标是建立一个自动决策系统,用于评估客户信誉(为客户担保)并决定公司可以为客户提供的贷款额度。当然,系统的错误将会导致严重的代价,特别是如果给出的信贷额度过高的话。

这样的决策系统,关键在于明确信贷额度对客户违约可能性的影响程度。客户能否管理大额信贷?是否具备偿还能力?是否会陷入过度支出和难以控制的债务危机?为了把握这些动向,你首先应该根据给出的贷款额度绘制信贷平均违约率曲线。出乎意料的是,数据显示出非预期的结果,如图3 所示。信用卡额度与信贷违约率看上去呈反比例关系。如何实现提高信贷额度而又能降低信贷违约风险呢?有理由怀疑,你会去跟其他分析师交流这个问题。答案很简单也不意外:贷款公司将向违约概率小的客户提供更多信贷。因此,提高信贷额度并不能降低违约风险,事实正好相反。低违约风险会提高信贷额度。尽管如此,还是没能解决最Z早的问题:如何根据数据建立信贷风险与信贷额度的关系模型。原本也并不指望系统知道更大的信贷额度意味着违约风险的降低。而且,仅仅为了看看结果如何而想当然地在A/B 测试中随机确定信贷额度,必定是徒劳无功的,因为错误的信贷额度决策,代价高昂。

上述问题的共同点是,需要知道改变能够控制的事情(营销预算和信贷额度)如何影响希望得到的商务结果(客户应用和违约风险)。影响或效果评价长期以来是现代科学的重要支柱,但直到最Z近,在将这些工具手段加以体系化,形成所谓“因果推断”领域的方面,才取得了重大进展。而机器学习的进展以及对实现基于数据的决策自动化的普遍意愿也将因果推断引入工业部门和公共机构。然而,因果推断工具尚未广泛被决策者或数据科学家们了解。

为此,作者曾经写过一本名为《勇敢者与求真者的因果推断》(CausalInference for the Brave and True)的在线图书。该书以严谨而又不失轻松的方式介绍了因果推断的传统工具和最Z新进展,而且全部附带开源的Python 软件。本书作者试图再进一步,从应用角度论述所有相关内容,不仅更新了示例,而且进行了更直观的解释说明。作者希望本书能够成为解决所有基于数据的决策问题的起点。

前提要求

本书是利用Python 实现的因果推断的导论,但并不是一般的入门书。之所以是导论,是因为本书聚焦于应用实践,而不是关于因果推断的严谨的证明和定理。而且,本书作者更倾向于给出简单而直观的解释说明,而不是完整的复杂的论述。之所以又不是一般的入门书,是因为作者希望你已经具备关于机器学习、统计学和Python 编程的知识。内容并不高深,但本书还是会涉及你应该已掌握的一些概念和术语。

例如,书中会有如下的文本描述:

首先需要处理的是,连续型变量处处使得P(T=t)=0。原因在于,概率是密度曲线下面积,而单点的面积总为零。为了避免这种情况,可以用条件密度f(T|X) 代替条件概率P(T=t|X)。

本书并不过多介绍什么是密度以及为什么密度不同于概率。再举一个关于机器学习的例子:

你也可以用机器学习模型估计倾向性评分(propensity score),但需加倍小心。第d一,要确保机器学习模型能够输出校准过的概率预测。第二,需要采用折外预测(out-of-fold predictions)以避免过拟合所产生的偏差。这里仍然不解释机器学习模型是什么,也不解释机器学习模型输出校准过的预测是什么意思,过拟合是什么,折外预测又是什么。因为这些都是数据科学的基本概念,你应自行掌握。

建议你阅读本书之前具备以下知识:

? Python 基础知识,包括 pandas、NumPy、Matplotlib、scikit-learn 等最Z常用的数据科学库。即使你的专业是经济学,也不必担心会不会用好那些非常繁杂的代码。你只需要掌握基础知识就行。

? 统计学基础概念,例如分布、概率、假设检验、回归、噪声、期待值、标准差以及独立性。第2 章将对统计学做一回顾,有助于新手学习。

? 数据科学基础概念,例如机器学习模型、交叉验证、过拟合以及一些最Z常用的机器学习模型(梯度提升、决策树、线性回归、逻辑回归)。

? 高等数学知识,例如函数、对数、根、矩阵、向量,以及导数和积分等大学数学知识。

本书的主要对象你是各行各业的数据科学家。如果你是这样的人,那么肯定具备了前面提到的先决知识。而且请谨记,这样的受众很多,各自拥有很多不同的技能。因此,本书将提供一些面向高水平读者的备注、段落或章节。无需担心不理解本书的某些内容,你仍能够从书中受益匪浅。有时掌握了一些基础知识之后还可以再次阅读,重新认识。

内容概要

第d一部分介绍因果推断的基本概念。第d1 章介绍因果推断的关键概念,这些概念用于说明降价的效应。第2 章讨论A/B 测试(也称随机对照试验)的重要性,它不仅是决策工具,也是用于对标其他因果推断工具的黄金标准。该章也将回顾一些统计学概念。第3 章偏理论介绍,包括因果识别与图模型。该方法(按字面意思)确定关于因果过程的假设并明确如何理清因果关系。

学完第d一部分的内容后,你应该具备了因果推断思考的基础。

第二部分介绍从关联性理清因果性的两种方法:线性回归与倾向加权。第4章介绍线性回归,但以不同于为大多数数据科学家所熟悉的角度。将会了解到一种重要的偏差消除方法——正交化。第5 章介绍倾向性评分与双重鲁棒估计。

第三部分在第二部分的基础上介绍机器学习和大数据技术。因果推断可被视为个性化决策工具。通过食品配送服务应用示例,尝试了解应该给哪些客户提供折扣券以便提升他们的参与度,也了解哪些客户并不需要这些优惠。第6章介绍异质治疗效应问题。第7 章介绍机器学习与因果推断交叉融合的新进展。该章将学习T- 学习器、X- 学习器、S- 学习器,以及双重/ 去偏机器学习等方法,都结合个性化治疗问题加以阐述。

第四部分考察引入时间维度的因果推断。有时人们拥有相同客户或市场多个时间段的记录数据,汇聚称作面板数据集。将学习如何利用面板去发现付费营销的实际影响,即使无法随机确定谁看到相关的广告。第8 章将介绍双重差分模型及其相关最Z新进展。第9 章介绍合成控制(及其变种),也是结合市场促销影响理解的问题。

第五部分详细介绍不考虑随机性情况的替代实验设计方法。第d10 章介绍旨在找到治疗区域和控制区域的地理实验法和用于分析部位有限而又想确定治疗效果的回溯实验法。后者针对相同部位反复治疗和中止治疗。第d11 章介绍非遵从实验和工具变量法。该章也简单介绍不连续设计(discontinuity design,或断点设计)。

排版约定

本书采用以下排版约定。

斜体(Italic)

表示新术语、URL、电子邮件地址、文件名和文件扩展名。

等宽字体(Constant Width)

表示程序清单,在段落内表示程序元素,例如变量、函数名称、数据库、数据类型、环境变量、语句和关键字。

粗体等宽字体(Constant width bold)

表示应由用户原封不动输入的命令或其他文本。

斜体等宽字体(Constant width italic)

表示应该替换成用户提供值的文本,或者由上下文决定的值。

代码示例使用

本书的补充材料, 包括代码示例、练习等, 可从https://github.com/matheusfacure/causal-inference-in-python-code 处下载利用。

使用代码示例,如遇到技术性问题,请反馈给邮箱support@oreilly.com。

本书为你开展工作助一臂之力。通常情况下,如果代码示例随本书提供,那么你可以将其用于自己的程序和文档中。你不必联系我们以获得许可,除非你要复用大量的代码。例如,编写一段使用了本书几块代码段的程序无需获得许可。但是,出售或传播O’Reilly 书籍的代码示例则必须申请许可。引用本书知识回答问题以及引用代码示例不需要许可。将本书大量代码示例编入产品说明书则需要得到许可。

我们欢迎(但不是强制要求)标明本书信息。这些信息通常包括书名、出版商以及ISBN 书号。例如,“Causal Inference in Python,Matheus Facure(O’Reilly). Copyright 2023 Matheus Facure Alves, 978-1-098-14025-0”。

如果你觉得代码示例使用不合理或者没被许可,请通过邮件 permissions@oreilly.com 联系我们。

O’Reilly 在线学习平台(O’Reilly Online Learning)

近40 年来,O’Reilly Media 致力于提供技术和商业培训、知识和卓越见解,来帮助众多公司取得成功。

我们拥有独一无二的专家和革新者组成的庞大网络,他们通过图书、文章、会议和我们的在线学习平台分享他们的知识和经验。O’Reilly 的在线学习平台允许你按需访问现场培训课程、深入的学习路径、交互式编程环境,以及O’Reilly 和200 多家其他出版商提供的大量文本和视频资源。有关的更多信息,请访问http://oreilly.com。

联系我们

任何有关本书的意见或疑问,请按照以下地址联系出版社。

美国:

O’Reilly Media, Inc.

1005 Gravenstein Highway North

Sebastopol, CA 95472

中国:

北京市西城区西直门南大街2号成铭大厦C座807室(100035)

奥莱利技术咨询(北京)有限公司

我们为本书专设网页,在上面列有勘误信息、示例以及其他信息。你可以访问网页,地址为https://oreil.ly/causal-inference-in-python。

关于本书与课程的新闻与信息,请访问https://oreilly.com。

我们的LinkedIn:https://linkedin.com/company/oreilly-media。

我们的Twitter:https://twitter.com/oreillymedia。

我们的YouTube:https://youtube.com/oreillymedia。

致谢

首先,感谢无所不能的编辑Virginia Wilson。感谢你的反应和耐心,没有你,可能也就无法成就本书。其次,感谢Nicole Butterfield 以及O’Reilly 的整个团队,支持我完成我的这本处女作并给予充分的信任。特别感谢Danny Elfanbaum 在写作过程中帮我解决了相关技术问题。

作者感谢所有技术评阅人,他们付出宝贵的时间审阅了本书。感谢Laurence Wong 为本书提供了非常详细的评论以及指出完善之处。感谢Adrian Keister进行全书审阅后给出了非常中肯的意见,而且还运行了代码并提出了非常重要的修改建议。正是有了这些反馈。本书得到了明显的改进。感谢Jorge Reyes 千方百计地发现技术描述中难以发现的错误,既坦诚指出问题又不吝谬赞。感谢Roni Kobrosly 给予的提高本书易读性和趣味性的建议。感谢Subhasish Misra 的有益反馈,特别是关于第5 章的反馈意见。感谢Shawhin Talebi 建议增加一些密切相关的话题内容。

感谢所有给予内容相关反馈的朋友。感谢Guilherme Jardim Duarte 帮忙审阅Pearlian causality 相关内容,特别是第3 章。感谢Henrique Lopes 和Juliano Garcia 帮忙审阅因果推断与商务应用的相关内容,第4 章、第6 章和第7 章因此得到了很大的改进。感谢Raphael Bruce 关于第4 章的直率而准确的意见反馈。感谢Luis Moneda 给予的专业支持、关于因果性的多次讨论,以及帮忙审阅第d1 章。统计学是门难度大的学科,感谢Denis Reis 审阅第2 章,从而让作者如释重负。

技术类书籍的写作有时是孤勇的行为,正因为如此,本人为能得到很多令人高兴和尊重的专业人士的支持帮助而感到幸运万分。他们是Sean J. Taylor、Pedro H. C. Sant’Anna、Nick C. Huntington-Klein、Carlos Cinelli、Joshua Angrist 和Scott Cunningham。没有你们的善意反馈,作者可能早就放弃了。

很荣幸从事这样有许多相互帮助和相互关心的研究人员的工作。非常感谢Kaspar Wüthrich 耐心回答作者关于合成控制法的问题并审阅了合成控制t 测试章节。非常感谢Jinglong Zhao 在非传统试验设计方面的贡献,回答作者关于合成控制法和折返试验设计。感谢Peter Hull,在线性回归方面造诣颇深。

感谢所有与作者交往过的学者们,他们让作者对因果性有了更深刻的认识:Pedro H. C. Sant’Anna、Carlos Cinelli、Nick C.Huntington-Klein 和Peter Hull。另外,感谢Nubank 公司的朋友和同事们,他们总是愿意与作者讨论最Z有趣最Z有挑战性的因果推断问题:Arthur Goes、Nilo Kruchelski、Pedro Igor、Tatyana Zabanova、Diandra Kubo、Pedro Bair?o、Fernanda Leal、Murilo Nicolau、Mariana Sanches、Victor Dalla、Euclides Filho、Guilherme Peixoto、Silvano Filho、Alexandre Floriano、Ana Ortega、Hector Lira、Lucas Estevam、Risk Slangen 和André Segalla。

感谢Edigar Antonio Lutero Alves 审读全书并给予了精准的评论反馈,他是父亲也是榜样。

感谢Elis Jord?o Stropa 始终与作者同在并支持作者的近乎疯狂的想法和项目。感谢她在本书写作期间特别是Francisco 出生后一如既往的耐心。她是位了不起的妻子和母亲。