通过回归其他参数来估算缺失参数值

机器算法验证 r 机器学习 分类 支持向量机 缺失数据
2022-03-27 19:38:24

我有一个关于缺失值估算的问题。支持向量机不适用于缺失值,因此在实践中我因此 na.omit 任何参数(例如 X1 到 X10)上具有缺失值的行/案例。从理论的角度来看,如果一个人通过基于例如多元回归、SVM 对剩余参数的 SVM 预测该参数的缺失值来为一个缺失参数(比如说 X1)的值估算缺失值,那么可以提高整体分类性能(例如 X2-X10)?提出这个问题,因为实践中的表现常常令人失望,因此想知道是否有理论上的原因说明我的上述方法可能是无稽之谈/无用。

以类似的方式 - 由于决策树确实可以处理缺失值,因此应该使用现有数据集的全部信息,我是否正确地假设在这种情况下,从理论的角度来看,绝对没有增值/收益通过使用其他输入参数来估算缺失值?

2个回答

除了首先是什么机制导致缺失数据的问题(随机缺失、非随机缺失、完全随机缺失)之外,使用回归插补的问题在于它不允许插补值的不确定性 -因此标准误差会太小。

您可以通过在预测中添加“噪声”来允许不确定性来扩展这个想法,例如基于回归的残差方差并多次执行此操作以获得合理值的分布。您也可以通过允许回归参数的不确定性来进一步扩展这个想法 - 例如。使用贝叶斯回归模型。

然后,您将拥有几个完整的数据集,每个数据集都包含缺失的不同的合理值。这是使用链式方程的“多重插补”的基础,这本质上是 MICE 包中特定方法的实现方式。然后在每组完整数据上运行模型,并根据完善的规则(鲁宾规则)汇集结果。

另一个需要考虑的问题是,插补和感兴趣的模型之间应该存在对应关系(这在多重插补文献中被称为“一致性”)。

这方面有大量文献。Little 和 Rubin的经典著作是一个很好的起点:

缺失数据的统计分析,第 2 版(概率与统计中的威利系列)2002

通过回归估算缺失值是基于这样的隐含假设,即真实值(缺失的值)确实依赖于用于估算的剩余变量。如果确实如此,这种推算方式会很好,而如果你得到的与真实值有很大差异,那么这种推算方式就会产生误导。一般来说,缺失值插补的问题在于,无法观察到这个假设实际上有多好,因为缺失值是缺失的。所以理论上这个问题不能以任何一种方式回答(决策树也是如此)。原则上这是否好取决于您无法观察到的事情(当然您可以使用交叉验证等来检查它是否有效)。