Skip to content

第十章 验收与归因 ​

10.2 效果归因分析 ​

承前:10.1 的验收三层判断里留了一个尾巴——业务层不能只看复购率曲线涨没涨,还要回答"涨的部分里多少是你的功劳"。这个问题有一个学名:归因。这一节讲 FDE 的归因基本功:对照组怎么设计、双重差分法(DiD)怎么算、噪声怎么剔除、口径为什么必须事前谈定。这可能是全书最"计量经济学"的一节,但它决定了验收会上最有含金量的那一页。


10.2.1 为什么归因是 FDE 的必修课 ​

想象验收会上的这一幕:你看板显示复购率从 21% 涨到 23%,财务经理立刻发问——"这 2 个点里,有多少是你们的 Agent 干的?我们同期还上了 618 大促、开了三家新店。"你如果答不上来,业务层那一页 PPT 就从"成果展示"变成了"被质询的靶子"。

这不是刁难,这是合理的商业问题。AI 项目花的钱是真金白银,客户有权知道因果而非相关。而"相关不等于因果"在效果归因里是最常见的陷阱:

  • 季节因素:零售的复购率本来就有季节波动;
  • 同期干预:大促、新品上市、竞对退出,都在动你的曲线;
  • 选择偏差:先用助手的往往是活跃店长,TA 们本来就复购运营做得好——你观察到的提升可能是"好人用上了好工具",而不是"工具把普通人变好了"。

Kohavi 等人在微软做在线受控实验时的经验之谈很有代表性:要相信实验数据而不是"最高薪者的意见"(HiPPO)。放到 FDE 场景就是:要相信对照组和差分,而不是副总裁的直觉归因。

10.2.2 对照组设计:三档可选方案 ​

归因的黄金标准是随机对照实验(RCT),但 FDE 现场往往做不了纯随机——客户不会让一半门店停止使用已经花钱买的系统。务实的方案是三档:

归因设计三档

┌────────┬──────────────────────┬────────────────────┐
│ 档位    │ 设计                  │ 可信度/可行性        │
├────────┼──────────────────────┼────────────────────┤
│ A 随机  │ 门店/会员随机分流,     │ 最可信,政治上最难    │
│        │ 灰度期就保留对照       │                    │
│ B 自然  │ 用未开放地区的相似门店   │ 较可信,需配平       │
│        │ 做对照(DiD 主战场)    │                    │
│ C 回溯  │ 无对照,用历史同期基线   │ 兜底,只能给区间      │
│        │ + 行业基准做估计        │ 不能给点估计         │
└────────┴──────────────────────┴────────────────────┘

**关键动作在灰度阶段(第 9 章)就要做:**放量时不要一次全放。青禾的助手是按区域灰度的——华东 40 家门店先用,华南 36 家后放。这个节奏本来是为了控制风险,但它顺手留给了你一组"同时期未处理门店",这就是 B 档 DiD 的原料。**灰度放量顺序如果设计得好,等于免费买了一张实验设计的门票。**这是把第 9 章的工程决策转化为第 10 章的归因资产的典型例子。

配平(matching)是 B 档的关键动作:对照组门店要在体量、客群结构、线上渗透率上和处理组接近,不能拿一线城市旗舰店对照县域小店。配平之后还要做"平行趋势检验"——看灰度前若干个月,两组的复购率走势是不是基本平行。不平行就换对照组,硬算出来的数会被懂行的人一句话戳穿。

10.2.3 双重差分法(DiD):公式与青禾示例 ​

双重差分(Difference-in-Differences,DiD)是经济学里最常用的准实验方法,它的经典出处是 Card 与 Krueger 1994 年发表在《美国经济评论》的最低工资研究:新泽西州上调最低工资,对岸的宾州没动,作者调查了两州 410 家快餐店在政策前后的就业变化,用两州各自的"前后之差"再相减,得出最低工资的就业效应。这个方法后来成了政策评估的标配工具,也是 FDE 能上手的最趁手的归因武器。

公式:

效应 δ = (处理组后 - 处理组前) - (对照组后 - 对照组前)

两个"差"各管一件事:第一个差包含"你的效果 + 时间趋势";第二个差只包含时间趋势(对照没被处理);相减,时间趋势抵消,剩下你的净效应。它的核心假设就是 10.2.2 说的平行趋势:假如没有 Agent,两组会沿着同样的斜率走。

青禾示例(数字为沙盘虚构):

组灰度前季度复购率灰度后季度复购率前后之差
处理组(华东 40 店)21.0%23.2%+2.2 个点
对照组(华南 36 店)20.4%21.1%+0.7 个点

DiD 效应 = 2.2 − 0.7 = +1.5 个百分点。注意这个故事里藏着一个典型的真实情形:全公司复购率都在涨(华南也涨了 0.7 个点,因为有大促和季节因素),如果你不看对照组直接报 2.2 个点,就是把大盘的水位涨落记在了自己账上。1.5 个点才是你可以理直气壮认账的数字。

进一步换算成钱:1.5 个点 × 处理组会员基数 × 客单价 × 年购买频次,得出增量 GMV;再对照项目年成本,得出"每万元投入换多少增量 GMV"——这就是回应财务经理削刀的那把钥匙(10.1.6 沙盘)。换算时每个系数都要给出处(口径!),不然又是一个被质询的软肋。

DiD 还有加强版:多期 DiD、加控制变量的回归式(复购率对"处理×后"虚拟变量回归,控制门店固定效应和时间固定效应)。FDE 不必亲自跑回归,但要能和客户的数据分析团队对话——TA 们多半会用 Python 的 statsmodels 或 R 的 fixest 之类工具,你说得出"双向固定效应"这个词,对方就会把你当自己人。

10.2.4 噪声剔除:三个青禾真实噪声 ​

就算有了 DiD,你还要手工剔除三类噪声,否则净效应数字仍会失真:

**噪声一:优惠券核销延迟。**助手的推荐在 3 月底触达会员,发的券有效期 45 天,核销发生在 4-5 月——如果你只看"3 月发起、3 月验收"的窗口,效果被系统性低估。反过来,1 月发的大促券在 3 月才核销,会把功劳错记到助手头上。**处理办法:把券的核销归属期对齐到发放期(或者干脆在口径里剔除大促券),并给一个滞后 30/60/90 天的多窗口结果。**多窗口还能顺带回答"效果是脉冲还是持续"这个副总裁一定会问的问题。

**噪声二:会员 ID 双轨的渗漏。**第 2 章的老坑:新旧系统双轨会员 ID。部分会员在老系统里的购买没合并进新口径,复购率的分母和分子都在漂。归因分析前必须先做一次 ID 归一(哪怕只是把双方共有的手机号哈希做 join),并对归一前后各跑一遍 DiD——两个结果差很多,说明数据层还有活没干完,这时候要诚实报告不确定性,而不是挑好看的那个。

**噪声三:Hawthorne 效应与新奇效应。**门店知道自己被观察(试点光环),店长前两周出于好奇高频使用——短窗口的采纳和效果都偏高。处理办法:观测窗口至少覆盖一个完整的"新奇衰减期"(通常 6-8 周),用稳态期的数据做主结果,早期数据只做背景。

10.2.5 归因口径事前谈定:比方法更重要的纪律 ​

所有方法论加起来,都不如一条纪律值钱:归因口径在项目早期、在看到数据之前,就写进 SOW 附录并双方签字。

为什么事前?因为口径的选择空间大到可以操弄结果:复购怎么定义(90 天内二次购买?品类限定吗?)?观测窗口多长?对照组是哪批门店?大促剔除不剔除?每个选择都合法,但组合起来可以让效果从 0.5 个点变成 3 个点。看完数据再定口径,任何数字都无法自证清白——财务经理哪怕不懂 DiD,也懂"先射箭后画靶"这句话。

一个可落地的口径条款清单(可直接抄进 SOW 附录):

  1. 北极星指标定义与分母口径(会员数用哪个系统的数,ID 归一规则);
  2. 观测窗口(起止、是否多窗口);
  3. 处理组/对照组定义与配平标准;
  4. 已知同期干预清单(大促、开店、价格战)及剔除规则;
  5. 归因方法(DiD 主结果 + 敏感性分析);
  6. 效果换算公式(增量 GMV 的系数及数据来源);
  7. 争议解决:双方各指定一名分析师,分歧时报第三方复核。

第 3 章讲 SOW 时说过"范围要锁",归因口径是另一种要锁的范围——**锁的不是做什么,而是"怎么算成"。**它和 10.3 节的 OLA 直接咬合:结果级协议里挂的每个数字,都必须先在这里过一遍定义。没有谈定口径的效果对赌,等于在流沙上盖楼。

10.2.6 多期与交错灰度:当"前-后"不再够用 ​

前面的示例是教科书式的两期 DiD:处理组、对照组、灰度前、灰度后,四个数一减完事。但真实灰度往往是交错放量——华东 W1 上、华北 W4 上、华南 W8 上,76 家门店分三批进入"处理"状态。这时候如果还用简单前后差,会踩进计量经济学近十年最重要的一个方法论坑:双向固定效应(TWFE)回归在处理时点交错、且各批效应大小不同时,会把"早处理组"当作"晚处理组"的对照,算出误导性的加权结果——经典反例是负权重问题:明明每批的效果都是正的,加总出来却可能是负数。

Callaway 与 Sant'Anna 2020 年发表在《计量经济学杂志》的论文为此给了标准解法:把每个"处理组 × 时点"的 2×2 小块单独估计(每块只用尚未处理的组做对照),再按明确定义的权重加总成组-时间平均处理效应(ATT(g,t))。FDE 不需要亲手实现这套估计,但要能识别出风险信号:**当你的灰度是分批放量、且早期批次的效果和后期明显不同(通常是早期更明显——新奇效应叠加高意愿门店先行),简单 TWFE 的 DiD 就可能给出系统性偏差的数。**这时候正确的姿势是:请客户的数据团队用 Callaway–Sant'Anna 估计量或事件研究(event study)重跑一遍,而你的角色是"识别出这个问题并叫对方法的名字"——这本身就是稀缺能力。

事件研究图同时是你在验收会上的最好展示物之一:横轴是"距处理开始的周数",纵轴是复购率相对基线的偏差,处理前各期系数应围绕零波动(这本身就是平行趋势的可视化检验),处理后系数逐步抬升。一张这种图放在 P6 页,比任何文字都更能回答"你们的效果是持续的还是会消退的"。

10.2.7 噪声剔除清单:会前 72 小时的过账仪式 ​

10.2.4 讲了三类典型噪声的原理,这里把它升级成一份可执行的过账清单(reconciliation checklist)——归因数字进验收材料前 72 小时,逐条打勾:

#检查项判据不过怎么办
1券核销归属期对齐发放期与核销期差 ≤ 窗口的 10%改按发放期归属,或双口径并列报
2大促窗口剔除同期大促的 GMV 增速是否 > 日常 2 倍剔除大促周,给"含/不含大促"两版
3会员 ID 归一敏感性归一前后 DiD 差 ≤ 0.2 个点如实报区间 + 数据治理待办(关联第 2 章)
4新店/关店剔除窗口内新开门店是否 > 5%剔除未满一个完整季度的门店
5极端门店 Winsorize单店复购率偏离组均值 > 3 个标准差截尾或剔除,附名单
6平行趋势复查处理前 8 期两组走势斜率差 < 0.3 个点换对照组或降级为 C 档回溯口径
7分位数稳健性DiD 在 p25/p50/p75 门店子样本上符号一致报告异质性,定位驱动来源
8安慰剂检验把处理时点虚构提前 2 期,δ 应≈0不为 0 → 有遗漏混杂,回炉

第 8 条值得展开:安慰剂检验(placebo test)是把 DiD 从"一套算法"变成"一个论证"的关键一步——假装灰度提前两个月发生,如果"效应"也出现了,说明你量到的其实是别的什么(比如季节或某次系统变更),而非 Agent。这个动作成本极低(改一个日期参数重跑),却在验收会上几乎无法被攻击。财务经理未必懂平行趋势,但"我们把时间往前挪两个月,效果消失了"这句话,TA 听得懂。

这份清单本身也该进归因白皮书附录——它证明的不仅是数字干净,更是"产数字的过程受纪律约束"。第 11 章讲复盘时你会发现,这张表跨项目复用时,改的只是判据数值,结构几乎不动:这就是把一次性劳动沉淀为方法资产的实例。

10.2.8 要点总结 ​

  • 相关不等于因果:季节、同期干预、选择偏差都会让复购率曲线骗你
  • 归因设计三档:随机分流最可信但难,自然对照 + DiD 是主战场,回溯基线只能兜底
  • 灰度放量的区域节奏 = 免费的实验设计门票,灰度阶段就要保留对照组
  • DiD 公式 δ =(处理组前后差)−(对照组前后差);青禾示例 2.2 − 0.7 = 1.5 个点是可认账净效应
  • 三类噪声要手工剔除:券核销延迟(多窗口)、会员 ID 双轨(先归一)、新奇效应(用稳态期)
  • 交错灰度下简单 TWFE DiD 有负权重陷阱,叫得出 Callaway–Sant'Anna 与事件研究是 FDE 的差异化能力
  • 安慰剂检验几乎零成本却极难攻击:把处理时点虚构提前,效应应消失
  • 归因口径必须事前谈定并写进 SOW 附录——看完数据再定口径,任何数字都无法自证清白

参考资料 ​