1、合成控制法(一)经济学家为何热衷反事实经济学家常要评估某政策或事件的效应。此政策可能实施于某国家或地区(省、州或城市)。最简单(天真)的方法是考察政策实施前后的时间序列,看所关心的结果(outcome of interest)如何变化。但此结果还可能受其原有变化趋势的影响,或其他同时发生的混淆性事件(confounder)的作用。为此,常使用“鲁宾的反事实框架”(Rubins counterfactual framework),即假想该地区如未受政策干预将会怎样,并与事实上受到干预的实际数据进行对比,二者之差即为“处理效应”(treatment effect,借用医学术语)。困难之处在于,我们
2、无法观测到“该地区如未受政策干预将会怎样”(反事实)。选择控制组是门艺术常用解决方法是,寻找适当的控制组(control group),即在各方面都与受干预地区相似却未受干预的其他地区,以作为处理组(treated group,即受到干预的地区)的反事实替身(counterfactuals)。但通常不易找到最理想的控制地区(control region),在各方面都接近于处理地区(treated region )。比如,要考察仅在北京实施的某政策效果,自然会想到以上海作为控制地区;但上海毕竟与北京不完全相同。或可用其他一线城市(上海、广州、深圳)构成北京的控制组,比较上海、广州、深圳与北京在政
3、策实施前后的差别,此方法也称“比较案例研究”(comparative case studies)。但如何选择控制组通常存在主观随意性(ambiguity),而上海、广州、深圳与北京的相似度也不尽相同。为此,Abadie and Gardeazabal (2003)提出“合成控制法” (Synthetic Control Method)。其基本思想是,虽然无法找到北京的最佳控制地区,但通常可对中国的若干大城市进行适当的线性组合,以构造一个更为优秀的“合成控制地区”(synthetic control region),并将“真实北京”与“合成北京”进行对比,故名“合成控制法”。合成控制法的一大优势
4、是,可以根据数据(data-driven)来选择线性组合的最优权重,避免了研究者主观选择控制组的随意性。西班牙恐怖活动引发的计量方法Abadie and Gardeazabal (2003)的初衷是以合成控制法研究西班牙巴斯克地区(Basque country)恐怖活动的经济成本。MIT 经济系教授 Alberto Abadie(此前长期任教于哈佛大学肯尼迪学院),正是来自于巴斯克地区,一个毗邻法国的西班牙自治地区。巴斯克人长期居住于巴斯克地区,拥有独特的语言与文化,在历史上多次成功对抗强敌入侵。在 1970 年代初,巴斯克地区的人均 GDP 在西班牙 17 个地区中排第三。之后,由于民族独立
5、的诉求未获满足,从 1975 年开始,巴斯克地区陷入有组织的恐怖活动之中。恐怖活动重创巴斯克经济,至 1990 年代末,巴斯克地区的人均 GDP 在西班牙排名降为第六。然而,70 年代末至 80 年代初,西班牙整体经济也下行,故不易区分恐怖活动的单独效应。而且,巴斯克地区在恐怖活动之前的经济增长潜力显然与西班牙其他地区也不尽相同。为此,Abadie and Gardeazabal (2003)使用西班牙其他地区的线性组合来构造合成的控制地区,并使得合成控制地区的经济特征与 60 年代末恐怖活动爆发前的巴斯克地区尽可能相似,然后把此后“合成巴斯克地区”(synthetic Basques cou
6、ntry)的人均 GDP 演化与“真实巴斯克地区”(actual Basque country)进行对比。如何构造合成控制具体而言,假设共有(1+J )个地区,其中第 1 个地区为受到恐怖活动冲击的巴斯克地区,而其余 J 个西班牙地区未受冲击(在此 J = 16),构成潜在的控制组,称为“donor pool”(原意为“器官捐献库”,再次借用医学术语)。一个潜在假定是,恐怖活动仅影响巴斯克地区,而未波及西班牙的其他地区(事实上恐怖活动也主要集中于巴斯克地区)。将合成控制地区的权重记为以下 J 维列向量:其中,w2 表示第 2 个地区在合成巴斯克地区所占的权重,以此类推;所有权重皆非负,且权重之
7、和为 1。w 的不同取值即构成不同的合成控制地区,简称“合成控制”(synthetic control)。在此研究中,被解释变量为人均 GDP,记为 y 。影响 y 的解释变量或预测变量(predictors)包括投资率、人口密度、产业结构、人力资本等,详见下表。在巴斯克地区爆发恐怖活动之前,记其各预测变量的平均值为向量 x1 (K 1 维列向量,下标 1 表示“treated region”),即上表第(1)列的数值(除了人均 GDP)。将西班牙其他地区相应预测变量的平均值记为矩阵 X0(K J 维矩阵,下标 0 表示“control region”),其中第 j 列为第 j 个地区的相应取
8、值。显然,我们希望选择权重 w,使得 X0w 尽可能地接近于 x1,即经过加权之后,合成控制地区的经济特征应尽量接近处理地区。为度量此距离,可使用二次型 (类似于欧几里得空间中两点之间的距离)。由于 x1 中的每个预测变量对于 y 的预测能力有大小之别,应在距离函数中享有不同的权重,故考虑以下有约束的最小化问题:其中,V 为 ( K K ) 维对角矩阵,其对角线元素均为非负权重,反映相应的预测变量对于人均 GDP 的相对重要性。此最小化问题的目标函数是二次函数,为“二次规划”(quadratic programming)问题,一般进行数值求解。记此约束最小化问题的最优解为 w*(V);显然,它
9、依赖于对角矩阵 V。进一步,选择最优的 V,使得在恐怖活动全面爆发之前,合成巴斯克地区的人均 GDP与真实巴斯克地区尽量接近。具体而言,记 z1 为 (10 1) 维列向量,包含巴斯克地区在 1960-1969 年间的人均 GDP;记 Z0 为 (10 J ) 维矩阵,其中每列为相应控制地区在1960-1969 年间的人均 GDP。用 Z0w*(V) 来预测 z1,然后选择 V,以最小化“均方预测误差 ”(Mean Squared Prediction Error,简记 MSPE),即将每期的预测误差平方后再求各期的平均: 求解此最小化问题,可得构成合成巴斯克地区的最优权重,w* = w*(V
10、*)。经过计算,Abadie and Gardeazabal (2003)发现,只有两个地区的权重为正,即加泰罗尼亚(Catalonia,权重 0.8508)与马德里(Madrid,权重 0.1492),而其他地区的权重均为 0。直观上,Catalonia 与 Madrid 的经济特征也与巴斯克地区最为相似。 合成控制法的“效果图得到合成巴斯克地区的权重之后,即可计算其人均 GDP 在样本期间的演化过程。记巴斯克地区在样本期间(假设为 T 期)的人均 GDP 为向量 y1(T 1 维列向量)。记其他地区在样本期间的人均 GDP 为矩阵 Y0(T J 维矩阵),其中每列为相应地区的人均GDP。由
11、此可得合成巴斯克地区的人均 GDP 序列 y1* = Y0 w*。最直观的方法是将 y1 与合成控制的 y1* 画时间趋势图,参见下图。从上图可知,在 1975 年大规模恐怖活动爆发之前,真实巴斯克(实线)与合成巴斯克(虚线)的人均 GDP 十分接近。二者在 1975 年后即开始分岔;而在 1980 与 1990 年代,真实巴斯克的人均 GDP 比合成巴斯克低约 10%。换言之,巴斯克恐怖活动的经济成本是损失了约 10%的人均 GDP反事实的分析框架假设共有 (1+J )个地区,其中第 1 个地区受到政策干预(如有多个地区受到干预,可合并为一个大地区;或分别进行估计),而其余 J 个地区未受冲
12、击(构成 donor pool )。记 yit 为地区 i 在第 t 期实际观测到的结果变量,其中 i = 1, . , J + 1,而 t = 1, . , T 。记 yitN 为地区 i 在第 t 期如果未受政策干预的结果变量(上标 N 表示未受干预)。记 T0 为政策干预开始之前(preintervention)的时期数,且 1 T0 T0 时的处理效应:在上式中,只要估计 y1tN 即可。引入因子模型假设 yitN 由以下 “因子模型 ”(factor model )所决定: 其中,上式右边第(1)项 t 为时间固定效应 (time fixed effects)。第(2)项的 zi 为
13、可观测的向量(不受政策干预影响,也不随时间而变;比如,干预之前的预测变量之平均值)。zi 对于 yitN 的作用随时间而变,故 zi 的系数 t (未知参数)带时间下标 t 。第(3)项为不可观测的 “互动固定效应”(Interactive Fixed Effects),即个体固定效应 ui 与时间固定效应 t 的乘积(Bai, 2009)。第(4)项 it 为随机扰动项。根据“因子分析”(factor analysis)的术语,称第(3)项中不可观测的 t 为 “共同因子” (common factors),可理解为不同地区所面临的共同冲击( common shocks),比如它有两个分量,
14、分别表示技术冲击(technological shocks)与金融危机(financial crises);而各地区对于共同冲击 t 的反应并不相同,以 ui 来表示,称为 “因子载荷”(factor loading)。如果 t 是一维且为常数,则上式简化为“双向固定效应模型”(two-way fixed effects model),包含个体固定效应 ui 与时间固定效应 t 。由此可知,上式是双向固定效应模型的推广,它允许不同个体对于共同冲击的异质性反应(heterogeneous impacts)。合成控制的误差记构造合成控制的权重向量为:其中,w2 表示第 2 个地区在合成控制所占的权
15、重,以此类推;所有权重皆为非负,且权重之和为 1。对于任意给定的 w,可将合成控制地区的结果变量写为:将 y1tN 减去上式可得:显然,如果能找到 w,使得上式右边的(1) 式与(2)式均为 0,则上式的期望为 0,故合成控制为 y1tN 的无偏估计。但(2)式中的 ui 不可观测,故不可行。Abadie et al. (2010)证明,如果能找到 w 使得即根据可观测的经济特征与干预前结果变量所选择的合成控制 w,也会使得合成控制的不可观测特征接近于处理地区。反之,如果无法找到 w,使得合成控制能很好地复制(reproduce)处理地区的经济特征以及干预之前的结果变量,则不建议使用合成控制法
16、。合成控制法的基本性质如果合成控制 w* 能很好地复制处理地区的经济特征与干预前的结果变量(关于如何计算 w*,参见首篇合成控制法(一),则可定义如下合成控制估计量(Synthetic Control Estimator):Abadie et al. (2010)证明,在一定的正则条件下,如果合成控制 w* 能完全地复制(perfectly reproduce)处理地区的经济特征与干预前的结果变量,则当干预前期数 T0 趋向无穷大时,合成控制估计量是渐近无偏(asymptotically unbiased) 。反之,如果合成控制 w* 只是不完全地复制(imperfectly reproduc
17、e)处理地区的经济特征与干预前的结果变量(更为常见的情形),则合成控制估计量将是渐近有偏的。此偏差被称为 “内插偏差”(interpolation bias),因为使用内插法构造的合成控制并不是处理地区的完美的反事实替身。因此,在使用合成控制法时,一个重要的模型设定检验就是,考察合成控制的经济特征与干预前的结果变量是否与处理地区足够接近。合成控制法的 Stata 命令Abadie et al. (2010)还提供了合成控制法的 Stata 程序 synth,使得估计十分方便。打开Stata 后,可输入以下命令:. ssc install synth, replace (下载并安装 synth
18、程序)其中,选择项 “replace” 表示如有此命令更新版本,可以新命令覆盖旧命令。命令 synth 的基本句型为:synth y x1 x2 x3 , trunit(#) trperiod(#) counit(numlist) xperiod(numlist) mspeperiod() figure resultsperiod() nested allopt keep(filename) 其中,“y” 为结果变量(outcome variable),“x1 x2 x3” 为预测变量(predictors)。必选项 “trunit(#)” 用于指定处理地区(trunit 表示 treated
19、 unit)。必选项 “trperiod(#)” 用于指定政策干预开始的时期(trperiod 表示 treated period)。选择项 “counit(numlist)” 用于指定潜在的控制地区(即 donor pool,其中 counit 表示 control units),默认为数据集中的除处理地区以外的所有地区。选择项 “xperiod(numlist)” 用于指定将预测变量(predictors)进行平均的期间,默认为政策干预开始之前的所有时期(the entire pre-intervention period)。选择项 “mspeperiod()” 用于指定最小化均方预测误差
20、(MSPE)的时期,默认为政策干预开始之前的所有时期。选择项 “figure” 表示将处理地区与合成控制的结果变量画时间趋势图,而选择项 “resultsperiod()” 用于指定此图的时间范围(默认为整个样本期间)。选择项 “nested” 表示使用嵌套的数值方法寻找最优的合成控制(推荐使用此选项),这比默认方法更费时间,但可能更精确。在使用选择项 “nested” 时,如果再加上选择项 “allopt”(即 “nested allopt”),则比单独使用 “nested” 还要费时间,但精确度可能更高。选择项 “keep(filename)” 将估计结果(比如,合成控制的权重、结果变量)
21、存为另一 Stata 数据集( filename.dta),以便进行后续计算。更多选择项,详见 help synth。加州控烟法有效吗?Abadie et al. (2010)随之将合成控制法应用于研究美国加州 1988 年第 99 号控烟法(Proposition 99)的效果。1988 年 11 月美国加州通过了当代美国最大规模的控烟法( anti-tobacco legislation),并于 1989 年 1 月开始生效。该法将加州的香烟消费税(cigarette excise tax)提高了每包 25 美分,将所得收入专项用于控烟的教育与媒体宣传,并引发了一系列关于室内清洁空气的地方
22、立法(local clean indoor-air ordinances),比如在餐馆、封闭工作场所等禁烟。面板数据集Abadie et al. (2010)使用的数据为美国 1970-2000 年的州际面板数据。由于Massachusetts, Arizona, Oregon 与 Florida 的州政府在 1989-2000 期间也引入了正式的控烟立法,无法作为控制地区,故将此四州从 donor pool 中去掉。外,还去掉了在 1989-2000 期间将香烟消费税提高了每包 50 美分及以上的州(Alaska, Hawaii, Maryland, Michigan, New Jersey
23、, New York, Washington),以及首都所在地华盛顿特区。最后剩下 38 个州作为潜在的控制地区(即使加上去掉的州,结果也依然稳健)。变量介绍该研究的结果变量为 cigsale(人均香烟消费量,包/ 年),预测变量包括 retprice(平均香烟零售价格)、lnincome(人均收入对数)、age15to24(15-24 岁人口所占总人口比重,年轻人为吸烟主力)、beer(人均啤酒消费量,烟酒不分家)。这些预测变量均为 1980-1988 年的州平均值,另外还使用 1975、1980 与 1988 年的人均香烟消费量作为三个额外的预测变量。另外,面板变量为 state(州),而
24、时间变量为 year(年)。Stata 操作Stata 程序 synth 自带了加州控烟法的数据集 smoking.dta。安装命令 synth 后,输入以下命令即可打开此数据集,设为面板数据,然后进行合成控制法的估计:. sysuse smoking (打开数据集). xtset state year (设为面板数据). synth cigsale retprice lnincome age15to24 beer cigsale(1975) cigsale(1980) cigsale(1988), trunit(3) trperiod(1989) xperiod(1980(1)1988) f
25、igure nested keep(smoking_synth)其中,“cigsale(1975) cigsale(1980) cigsale(1988)” 分别表示人均香烟消费在1975、1980 与 1988 年的取值。必选项 “trunit(3)” 表示第 3 个州(即加州)为处理地区;必选项 “trperiod(1989)”表示控烟法在 1989 年开始实施。选择项 “xperiod(1980(1)1988)” 表示将预测变量在 1980-1988 年期间进行平均,其中 “1980(1)1988” 表示始于 1980 年,以 1 年为间隔,而止于 1988 年;其效果等价于 “1980 1981 1982 1983 1984 1985 1986 1987 1988”,而前者的写法显然更为简洁。选择项 “keep(smoking_synth)” 将估计结果存为 Stata 数据集 smoking_synth.dta(放在 Stata 的当前工作路径)。估计结果如下。上表显示,大多数州的权重为 0,而只有以下五个州的权重为正,即 Colorado (0.161),