多重插补和模型选择


21

当您具有要估计的先验线性模型时,多重插补非常简单。但是,当您实际上要进行一些模型选择时,事情似乎有些棘手(例如,从更大的一组候选变量中找到“最佳”预测变量集-我正在特别考虑使用R的LASSO和分数多项式)。

一种想法是使模型适合具有丢失值的原始数据,然后在MI数据集中重新估计该模型,并像平常一样合并估计。但是,这似乎有问题,因为您期望出现偏差(或者为什么首先要选择MI?),这可能会导致从一开始就选择“错误的”模型。

另一个想法是要在每个MI数据集中使用任何模型选择过程-但是如果结果包含不同的变量集,您将如何合并结果呢?

我曾经想过要堆叠一组MI数据集,并将它们分析为一个大型数据集,然后将其用于拟合单个“最佳”模型,并包括随机效应以说明您对以下问题使用重复测量的事实每个观察。

听起来合理吗?还是天真地令人难以置信?任何有关此问题的指针(具有多个插补的模型选择)将不胜感激。


2
请编辑此帖子,以将“模型拟合”更改为“模型选择”。讨论正在使用的方法也将很有帮助。例如,如果使用基于p值的逐步模型选择,则绝对不允许堆叠估算数据。您可以对数据进行引导重采样,包括缺少数据,应用MI以及随后的模型选择过程,并为所选模型计算准确的“ p值”。
AdamO

在第二段中,您为什么认为该方法没有考虑多重插补的问题?另外,您在使用什么软件?
彼得·弗洛姆

Answers:


10

您可以做很多事情来从多重推算数据中选择变量,但是并不是所有的变量都能得出适当的估计值。有关各种可能性的比较,请参见Wood等人(2008)Stat Med

我发现以下两步过程在实践中很有用。

  1. 独立地将首选变量选择方法应用于估算数据集。您最终将获得m个不同的模型。对于每个变量,计算其在模型中出现的次数。选择至少出现在m个模型中一半的那些变量。mmm
  2. 使用Wald统计量或似然比检验的p值(根据多重插补数据集计算得出)作为进一步逐步选择模型的标准。m

包括预选择步骤1以减少计算量。有关R中使用的两步法的代码示例,请参见http://www.stefvanbuuren.nl/mi/FIMDmaterials/src/fimd6.r.txt(第6.4.2节)mice()。在Stata中,您可以使用来执行步骤2(对所有变量)mim:stepwise


Stef,请提供Stat Med出版物的链接。我也尝试美化您的答案。
2013年

1
仅当您从一组预定的回归变量中进行选择时,建议的例程才有意义。但是,如果我选择说二次方趋势,5结和9结的B样条曲线,并且可能是CART,那么我不确定如何应用此建议。
2013年

Stas,该过程假定插补模型正确。特别是,插补方法必须充分捕获数据,以后您可能会对所有功能感兴趣。因此,如果您要在完整数据分析中包括二次项或B样条,则应以这样的方式建立估算模型,即将这些特征保留在估算数据中(请注意:实际上可能很难实现,但这本身就是一个主题)。假设插补模型已正确指定,那么我要说两步选择程序适用。
Stef van Buuren

好吧,那么归纳模型基本上必须是尽可能丰富的模型。我遇到了无法完全解决的情况,例如过参数化逻辑模型中的完美预测。
2013年

同意 您必须根据最丰富的模型进行估算。因此,首先定义您要执行的最复杂的分析,然后为该插补模型进行调整。这在实践中可能难以实现,并且随着完整数据模型的复杂性增加而变得更加困难。没有免费的午餐。Logistic回归中的完美预测已通过多种方式得到解决,并且不需要呈现主要的绊脚石。
Stef van Buuren

4

这很简单:您可以应用标准的MI合并规则-但是在整个估算数据集中不受支持的变量影响将不那么明显。例如,如果未在特定的估算数据集中选择变量,则其估计值(包括方差)为零,这在使用多重插补时必须反映在所使用的估计中。您可以考虑采用自举法来构建置信区间以合并模型选择的不确定性,请参阅此最新出版物,该出版物解决了所有问题:http : //www.sciencedirect.com/science/article/pii/S016794731300073X

我会避免使用务实的方法,例如,如果在m / 2个数据集中选择了某个变量,或者选择了类似的变量,那么这将是不现实的,因为推断并不清晰,而且乍一看比它复杂。


3

我遇到了同样的问题。

我的选择是所谓的“多重插补套索”。基本上,它将所有估算的数据集组合在一起,并采用组套索的概念:每个候选变量将生成m个虚拟变量。每个虚拟变量都对应一个估算的数据集。

然后将所有m个虚拟变量分组。您要么在所有估算数据集中丢弃候选变量的m个虚拟变量,要么将其保留在所有估算数据集中。

因此套索回归实际上适合所有推算数据集。

检查纸张

Chen Q.&Wang,S.(2013)。“多元插补数据的变量选择及其在二恶英暴露研究中的应用”,《医学统计》,32:3646-59。

和相关的R程序


我想我实际上是几年前通过电子邮件发送给您的:)
DL Dahly

1

我一直面临着类似的问题-我有一个数据集,从一开始我就知道要包含所有变量(我对系数的兴趣比对预测的兴趣更大),但是我不知道先验应该指定哪些交互。

我的方法是写出一组候选模型,执行多个估算,估算多个模型,然后简单地保存和平均每个模型的AIC。选择了具有最低AIC平均值的模型规格。

我考虑过要添加一种更正,其中我会惩罚AIC中的两次输入之间的差异。然而,经过反思,这似乎毫无意义。

这种方法对我来说似乎很简单,但是我是自己发明的,而且我也不是著名的统计学家。在使用它之前,您可能希望等到人们纠正我(不客气!)或赞成这个答案。


谢谢回复。不幸的是,我真正感兴趣的是使用更多的自动化/探索性模型选择方法,这些方法不会使自己首先选择一组合理的候选模型。
DL Dahly 2013年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.