作者:網舟科技(席漢斌)
在運營商大數據挖掘的應用中,由於數據獲取的渠道以及數據結構理解的差異等原因,經常會把一些數據記為「未知」,「空白」或使用一些特殊的標識來表示,這類數據通常被稱為缺失數據(missing data)或者是不完備數據(incomplete data)。這些缺失數據通常會造成非常大的影響,比如缺失數據會在一定程度上影響抽取數據模式的正確性和導出規則的準確性,從而導致建立錯誤的數據挖掘模型,並且由於現階段的大多數數據分析的算法都沒有具備分析和處理缺失數據的能力,因而當數據集中含有缺失數據時這些已經被廣泛使用的數據分析算法或者系統往往是無能為力的。目前,數據缺失的問題網舟科技團隊在工作中已經取得了一些研究性成果,其中包括應用近似值替換方法、隨機回歸填補方法、神經網絡、貝葉斯網絡等理論來處理缺失數據的填補問題。
下面就幾種常用的數據補齊方法進行對分析:刪除樣本法、0-1填補法、均值填補法、EM算法填補、回歸填補、MI算法、K-最鄰近法。
1缺失數據補齊技術
1.1 傳統方法
1.1.1刪除法
這方法的思想是將原來數據集中含有缺失數據的樣本刪除,從而得到一個包含完整數據的數據集。這種方法簡易可行,在含有數據缺失的樣本數量比較少的情況下數據補齊效果比較不錯。但是,這種方法是以刪除含有缺失數據的樣本來得到完整數據集,經常會有浪費資源的情況發生。例如,在刪除含有缺失數據樣本的同時,也失去了隱含在這些樣本中的大量有價值信息。並且當含有缺失數據的樣本數量比較多時,這種方法對處理後得到的數據集的均值和方差分布方面都會產生較大的偏差。
1.1.2填充0、1、均值法
該方法是將原數據集中包含缺失數據的項全都簡單地填充為0、1或者相應屬性的樣本均值,從而得到一個完整的數據集。
3實驗及分析
3.1 實驗數據
網舟科技出於數據保密的原則,實驗數據是從公開資料庫UCI機器學習資源庫獲取的4個含有缺失數據的分類數據集,他們分別是網際網路廣告數據集(internetadvertisements dataset)、肝炎數據集(hepatitis dataset)、乳腺腫塊數據集(mammographic masses dataset)以及眾議院投票數據集(house-votes-84 dataset)。以下分別簡稱這些數據集為ad,hepatitis,mammographic以及house vote。
這4個數據集均含有不同數量的缺失數據,表1列出了這4個數據集的包含樣本總數、屬性個數、含有缺失數據樣本數以及數據缺失比例。
3.2數值實驗及結果分析
針對以上4個數據集,分別應用填補0、填補1、填補均值、EM算法(EM)、回歸填補法、MI算法(MI)、KNN算法(KNN)以及刪除樣本的方法對其缺失值進行處理,得到相應的完整數據集。其中KNN算法的k值取10。
採用支持向量機的分類結果作為檢驗補齊性能指標度量。SVM的核函數分別採用線性核和Gaussian核。數據集的Gaussian核的Sigma值分別為0.00001,0.0001,0.001,0.01,0.1,1,10,100,1000,10000。使用n-折交叉檢驗來檢驗不同缺失值填補方法的處理效果,其中n值均取10。
圖1-4分別給出了支持向量機在Gaussian核下,不同Sigma值下各填補方法的效果。從圖中可以選出在合適的Sigma值下,相比其他填補方法,刪除樣本法及回歸法的填補效果比較好。從圖1-4的實驗結果中,我們可以選出針對不同數據的高斯核參數,即在4組數據下的相對最優Sigma參數分別為100、100、10、10。
圖1. Ad數據在不同sigma參數下的分類準確率
圖2. Hepatitis數據在不同sigma參數下的分類準確率
圖3. Housevotes數據在不同sigma參數下的分類準確率
圖4. Mammographic數據在不同sigma參數下的分類準確率
表2給出了支持向量機在線性核下(選用線性核的原因是該核無參數),對4個數據集使用不同填補方法的效果,從表2中可以看出刪除樣本準確率相對較高。
表3給出了支持向量機在Gaussian核下,對4個數據集使用不同填補方法的效果。
表2給出了支持向量機在線性核下(選用線性核的原因是該核無參數),對4個數據集使用不同填補方法的效果,從表2中可以看出刪除樣本準確率相對較高。
表3給出了支持向量機在Gaussian核下,對4個數據集使用不同填補方法的效果。
4結 論
針對4個分類數據集中的數據缺失問題展開對比分析,分別應用填補0、填補1、填補均值、EM算法、回歸填補法、MI算法、KNN算法以及刪除樣本的方法對其缺失值進行處理。使用支持向量機對數據集進行分類驗證不同的缺失數據補齊方法的效果。從數值實驗結果可以看出,回歸補齊法及刪除樣本法的效果相對較好,補齊後的數據的分類準確率更高。在實際的運營商應用中,其數據樣本大,或者樣本中缺失屬性比較多的情況,刪除樣本法就不夠實用了,因此回歸法補齊缺失數據是各類補齊數據方法中相對較好的一種。