中南大學(xué)公共衛(wèi)生學(xué)院流行病與衛(wèi)生統(tǒng)計(jì)學(xué)系(410078) 沈 琳 胡國清 陳立章 譚紅專
缺失森林算法在缺失值填補(bǔ)中的應(yīng)用
中南大學(xué)公共衛(wèi)生學(xué)院流行病與衛(wèi)生統(tǒng)計(jì)學(xué)系(410078) 沈 琳 胡國清 陳立章 譚紅?!?/p>
目的介紹R環(huán)境下缺失森林算法在缺失值填補(bǔ)中的應(yīng)用并評(píng)價(jià)其填補(bǔ)效果。方法通過實(shí)際數(shù)據(jù)闡述填補(bǔ)估算流程,比較缺失森林算法與直接刪除法處理缺失數(shù)據(jù)的效果。結(jié)果當(dāng)數(shù)據(jù)缺失率為10%時(shí),缺失森林算法填補(bǔ)的效果明顯優(yōu)于刪除法;當(dāng)數(shù)據(jù)缺失率在20%時(shí),兩種方法處理缺失值的效果都不太理想,效果相近。當(dāng)缺失率達(dá)50%時(shí),3種類型的變量估算的誤差已經(jīng)較大,兩種方法的估算效果均欠佳。結(jié)論缺失森林算法在軟件操作上簡便,并且對(duì)數(shù)據(jù)結(jié)構(gòu)和分布的要求寬松,可充分利用現(xiàn)有記錄的信息,能較為準(zhǔn)確地反應(yīng)調(diào)查的真實(shí)情況,在實(shí)際工作中具有較好的應(yīng)用價(jià)值。
缺失森林 隨機(jī)森林 決策樹 缺失值
缺失森林是國外學(xué)者近些年提出的一種新的非參數(shù)填補(bǔ)方法。這種算法基于隨機(jī)森林,隨機(jī)森林是一種自然的非線性建模工具,它可以處理混合類型的數(shù)據(jù)[1]。作為一種非參數(shù)方法,它允許數(shù)據(jù)中存在交互作用和非線性效應(yīng),同時(shí)對(duì)于數(shù)據(jù)的結(jié)構(gòu)形式要求極少。它通過在第一步中用已觀測(cè)值訓(xùn)練出一個(gè)隨機(jī)森林,然后再預(yù)測(cè)缺失值,最后進(jìn)行重復(fù)迭代來處理缺失值問題。其突出特點(diǎn)是能處理混合類型的數(shù)據(jù),即使在高維數(shù)據(jù)、交互作用和非線性數(shù)據(jù)結(jié)構(gòu)的復(fù)雜情況下也不受限制。由于其準(zhǔn)確性和穩(wěn)健性,隨機(jī)森林已在一些復(fù)雜研究中得到了充分的應(yīng)用[2-3]。隨機(jī)森林算法要求應(yīng)變量是完整的,才能訓(xùn)練出森林。故Stekhoven(2012年)在此基礎(chǔ)上做出了改進(jìn),提出了缺失森林算法,它可以直接用已觀測(cè)到的完整部分?jǐn)?shù)據(jù)集訓(xùn)練出的隨機(jī)森林來預(yù)測(cè)缺失值,而不依賴于因變量的完整性[4]。本文利用湖南省洞庭湖洪災(zāi)區(qū)7~15歲兒童的創(chuàng)傷性應(yīng)激障礙(posttraumatic stress disorder,PTSD)發(fā)生情況及其影響因素的流行病學(xué)調(diào)查資料,比較了缺失森林算法和直接刪除法處理缺失數(shù)據(jù)的效果,顯示數(shù)據(jù)缺失在不同比例情況下該法的應(yīng)用效果,以反映其實(shí)際應(yīng)用價(jià)值。
假定數(shù)據(jù)是一個(gè)n×p維的矩陣(n例觀察對(duì)象,p個(gè)變量),即X=(X1,X2,…,Xp),將其中任意一個(gè)可能含缺失值的變量記為Xs,在該變量上含有缺失值的觀察對(duì)象記為可將數(shù)據(jù)集分為以下四個(gè)部分:
(1)變量Xs的已觀測(cè)值,記為
(2)變量Xs的缺失值,記為
(3)在變量Xs上有觀察值的觀察對(duì)象的其他變量(除了變量Xs以外的),記為
(4)在變量Xs上為缺失值的觀察對(duì)象的其他變量(除了變量Xs以外的),記為
簡單來說,就是將在變量Xs上沒有缺失的所有個(gè)體當(dāng)做訓(xùn)練樣本,而在變量Xs上缺失的個(gè)體作為測(cè)試樣本。這里需要注意的一點(diǎn)是并一定是完全觀察到的變量,因?yàn)橹皇潜硎驹撚^察對(duì)象是在變量Xs上都是有觀測(cè)值的,同樣的也不一定是完全缺失的變量。
具體的填補(bǔ)步驟如下:首先,用均數(shù)填補(bǔ)或其他填補(bǔ)方法對(duì)X的所有缺失值作初步的猜測(cè),并將變量Xs(s可能是p個(gè)變量中的任意一個(gè),故s=1,…,p)按照缺失值的數(shù)量升序排列(從缺失量最少的變量開始),令將這個(gè)初步填補(bǔ)后的矩陣為對(duì)于每一個(gè)變量Xs,缺失森林算法填補(bǔ)的主要過程是:
(3)重復(fù)此填補(bǔ)過程,直到符合停止標(biāo)準(zhǔn)γ,即新填補(bǔ)的數(shù)據(jù)矩陣和前一個(gè)數(shù)據(jù)矩陣的差值首次開始增加時(shí)(若含有兩種數(shù)據(jù)類型,則為兩種類型數(shù)據(jù)的矩陣差都增加時(shí))。

1.實(shí)例資料
本研究資料節(jié)選自1999年11月至2000年5月對(duì)湖南省洞庭湖洪災(zāi)區(qū)7~15歲兒童的創(chuàng)傷性應(yīng)激障礙(PTSD)發(fā)生情況及其影響因素的流行病學(xué)調(diào)查,共計(jì)1892例資料完整的研究對(duì)象,模擬出含各種缺失比例(10%,20%,50%)的隨機(jī)缺失數(shù)據(jù)。本文中選取4個(gè)對(duì)兒童發(fā)生PTSD有關(guān)的變量作為自變量,以PTSD(二分類變量)為因變量,進(jìn)行Logistic回歸分析,這些變量包括年齡(定量變量)、性別(二分類變量)、受災(zāi)程度(等級(jí)變量)、受災(zāi)經(jīng)歷(即曾被水圍困等待救援與否,二分類變量)。統(tǒng)計(jì)分析過程在R軟件(2.15.2)中實(shí)現(xiàn)。
2.缺失森林基本程序語句
(1)缺失數(shù)據(jù)集的輸入及變量類型指定
d=read.csv(“填補(bǔ)文件名.csv”,colClasses=c(′factor′,′factor′,′numeric′,′factor′,′factor′))
#指定文件路徑輸入填補(bǔ)數(shù)據(jù)集(csv格式),指定填補(bǔ)變量的類型。
library(m issforest)#運(yùn)行程序包
(2)用缺失森林算法進(jìn)行填補(bǔ)
d.mis<-prodNA(d,noNA=0.1) #模擬10%的隨機(jī)缺失
d.imp<-missForest(d,variablew ise=TRUE,ntree=600,m try=3)
#用缺失森林算法逐個(gè)變量進(jìn)行填補(bǔ),設(shè)置相應(yīng)的森林參數(shù)
(3)對(duì)填補(bǔ)后的數(shù)據(jù)集進(jìn)行分析
fit<-w ith(d.impS|ximp,glm(ptsd~ax7+age+degree+cx26,fam ily=binom ial))
summary(fit) #用logistic回歸得到參數(shù)估計(jì)值
3.分析結(jié)果
(1)評(píng)價(jià)等級(jí)
令用不同缺失值處理方法計(jì)算出的回歸系數(shù)為b1,用完整數(shù)據(jù)集計(jì)算出的回歸系數(shù)為b2,則相對(duì)誤差為(b1-b2)/b2×100%。優(yōu):填補(bǔ)后各回歸系數(shù)的相對(duì)誤差的絕對(duì)值≤10%;良:填補(bǔ)后各回歸系數(shù)相對(duì)誤差的絕對(duì)值≤20%;中:填補(bǔ)后各回歸系數(shù)的絕對(duì)值≤50%;差:填補(bǔ)后各回歸系數(shù)相對(duì)誤差的絕對(duì)值>50%。
(2)評(píng)價(jià)標(biāo)準(zhǔn)
計(jì)算等級(jí)順位累加構(gòu)成比(優(yōu)+良),如果累加優(yōu)良率相同,可以參考相對(duì)誤差的大??;如果填補(bǔ)后有回歸系數(shù)相對(duì)誤差>50%,則填補(bǔ)估算失效。
(3)填補(bǔ)結(jié)果
當(dāng)缺失率為10%時(shí),在6個(gè)變量中,缺失森林法填補(bǔ)后回歸系數(shù)符合優(yōu)和良的標(biāo)準(zhǔn)的分別為3和2,而刪除法則分別為1和3;而且缺失森林法填補(bǔ)后的絕大部分回歸系數(shù)的相對(duì)誤差均小于刪除法的結(jié)果。詳見表1。

表1 10%缺失數(shù)據(jù)下不同處理方法的回歸系數(shù)及其相對(duì)誤差
當(dāng)缺失率為20%時(shí),缺失森林法填補(bǔ)后回歸系數(shù)符合優(yōu)的標(biāo)準(zhǔn)為1個(gè)變量,而刪除法填補(bǔ)后回歸系數(shù)符合良的標(biāo)準(zhǔn)的變量數(shù)為1,填補(bǔ)效果相近,都不太理想。詳見表2。
當(dāng)缺失率為50%時(shí),缺失森林法填補(bǔ)后回歸系數(shù)符合優(yōu)的標(biāo)準(zhǔn)為1個(gè)變量,而刪除法填補(bǔ)后回歸系數(shù)符合優(yōu)的標(biāo)準(zhǔn)的變量數(shù)為0。綜合來講,雖然兩者處理效果都較差,但缺失森林法填補(bǔ)效果比刪除法稍好,刪除法對(duì)所有變量參數(shù)估算的誤差都已經(jīng)遠(yuǎn)遠(yuǎn)大于50%,處理失敗。詳見表3。

表2 20%缺失數(shù)據(jù)下不同處理方法的回歸系數(shù)及其相對(duì)誤差

表3 50%缺失數(shù)據(jù)下不同處理方法的回歸系數(shù)以及相對(duì)誤差
要減少調(diào)查中的缺失數(shù)據(jù),主要應(yīng)從事前預(yù)防和事后補(bǔ)救兩方面入手。事前預(yù)防是處理缺失數(shù)據(jù)最簡便且最有效的方法,但現(xiàn)實(shí)中由于條件限制,往往不能完全解決問題。一般而言,在事后補(bǔ)救上則需要對(duì)缺失數(shù)據(jù)進(jìn)行處理。在以往的流行病學(xué)調(diào)查研究中,國內(nèi)研究中對(duì)于處理缺失數(shù)據(jù)的重視程度不夠或存在方法誤用的情況,往往只是簡單地將有缺失值的對(duì)象剔除,僅對(duì)完全記錄對(duì)象進(jìn)行分析[6]。在統(tǒng)計(jì)方法與計(jì)算機(jī)技術(shù)日新月異的今天,我們應(yīng)該借助一些有效的新方法來合理地處理缺失數(shù)據(jù)。
通過本研究的模擬填補(bǔ)試驗(yàn)發(fā)現(xiàn),當(dāng)數(shù)據(jù)缺失率為10%時(shí),缺失森林算法填補(bǔ)的效果比用刪除法處理的效果要好得多;當(dāng)數(shù)據(jù)缺失率在20%時(shí),兩種方法參數(shù)估計(jì)的相對(duì)誤差都增加,兩種方法處理缺失值的效果相差不大,都不太理想;當(dāng)缺失率達(dá)50%時(shí),缺失森林的填補(bǔ)估算效果尚可,仍有1個(gè)變量的回歸系數(shù)估計(jì)達(dá)到優(yōu)的標(biāo)準(zhǔn),而此時(shí)刪除法對(duì)所有變量參數(shù)估算的誤差都已經(jīng)遠(yuǎn)遠(yuǎn)大于50%,處理失敗。這說明缺失森林算法的填補(bǔ)效果在多數(shù)情況下都優(yōu)于刪除法;但當(dāng)缺失比例過大時(shí),再好的處理方法也無濟(jì)于事。這與其他相關(guān)文獻(xiàn)得出的結(jié)論一致[7]。
缺失森林這種新的非參數(shù)算法具有良好的應(yīng)用前景,它不僅能同時(shí)處理不同類型的變量組成的多變量混合數(shù)據(jù),同時(shí)對(duì)數(shù)據(jù)分布的假定前提條件很少。缺失森林算法的計(jì)算效率較其他填補(bǔ)方法高,且不需要對(duì)數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化、啞變量分類編號(hào)等預(yù)處理,操作簡便易行[8-9]。Stekhoven等人的研究表明,缺失森林的填補(bǔ)效果優(yōu)于已有的填補(bǔ)方法,如k最近距離填補(bǔ)或鏈?zhǔn)椒匠痰亩嘧兞刻钛a(bǔ)(multivariate imputation by chained equations,M ICE)。另外,缺失森林還可以通過袋外數(shù)據(jù)(OOB)填補(bǔ)誤差估計(jì)值,而不需設(shè)定檢驗(yàn)數(shù)據(jù)或進(jìn)行繁瑣的交叉驗(yàn)證。即使當(dāng)數(shù)據(jù)集為高維數(shù)據(jù)(即當(dāng)變量數(shù)量可能大大超過觀察單位數(shù))、變量間存在復(fù)雜的交互作用或非線性關(guān)系的情況下,缺失森林算法也能提供良好的填補(bǔ)結(jié)果[4]。因此,在處理大型復(fù)雜數(shù)據(jù)集的缺失值上,缺失森林將有明顯的優(yōu)勢(shì),尤其是在藥物流行病學(xué)以及分子流行病學(xué)領(lǐng)域有巨大的應(yīng)用潛力。
本研究的數(shù)據(jù)僅僅來源于一項(xiàng)基于洪災(zāi)的流行病學(xué)調(diào)查的模擬研究,因?yàn)槭欠瞧胶獾挠^察性數(shù)據(jù),多變量的回歸系數(shù)彼此間有影響,故填補(bǔ)效果還有待進(jìn)一步的研究深入探討,得到的結(jié)論可能存在一定的局限性。今后,可以利用更多復(fù)雜的生物學(xué)或醫(yī)學(xué)數(shù)據(jù)來驗(yàn)證并使用該方法,也可將這種新方法與更多其他的缺失值處理方法進(jìn)行比較研究。
總之,缺失森林算法為處理缺失數(shù)據(jù)提供了新的選擇,有關(guān)missForest程序包的更多擴(kuò)展功能參見Stekhoven教授編寫的程序包說明。
1.方匡南,吳見彬,朱建平等.隨機(jī)森林方法研究綜述.統(tǒng)計(jì)與信息論壇,2011,26(3):32-38.
2.武曉巖,李康.隨機(jī)森林方法在基因表達(dá)數(shù)據(jù)分析中的應(yīng)用及研究進(jìn)展.中國衛(wèi)生統(tǒng)計(jì),2009,26(4):437-440.
3.李貞子,張濤,武曉巖.隨機(jī)森林回歸分析及在代謝調(diào)控關(guān)系研究中的應(yīng)用.中國衛(wèi)生統(tǒng)計(jì),2012,29(2):158-163.
4.Stekhoven DJ,Buhlmann P.M issForest—non-parametric m issing value imputation form ixed-type data.Bioinformatics,2012,28(1):112-118.
5.Oba S,Sato M,Takemasa I,et al.A Bayesian m issing value estimation method for gene expression profile data.Bioinformatics,2003(19):2088-2096.
6.Karahalios A,Baglietto L,Carlin,et al.A review of the reporting and handling ofm issing data in cohort studies w ith repeated assessment of exposuremeasures.BMC Medical Research Methodology,2012,12:96.
7.Enders CK.Applied M issing Data Analysis.New York:The Guilford Press,2010:37-54.
8.Little RJ,Rubin DB.Statistical Analysis w ith M issing Data.2nd ed. New York:W iley,2002:59-74.
9.Buuren SV,Oudshoom K.M ICE:Multivariate Imputation by Chained Equations in R.Journal of Statistical Software,2010,7(16):1-68.
(責(zé)任編輯:郭海強(qiáng))
Application of M issForest Algorithm for Im puting M issing Data
Shen Lin,Hu Guoqing,Chen Lizhang,et al(DepartmentofEpidemiologyandStatistics,SchoolofPublicHealth,CentralSouth University(410078),Changsha)
ObjectiveTo introduce the principle ofm issForest algorithm and its basic R procedure in imputingmissing data,and to assess the imputation effects ofm issForest.MethodsBased on real data sets w ith m issing variables and different missing rate,we introduce R procedure ofm issForest and compare the imputation results betweenm issForest and deletionmethod.ResultsM issForest outperforms deletionmethod asm issing rate is10%.As them issing rate is increasing by 20%,there are no obvious differences for thesemethods and the imputation effects of thesemethods dealing w ithm issing data are unsatisfactory.Whereasmissing rate ismore than 50%,the relative error of three kinds of variables for thesemethods is increasing dramatically,neithermethod is appropriate.ConclusionM issForest ismore attractive than othermultiple imputationmethods for its easy and simple usage in software,moreover it does not require assumptions about the distribution and structure of the data.W ith this new method,we canmake themostuse of the data in hand and havemore reliable results,so it isworth using w idely in practice.
M iss Forest;Random forest;Decision tree;M issing data
△通信作者:譚紅專,E-mail:tanhz99@qq.com