缺失值
1.什么是缺失值
缺失值是指粗糙數(shù)據(jù)中由于缺少信息而造成的數(shù)據(jù)的聚類,分組,刪失或截?cái)唷K傅氖乾F(xiàn)有數(shù)據(jù)集中某個(gè)或某些屬性的值是不完全的。數(shù)據(jù)挖掘所面對(duì)的數(shù)據(jù)不是特地為某個(gè)挖掘目的收集的,所以可能與分析相關(guān)的屬性并未收集(或某段時(shí)間以后才開始收集),這類屬性的缺失不能用缺失值的處理方法進(jìn)行處理,因?yàn)樗鼈兾刺峁┤魏尾煌耆珨?shù)據(jù)的信息,它和缺失某些屬性的值有著本質(zhì)的區(qū)別。
2.缺失值產(chǎn)生的原因
缺失值的產(chǎn)生的原因多種多樣,主要分為機(jī)械原因和人為原因。機(jī)械原因是由于機(jī)械原因?qū)е碌臄?shù)據(jù)收集或保存的失敗造成的數(shù)據(jù)缺失,比如數(shù)據(jù)存儲(chǔ)的失敗,存儲(chǔ)器損壞,機(jī)械故障導(dǎo)致某段時(shí)間數(shù)據(jù)未能收集(對(duì)于定時(shí)數(shù)據(jù)采集而言)。人為原因是由于人的主觀失誤、歷史局限或有意隱瞞造成的數(shù)據(jù)缺失,比如,在市場(chǎng)調(diào)查中被訪人拒絕透露相關(guān)問題的答案,或者回答的問題是無效的,數(shù)據(jù)錄入人員失誤漏錄了數(shù)據(jù)。
3.缺失值的類型
缺失值從缺失的分布來講可以分為完全隨機(jī)缺失,隨機(jī)缺失和完全非隨機(jī)缺失。完全隨機(jī)缺失(missing completely at random,MCAR)指的是數(shù)據(jù)的缺失是隨機(jī)的,數(shù)據(jù)的缺失不依賴于任何不完全變量或完全變量。隨機(jī)缺失(missing at random,MAR)指的是數(shù)據(jù)的缺失不是完全隨機(jī)的,即該類數(shù)據(jù)的缺失依賴于其他完全變量。完全非隨機(jī)缺失(missing not at random,MNAR)指的是數(shù)據(jù)的缺失依賴于不完全變量自身。
從缺失值的所屬屬性上講,如果所有的缺失值都是同一屬性,那么這種缺失成為單值缺失,如果缺失值屬于不同的屬性,稱為任意缺失。另外對(duì)于時(shí)間序列類的數(shù)據(jù),可能存在隨著時(shí)間的缺失,這種缺失稱為單調(diào)缺失。
4.缺失值的處理方法
對(duì)于缺失值的處理,從總體上來說分為刪除存在缺失值的個(gè)案和缺失值插補(bǔ)。對(duì)于主觀數(shù)據(jù),人將影響數(shù)據(jù)的真實(shí)性,存在缺失值的樣本的其他屬性的真實(shí)值不能保證,那么依賴于這些屬性值的插補(bǔ)也是不可靠的,所以對(duì)于主觀數(shù)據(jù)一般不推薦插補(bǔ)的方法。插補(bǔ)主要是針對(duì)客觀數(shù)據(jù),它的可靠性有保證。
1.刪除含有缺失值的個(gè)案
主要有簡(jiǎn)單刪除法和權(quán)重法。簡(jiǎn)單刪除法是對(duì)缺失值進(jìn)行處理的最原始方法。它將存在缺失值的個(gè)案刪除。如果數(shù)據(jù)缺失問題可以通過簡(jiǎn)單的刪除小部分樣本來達(dá)到目標(biāo),那么這個(gè)方法是最有效的。當(dāng)缺失值的類型為非完全隨機(jī)缺失的時(shí)候,可以通過對(duì)完整的數(shù)據(jù)加權(quán)來減小偏差。把數(shù)據(jù)不完全的個(gè)案標(biāo)記后,將完整的數(shù)據(jù)個(gè)案賦予不同的權(quán)重,個(gè)案的權(quán)重可以通過logistic或probit回歸求得。如果解釋變量中存在對(duì)權(quán)重估計(jì)起決定行因素的變量,那么這種方法可以有效減小偏差。如果解釋變量和權(quán)重并不相關(guān),它并不能減小偏差。對(duì)于存在多個(gè)屬性缺失的情況,就需要對(duì)不同屬性的缺失組合賦不同的權(quán)重,這將大大增加計(jì)算的難度,降低預(yù)測(cè)的準(zhǔn)確性,這時(shí)權(quán)重法并不理想。
2.可能值插補(bǔ)缺失值
它的思想來源是以最可能的值來插補(bǔ)缺失值比全部刪除不完全樣本所產(chǎn)生的信息丟失要少。在數(shù)據(jù)挖掘中,面對(duì)的通常是大型的數(shù)據(jù)庫(kù),它的屬性有幾十個(gè)甚至幾百個(gè),因?yàn)橐粋€(gè)屬性值的缺失而放棄大量的其他屬性值,這種刪除是對(duì)信息的極大浪費(fèi),所以產(chǎn)生了以可能值對(duì)缺失值進(jìn)行插補(bǔ)的思想與方法。常用的有如下幾種方法。
(1)均值插補(bǔ)。數(shù)據(jù)的屬性分為定距型和非定距型。如果缺失值是定距型的,就以該屬性存在值的平均值來插補(bǔ)缺失的值;如果缺失值是非定距型的,就根據(jù)統(tǒng)計(jì)學(xué)中的眾數(shù)原理,用該屬性的眾數(shù)(即出現(xiàn)頻率最高的值)來補(bǔ)齊缺失的值。
(2)利用同類均值插補(bǔ)。同均值插補(bǔ)的方法都屬于單值插補(bǔ),不同的是,它用層次聚類模型預(yù)測(cè)缺失變量的類型,再以該類型的均值插補(bǔ)。假設(shè)X= (X1,X2…Xp)為信息完全的變量,Y為存在缺失值的變量,那么首先對(duì)X或其子集行聚類,然后按缺失個(gè)案所屬類來插補(bǔ)不同類的均值。如果在以后統(tǒng)計(jì)分析中還需以引入的解釋變量和Y做分析,那么這種插補(bǔ)方法將在模型中引入自相關(guān),給分析造成障礙。
(3)極大似然估計(jì)(Max Likelihood ,ML)。在缺失類型為隨機(jī)缺失的條件下,假設(shè)模型對(duì)于完整的樣本是正確的,那么通過觀測(cè)數(shù)據(jù)的邊際分布可以對(duì)未知參數(shù)進(jìn)行極大似然估計(jì)(Little and Rubin)。這種方法也被稱為忽略缺失值的極大似然估計(jì),對(duì)于極大似然的參數(shù)估計(jì)實(shí)際中常采用的計(jì)算方法是期望值最大化(Expectation Maximization,EM)。該方法比刪除個(gè)案和單值插補(bǔ)更有吸引力,它一個(gè)重要前提:適用于大樣本。有效樣本的數(shù)量足夠以保證ML估計(jì)值是漸近無偏的并服從正態(tài)分布。但是這種方法可能會(huì)陷入局部極值,收斂速度也不是很快,并且計(jì)算很復(fù)雜。
(4)多重插補(bǔ)(Multiple Imputation,MI)。多值插補(bǔ)的思想來源于貝葉斯估計(jì),認(rèn)為待插補(bǔ)的值是隨機(jī)的,它的值來自于已觀測(cè)到的值。具體實(shí)踐上通常是估計(jì)出待插補(bǔ)的值,然后再加上不同的噪聲,形成多組可選插補(bǔ)值。根據(jù)某種選擇依據(jù),選取最合適的插補(bǔ)值。
多重插補(bǔ)方法分為三個(gè)步驟:①為每個(gè)空值產(chǎn)生一套可能的插補(bǔ)值,這些值反映了無響應(yīng)模型的不確定性;每個(gè)值都可以被用來插補(bǔ)數(shù)據(jù)集中的缺失值,產(chǎn)生若干個(gè)完整數(shù)據(jù)集合。②每個(gè)插補(bǔ)數(shù)據(jù)集合都用針對(duì)完整數(shù)據(jù)集的統(tǒng)計(jì)方法進(jìn)行統(tǒng)計(jì)分析。③對(duì)來自各個(gè)插補(bǔ)數(shù)據(jù)集的結(jié)果,根據(jù)評(píng)分函數(shù)進(jìn)行選擇,產(chǎn)生最終的插補(bǔ)值。
假設(shè)一組數(shù)據(jù),包括三個(gè)變量Y1,Y2,Y3,它們的聯(lián)合分布為正態(tài)分布,將這組數(shù)據(jù)處理成三組,A組保持原始數(shù)據(jù),B組僅缺失Y3,C組缺失Y1和Y2。在多值插補(bǔ)時(shí),對(duì)A組將不進(jìn)行任何處理,對(duì)B組產(chǎn)生Y3的一組估計(jì)值(作Y3關(guān)于Y1,Y2的回歸),對(duì)C組作產(chǎn)生Y1和Y2的一組成對(duì)估計(jì)值(作Y1,Y2關(guān)于Y3的回歸)。
當(dāng)用多值插補(bǔ)時(shí),對(duì)A組將不進(jìn)行處理,對(duì)B、C組將完整的樣本隨機(jī)抽取形成為m組(m為可選擇的m組插補(bǔ)值),每組個(gè)案數(shù)只要能夠有效估計(jì)參數(shù)就可以了。對(duì)存在缺失值的屬性的分布作出估計(jì),然后基于這m組觀測(cè)值,對(duì)于這m組樣本分別產(chǎn)生關(guān)于參數(shù)的m組估計(jì)值,給出相應(yīng)的預(yù)測(cè)即,這時(shí)采用的估計(jì)方法為極大似然法,在計(jì)算機(jī)中具體的實(shí)現(xiàn)算法為期望最大化法(EM)。對(duì)B組估計(jì)出一組Y3的值,對(duì)C將利用 Y1,Y2,Y3它們的聯(lián)合分布為正態(tài)分布這一前提,估計(jì)出一組(Y1,Y2)。
上例中假定了Y1,Y2,Y3的聯(lián)合分布為正態(tài)分布。這個(gè)假設(shè)是人為的,但是已經(jīng)通過驗(yàn)證(Graham和Schafer于1999),非正態(tài)聯(lián)合分布的變量,在這個(gè)假定下仍然可以估計(jì)到很接近真實(shí)值的結(jié)果。
多重插補(bǔ)和貝葉斯估計(jì)的思想是一致的,但是多重插補(bǔ)彌補(bǔ)了貝葉斯估計(jì)的幾個(gè)不足。
(1)貝葉斯估計(jì)以極大似然的方法估計(jì),極大似然的方法要求模型的形式必須準(zhǔn)確,如果參數(shù)形式不正確,將得到錯(cuò)誤得結(jié)論,即先驗(yàn)分布將影響后驗(yàn)分布的準(zhǔn)確性。而多重插補(bǔ)所依據(jù)的是大樣本漸近完整的數(shù)據(jù)的理論,在數(shù)據(jù)挖掘中的數(shù)據(jù)量都很大,先驗(yàn)分布將極小的影響結(jié)果,所以先驗(yàn)分布的對(duì)結(jié)果的影響不大。
(2)貝葉斯估計(jì)僅要求知道未知參數(shù)的先驗(yàn)分布,沒有利用與參數(shù)的關(guān)系。而多重插補(bǔ)對(duì)參數(shù)的聯(lián)合分布作出了估計(jì),利用了參數(shù)間的相互關(guān)系。
以上四種插補(bǔ)方法,對(duì)于缺失值的類型為隨機(jī)缺失的插補(bǔ)有很好的效果。兩種均值插補(bǔ)方法是最容易實(shí)現(xiàn)的,也是以前人們經(jīng)常使用的,但是它對(duì)樣本存在極大的干擾,尤其是當(dāng)插補(bǔ)后的值作為解釋變量進(jìn)行回歸時(shí),參數(shù)的估計(jì)值與真實(shí)值的偏差很大。相比較而言,極大似然估計(jì)和多重插補(bǔ)是兩種比較好的插補(bǔ)方法,與多重插補(bǔ)對(duì)比,極大似然缺少不確定成分,所以越來越多的人傾向于使用多值插補(bǔ)方法。