Skip to content

12.5 本章小结

合成控制法:当只有一个处理单位时的因果推断艺术


核心要点回顾

1. 适用场景

合成控制法是唯一专门为个处理单位场景设计的因果推断方法。当你的研究对象是一个国家、一个州、一个城市,而无法找到完美的单一对照时,SCM提供了系统化的解决方案。

2. 核心思想

用多个未处理单位的加权组合(凸组合)来构造"合成对照",使其在政策前尽可能模拟处理单位的特征和结果轨迹。

3. 关键优化

  • 外层:优化矩阵(特征权重)——决定不同协变量的相对重要性
  • 内层:优化向量(单位权重)——决定每个对照单位的贡献

4. 识别假设

政策前拟合好 政策后平行趋势成立(在因子模型框架下)

5. 统计推断

排列推断(安慰剂检验)+ RMSPE比率 + Fisher精确检验逻辑

6. vs DID

SCM是数据驱动的加权DID;传统DID的等权平均是SCM的特例


关键公式汇总

权重优化:

因果效应:

p值(Fisher检验):

其中


SCM vs 其他因果推断方法

方法处理单位数核心假设推断方式适用场景
SCM1个因子模型 + 政策前拟合排列推断国家/地区政策评估
DID多个平行趋势聚类标准误自然实验
RDD多个连续性局部多项式断点分配规则
IV多个排除性约束2SLS/GMM内生性问题
PSM/IPW多个条件独立性Bootstrap观察性数据匹配
Causal Forest多个条件独立性渐近正态异质性效应估计

扩展方法简介

1. Augmented Synthetic Control (Ben-Michael et al. 2021)

核心思想: 结合SCM和回归调整

估计量:

优势: 即使权重不完美,回归调整能提高精度

Python: augsynth(R有包,Python在开发)

2. Matrix Completion Methods (Athey et al. 2021)

设定: 将结果矩阵视为低秩矩阵+噪声

其中

估计: 用已观测元素恢复

优势: 更灵活,适用于多个处理单位

3. Synthetic DID (Arkhangelsky et al. 2021)

结合: SCM的加权 + DID的双重差分

估计量:

其中同时优化单位权重和时间权重

Python: synthdid


Python工具箱

工具用途安装
cvxopt二次规划(手动实现)pip install cvxopt
scipy.optimizeV矩阵优化pip install scipy
SparseSCSCM专用库pip install SparseSC
augsynth增强型SCMR包
synthdidSynthetic DIDR包 / Python

推荐阅读

必读

  1. Abadie, Diamond & Hainmueller (2010). "Synthetic Control Methods for Comparative Case Studies." JASA.
  2. Cunningham (2021). Causal Inference: The Mixtape, Chapter 10.
  3. Abadie (2021). "Using Synthetic Controls." JEL.

进阶

  1. Ferman, Pinto & Possebom (2020). "Cherry Picking with Synthetic Controls." JPAM.
  2. Arkhangelsky et al. (2021). "Synthetic Difference-in-Differences." AER.
  3. Ben-Michael, Feller & Rothstein (2021). "The Augmented Synthetic Control Method." JASA.

练习建议

练习1:基础实现

使用本章的Python代码,用模拟数据运行SCM并解读结果。

练习2:安慰剂检验

对模拟数据的所有对照单位做安慰剂检验,绘制安慰剂图,计算p值。

练习3:敏感性分析

实施Leave-one-out检验:逐一排除权重最大的对照单位,观察ATT如何变化。

练习4(挑战):真实数据

尝试使用SCM分析一个真实的政策案例(如德国统一对西德GDP的影响)。


恭喜完成Module 12 — 合成控制法!

你已经掌握了场景下因果推断的核心工具。SCM不仅在学术界有广泛应用(德国统一、Brexit、加州烟草税),在工业界的政策评估和商业决策中也越来越重要。


下一章: Module 13 异质性处理效应与Causal Forest — 从"平均效应"到"个性化因果推断"


<< 上一节:12.4 经典案例与Python实现

基于 MIT 许可证发布。内容版权归作者所有。