基于高效影响函数的机器学习因果推断:原理、实现与双重稳健性
1. 项目概述:当因果推断遇上机器学习
在流行病学、经济学和社会科学的实证研究中,我们常常要回答“如果……会怎样”这类反事实问题。比如,如果所有人都没有接受某种治疗,疾病的平均结局会如何变化?传统的方法,比如回归调整或者倾向得分匹配,往往依赖于对数据生成过程做出较强的参数模型假设。然而,现实世界的数据关系错综复杂,充满了非线性和高维交互,一个简单的线性模型很可能抓不住真相,导致估计偏误。
近年来,机器学习(Machine Learning)因其强大的预测和拟合能力,被越来越多地引入因果推断领域,用于估计那些关键的“干扰函数”——比如结果回归模型(给定协变量和处理的条件下,结果的期望)和倾向得分(给定协变量下接受处理的概率)。它的魅力在于,我们不再需要事先假定一个具体的函数形式,算法可以自动从数据中学习复杂的模式,从而避免因模型误设而引入的偏差。
但这里有个棘手的矛盾:机器学习模型,尤其是像随机森林、梯度提升树这类灵活的算法,它们的收敛速度通常比经典的参数模型(如线性回归)要慢。简单来说,你需要更多的数据才能让它的估计足够精确。更麻烦的是,当我们把这些“慢速”收敛的机器学习估计量,直接代入传统的因果估计器(比如基于回归的G-计算估计量)时,整个因果效应的估计量可能不再服从我们熟悉的渐近正态分布。这意味着,你算出来的置信区间可能不再可靠,统计推断的基础就崩塌了。
那么,有没有一种方法,既能享受机器学习拟合复杂关系的灵活性,又能保住我们做统计推断(比如计算p值、置信区间)的“门票”呢?答案是肯定的,其核心钥匙就是高效影响函数。基于EIF构建的估计器,如一步估计器,具备一种名为速率双重稳健性的神奇性质。它允许两个干扰函数的估计误差以乘积的形式影响最终估计量,即使每个机器学习算法本身收敛得慢一些,只要它们的误差乘积衰减得足够快(达到1/√n的级别),最终的因果估计量依然可以保持√n的收敛速率和渐近正态性。这就好比两个队员跑得都不算最快,但他们的接力配合却能达到顶级速度。
本文将以一个经典且直观的例子贯穿始终:“在我们研究的样本中,如果所有人都未接受治疗,平均结果会是多少?”我们将手把手拆解基于EIF进行因果推断的完整流程:从将科学问题转化为统计估计量,到推导其高效影响函数,再到构建一步估计器,并最终深入探讨如何验证其关键的渐近性质。无论你是希望将机器学习应用于自己研究领域的应用科学家,还是想理解现代因果推断方法背后逻辑的数据分析师,这篇指南都将为你提供从原理到实践的清晰路径。
2. 核心思路与统计框架搭建
在动手推导公式之前,我们必须先把问题用严谨的数学语言定义清楚。这一步看似枯燥,却是确保后续所有工作方向正确的基石。一个模糊的问题定义,会导致南辕北辙的估计。
2.1 从科学问题到因果参数
我们的驱动问题是:“在我们研究的样本中,如果所有人都未接受治疗,平均结果会是多少?” 这是一个典型的反事实问题,因为它涉及到一个并未发生(或并非对所有人都发生)的场景。
首先,我们形式化观察数据。对于样本中的第i个个体,我们观测到:
Wi: 一组观测到的协变量(如年龄、性别、基线健康状况等)。Ai: 二元处理变量,Ai=1表示接受治疗,Ai=0表示未接受治疗。Yi: 观测到的结局变量(如存活状态、血压值等)。
因此,每个个体的观测数据可记为Oi = (Wi, Ai, Yi)。我们通常假设数据是独立同分布的。
接下来,引入潜在结果框架。令Y^a表示当处理变量A被固定为某个值a时(例如,通过某种理想化干预),个体将会出现的结果。Y^0就是“如果未接受治疗”时的潜在结果。我们的因果参数就是这些潜在结果的平均值:Ψ = E[Y^0]。这就是我们真正关心的“因果量”。
注意:这里
E[Y^0]的期望是针对我们研究样本所在的总体。它不同于简单的E[Y | A=0](未治疗组的平均观测结果),因为未治疗组的协变量分布可能与总体不同,直接比较会存在选择偏倚。
2.2 识别假设:连接因果与现实的桥梁
潜在结果Y^0是无法被全部观测到的(对于接受了治疗的人,我们看不到他们的Y^0)。为了能从观测数据(W, A, Y)中推断出E[Y^0],我们需要引入三个关键的识别假设:
- 条件可交换性:
Y^0 ⊥ A | W。在给定协变量W的条件下,处理分配A与潜在结果Y^0独立。这意味着,在控制了所有已测量的混杂因素W后,治疗组和对照组的个体在“如果未治疗”这个反事实层面是可比的。这个假设通常需要借助因果图(DAG)和领域知识来评估。 - 正值性:对于所有满足
f(w) > 0的w,有P(A=0 | W=w) > 0。即,在协变量的任意可能取值组合下,个体都有一定的概率被分配到未治疗组。这保证了对于总体中的每一个个体,我们都能在数据中找到其对应的“未治疗”参照对象。如果某个协变量组合的人群全部接受了治疗,那么对于他们“如果未治疗”的结果,我们无法从数据中获得任何信息。 - 一致性:如果
A = a,那么观测到的结果Y就等于潜在结果Y^a。这意味着我们观测到的治疗下的结果,就是该个体在接受该治疗时实际会发生的结果,没有其他版本的“治疗”。
在这些假设成立的前提下,我们可以将不可观测的因果参数E[Y^0]等价于一个完全由观测数据分布决定的统计估计量:ψ = E[ E(Y | W, A=0) ]这个公式就是标准化或G-公式的核心。它的直观解释是:首先,在各个协变量层W=w内,计算未治疗组 (A=0) 的平均结果E(Y | W=w, A=0);然后,再按照总体中协变量W的分布,对这些层内的平均值进行加权平均。
2.3 统计估计量:一个关于分布的映射
将ψ看作一个泛函(函数的函数)是理解后续推导的关键。我们把观测数据O所服从的(未知)真实分布记为P。那么我们的统计估计量ψ可以写成这个分布P的一个函数:ψ(P) = E_P [ E_P(Y | W, A=0) ]这里下标P强调期望都是基于分布P计算的。ψ(P)这个映射,以整个数据生成分布P为输入,输出我们关心的标量值ψ。
这种视角之所以有力,是因为它允许我们使用泛函分析的工具(比如求导)来研究估计量的性质。我们后续要推导的高效影响函数,本质上就是这个泛函ψ(P)在分布P处的“导数”。
3. 高效影响函数的推导与理解
有了明确的统计估计量ψ(P),我们现在要寻找它的“高效影响函数”。这是构建稳健估计器的核心数学对象。
3.1 什么是高效影响函数?
你可以把EIF想象成统计估计量的“灵敏度系数”或“影响力评分”。更正式地说:
- 导数视角:如果将统计估计量
ψ(P)看作一个以概率分布P为自变量的函数,那么EIFφ(O, P)就是这个函数在P处的一阶方向导数。它衡量了当数据分布P发生微小扰动时,���计量ψ的变化率。 - 数据影响力视角:对于任何一个“正则渐近线性”的估计量,其估计误差
ψ_hat - ψ主要部分可以近似为EIF的样本平均。EIF在某个样本点Oi处的值φ(Oi, P),大致反映了剔除这个样本点对估计值的影响有多大。
EIF有几个关键性质:
- 均值为零:在真实分布
P下,E_P[φ(O, P)] = 0。 - 方差与效率界相关:EIF的方差
E_P[φ(O, P)^2]给出了在给定模型下,任何无偏估计量所能达到的最小渐近方差(Cramér-Rao下界的一种非参数推广)。因此,基于EIF构造的估计量通常是(半参)有效的。 - 构建稳健估计器的蓝图:EIF的表达式直接指示了如何对简单的“插件估计量”进行修正,以得到对干扰函数估计误差不敏感的、更稳健的估计量。
例如,对于均值ψ = E[Y],其EIF是φ(O, P) = Y - E[Y]。对于在X=x处的条件均值ψ = E[Y | X=x](假设X离散),其EIF是φ(O, P) = I(X=x)/P(X=x) * {Y - E[Y|X=x]}。
3.2 推导EIF:一种启发式方法
完全严格的EIF推导需要较深的泛函分析知识。但对于许多常见估计量,我们可以用一种基于微积分运算规则的启发式方法来“猜想”出EIF的形式。这种方法利用了EIF作为导数的特性,遵循导数的和、积等运算法则。
我们的目标是ψ(P) = E[ E(Y | W, A=0) ]。为了应用离散微分的直觉,我们暂时假设协变量W是离散的。这样,期望可以写成求和形式:ψ = Σ_w [ E(Y | W=w, A=0) * P(W=w) ]令q(w) = E(Y | W=w, A=0),p(w) = P(W=w),则ψ = Σ_w q(w)p(w)。
现在,我们将EIF(·)视为一个求导算子。利用导数的乘法法则EIF(ab) = EIF(a)*b + a*EIF(b)和求和法则,我们有:EIF(ψ) = EIF( Σ_w q(w)p(w) ) = Σ_w EIF( q(w)p(w) ) = Σ_w [ EIF(q(w)) * p(w) + q(w) * EIF(p(w)) ]
接下来,我们代入一些已知的“基本导数”:
- 条件均值的EIF:对于
q(w) = E(Y | W=w, A=0),其EIF为EIF(q(w)) = [I(W=w, A=0) / P(W=w, A=0)] * [Y - q(w)]。这类似于前面条件均值EIF的推广。 - 概率质量的EIF:对于
p(w) = P(W=w),可以将其视为一个均值:p(w) = E[ I(W=w) ]。因此,其EIF为EIF(p(w)) = I(W=w) - p(w)。
代入并化简:EIF(ψ) = Σ_w { [I(W=w, A=0) / P(W=w, A=0)] * [Y - q(w)] * p(w) } + Σ_w { q(w) * [I(W=w) - p(w)] }利用贝叶斯定理P(W=w, A=0) = P(W=w) * P(A=0 | W=w),定义倾向得分g(w) = P(A=0 | W=w),则第一项中的p(w)/P(W=w, A=0) = 1/g(w)。于是:EIF(ψ) = Σ_w { [I(W=w, A=0) / g(w)] * [Y - q(w)] } + Σ_w q(w)I(W=w) - Σ_w q(w)p(w)注意,Σ_w q(w)I(W=w)就是q(W)(当W取观测值时),而Σ_w q(w)p(w)就是ψ本身。同时,第一项中的求和Σ_w I(W=w, A=0) / g(w) * [Y - q(w)],实际上只在W等于其观测值w且A=0时有贡献,因此它就是I(A=0)/g(W) * [Y - q(W)]。
最终,我们得到猜想的高效影响函数:φ(O, P) = I(A=0)/g(W) * [Y - q(W)] + q(W) - ψ
重要提醒:上述推导过程是启发式的,它给出了EIF的一个“候选”形式。要严格证明这就是真正的、唯一的EIF,还需要验证其满足EIF的正式定义(如附录A所述,即路径可微性及代表导数等性质)。但对于我们构建估计器和验证其性质的目的而言,这个猜想形式通常已经足够。如果后续基于它构建的估计器被证明具有我们期望的优良性质(如双重稳健性),那就在实践中验证了其有效性。
4. 构建一步估计器及其实现
有了高效影响函数φ(O, P),我们就可以用它来改造一个初始的、可能不稳健的估计器,从而得到一个具有良好性质的估计器。最直接的方法就是构建一步估计器。
4.1 从插件估计量到一步修正
最直观的估计ψ的方法是插件估计法:用样本估计值替换总体表达式中的未知量。 对于ψ = E[ E(Y | W, A=0) ],插件估计量就是:ψ_gcomp = (1/n) Σ_i q_hat(Wi)其中q_hat(Wi)是我们通过某种模型(比如线性回归或随机森林)拟合的E(Y | W, A=0)的估计值。这个估计量通常被称为G-计算估计量。
然而,如果q_hat(W)是用一个收敛速度慢的机器学习算法拟合的,那么ψ_gcomp的收敛速度通常也会被拖慢,并且其抽样分布可能非常复杂,难以进行有效的统计推断。
一步估计器的核心思想是对插件估计量进行一个基于EIF的“一阶偏差修正”。其构造公式如下:ψ_hat_onestep = ψ_hat_plugin + (1/n) Σ_i φ(Oi, P_hat)其中φ(Oi, P_hat)是用估计的分布P_hat(即用q_hat(W),g_hat(W)等替换真实值)计算出的EIF值。
将我们猜想出的EIF形式代入:ψ_hat_onestep = [ (1/n) Σ_i q_hat(Wi) ] + (1/n) Σ_i { I(Ai=0)/g_hat(Wi) * [Yi - q_hat(Wi)] + q_hat(Wi) - ψ_hat_plugin }注意到(1/n) Σ_i q_hat(Wi)就是ψ_hat_plugin,它与最后一项的-ψ_hat_plugin抵消。简化后得到:ψ_hat_onestep = (1/n) Σ_i { I(Ai=0)/g_hat(Wi) * [Yi - q_hat(Wi)] + q_hat(Wi) }
这个估计器有一个更广为人知的名字:增强逆概率加权估计器。它由两部分组成:
q_hat(Wi):基于协变量预测的潜在结果(模型预测部分)。I(Ai=0)/g_hat(Wi) * [Yi - q_hat(Wi)]:一个基于倾向得分的逆概率加权残差项(逆加权修正部分)。
4.2 实操步骤与样本分割
在现实中实现AIPW估计器,必须遵循一个关键步骤:样本分割。这是保证后续理论性质(特别是渐近正态性)成立的核心实践。
为什么必须做样本分割?在推导EIF和理论性质时,我们假设用于计算EIF中q_hat(W)和g_hat(W)的模型,与计算最终估计值ψ_hat时所用的数据是相互独立的。如果使用同一份数据既训练模型又计算估计,会导致复杂的过拟合依赖,使得“经验过程项”可能不收敛于零,从而破坏渐近正态性。样本分割打破了这种依赖。
最常用的方法是K折交叉拟合:
- 数据分割:将全体数据随机、均匀地分成K份(通常K=5或10)。
- 模型训练:对于第k折(k=1,...,K):
- 将其余K-1折数据作为训练集,用机器学习算法拟合两个模型:
- 结果模型
q(W, A):用训练集中A=0的数据,以W为特征,Y为标签进行拟合。 - 倾向得分模型
g(W):用全部训练集数据,以W为特征,A为标签进行拟合(这是一个分类问题)。
- 结果模型
- 将拟合好的模型应用于第k折数据(验证集),为其中的每个样本
i计算:q_hat_{-k}(Wi):用排除本折数据训练的模型预测的结果。g_hat_{-k}(Wi):用排除本折数据训练的模型预测的倾向得分(取A=0的概率)。
- 将其余K-1折数据作为训练集,用机器学习算法拟合两个模型:
- 估计量计算:获得所有样本的
q_hat和g_hat后,代入AIPW公式:ψ_hat_aipw = (1/n) Σ_i { I(Ai=0)/g_hat_{-k(i)}(Wi) * [Yi - q_hat_{-k(i)}(Wi)] + q_hat_{-k(i)}(Wi) }其中-k(i)表示用于预测样本i的模型,是用不包含i所在折的数据训练的。
实操心得:在拟合倾向得分模型
g(W)时,要特别注意正值性假设的实践检查。如果预测出的某些g_hat(Wi)非常接近于0(即某些个体几乎被判定为不可能处于未治疗组),那么公式中的逆权重1/g_hat(Wi)会变得极大,导致估计不稳定。一个常见的处理技巧是进行倾向得分修剪,例如,将所有小于某个阈值(如0.01或0.05)的g_hat(W)设为该阈值,或者直接剔除这些权重过大的样本(需谨慎,可能引入偏倚)。同时,结果模型q(W)的预测值q_hat(W)最好限制在结局变量Y的合理范围内(例如,对于生存概率,应在[0,1]之间),这可以提高数值稳定性。
5. 理论基石:速率双重稳健性与渐近性质验证
构建出估计器只是第一步,我们更需要知道它在理论上是否可靠,特别是在使用机器学习时。AIPW估计器的强大之处,就在于其速率双重稳健性。
5.1 什么是速率双重稳健性?
首先区分两个概念:
- 双重稳健一致性:只要结果模型
q(W)和倾向得分模型g(W)中至少有一个被正确设定(或一致估计),那么AIPW估计量ψ_hat_aipw就是ψ的一致估计量。这是传统意义上的“双重稳健”。 - 速率双重稳健性:这是比一致性更强的性质。它关注的是估计量收敛到真值的速度。即使两个模型
q_hat(W)和g_hat(W)的估计误差收敛速度都慢于经典的1/√n(比如都是n^{-1/4}),只要它们误差的乘积收敛速度快于1/√n,那么最终的因果估计量ψ_hat_aipw仍然可以达到1/√n的收敛速度,并且是渐近正态的。
形式化地说,令||q_hat - q||和||g_hat - g||表示两个 nuisance function 估计量的误差(例如,用L2范数衡量)。如果||q_hat - q|| * ||g_hat - g|| = o_p(1/√n),那么√n(ψ_hat_aipw - ψ)会依分布收敛到一个均值为0、方差有限的正态分布。
为什么这如此重要?许多灵活的机器学习算法(如随机森林、梯度提升树、神经网络)在非参数设定下的最优收敛速率通常慢于n^{-1/2}。例如,在温和条件下,它们可能达到n^{-1/4}或n^{-1/3}的速率。对于非双重稳健的估计器(如G-计算ψ_gcomp),其误差主要受||q_hat - q||支配,因此整体收敛速率也被拖慢为n^{-1/4}。这意味着即使样本量很大,估计量的波动仍然很大,中心极限定理不适用,基于正态近似构建的置信区间会失效。而速率双重稳健性为使用这些“慢速”但更灵活的机器学习算法进行有效统计推断提供了理论保障。
5.2 速率双重稳健性的证明思路
理解为什么AIPW具有这个性质,需要分析其误差分解。通过冯·米塞斯展开,AIPW估计量的误差可以分解为:ψ_hat_aipw - ψ = (Pn - P)φ(O, P_hat) + R_n其中(Pn - P)f = (1/n)Σ_i f(Oi) - E[f(O)]是经验过程,R_n是余项。
- 第一项(经验过程项):在采用了样本分割(如交叉拟合)后,这项可以证明是
o_p(1/√n)。这是样本分割的关键作用之一。 - 第二项(余项 R_n):对于我们的AIPW估计量,经过代数运算(详见附录C),这个余项可以化为一个关键形式:
R_n ≈ -E[ (1/g_hat(W)) * (g(W) - g_hat(W)) * (q(W) - q_hat(W)) ]更精确地说,在一定的正则条件下(如倾向得分有界远离0和1),余项主要被||g_hat - g|| * ||q_hat - q||所控制。
利用柯西-施瓦茨不等式,有|R_n| ≲ ||g_hat - g|| * ||q_hat - q||。因此,只要两个 nuisance function 估计误差的乘积是o_p(1/√n),那么余项R_n就是o_p(1/√n)。这样,整个估计量的误差主要由一个渐近正态的经验过程项主导,从而保证了√n-一致性。
注意事项:这里的“乘积”条件非常微妙。它意味着两个模型不需要都估计得非常精确。例如,如果
q_hat的误差率是n^{-1/8}(很慢),但只要g_hat的误差率能达到n^{-3/8}(相对较快),乘积n^{-1/2}依然满足条件。这给了我们在模型选择上的灵活性:可以将更多的建模精力放在我们更有信心的那个关系上。
6. 方差估计与统计推断
当我们确信估计量ψ_hat_aipw满足√n-一致性和渐近正态性后,就可以进行统计推断了。我们需要估计其渐近方差以构建置信区间。
6.1 基于影响函数的方差估计
理论表明,在正则条件下,√n(ψ_hat_aipw - ψ)依分布收敛到N(0, σ^2),其中渐近方差σ^2 = E[φ(O, P)^2],即高效影响函数在真实分布下的方差。
一个自然而简单的方差估计量就是使用估计的EIF的样本方差:V_hat(ψ_hat_aipw) = (1/n^2) Σ_i [φ(Oi, P_hat)]^2其中φ(Oi, P_hat) = I(Ai=0)/g_hat_{-k(i)}(Wi) * [Yi - q_hat_{-k(i)}(Wi)] + q_hat_{-k(i)}(Wi) - ψ_hat_aipw。
那么,ψ_hat_aipw的估计标准误就是SE_hat = sqrt(V_hat)。基于此,我们可以构建一个近似的95%置信区间:ψ_hat_aipw ± 1.96 * SE_hat。
6.2 方差估计的注意事项与替代方案
虽然上述基于EIF的方差估计量在理论上是相合的,但在有限样本下,特别是当倾向得分g_hat(W)接近0时,它可能不稳定(因为EIF中包含1/g_hat(W)项)。此外,它依赖于两个 nuisance function 都被一致估计的假设。
更稳健的方差估计方法:
- 自助法:特别是基于样本分割的折刀自助法。由于我们使用了交叉拟合,标准的非参数自助法(对原始样本行重采样)会破坏样本分割的结构。折刀自助法通过每次删除一个样本块(对应于交叉拟合中的一折)来估计方差,能更好地处理这种依赖结构。
- 稳健的基于估计方程的方差估计:将AIPW估计量视为一个估计方程的解,并使用三明治方差估计量。这种方法通常能提供更稳健的方差估计,尤其是在模型可能存在误设的情况下。
实操心得:在实践中,我强烈建议同时计算基于EIF的方差和自助法方差,并比较其结果。如果两者差异很大,通常表明估计可能不稳定(例如,存在极端权重),需要检查倾向得分模型或考虑使用更稳健的估计/推断方法。此外,报告结果时,除了点估计和置信区间,还应报告倾向得分和结果预测值的概要统计(如均值、分位数),以及EIF值的分布,这有助于评估估计的可靠性。
7. 常见问题、陷阱与实战技巧
在实际应用基于EIF和机器学习的因果推断时,会遇到许多教科书上不会详述的挑战。以下是我从多次实践中总结出的关键问题和应对策略。
7.1 机器学习算法的选择与调参
问题:应该用什么机器学习算法来估计q(W)和g(W)?如何调参?策略:
- 无银弹原则:没有一种算法在所有问题上都最好。建议从一组表现稳定、相对可解释的算法开始,如弹性网络、梯度提升机、随机森林。
- 集成与超级学习器:考虑使用超级学习器。它不是选择一个单一算法,而是将多个候选算法(如线性模型、树模型、样条等)通过交叉验证最优加权组合起来。这通常能提供更稳健、且理论上具有 oracle 性质的预测性能。
- 调参:必须使用嵌套交叉验证。外层交叉验证用于评估最终因果估计量的性能,内层交叉验证用于为每个机器学习算法选择超参数(如树的深度、学习率、正则化强度)。绝对不能用同一份数据既调参又评估因果效应,这会导致严重的过拟合和偏倚。
- 算法特异性考量:
- 对于
g(W)(倾向得分):确保算法能输出概率(而非仅类别)。逻辑回归、梯度提升分类器、随机森林(设置predict_proba)是常见选择。要警惕概率预测过于接近0或1。 - 对于
q(W)(结果模型):选择适合结局变量类型的算法(线性回归、��松回归、生存模型等)。对于连续结局,注意检查残差;对于二元结局,确保预测值在[0,1]区间。
- 对于
7.2 极端倾向得分与不稳定性
问题:当g_hat(W)非常小(接近0)时,逆权重1/g_hat(W)会爆炸式增大,导致个别样本对估计产生过大影响,方差急剧增加,估计不稳定。解决方案:
- 修剪:设定一个阈值
τ(如0.01, 0.05, 0.1),将所有小于τ的g_hat(W)设置为τ,或将所有大于1-τ的设置为1-τ。这是一种常见做法,但会引入轻微偏倚。 - 稳定权重:使用稳定化权重,即用边际概率
P(A=0)除以倾向得分:P(A=0)/g_hat(W)。这可以缩小权重的范围。 - 双重稳健估计的平衡性:AIPW本身对极端权重比纯逆概率加权估计更稳健,因为它的第二项
q_hat(W)起到了“锚定”作用。但极端值仍需关注。 - 诊断:始终绘制倾向得分的分布图(按处理组分层),并计算权重(
1/g_hat(W)或I(A=0)/g_hat(W))的摘要统计(如均值、标准差、最大值、第99分位数)。如果最大权重大于20或30,就需要警惕。
7.3 样本分割的具体实施与数据利用
问题:K折交叉拟合具体怎么做?K选多少?数据量小怎么办?实施细节:
- K的选择:通常K=5或10。更大的K(如10)能更充分地利用数据训练模型,减少因样本分割带来的效率损失,但计算成本更高。K=5是一个较好的折中。在样本量较小(如n<500)时,甚至可以考虑留一法交叉验证,但计算量巨大。
- 随机化与分层:在分割数据前,务必随机打乱数据顺序。对于分类问题或处理组别不平衡时,可以考虑分层K折分割,确保每一折中处理组和对照组的比例与整体大致相同。
- 小样本策略:样本量很小时,样本分割会导致每个训练集更小,模型估计误差更大。此时:
- 可以考虑使用不需要样本分割的、满足Donsker类条件的机器学习算法(如高度自适应套索)。但这限制了算法选择。
- 或者,使用更简单的参数模型(如果可信),以避免对样本分割的强依赖。
- 必须进行更广泛的敏感性分析,并谨慎解读结果。
7.4 模型误设与双重稳健性的失效
问题:双重稳健性不是说只要一个模型对就行吗?为什么我的结果看起来还是有问题?澄清与排查:
- “正确”的含义:双重稳健一致性中的“正确设定”,指的是模型能够一致地估计真实的函数(如
q(W)或g(W))。对于非线性、非参数模型,这通常意味着随着样本量增大,估计误差收敛到0。如果两个模型都严重误设,AIPW可能仍然是有偏的。 - 诊断:
- 倾向得分平衡性检查:在加权后(使用稳定化权重或AIPW权重),检查协变量在处理组间的分布是否平衡。可以使用标准化均值差等指标。不平衡可能提示倾向得分模型误设。
- 结果模型预测检查:比较结果模型的预测值
q_hat(W)与观测值Y在验证集上的表现(如R²、校准图)。糟糕的预测性能可能表明模型误设。 - EIF的均值:理论上,估计的EIF的样本均值应接近0。计算
(1/n)Σ_i φ(Oi, P_hat),如果它显著不为0,可能提示模型误设或数值计算问题。
- 补救:如果怀疑模型误设,尝试:
- 在模型中添加交互项或高阶项。
- 使用更灵活的机器学习算法。
- 考虑不同的模型设定并进行比较。
7.5 置信区间的覆盖问题
问题:基于渐近正态性构建的置信区间,在有限样本下覆盖率可能不足(即实际覆盖率低于名义水平,如95%)。原因与对策:
- 样本量不足:渐近性质是大样本下的近似。样本量较小时,正态近似可能不佳。可考虑使用自助法(特别是折刀法)来构建置信区间,它可能提供更好的有限样本性质。
- 极端权重:如前所述,极端倾向得分会导致EIF方差估计不稳定。修剪或使用稳健方差估计方法。
- 机器学习误差:如果 nuisance function 的估计误差收敛太慢,乘积条件
o_p(1/√n)在有限样本下可能不成立。尝试使用收敛速度有理论保证的算法(如高度自适应套索),或增加样本量。 - 进行模拟研究:在应用前,如果条件允许,可以基于与你的数据结构类似的已知参数设置进行模拟。这能帮助你评估所选方法和算法在你的样本量下,置信区间的实际覆盖概率是否可接受。
将基于高效影响函数的机器学习因果推断方法应用于实践,是一个融合了统计理论、算法选择和编程实现的系统性工程。它放弃了简单的参数假设,换来了对复杂数据关系的适应能力,但同时也引入了新的复杂性和对严谨实施的要求。理解从识别假设、EIF推导、估计器构建到性质验证的完整逻辑链条,是正确应用和合理解读结果的基础。而关注实操中的种种细节——从样本分割的实施、机器学习算法的调校,到极端权重的处理和稳健的方差估计——往往决定了分析的成败。这条路虽然技术要求更高,但它为我们回答那些至关重要的因果问题,提供了更可靠、更灵活的现代工具。
