Re: Don’t Let Your Analysis Go to Seed: On the Impact of Random Seed on Machine Learning-based Causal Inference¶
作者: Nicholas T. Williams, Anton Hung, Kara E. Rudolph
来源: Epidemiology
主题: 因果推断
相关性: 5/10
机构绿灯: Columbia University(US News 前 50,免分进入精读)
链接: https://doi.org/10.1097/ede.0000000000001860
一、领域脉络与小综述¶
这个方向是什么¶
本子方向聚焦于机器学习(ML)辅助的因果推断估计量的实际稳定性,特别是随机种子依赖问题。当使用ML模型(如随机森林、神经网络)作为第一阶段的拟合模型时,同一数据因初始随机种子(如训练/验证集划分、模型初始化)的变化会导致最终因果估计量(如平均处理效应ATE)产生非可忽视的波动。这一问题的核心在于:ML模型的拟合过程包含内在随机性,这种随机性如何通过交叉拟合(cross-fitting)等步骤放大或缩小,最终影响因果推断的可信度。这是一个实践驱动但有理论根基的子方向——它直接关联到双机器学习(DML)等现代因果推断方法的操作可靠性,而非其渐近理论的有效性。
发展脉络¶
-
奠基工作(DML理论,~2016-2018):Chernozhukov等人(2018)[被引参考文献1, 2] 系统建立了DML的渐近理论,证明在交叉拟合(K-fold cross-fitting)框架下,即使第一阶段ML估计量的收敛速度慢于参数根号n速率,最终的因果估计量仍可达到根号n一致性和渐近正态性。关键假设是第一阶段估计量需在某个Donsker类之外(即不满足Donsker条件的复杂函数类),或通过交叉拟合来规避Donsker条件。此时,交叉拟合折数K的选择被视为一个实践参数——理论只要求K为有限常数(如K=2, 5, 10),不依赖样本量n。留下口子:理论没有给出K与random seed波动之间的定量关系,且未考虑实践中最常使用的K=2是否最优。
-
主要进展(实践困局,~2023):Schader等人(2023)[作者正文引用] 明确提出一个具体警告:在使用ML估计量的因果推断中,随机种子(random seed)的选择可导致估计量的显著波动。他们通过一个高维数据生成机制(n=100,200个模拟数据集)进行了模拟,仅使用2折交叉拟合,发现不同种子下同一数据集的ATE估计存在可观差异(如图1所示)。一个数据集上的估计可以跨越从负到正的范围。他们建议通过多次运行(多种子)取平均作为解决方案。留下口子:他们的模拟固定使用2折交叉拟合,这个折数可能不是一个合适的选择,且直接影响结论的普遍性。
-
当前前沿(这篇论文):Williams等人(2024)(本论文)直接回应Schader等人的警告,指出其结论可能不必要地引起恐慌(unnecessarily alarmist)。核心论证非常直接:同样是n=100的高维模拟,简单地把交叉拟合折数从2增加到40,跨种子的估计量方差(within-dataset variance)下降约98%(0.398 vs. 0.00813,以10^4为尺度)。他们主张:折数本身的选择是问题的根源,而不是ML模型的随机种子;增加折数比多次取平均更简单,且不需要额外工作。本文的定位:一篇简短的Letter(书信),不是新理论或方法论论文,而是对已有结果的再验证与修正。
子线索聚类¶
这篇论文的参考文献和引用关系主要集中在两条子线索上:
-
线索1:双/交叉拟合(Cross-fitting)的实践参数与理论选择。这一簇文献(如Chernozhukov et al. 2018, Kline et al.被引参考文献3, Newey & Robins被引参考文献4)讨论交叉拟合的理论基础:它如何规避Donsker约束,以及折数K在大样本下的渐近行为。但值得注意的是,理论文献几乎从未关注K与随机种子波动之间的直接关系——K的增加在理论上会减少第一阶段的估计方差(因为每个子样本变大),但这与seed方差不是同一件事。本论文直接实证了这一关系。
-
线索2:ML估计量在因果推断中的可重复性(reproducibility)。Schader等人的工作代表了这一线索的兴起——他们将随机种子视为因果推断中一个新的、令人不安的方差来源。本论文没有挑战seed确实产生方差这一事实,而是挑战它的严重程度,并提供简单的调整(增加折数)来补救。
该方向在追问的核心问题¶
- 交叉拟合折数K的选择如何影响因果估计量的有限样本稳定性?——本论文给出了一个具体数字(2 vs. 40在n=100时),但没有推广到一般情况。
- K的选择与数据维度(p/n比例)、ML模型复杂度之间是否存在一个可导出的权衡?——折数过多会减小每个训练集大小,造成第一阶段估计不稳定,进而可能增大多种子方差。这是一个典型的bias-variance tradeoff,但本文未触及。
- 多种子取平均与增加折数,哪种策略更有效/更鲁棒?——Schader建议前者,本文建议后者,但没有在更广泛的设定(不同n, p, 不同ML模型)下比较两者。
- 当使用非交叉拟合的策略(如样本分裂,sample-splitting)时,随机种子问题是否存在?——如果只分裂一次(不交叉),seed的影响可能更大,因ML模型的随机性更难被平均掉。
⚠️ 作者的Framing¶
作者将缺口框架为:
“Schader等人的模拟只用了2折交叉拟合,这可能夸大了问题。”
“简单地将折数增加到适合数据集维度的水平就可以解决seed依赖性。”
这是非常明确的窄化对手策略: - 淡化:多种子取平均作为解决方案的合理性——作者承认“这是有效方法”,但说“很可能不必要”。 - 回避:作者没有回答“40折在n=100时是否过于极端?”——40折意味着每个验证集只包含2.5个样本(100/40),训练集大小为97.5。这个折数在大样本下不可行(计算成本),也远低于实践推荐(5折或10折)。作者只在一个数据配置(n=100, p高维)下进行了测试。 - 什么明显该存在却没被引用?:没有引用关于交叉拟合折数与有限样本bias/variance tradeoff的理论文献,如中微子文献(极小子样本)下弱工具变量或高维ML的偏差放大效应。这些文献可能说明,在n很小时极端折数有严重局限性。如果读者对子线索2感兴趣,应主动去查:当折数k接近n时,第一阶段估计的过拟合风险与偏差如何影响ATE估计? 这与种子方差可能是两个不同的方差源,需要分解。 - 张力:未见明显对立的引用关系——Chernozhukov等人的理论没有涉及seed方差,Schader等人的实证也未与理论冲突,只是不同的关注层面。本论文与Schader的实证结果没有矛盾(都承认seed会产生方差,只是程度不同),矛盾在于建议的补救方案。
二、最核心、最简单的例子 / 数学问题¶
第一步:符号、模型与可观测数据交代¶
本论文的核心是一个模拟实验,如下面所述,但所有概念在回答之前的子方向时已确立。我们需要先为这个应用/实证答文建立通用的记号环境。
- 符号:
- \( \hat{\theta}_{j}^{(s,k)} \):第\( j \)个模拟数据集的ATE点估计值,第\( s \)个随机种子(\( s=1,...,100 \)),在使用的交叉拟合折数\( k \)下(\( k=2 \)或40)。
- \( \text{Var}_{s|j,k}(\hat{\theta}) \):对一个固定的数据集j和折数k,跨100个种子计算的估计量方差(称为“within-dataset estimate variance”)。这是论文的主要关注度量——它量化了随机种子对同一数据产生的波动。
- \( \text{VD}_{\text{emp}}(\hat{\theta}_{k}) \):跨200个数据集(j=1,…,200)的\( \text{Var}_{s|j,k} \)值的经验方差(variance of the empirical distribution of within-dataset variances)。这是全局稳定性度量——如果这个方差大,说明某些数据集对种子更敏感(即不稳定)而其他稳定。
- \( n=100 \):每个数据集的样本量。
- \( j=1,...,200 \):模拟数据集的数量(复制的数据集)。
- \( s=1,...,100 \):每个数据集上的随机种子数(重复的估计次数)。
- 模型(高维线性模型,从Schader等人继承):
- 数据生成机制:潜在高维线性模型(原文描述为“high-dimensional data-generating mechanism”),包含主项广义线性模型、多元自适应回归样条和随机森林的集成。未提供详细模型方程,但从上下文推断,它涉及大量协变量(p > n),处理变量X与多个协变量相关,且ATE为常数。这是一个弱identification/low-information设定(n=100,高维),可能加剧ML估计量的不稳定性。
- 可观测数据:
- 对每个数据集j,观察到100 × (X_i, Y_i, T_i)形式的n=100个样本,其中T_i是二元处理变量,Y_i是连续结果,X_i是高维协变量向量(维度未给定,但已明确为高维)。潜在量:没有明确的潜在结果(potential outcomes)定义,但ATE被定义为常数θ = E[Y(1)-Y(0)],估计方法隐含采用某种DML或基于ML的ATE估计量。
- 想要但观测不到:跨种子估计量的方差σ²_{seed},需通过100次重复来估计。真实ATE(ground truth)已知(因为是模拟的),但论文没有给出它(只关注方差的绝对尺度)。
- 关键警告:虽然这是高维模拟,但交叉拟合折数K从2到40,在n=100小样本下,当K=40时每个验证集只有2.5个样本。这意味着第一阶段ML模型的“out-of-sample”性能在这些极度的验证集上几乎不可靠,但论文仍然发现它产生了更小的种子方差——因此K的效应可能不在于验证集大小本身,而在于训练集的重叠/重复程度(40折意味着每次整个数据几乎全为训练集,97.5个样本,只留2.5个验证)。这是训练集几乎相同,只换验证小段的安排,它自然减少了种子间的方差。
第二步:最简内核¶
这不是一个“从特殊推广到一般”的证明型论文,而是一个实证反驳。最小内核可以直接视为一个对比实验设计(2 vs. 40折):
原始设定(Schader): - 生成200个数据集,每个n=100。 - 对每个数据集j,用2折交叉拟合实现DML估计(只用一个种子,但重复多个种子?原文不清楚是否只用了一个种子或已经用了多个种子——但在本论文中被改为每个数据集j重复100个种子)。 - 结果:看到折叠(未标注但可由图1推断)下同一数据集j因seed而产生巨大波动(有的从负到正)。
本论文的核心对比: - 重复上述模拟,但在两个条件下:K=2(复现Schader)与K=40。 - 跨数据集j的所有种子s计算每个数据集j的方差\( \text{Var}_{s|j, K} \)。 - 结果: - 中位数\( \text{Var}_{s|j, K=2} \approx 0.398\times 10^{-4} \) - 中位数\( \text{Var}_{s|j, K=40} \approx 0.00813\times 10^{-4} \) - 差异:减小了约98% - 跨数据集的方差(VD_emp)也减小了98%。
内核的本质是: - 什么是核心数学困难? 没有。这是一个简单的实验设计问题:低折数(小k)下,训练集划分方式、模型对划分的敏感性被放大——因为每个模型只在63.3%(2折)的数据上训练,形成的ML估计函数彼此差异大,从而种子间方差大。高折数下,训练集重叠度极高(40折时每个估计用97.5%的数据),ML模型更稳定(都在几乎相同数据上训练),种子间方差小。 - 本文的关键想法:把注意力从“ML模型的randomness”转移到“交叉拟合的训练集重叠程度”上来。只要训练集几乎相同(高折数),即使ML模型自身在训练时有不同的seed(如随机森林的种子、初始化的种子),其输出的ATE估计也不会差太多。
一句话讲完:
当交叉拟合折数K很高(接近n)时,所有模型的训练集几乎完全重叠,导致即使种子不同也会产生非常相似的估计量;因此seed依赖问题在K很小时才严重,且解决方式不是多种子平均,而是直接增加K。
三、这篇论文做了什么¶
本文是发表在《Epidemiology》上的一篇Letter to the Editor(书信体),是对Schader等人(2023)文章的回应。它采用了一个简短的模拟实验来提出一个实践修正建议。
三句话¶
- 研究了什么问题:检查Schader等人(2023)关于机器学习因果推断估计量随机种子依赖性的警告是否可能因他们固定使用2折交叉拟合而被夸大。
- 核心方法:采用与Schader相同的模拟数据生成机制(高维线性模型,n=100),在200个数据集上对每个数据集用100个不同的随机种子重复估计ATE,使用集成模型(GLM + MARS + Random Forest)。比较在2折与40折交叉拟合下的估计稳定性。
- 主要结论:增加交叉拟合折数(从2到40)可以大幅降低跨种子的估计方差——中位数方差降低约98%(0.398×10⁻⁴ → 0.00813×10⁻⁴),跨数据集的经验方差也降低98%(图3)。作者认为简单地增加折数比多种子平均更有效且更简单。
关键设定与假设¶
- 数据生成机制:从Schader等人继承,高维线性模型(n=100, p > n)。未提供具体维度或参数结构,但注明“high-dimensional”(大于样本量)。这个设定面临协方差估计不稳定和ML模型负担巨大的问题。
- 估计量:一个集成(ensemble)模型,包括主项广义线性模型(GLM)、多元自适应回归样条(MARS)和随机森林(RF)。集成方法用于第一次阶段(可能估计倾向得分或结果回归),隐含地使用某种形式的DML或IPW/AIPW。没有明确说明是否使用DML框架或哪个具体因果估计量。
- 交叉拟合设定:K=2 与 K=40。这是核心比较。当K=40时,数据被分为40个子集,每个子集有2.5个观测值(n=100/40)。这种设置不是常规推荐——实践中通常K=5或K=10。作者未论证为什么40是“适合数据集维度的水平”,也未提供选择这个数字的理论或启发式理由。
- 与Schader的设定差异:Schader的原始模拟可能只用了每个数据集一个种子(或少量种子);本论文明确使用每个数据集100个种子,提供within-dataset方差的经验分布。
- 假设:由于是纯模拟,没有统计假设。核心假设是数据生成机制与Schader完全相同——这是主张合理性的基础。但作者没有验证这一点,只是声明“使用相同的高维数据生成机制”。
主要结果¶
由于是简单的模拟,不是定理性论文,结果以图形和数值方式呈现:
- 图1:在40折下复现Schader的图1。该图显示了200个数据集的ATE点估计(每个数据集一个种子?)——但在40折下,这些估计集中在很小的范围内(约为[0.2, 0.6]的区间),而原文(2折)的估计范围从-0.5到1.0。这表明增加折数后跨数据集的标准偏差明显更小(但这里跨数据集,不是跨种子)。
- 图2:箱线图显示每个数据集j在100个种子下的ATE点估计分布。两种折数的箱线图明显不同:2折的箱线更长(更大的IQR),而40折的箱线高度压缩(几乎一条线)。文字提供中位数within-dataset方差:2折为0.398×10⁻⁴,40折为0.00813×10⁻⁴。
- 图3:直方图展示200个数据集的within-dataset方差的经验分布。2折的方差分布从0到约1.5×10⁻⁴很宽,中位数0.398;40折的方差分布集中在0附近(从0到约0.03×10⁻⁴,几乎不可见),经验方差(variance of the variances)降低了98%——这意味着2折下某些数据集比另一些更不稳定,而40折消除了这种差异。
与baseline对比:baseline是Schader的2折结果。作者通过直接对比证明了40折的优越性。没有与多种子平均方案的直接对比。
证明路线与技术技巧¶
整体路线:这不是理论证明论文,所以没有定理—证明结构。但它的实验设计可被分解为一个简单的逻辑链:
- 复现(取K=2) → 确认Schader的发现(seed确实产生方差)。
- 修改(取K=40) → 在相同的模拟设定下测试。
- 对比 → 量化方差的减少(98%)。
- 推理 → 增加折数本身就解决了seed依赖性问题。
- 主张 → 多种子平均“不必要”。
关键跳跃点:从“40折有效”到“因此增加折数是简单解决方案”——这是一个推理跳跃,因为它假设: - (a)在其他设定(不同n、p、ML模型)下也有效。 - (b)40折是合适的折数,没有引入其他问题(如第一阶段拟合偏差)。 - (c)多种子平均与增加折数不可兼得或不更优。
技术技巧: - 模拟设计(Monte Carlo):B=200个数据集,R=100个种子,这是对within-dataset方差做经验分布估计。 - 集成估计量:使用三种模型集成,增加了现实感(不是纯理论方法)。 - 比较:中位数方差与经验方差的比较。
只有一个实证例子(就是模拟),没有真实数据应用。
真实例子¶
整篇论文没有真实应用。它是一个构造的模拟研究,使用与Schader相同的高维数据生成机制。它唯一展示了在构造数据上的行为——目的是反驳Schader的泛指结论而非证明自己的方法的普适性。因此:本文为纯模拟/无实证例子。
🔎 结论是否比证明窄¶
是的,关键结论被明显泛化: - 作者说:“只需将交叉拟合折数增加到适合数据集维度的水平”,但: - 没有定义“适合数据集维度的水平”——40/100为什么是合适的?理论依据是什么? - 只测试了n=100(一个样本量)和一个数据生成机制。没有提供泛化到不同n、p、ML模型类别的证据。 - 没有检验:当K增加到大于某个阈值时,会不会有负效果(如过拟合,偏差增加等)。文献中交叉拟合折数通常是5或10,没有推荐到40。
- 作者声称:“增加折数...不需要额外工作”——**
- 计算成本:40折需要拟合ML模型40次。虽然n=100时模型拟合快,但对于大数据集(n>10^5),40折的计算成本会很高。作者没有提到这个代价,也没有对比折数增大导致的计算-精度tradeoff。
- 他们对Schader的回应是“不必要的恐慌”,但他们的对比仅在一个数据设定下进行。如果Schader声称seed在许多设定下都重要,这个反驳就需要更广泛的证据。
具体可核验的地方: - 正文图1-3显示的效果在这个特定模拟中成立。视察图和数字,可看到效果是真实的。但泛化到事件的因果推断(如流行病学真实数据)需要更多研究。
四、开放问题(点到为止)¶
-
折数选择的准则:在一般情况下,K应该多大才能有效减小seed方差?论文只测试了n=100时K=40。如果n=1000、n=10,000呢?折数与n之间的关系是什么?这是一个开放问题,扎根于作者自己的建议:“Guidance on choosing the number of cross-fitting folds that balances estimator stability with computational cost should be an area of future research.”(文末)
-
折数选择与第一阶段ML模型复杂度的互动:当使用更复杂的ML模型(如深度神经网络、XGBoost等)时,K的影响是否会增长?论文只使用了GLM/MARS/RF的集成——这些好调模型的内部seed方差可能相对较小。对于更大、更不稳定的模型(如boosting、NN),即使K很大,seed方差仍可能显著。扎根于没有对ML模型类别进行改变/比较——整篇论文固定了模型集成。
-
多种子平均 vs. 增加折数的直接比较:论文声称多种子平均“很可能不必要”,但未提供直接比较(例如:K=10 + 多种子平均的平均 vs. K=40不加平均,哪个表现更稳定?)扎根于文字“While doing so is a valid approach, it is also likely unnecessary” ——没有证据支持。
-
实证推广性:论文的结论是否在真实流行病学数据上成立?结构会复制吗?——扎根于本文为纯模拟、无真实数据验证。如果读者想追击这个问题,建议做简单的复现实验,用R或Stata的一些公开NHANES/NHANES_III数据套用同样的集成方法,检验在K=10 vs. K=2时seed方差的降低比例——这利用研究者熟悉的‘因果推断估计’和‘软件’武器,可快速完成。
⚠️ 再次强调:不要因为这篇论文简短就忽略它——它是一个高质量的反驳(rebuttal)案例,展示了实践统计的重要方面:当一个问题出现时,先检查对手的方法设定是否本身有缺陷。它对您(陈星宇)的直接价值是:展示了DML类估计量在实践中折数选择的巨大影响——这是您已熟悉的'因果推断估计理论'武器库可以扩展的点。您可以用causalml或EconML包快速复现,并加入你自己关于更高阶U-统计量与交叉拟合的类比(如果认为有意义)。不做判断——只提供信息。
Maintained by 陈星宇 · Homepage · Source on GitHub