摘要
动机:基于高通量技术的现代数据采集常常面临数据缺失的问题。这种大规模数据分析中常用的算法通常依赖于一个完整的集合。缺失价值估算为这一问题提供了解决方案。然而,大多数可用的imputation方法仅限于一种类型的变量:连续或分类。对于混合类型数据,不同类型通常分别处理。因此,这些方法忽略了变量类型之间可能存在的关系。提出了一种可以同时处理不同类型变量的非参数方法。
结果:我们比较了几种最先进的缺失值归因方法。我们提出并评估了一种基于随机森林的迭代imputation方法(missForest)。通过对许多未修剪的分类树或回归树进行平均,随机森林本质上构成了一个多重imputation方案。使用随机森林的内置袋外误差估计,我们能够估计imputation误差,而不需要测试集。对来自不同生物领域的多个数据集进行评估,人工引入的缺失值从10%到30%不等。我们展示了missForest可以成功地处理缺失值,特别是在包含不同类型变量的数据集中。在我们的比较研究中,missForest优于其他方法,特别是在数据设置中,复杂的相互作用和非线性关系被怀疑。misforest的袋外imputation误差估计证明在所有设置下都是足够的。此外,missForest显示出诱人的计算效率,可以处理高维数据。
可用性:ℝ包missForest可从http://stat.ethz.ch/CRAN/.
1介绍
在数据分析中,缺失值的归因往往是至关重要的一步。许多已建立的分析方法需要完全观察到的数据集,没有任何缺失值。然而,在今天的医学和生物学研究中,这种情况很少出现。在这些领域不断发展的新的和增强的测量技术为数据分析人员提供了挑战,不仅是由于高维多元数据(其中变量的数量可能大大超过观测数据的数量),而且由于存在连续变量和分类变量的混合数据类型。在我们的语境中,分类变量可以是任何类型,从质谱仪的技术设置到疾病状态的诊断专家意见。此外,这样的数据集通常包含复杂的相互作用和非线性关系结构,这是众所周知的难以用参数化过程捕获的。
最流行的imputation方法,比如k最近的邻居[KNNimputeTroyanskayaet al。(2001)]对于连续数据,饱和多项模型(谢弗,1997),以分类数据及用链式方程式进行多元imputation [MICE,Van Buuren和Oudshoorn (1999)]对于混合数据类型依赖于调优参数或参数模型的规范。在没有先验知识的情况下选择这样的调优参数或模型是很困难的,并且可能会对方法的性能产生巨大影响。除MICE外,上述方法和大多数其他的imputation方法都局限于一类变量。此外,所有这些方法都对数据或变量子集的分布进行了假设,导致了可疑的情况,例如假设正态分布。
关于混合型数据归责的文献相当少。它最早出现在发展中的多重归责领域鲁宾(1978).Little和Schluchter (1985))提出了一种结合连续数据的多元正态模型和分类数据的泊松/多项模型的最大似然估计方法。这一观点后来在《圣经》一书中得到了扩展利特尔和鲁宾(1987)).另请参阅李(1988),鲁宾和谢弗(1990),谢弗(1997).提出了一种更精细的混合数据回归模型组合方法Van Buuren和Oudshoorn (1999)使用链式方程。MICE中的条件模型可以针对每个不完全变量中的缺失数据进行指定。因此,不需要指定覆盖整个数据集的多元模型。然而,假设存在这样一个完整的多元分布,并且缺失值是从基于此完整分布的条件分布中采样的(有关详细信息,请参见第三节).另一种使用可变条件分布的类似方法是由Raghunathanet al。(2001)称为序贯回归多元imputation。与MICE不同的是,预测因子不能是不完整的。该方法侧重于调查数据,因此包括对个体子样本的限制和基于变量领域知识的逻辑界限的策略,例如,只有女性可以记录多次怀孕。
我们的动机是引入一种可以处理任何类型输入数据的imputation方法,并对数据的结构方面做尽可能少的假设。随机森林[RF,Breiman (2001)]能够处理混合类型的数据,作为一种非参数方法,它允许交互和非线性(回归)效果。我们通过在第一步中对观测值训练RF来解决缺失数据问题,然后预测缺失值,然后迭代进行。Mazumderet al。(2010)使用类似的方法来解决矩阵补全问题,使用软阈值SVD迭代替换缺失值。我们选择RF是因为它可以处理混合类型的数据,并且在贫瘠的条件下(如高维、复杂的交互和非线性数据结构)表现非常好。由于其准确性和稳健性,射频非常适合用于经常存在此类条件的应用研究。此外,RF算法允许估计袋外(OOB)错误率,而不需要测试集。有关详细信息,请参见Breiman (2001).
这里我们将我们的方法与k-最近邻imputation [KNNimpute,Troyanskayaet al。(2001)]和缺失模式交替套索(MissPALasso)算法Städler和Bühlmann (2010),只适用于有连续变量的数据集。对于分类变量和混合变量的情况,我们将该方法与MICE算法进行了比较Van Buuren和Oudshoorn (1999)和一个编码为KNNimpute的虚拟变量。对来自生命科学不同领域的几个数据集进行比较,并使用不同比例的缺失值。
我们表明,在使用的数据集上,无论变量类型组成、数据维数、数据来源或缺失值的数量,我们的方法都具有竞争力或优于比较方法。在某些情况下,imputation误差降低高达50%。这种性能通常只需要几次迭代就能达到,这使得我们的方法在计算上也很有吸引力。OOB imputation error估计值非常接近真实的imputation error,其平均比例偏差不超过10-15%。此外,我们的方法不需要调优参数,因此易于使用,不需要关于数据的先验知识。
2方法
我们假设X=(X1,X2、……Xp)做一个n×p-维数据矩阵。由于RF作为回归方法的优点,我们建议使用RF来估算缺失值。RF算法有一个内置的例程来处理缺失值,通过在初始平均输入数据集上训练后,加权RF邻近度变量中观测值的频率(Breiman 2001).然而,这种方法需要一个完整的响应变量来训练森林。
相反,我们使用在数据集的观察部分上训练的RF直接预测缺失值。对于任意变量X年代包括条目中缺失的值我(年代)管理信息系统⊆{1,…,n}我们可以将数据集分为四个部分x(年代)奥林匹克广播服务公司是典型的不完全观察自索引我(年代)奥林匹克广播服务公司对应于变量的观测值X年代.同样的,x(年代)管理信息系统通常不会完全丢失。
变量的观测值X年代,表示为y(年代)奥林匹克广播服务公司;
变量的缺失值X年代,表示为y(年代)管理信息系统;
其他变量X年代与观测我(年代)奥林匹克广播服务公司={1,…,n}∖我(年代)管理信息系统用x(年代)奥林匹克广播服务公司;而且
其他变量X年代与观测我(年代)管理信息系统用x(年代)管理信息系统.
首先,对中缺失的值进行初步猜测X使用平均imputation或其他的imputation方法。然后,对变量排序X年代,年代= 1,…,p根据缺失值的数量,从最少的数量开始。对于每个变量X年代时,通过先拟合一个具有响应的RF来估算缺失值y(年代)奥林匹克广播服务公司和预测x(年代)奥林匹克广播服务公司;然后,预测缺失值y(年代)管理信息系统将训练好的RF应用于x(年代)管理信息系统.反复进行归责程序,直到满足停止准则为止。伪算法1给出了missForest方法的表示形式。
当RF适合于变量的观测部分时,我们还可以得到该变量的OOB误差估计。在满足停止准则γ后,我们对同一类型的变量集进行平均,以接近真实的imputation误差。我们通过比较所有模拟运行中真实imputation误差和OOB imputation误差估计值之间的绝对差来评估这种估计的性能。
3的方法
我们将missForest与10个不同数据集上的四种方法进行了比较,在这些数据集上,我们区分了仅使用连续变量、仅使用类别变量和混合变量类型的情况。
在基因表达分析领域,最著名的连续数据集的imputation方法是KNNimpute算法Troyanskayaet al。(2001).缺少值变量Xj是通过找到它来推断的吗k最接近的观测变量,并对这些变量取加权平均值k用于归因的变量。因此,权重取决于变量的距离Xj.距离本身通常被选择为欧几里得距离。
当使用KNNimpute选择调优参数k可以对imputation的性能有很大的影响。但是,这个参数事先是不知道的。由于我们的方法不包括这样的参数,我们实现了交叉验证(算法2)来获得一个合适的参数k.
在原论文中Troyanskayaet al。(2001),在应用KNNimpute算法之前,数据没有标准化。这在基因表达数据的情况下不构成问题,因为这类数据通常由类似规模的变量组成。然而,我们正在将KNNimpute算法应用于变量尺度不同的数据集。为了避免变量基于方差的加权,我们将它们缩放到单位SD。我们也把变量设为0。在imputation之后,对数据进行重新转换,以便在原始尺度上计算误差。之所以执行最后一步,是因为missForest不需要对数据进行任何转换,而且我们希望在原始数据规模上比较方法的性能。
提出了求解连续数据,特别是高维正态数据矩阵的另一种方法Städler和Bühlmann (2010)使用em型算法。在他们的失踪模式中,交替归因和l1-penalty (MissPALasso)算法,缺失变量回归到观察到的使用lasso惩罚Tibshirani (1996).在接下来的E步中,得到的回归系数用于部分更新潜在分布。MissPALasso也有一个调整参数λ惩罚。与KNNimpute一样,我们使用交叉验证来调优λ(参见算法2)。当应用MissPALasso时,数据被标准化为正则化,其中单个λ要求不同的回归在相同的尺度上。
在与分类变量或混合变量的比较实验中,我们使用MICE算法Van Buuren和Oudshoorn (1999的多元多元imputation方案谢弗(1997).与后者相比,在MICE中指定了每个不完全变量中缺失数据的条件分布,这一特征称为完全条件规范范布伦(2007)).然而,假设存在一个多元分布,从中可以很容易地推导出条件分布。此外,从条件分布中进行迭代吉布斯采样可以从多元分布中生成图。我们想指出,MICE的默认设置主要不是为了简单的缺失值估算。使用多重imputation方案,MICE允许评估估算值的不确定性。它包括汇集多个imputation的功能,选择单独的采样程序,并允许被动imputation控制转换变量的同步。在我们的实验中,我们对连续变量使用带有正态误差的线性回归或平均imputation的MICE,对二元变量使用逻辑回归,对两个以上类别变量使用多分逻辑回归。
为了在不同类型的变量之间进行比较,我们对分类变量应用了带有虚拟编码的KNNimpute算法。这是通过编码一个分类变量来实现的Xj成米二分变量.KNNimpute算法在分类数据上的应用可以概括为:
将所有类别变量编码为{−1,1}-虚拟变量;
将所有变量标准化为mean 0和SD 1;
应用算法2中交叉验证的KNNimpute方法;
将输入的数据矩阵重新变换为原始尺度;
将虚拟变量编码回分类变量;而且
计算imputation误差。
对于每个实验,我们执行50个独立的模拟,其中10%、20%或30%的值完全随机删除。然后应用每种方法并计算NRMSE、PFC或两者(第二节).我们对比较方法的错误率与missForest的错误率进行配对Wilcoxon检验。此外,在每个模拟中记录了missForest的OOB误差估计。
4的结果
4.1仅使用连续变量
首先,我们关注连续数据。我们调查了以下四个公开可用的数据集:
类异戊二烯基因网络拟南芥:该基因网络包括P=39个基因n=118个不同实验条件对应的基因表达谱。有关此数据集的详细信息,请参见威利et al。(2004).
帕金森患者的语音测量:由小et al。(2008)包含了来自31个人的一系列生物医学语音测量,其中23人患有帕金森病(PD)。有P=22个特定的声音测量和n=195个来自这些人的录音。数据集还包含提供运行状况状态的响应变量。仅处理连续变量,响应从数据中删除。稍后我们将回到这个问题。
麝香分子的形状:这个数据集描述了92个分子,其中47个是麝香分子,45个是非麝香分子。对于每个分子P=166个特征描述了它的构象,但由于旋转键,分子可以有许多构象,所以有n=476种不同的低能构象。去掉了麝香分子和非麝香分子的分类。
胰岛素基因表达:这个高维数据集源于分析吴et al。(2007)股外侧肌胰岛素治疗后三种不同类型患者的肌肉活检。这三种类型分别是胰岛素敏感型、胰岛素抵抗型和糖尿病患者。分析包括P=12 ' 626个基因,其表达水平由n=110次肌肉活检。由于计算时间的原因,我们只进行了10次模拟,而不是50次。
结果载于图1.我们可以看到missForest表现得很好,有时与KNNimpute相比,平均NRMSE降低了25%。在麝香分子数据的情况下,减少甚至是>50%。MissPALasso在基因表达数据上的表现略好于missForest。然而,在胰岛素数据集的情况下,没有MissPALasso的结果,因为高维使得计算不可行。
对于连续数据,missForest算法通常很快达到停止准则,大约需要5次迭代。与执行交叉验证的KNNimpute(其中{1,…,15}是可能的邻居数的集合)相比,imputation花费了大约10倍的时间。对于胰岛素数据集,在通常可用的台式计算机上进行一次imputation平均需要2小时。
4.2仅分类变量
我们也考虑只有分类变量的数据集。在这里,我们使用中描述的MICE算法第三节而不是sparasso小姐。我们使用KNNimpute算法的虚拟实现来处理分类变量(第三节).我们将这些方法应用于以下数据集:
心脏单光子发射计算机断层扫描(SPECT)图像:坟头et al。(2001)讨论这个经过处理的数据集,总结了3000多张2D SPECT图像n=267例P=22个二进制特征模式。
启动子基因序列大肠杆菌:数据集包含由哈利和雷诺兹(1987年)的启动子和序列殴打et al。(1990),供非推广人使用n= 106。对每个候选对象,记录57 bp的序列。每个变量可以取四种DNA核苷酸中的一种,即腺嘌呤、胸腺嘧啶、鸟嘌呤或胞嘧啶。另一个变量区分启动子和非启动子实例。
淋巴领域数据:观察来自免疫系统淋巴肿瘤患者。对于每一个n= 148淋巴瘤,P=19种不同的性质主要以名义方式记录。有9个二进制变量。其余的变量有三个或更多的级别。
在图2,我们可以看到,missForest总是比比较方法更好地输入缺失的值。在某些情况下,即对于SPECT数据,PFC与小鼠相比下降高达60%。然而,对于其他数据集,下降不太明显,范围在10-20%左右,但仍然有下降。另一方面,缺失值的数量似乎对所有方法的性能影响很小。除了对SPECT数据的MICE之外,错误率几乎保持不变,仅增加1-2%。我们在前面指出,MICE主要不是为imputation性能量身定制的,但由于多重imputation方案,提供了评估imputation值不确定性的额外可能性。无论如何,在伪编码的分类变量上使用交叉验证的KNNimpute(算法2)的结果令人惊讶。与使用KNNimpute进行交叉验证的imputation相比,missForest的imputation平均需要5倍的时间。
4.3混合型变量
在下面,我们研究了四个数据集,其中第一个数据集已经介绍过了,即。麝香分子包括产生分类的分类反应的数据。其他数据集如下:
戈谢氏病的蛋白质组学生物标志物:戈谢氏病是一种罕见的遗传性酶缺乏症。在这个数据集中,Smitet al。(2007)用于生物标记的蛋白质阵列(P=590),取自血清样本(n= 40)。二元响应区分疾病状态。
基因发现过度预测(GFOP)肽搜索:该数据集包括质谱测量n=595肽从两个鸟枪蛋白质组学实验线虫秀丽隐杆线虫.收集P=18个生物学、技术和分析变量的目的是在一个扩展数据库上使用已建立的基因预测方法进行新肽检测。
儿童医院数据:该数据集是对心脏直视手术后先天性心脏缺陷儿童系统长期回顾的产物。除了缺陷和手术相关的变量外,还评估了长期心理调整和健康相关的生活质量。在移除缺失值的观测值后,数据集由n=55例P=124个变量,其中48个是连续变量,76个是范畴变量。详情见Latalet al。(2009).
文中给出了比较结果图3.我们可以看到,missForest比其他两种方法表现得更好,在许多情况下再次减少了50%的imputation误差。对于GFOP数据,KNNimpute的NRMSE比missForest略小,但在分类变量上的误差是前者的两倍。一般来说,就缺失值的数量而言,NRMSE往往比PFC具有更大的可变性,PFC基本上保持不变。
对儿童医院数据的MICE归责结果必须谨慎对待。由于该数据集包含分布不佳和近因变量,例如在一类中观测值很少的二元变量,缺失模式对统计软件r中MICE实施的可操作性有直接影响图3通过随机生成缺失模式,从50个成功的模拟中计算出来,在变量的类别中,不包括只有完整的案例或根本没有完整的案例。因此,所有三个缺失值的实际模拟次数为>50。此外,在每次引入缺失值后,几乎因变量都被移除。这导致在每个模拟中平均删除7个变量。由于这一点特别的为了使MICE实施工作,我们不报告归责误差的显著性陈述。
4.4估算imputation误差
在每个实验中,我们得到了每个模拟运行的OOB估计的imputation误差。在图4真归责误差的差异,err真正的, OOB误差估计,,对连续数据集和分类数据集进行了说明。此外,还描述了所有模拟的真实imputation误差和OOB误差估计的平均值。
我们可以看到,对于类异戊二烯和Musk数据集,OOB估计非常准确,仅与真实的imputation误差相差几个百分点。在帕金森数据集的情况下,OOB估计比所有其他数据集表现出更多的可变性。然而,平均而言,估计是相当不错的。对于分类数据集,估计精度在所有场景中表现相似。随着缺失值的增加,OOB估计值往往会低估归因误差。显然,输入误差的绝对大小似乎在OOB估计的准确性中起着很小的作用,这在比较SPECT和启动子数据时可以很好地看到。
4.5计算效率
我们通过比较之前数据集上的imputation运行时间来评估missForest的计算成本。表1显示在分析的数据集上的所有方法的运行时间。我们可以看到KNNimpute是目前最快的方法。然而,森林小姐比MICE和sparasso小姐跑得快得多。此外,应用missForest不需要预先对数据进行标准化,也不需要费力地对分类变量进行虚拟编码,也不需要实现用于调优参数的CV选择。
数据集. | n. | P. | 然而,. | MissPALasso. | 老鼠. | missForest. |
---|---|---|---|---|---|---|
类异戊二烯 | 118 | 39 | 0.8 | 170 | − | 5.8 |
帕金森症 | 195 | 22 | 0.7 | 120 | − | 6.1 |
麝香(续)。 | 476 | 166 | 13 | 1400 | − | 250 |
胰岛素 | 110 | 626年12 | 1800 | NA | − | 6200 |
|
||||||
SPECT | 267 | 22 | 1.3 | − | 37 | 5.5 |
启动子 | 106 | 57 | 14 | − | 4400 | 38 |
淋巴管造影 | 148 | 19 | 1.1 | − | 93 | 7.0 |
|
||||||
麝香(混合) | 476 | 167 | 27 | − | 2800 | 500 |
高歇氏 | 40 | 590 | 1.3 | − | 130 | 29 |
GFOP | 595 | 18 | 2.7 | − | 1400 | 40 |
孩子们 | 55 | 124 | 2.7 | − | 4000 | 110 |
数据集. | n. | P. | 然而,. | MissPALasso. | 老鼠. | missForest. |
---|---|---|---|---|---|---|
类异戊二烯 | 118 | 39 | 0.8 | 170 | − | 5.8 |
帕金森症 | 195 | 22 | 0.7 | 120 | − | 6.1 |
麝香(续)。 | 476 | 166 | 13 | 1400 | − | 250 |
胰岛素 | 110 | 626年12 | 1800 | NA | − | 6200 |
|
||||||
SPECT | 267 | 22 | 1.3 | − | 37 | 5.5 |
启动子 | 106 | 57 | 14 | − | 4400 | 38 |
淋巴管造影 | 148 | 19 | 1.1 | − | 93 | 7.0 |
|
||||||
麝香(混合) | 476 | 167 | 27 | − | 2800 | 500 |
高歇氏 | 40 | 590 | 1.3 | − | 130 | 29 |
GFOP | 595 | 18 | 2.7 | − | 1400 | 40 |
孩子们 | 55 | 124 | 2.7 | − | 4000 | 110 |
运行时对缺失值的数量进行平均,因为这对计算时间的影响可以忽略不计。NA,不可用。
数据集. | n. | P. | 然而,. | MissPALasso. | 老鼠. | missForest. |
---|---|---|---|---|---|---|
类异戊二烯 | 118 | 39 | 0.8 | 170 | − | 5.8 |
帕金森症 | 195 | 22 | 0.7 | 120 | − | 6.1 |
麝香(续)。 | 476 | 166 | 13 | 1400 | − | 250 |
胰岛素 | 110 | 626年12 | 1800 | NA | − | 6200 |
|
||||||
SPECT | 267 | 22 | 1.3 | − | 37 | 5.5 |
启动子 | 106 | 57 | 14 | − | 4400 | 38 |
淋巴管造影 | 148 | 19 | 1.1 | − | 93 | 7.0 |
|
||||||
麝香(混合) | 476 | 167 | 27 | − | 2800 | 500 |
高歇氏 | 40 | 590 | 1.3 | − | 130 | 29 |
GFOP | 595 | 18 | 2.7 | − | 1400 | 40 |
孩子们 | 55 | 124 | 2.7 | − | 4000 | 110 |
数据集. | n. | P. | 然而,. | MissPALasso. | 老鼠. | missForest. |
---|---|---|---|---|---|---|
类异戊二烯 | 118 | 39 | 0.8 | 170 | − | 5.8 |
帕金森症 | 195 | 22 | 0.7 | 120 | − | 6.1 |
麝香(续)。 | 476 | 166 | 13 | 1400 | − | 250 |
胰岛素 | 110 | 626年12 | 1800 | NA | − | 6200 |
|
||||||
SPECT | 267 | 22 | 1.3 | − | 37 | 5.5 |
启动子 | 106 | 57 | 14 | − | 4400 | 38 |
淋巴管造影 | 148 | 19 | 1.1 | − | 93 | 7.0 |
|
||||||
麝香(混合) | 476 | 167 | 27 | − | 2800 | 500 |
高歇氏 | 40 | 590 | 1.3 | − | 130 | 29 |
GFOP | 595 | 18 | 2.7 | − | 1400 | 40 |
孩子们 | 55 | 124 | 2.7 | − | 4000 | 110 |
运行时对缺失值的数量进行平均,因为这对计算时间的影响可以忽略不计。NA,不可用。
有两种可能的方法来加速计算。第一个是减少每片森林的树木数量。在所有的比较研究中,树的数量都被设置为100,这提供了较高的精度,但增加了运行时间。在表2,我们可以看到,改变森林中树木的数量对imputation误差的影响是停滞的,但对计算时间的影响是强烈的,这种影响与树木的数量近似线性。
米试一试. | n树
. |
||||
---|---|---|---|---|---|
. | 10. | 50. | One hundred.. | 250. | 500. |
1 | 36.8/35.5 | 27.4/32.3 | 20.4/31.3 | 17.2/30.0 | 16.0/30.8 |
2.5秒 | 3.2秒 | 3.9秒 | 5.8秒 | 9.2秒 | |
2 | 34.9/31.8 | 24.8/29.2 | 18.3/28.8 | 16.0/28.6 | 15.5/29.1 |
6.9秒 | 11.8秒 | 15.0秒 | 25.2秒 | 39.3秒 | |
4 | 34.9/31.3 | 24.4/28.9 | 17.9/28.2 | 15.4/28.2 | 15.8/28.7 |
16.5秒 | 25.1秒 | 35.0秒 | 49.0秒 | 83.3秒 | |
8 | 34.7/31.4 | 24.3/28.9 | 18.1/27.8 | 15.2/27.8 | 15.7/28.6 |
39.2秒 | 57.4秒 | 84.4秒 | 130.2秒 | 190.8秒 | |
16 | 34.6/30.9 | 24.3/28.7 | 18.1/28.0 | 15.4/27.8 | 15.6/28.5 |
68.7秒 | 99.7秒 | 172.2秒 | 237.6秒 | 400.7秒 |
米试一试. | n树
. |
||||
---|---|---|---|---|---|
. | 10. | 50. | One hundred.. | 250. | 500. |
1 | 36.8/35.5 | 27.4/32.3 | 20.4/31.3 | 17.2/30.0 | 16.0/30.8 |
2.5秒 | 3.2秒 | 3.9秒 | 5.8秒 | 9.2秒 | |
2 | 34.9/31.8 | 24.8/29.2 | 18.3/28.8 | 16.0/28.6 | 15.5/29.1 |
6.9秒 | 11.8秒 | 15.0秒 | 25.2秒 | 39.3秒 | |
4 | 34.9/31.3 | 24.4/28.9 | 17.9/28.2 | 15.4/28.2 | 15.8/28.7 |
16.5秒 | 25.1秒 | 35.0秒 | 49.0秒 | 83.3秒 | |
8 | 34.7/31.4 | 24.3/28.9 | 18.1/27.8 | 15.2/27.8 | 15.7/28.6 |
39.2秒 | 57.4秒 | 84.4秒 | 130.2秒 | 190.8秒 | |
16 | 34.6/30.9 | 24.3/28.7 | 18.1/28.0 | 15.4/27.8 | 15.6/28.5 |
68.7秒 | 99.7秒 | 172.2秒 | 237.6秒 | 400.7秒 |
在这里,我们考虑人为引入10%缺失值的GFOP数据集。对于每一次比较,使用始终相同的缺失值矩阵对所有数量的树/随机选择的变量进行50次模拟。
米试一试. | n树
. |
||||
---|---|---|---|---|---|
. | 10. | 50. | One hundred.. | 250. | 500. |
1 | 36.8/35.5 | 27.4/32.3 | 20.4/31.3 | 17.2/30.0 | 16.0/30.8 |
2.5秒 | 3.2秒 | 3.9秒 | 5.8秒 | 9.2秒 | |
2 | 34.9/31.8 | 24.8/29.2 | 18.3/28.8 | 16.0/28.6 | 15.5/29.1 |
6.9秒 | 11.8秒 | 15.0秒 | 25.2秒 | 39.3秒 | |
4 | 34.9/31.3 | 24.4/28.9 | 17.9/28.2 | 15.4/28.2 | 15.8/28.7 |
16.5秒 | 25.1秒 | 35.0秒 | 49.0秒 | 83.3秒 | |
8 | 34.7/31.4 | 24.3/28.9 | 18.1/27.8 | 15.2/27.8 | 15.7/28.6 |
39.2秒 | 57.4秒 | 84.4秒 | 130.2秒 | 190.8秒 | |
16 | 34.6/30.9 | 24.3/28.7 | 18.1/28.0 | 15.4/27.8 | 15.6/28.5 |
68.7秒 | 99.7秒 | 172.2秒 | 237.6秒 | 400.7秒 |
米试一试. | n树
. |
||||
---|---|---|---|---|---|
. | 10. | 50. | One hundred.. | 250. | 500. |
1 | 36.8/35.5 | 27.4/32.3 | 20.4/31.3 | 17.2/30.0 | 16.0/30.8 |
2.5秒 | 3.2秒 | 3.9秒 | 5.8秒 | 9.2秒 | |
2 | 34.9/31.8 | 24.8/29.2 | 18.3/28.8 | 16.0/28.6 | 15.5/29.1 |
6.9秒 | 11.8秒 | 15.0秒 | 25.2秒 | 39.3秒 | |
4 | 34.9/31.3 | 24.4/28.9 | 17.9/28.2 | 15.4/28.2 | 15.8/28.7 |
16.5秒 | 25.1秒 | 35.0秒 | 49.0秒 | 83.3秒 | |
8 | 34.7/31.4 | 24.3/28.9 | 18.1/27.8 | 15.2/27.8 | 15.7/28.6 |
39.2秒 | 57.4秒 | 84.4秒 | 130.2秒 | 190.8秒 | |
16 | 34.6/30.9 | 24.3/28.7 | 18.1/28.0 | 15.4/27.8 | 15.6/28.5 |
68.7秒 | 99.7秒 | 172.2秒 | 237.6秒 | 400.7秒 |
在这里,我们考虑人为引入10%缺失值的GFOP数据集。对于每一次比较,使用始终相同的缺失值矩阵对所有数量的树/随机选择的变量进行50次模拟。
第二种方法是减少每个节点随机选择的变量数量(米试一试)来安排拆分。表2显示出越来越多米试一试对imputation误差影响有限,但计算时间明显增加。注意,对于米试一试=1,我们不再有一个RF,因为在变量之间没有更多的选择。这导致了一个更高的imputation误差,特别是在低数量的自举树的情况下。我们用于所有实验作为默认值,例如在GFOP数据中,这等于4。
5的结论
我们的新算法,missForest,允许对基本上任何类型的数据进行缺失值的估算。特别是,它可以同时处理由连续变量和分类变量组成的多元数据。MissForest不需要调优参数,也不需要对数据的分布方面进行假设。我们在几个来自不同生物和医学领域的真实数据集上表明,missForest优于像这样的既定imputation方法k-使用链式方程的最近邻imputation或多元imputation。使用我们的OOB imputation误差估计,missForest提供了一种评估imputation质量的方法,而不需要搁置测试数据,也不需要执行费力的交叉验证。对于后续的分析,这些误差估计代表了每个变量非正式可靠性检查的平均值。当数据包含复杂的交互或不同规模和不同类型变量之间的非线性关系时,就可以充分发挥missForest的潜力。此外,missForest可以应用于高维数据集,其中变量的数量可能在很大程度上大大超过观测数据的数量,但仍然可以提供出色的imputation结果。
确认
除了类异戊二烯、淋巴造影、儿童医院和GFOP数据外,所有其他数据集都来自UCI机器学习库(弗兰克和亚松森,2010年).GFOP数据集来自瑞士苏黎世的分子系统生物学研究所。感谢L. Reiter提供的数据。淋巴造影数据集来自斯洛文尼亚卢布尔雅那肿瘤研究所大学医学中心。感谢M. Zwitter和M. Soklic提供的数据。儿童医院数据集来自瑞士大学儿童医院儿童发展中心Zürich。感谢B. Latal和I. Beck提供的数据。最后,我们感谢两位匿名裁判提出的建设性意见。
资助:这项工作的部分资金来自瑞士系统x的拨款。ch系统生理学和代谢性疾病能力中心LiverX项目的倡议。LiverX项目由瑞士国家科学基金会进行评估。
利益冲突:未声明。
参考文献
作者指出
副主编:Jonathan Wren