1. 项目概述当矩阵补全遇见贸易政策评估在实证经济学和政策评估领域我们常常面临一个经典难题如何准确地衡量一项政策比如一项新的贸易协定的真实效果传统的双重差分法Difference-in-Differences虽然强大但它依赖于一个关键假设——平行趋势即处理组和对照组在没有干预的情况下其发展趋势是平行的。然而在复杂的现实世界中尤其是在国际贸易这种受多重因素如全球经济周期、产业升级、地缘政治交织影响的场景下找到完美的对照组几乎是不可能的。更棘手的是当处理效应本身存在巨大异质性时一个单一的“平均处理效应”系数可能会掩盖丰富的信息甚至产生误导。这正是我最近在分析《全面经济贸易协定》CETA对法国出口影响时遇到的挑战。CETA是一个庞大的协定涉及数千种产品的关税削减和配额调整其影响不可能整齐划一。我需要一个方法既能处理高维产品×目的地×时间、极度稀疏大量零贸易流的贸易矩阵数据又能为每个受影响的贸易单元比如某个特定产品出口到加拿大构建一个合理的“反事实”情景——即如果没有CETA贸易流会是什么样子。这时矩阵补全Matrix Completion技术进入了视野。它本质上是一种机器学习方法最初用于推荐系统比如Netflix预测用户对未观看电影的评分。其核心思想是一个完整的数据矩阵往往具有低秩特性即其内在结构可以用少数几个潜在因子来解释。通过已知的观测值矩阵中的“O”部分我们可以学习这些潜在因子并以此预测缺失值矩阵中的“M”部分。在因果推断的语境下这些“缺失值”恰恰就是我们需要的反事实结果。这个方法的价值在于它非参数地利用了所有可用信息包括处理组处理前的数据、对照组处理前后的数据无需对数据生成过程做出严格的函数形式假设特别适合捕捉处理效应的异质性。2. 核心思路与技术框架拆解2.1 从贸易数据到因果问题定义“反事实”我们的目标是评估CETA对法国出口到加拿大的产品的影响。首先我们需要将现实问题转化为一个可计算的因果推断框架。1. 潜在结果框架对于每一个观测单元u在后续分析中u可能代表一个“产品-目的地”对或一个“企业-产品”对在时间t都存在两个潜在结果Y_ut(1)在t时期受到CETA影响处理下的观测结果实际贸易额或是否出口。Y_ut(0)在t时期未受CETA影响未处理下的潜在结果。2. 核心挑战对于在2017年及之后CETA生效后受影响的贸易流我们只能观测到Y_ut(1)而Y_ut(0)是永远无法观测的“反事实”。我们的任务就是为这些缺失的Y_ut(0)找到一个可靠的估计值Ŷ_ut(0)。3. 矩阵构建我们将所有观测数据组织成一个N × T的矩阵Y。其中行N代表观测单元如产品-目的地对列T代表时间点。矩阵中的每个单元格Y_ut就是该单元在对应时间的贸易值集约边际分析或一个0/1的二元变量是否出口用于扩展边际分析。4. 数据划分观测集 O所有我们能实际看到的数据。包括所有单元在CETA生效前t 2017的数据无论其产品后来是否被处理。在CETA生效后t ≥ 2017那些产品未被CETA影响的单元即对照组的数据。缺失集 M我们需要预测的反事实。即CETA生效后t ≥ 2017那些产品受到CETA影响的单元即处理组的Y_ut(0)。注意这里有一个关键设计点。我们将“处理”定义在产品层面而非目的地层面。这意味着一个产品只要其关税或配额因CETA改变那么该产品出口到所有目的地的贸易流在2017年后都被视为“处理组”。这允许我们后续研究政策的“溢出效应”即分析CETA如何影响法国将该产品出口到非加拿大市场的行为。2.2 矩阵补全的估计器原理与实现矩阵补全方法通过解决一个优化问题来填充矩阵Y中的缺失部分。其基本模型假设完整的矩阵Y可以由以下几部分相加得到Y L R C E其中L一个低秩矩阵。这是模型的核心它捕捉了数据中跨行和跨列的协同变化模式。例如某些产品可能共享相似的需求趋势某些年份可能对所有产品都有共同的影响。R行固定效应如N × 1的向量。代表每个观测单元如某个产品-目的地对固有的、不随时间变化的特性。例如法国葡萄酒对加拿大的品牌认知度。C列固定效应如1 × T的向量。代表每个时间点共同的冲击如全球金融危机或汇率大幅波动。E随机噪声矩阵。我们的目标是找到LRC的最佳估计使得它们在观测集O上尽可能好地拟合真实数据Y同时保证L是低秩的以避免过拟合。这通过以下优化问题实现min_{L, R, C} [ Σ_{(u,t) in O} (1/|O|) * (Y_ut - L_ut - R_u - C_t)^2 λ * ||L||_* ]公式解读损失函数第一项最小化预测值L_ut R_u C_t与观测值Y_ut在观测集O上的均方误差。这保证了模型对已知数据的拟合能力。正则化项第二项λ * ||L||_*。||L||_*是矩阵L的核范数Nuclear Norm等于其所有奇异值之和。对核范数进行惩罚λ 0会促使L的奇异值收缩甚至一些较小的奇异值变为0从而有效地降低矩阵L的秩。参数λ控制着正则化的强度。为什么需要正则化如果没有正则化模型可能会为了完美拟合观测数据中的噪声E而学习出一个非常高秩的L导致过拟合。这样的模型在预测缺失值M集时表现会很差。正则化强制模型寻找数据背后更简洁、更通用的低维结构提升其泛化预测能力。实操中的关键步骤奇异值分解与软阈值求解上述优化问题的核心算法通常涉及对矩阵进行奇异值分解SVD然后对得到的奇异值进行“软阈值”操作。具体来说如果L U Σ V^T其中Σ是对角阵元素为奇异值σ_i则经过正则化后的奇异值变为max(σ_i - λ, 0)。小于λ的奇异值被置零实现了降秩。交叉验证选择 λ参数λ的选择至关重要。我们采用K折交叉验证将观测集O随机分成K个子集。对于每一个候选的λ值轮流用K-1个子集训练模型并在剩下的1个子集上计算预测误差如RMSE。选择那个使得平均预测误差最小的λ作为最优值。这确保了我们的模型在未知数据上有最好的预测表现。得到反事实用最优λ在整个观测集O上训练最终模型得到完整的预测矩阵Ŷ。对于缺失集M中的每一个条目{u, t}其预测值Ŷ_ut就是我们需要的反事实估计Ŷ_ut(0)。2.3 处理效应的计算与解读一旦我们得到了反事实估计Ŷ_ut(0)对于每一个处理单元{u, t} ∈ M其处理效应Treatment Effect on the Treated, TET就可以计算为TET_ut Y_ut(1) - Ŷ_ut(0)1. 集约边际Intensive Margin效应关注贸易额的变化。我们通常更关心相对变化因此计算百分比形式的处理效应TET*_ut [ (Y_ut(1) - Ŷ_ut(0)) / Y_u,t-1(1) ] * 100这里除以处理前一期t-1的实际贸易额Y_u,t-1(1)是为了衡量相对于自身基数的增长率变化。为了得到一个总体评估我们计算加权平均处理效应Weighted Average Treatment Effect on the Treated, WATETWATET Σ_{u,t in M} s_ut * TET*_ut权重s_ut通常选用该贸易流在处理前一期t-1的份额即s_ut Y_u,t-1(1) / Σ_{i in M} Y_i, t-1(1)。这保证了贸易额大的产品对总体效应的影响更大。2. 扩展边际Extensive Margin效应关注产品是否进入或退出市场。此时Y_ut(1)和Ŷ_ut(0)都是二元变量1出口0不出口。因此TET_ut只能取三个值-1反事实预测出口Ŷ1但实际未出口Y0。这被称为负向扩展边际代表因CETA而退出市场的产品。0预测与实际一致。代表正常的市场进入/退出与CETA无关。1反事实预测不出口Ŷ0但实际出口了Y1。这被称为正向扩展边际代表因CETA而新进入市场的产品。通过统计TET_ut为1和-1的数量我们可以量化CETA对市场进入和退出的净影响。3. 产品层面分析从矩阵构建到结果解读3.1 数据准备与矩阵设计在产品层面我们的观测单元u是“HS 6位码产品-目的地”对。目标是评估CETA对法国出口到加拿大的特定产品的贸易额集约边际和出口行为扩展边际的影响。1. 目的地聚合原始数据中法国向全球200多个目的地出口上万种产品直接构建矩阵会异常稀疏超过80%是零且计算量巨大。我们采取了聚合策略首先将加拿大单独列出作为核心处理目的地。对于其他目的地我们根据2010-2016年CETA前从法国接收的贸易总额和产品种类数分别进行排名。选取在这两个排名中都位列前十的目的地作为主要个体。剩余的目的地按大洲如“其他欧洲国家”、“其他亚洲国家”等进行聚合。这样矩阵的列就变成了“时间×目的地”的组合。例如2015年加拿大、2015年美国、2016年加拿大、2016年美国……等等。2. 集约边际与扩展边际的矩阵区别集约边际矩阵单元格Y_pdt是产品p在时间t出口到目的地d的贸易额欧元。我们只包含那些在CETA生效前两年内至少有一年向加拿大出口且在CETA生效后仍向加拿大出口的产品。这聚焦于已有贸易关系的深化或萎缩。扩展边际矩阵单元格Y_pdt是一个二元变量0或1表示产品p在时间t是否向目的地d出口。我们包含法国所有可能出口的产品以全面捕捉市场进入和退出。3. 处理集M的定义对于两个矩阵M集都定义为在2017年及之后那些HS 6位码产品本身受到CETA关税或配额变化影响的、出口到所有目的地的贸易流条目。这再次强调了处理定义在产品层面。3.2 模型验证与预测质量在依赖反事实进行因果推断前我们必须确信模型有良好的预测能力。表2展示了产品层面模型的预测精度指标。关键指标解读RMSE (均方根误差)集约边际为7.12扩展边际为0.26。对于扩展边际0-1变量0.26的RMSE意味着平均预测错误率较低。NRMSE (归一化均方根误差)和SI (散射指数)这两个都是相对误差指标。集约边际的NRMSE为0.000001SI为0.00027数值极低表明预测值与观测值之间的相对误差微乎其微。这强烈支持了模型预测的有效性。实操心得在应用矩阵补全时交叉验证得到的预测精度是信任反事实结果的基石。如果模型在观测集上的样本外预测都表现糟糕那么其对缺失集的预测就更不可信。务必在报告中详细呈现这些指标。3.3 集约边际异质性效应与平均效应图6展示了CETA生效后法国出口到加拿大的受影响产品其处理效应TET*_pdt的分布直方图。一个鲜明的特征是巨大的异质性有些产品经历了显著的贸易增长正效应而另一些则出现了下降负效应。从分布形态看正效应的产品略占上风。表3给出了加权平均处理效应WATET1.28%且在统计上高度显著。这意味着平均而言受CETA影响的法国产品对加拿大的出口额比没有CETA的情况下高出约1.28%。这是一个正向但不算巨大的平均效应。然而平均效应掩盖了丰富的故事。表4和图7按产品大类进行了细分。结果显示正向效应显著的类别食品HS 16-24, WATET1.90%、纺织品HS 50-63, 1.35%、运输设备HS 86-89, 1.25%、化学品HS 28-38, 1.16%等。效应不显著或微弱的类别动植物产品HS 01-05、塑料橡胶HS 39-40、木制品HS 44-49等。普遍存在的异质性即使在整体效应为正的类别中也存在一部分产品遭受了负向冲击图7中每个子图左侧的“长尾”。巨大的未加权标准差也印证了这一点。这个发现的启示如果采用传统的双重差分法我们很可能只得到一个不显著的平均效应系数正如我们在附录B中尝试的那样从而得出“CETA无效”的结论。矩阵补全方法的价值就在于它揭示了“平均效应不显著”背后是强烈的、方向相反的异质性效应相互抵消的结果。这对于政策制定者至关重要他们需要知道哪些行业受益、哪些受损而不是一个笼统的结论。3.4 扩展边际市场进入与退出图8和表5清晰地展示了CETA对市场进入退出的影响。我们将2018年观察到的产品进入/退出动态与模型预测的“无CETA”情况下的动态进行对比。正向扩展边际有294种产品因为CETA而新进入了加拿大市场占2017年已在加拿大市场产品总数的约14.5%。负向扩展边际有263种产品因为CETA而退出了加拿大市场占比约13.1%。净效应新进入的产品比退出的产品多31种表明CETA在扩展边际上带来了轻微的净增长。表6进一步按产品大类分解。结果非常有趣最大赢家化学品及相关产业HS 28-38净增加了42种产品。这可能是由于复杂的化学品关税削减激发了新的贸易。最大输家纺织品HS 50-63净减少了29种产品。这可能是因为关税削减加剧了竞争导致一些竞争力较弱的法国纺织品被挤出市场。其他变化机械/电气HS 84-85净增6种而蔬菜产品HS 06-15净减19种。注意事项扩展边际的分析高度依赖于二元变量的定义和产品聚合水平。在HS 6位码层面一个产品的“进入”可能意味着全新的贸易也可能只是从同一类目下的其他变种产品转移过来。解读时需要结合行业知识。3.5 事后分析探寻异质性的来源为什么有的产品受益大有的受益小甚至受损我们通过事后回归分析来探索。1. 集约边际与比较优势图9展示了产品在CETA前的显性比较优势RCA与其处理效应TET*_pdt之间的关系。RCA大于1表示该产品在加拿大市场具有比较优势。结果显示对于RCA 1的产品其比较优势越高从CETA中获得的正面效应就越大。这符合直觉关税削减就像降低了“入场费”原本就卖得好的产品竞争力强能抓住机会卖出更多。而对于本就处于比较劣势RCA 1的产品关税削减的影响则不明确效应在零附近波动且不显著。2. 扩展边际与贸易弹性图10分析了产品的贸易弹性价格或成本变动1%导致贸易量变动的百分比与进入/退出决策的关系。结果显示无论是新进入还是退出的产品其平均贸易弹性都显著高于持续存在的“在位”产品。这也很容易理解贸易弹性高的产品对成本变化更敏感。当CETA降低贸易成本时高弹性产品更可能从“无利可图”变为“有利可图”从而新进入市场正向边际。同时一些高弹性产品也可能因为成本结构的细微相对变化或许来自其他国家的竞争加剧而选择退出负向边际。这些发现的意义它们为观察到的异质性提供了经济学解释。政策效果并非随机而是与产品和企业固有的经济特征如比较优势、成本敏感性系统相关。这为预测未来贸易协定在其他行业或国家的可能影响提供了线索。4. 企业层面分析聚焦多产品出口商4.1 分析动机与矩阵设计产品层面的分析揭示了宏观模式但贸易的决策主体是企业。我们特别关注多产品出口商因为它们贡献了法国对加拿大出口总额的约85%是贸易流的中坚力量。贸易理论预测贸易自由化后多产品企业会调整其产品组合将资源向核心优势产品集中。矩阵设计的关键调整图11行每家法国多产品出口企业i。列不再是“时间×目的地”而是“时间×产品排名”。对于每家企业我们选取其在CETA生效前三年内持续出口的、贸易额最大的前3种产品HS 6位码。列就变成了(2015年 产品1)(2015年 产品2)(2015年 产品3)(2016年 产品1) ……(2018年 产品3)。单元格Y_i,(pt)企业i在时间t出口产品p的贸易额。处理定义如果一家企业出口的至少一种产品受到CETA影响则该企业被视为处理组。这意味着即使企业只出口一种受影响产品其所有产品线包括未受影响的产品在矩阵中的2017年及之后条目都被归入缺失集M。这允许我们研究政策对企业内部资源配置的潜在溢出效应。4.2 结果解读与含义表7显示了企业层面模型的预测质量。散射指数SI为29.04%意味着预测误差平均约占预测值的29%。对于企业层面波动性更大的微观数据来说这是一个可以接受的预测精度。由于企业层面分析更复杂且产品组合固定只选前3种产品其平均处理效应的经济解释不如产品层面直观。但这种方法的核心价值在于提供了一个框架未来可以用于探究更细致的问题例如CETA是否导致企业将出口资源从非核心产品转向核心产品受CETA影响的产品其贸易增长是否挤占了同一企业内其他产品的出口企业的生产率、规模等特征如何调节其对于贸易自由化的反应踩过的坑在企业层面分析中确定“每家企业包含哪些产品”是一个关键且棘手的决策。我们选择了“前3大持续出口产品”以保持面板平衡和减少噪音但这无疑损失了信息。尝试过包含2种或4种产品结果定性上类似但定量上有差异。这提醒我们矩阵设计即如何定义“行”和“列”强烈依赖于研究问题和数据特性需要在信息完整性与模型可行性之间做出权衡。5. 方法反思、局限性与应用前景5.1 矩阵补全在政策评估中的优势与局限核心优势处理高维稀疏数据完美契合贸易数据众多产品×众多目的地×多年份的特性这是传统计量方法难以直接处理的。非参数与灵活性无需预设具体的函数形式如线性或处理组与对照组的平行趋势假设。它通过数据驱动的方式学习潜在结构更能适应现实世界的复杂性。揭示异质性能为每个处理单元提供单独的反事实估计从而绘制出处理效应的完整分布图而非仅仅一个平均值。这对于理解政策的分布性影响至关重要。利用所有信息同时利用处理组处理前、对照组处理前后以及处理组未受处理产品的信息来构建反事实信息利用率高。需要注意的局限性“无干扰”假设矩阵补全以及许多其他因果推断方法隐含假设一个单元的处理不会影响其他单元的结果SUTVA。在贸易中这可能被违背。例如法国对加拿大汽车出口增加可能间接减少对墨西哥的汽车出口。处理时机外生性它假设处理发生的时间点2017年与模型无法捕捉的、影响结果的未观测因素无关。如果CETA的签署与某些未观测的、同时影响法加贸易的趋势相关则估计可能有偏。对矩阵设计的敏感性如何定义“行”和“列”如产品聚合程度、企业产品选择会影响结果。需要进行稳健性检验。解释性的挑战虽然能估计效应但模型本身是“黑箱”它不能像结构化模型那样直接给出诸如“关税弹性”这样的结构参数。其经济学解释依赖于事后分析如我们做的RCA、弹性分析。5.2 给实践者的建议如果你打算将矩阵补全应用于自己的政策评估或商业分析项目以下是我的几点心得数据是王道确保你的面板数据在时间和横截面上尽可能平衡。大量的缺失值不仅是待预测的M集也包括观测集O中的缺失会严重影响模型性能。对于贸易数据合理的国家/产品聚合是必要的。清晰定义“处理”像本研究一样仔细界定谁在何时受到了处理。这决定了M集的构成是因果识别的核心。交叉验证是关键不要跳过交叉验证选择正则化参数λ的步骤。预测精度报告RMSE, NRMSE等是结果可信度的“体检报告”必须提供。从平均效应深入到异质性不要满足于报告一个WATET。一定要可视化处理效应的分布并按关键维度如行业、企业规模、初始条件进行分组分析。故事往往藏在异质性里。结合经济学理论进行事后解读矩阵补全给出的是“是什么”你需要用经济学理论来解释“为什么”。像本研究一样将估计出的效应与比较优势、贸易弹性等理论变量关联起来能极大提升分析的深度和说服力。考虑作为补充方法矩阵补全并非要完全取代DID、合成控制法等传统方法。它可以作为一种有力的补充或稳健性检验。当传统方法因缺乏合适对照组或平行趋势假设可能被违反而受限时矩阵补全提供了一个不同的、基于预测的视角。矩阵补全为处理复杂面板数据的因果推断问题打开了一扇新的大门。它将机器学习的数据驱动能力与计量经济学的因果问题框架相结合。在CETA评估这个案例中它成功揭示了被平均效应掩盖的丰富异质性并建立了政策效果与产品经济特征之间的关联。尽管有其局限性但在数据维度高、因果关系复杂、传统方法假设难以满足的场景下它无疑是一个极具价值的工具。随着计算能力的提升和算法的优化我期待看到它在更多经济、金融和社会政策评估领域得到创新性的应用。