鄧明陽,郭應時,劉 通
(1.長安大學 汽車學院, 西安 710064; 2.長春工業(yè)大學人文信息學院 汽車工程學院, 長春 130122;3.重慶交通大學 交通運輸學院, 重慶 400074)
數(shù)據(jù)采樣作為機器學習中對數(shù)據(jù)處理的常用方法,經(jīng)常用于不平衡數(shù)據(jù)的重采樣過程。在現(xiàn)實生活中,各個領域都會產(chǎn)生諸多不平衡數(shù)據(jù)集合,如在自動駕駛汽車市場調查中,不同地區(qū)、不同車型的樣本中都會出現(xiàn)多種類小樣本數(shù)據(jù);其他行業(yè)如一年中天氣的統(tǒng)計,工廠產(chǎn)品抽樣檢測,臨床醫(yī)學數(shù)據(jù)統(tǒng)計中也會涉及到多種類的不平衡數(shù)據(jù)。由于小樣本數(shù)據(jù)具有種類多、信息量豐富和價值高等特點,數(shù)據(jù)采樣中不可被舍棄,而現(xiàn)有的主流分類算法無法對不平衡數(shù)據(jù)進行精確處理。故此,需要重新采樣來保留高價值的小樣本數(shù)據(jù)[1]。為保證數(shù)據(jù)分類的精準性,不平衡樣本的重采樣既要保持原有各個樣本的數(shù)據(jù)特征,又要保持樣本中各個分類數(shù)據(jù)的平衡性。因此,多種類不平衡數(shù)據(jù)的采樣成為機器學習中諸多學者研究的重點領域。
目前,對平衡數(shù)據(jù)采樣方法的研究主要以數(shù)據(jù)過采樣、欠采樣和混合采樣為主,每種方法適用的條件各不相同。1993年,自Anand等[2]發(fā)現(xiàn)不平衡數(shù)據(jù)影響神經(jīng)網(wǎng)絡算法的收斂性以來,針對不平衡數(shù)據(jù)的采樣方法被逐漸完善。1995年,Vapnik[3]首次提出一種機器學習算法,命名為支持向量機算法,不僅代替了之前隨機采樣分類方法,還解決了不同樣本的分類問題。在此基礎上,各國學者不斷提出各種改進算法。
早期,對不平衡數(shù)據(jù)的研究以過采樣方法為主,Chawla等[4]在2002年提出了synthetis minority oversampling technique (SMOTE)智能過采樣方法代替隨機采樣算法。Han等[5]提出了改進算法borderline-smote,形成了基于K階的臨近思想方法;而Snchez等[6-7]提出了聚類的思想方法,擴大了數(shù)據(jù)采樣范圍。隨后,Lima等[8-9]引入進化的思想來優(yōu)化過采樣理論,而陳麗芳等[10]提出基于空間距離作為權重的方法保留了數(shù)據(jù)的特征。袁帥等[11-12]提倡的半監(jiān)督算法開始用于機器學習中,提高了算法的實用性;許皓等[13]提出基于深度學習的算法,提高了大樣本數(shù)據(jù)分類的準確率。
為保留高價值的小樣本數(shù)據(jù),部分學者同時研究不平衡數(shù)據(jù)欠采樣方法,形成了聚類和整合2種主要思想。聚類欠采樣主要由Yen等[14]提出,后來經(jīng)過Varassin等[15-16]逐漸完善算法精度。針對多種小樣本采樣問題,研究以整合欠采樣算法為主,Liu等[17-19]對整合思想進行了擴展,提高了小樣本采樣的數(shù)據(jù)精度。混合算法是將2種算法結合起來。目前,應用最多的是張家偉等[20]提出的混合隨機采樣法,而趙學華等[21-22]提出的改進采樣算法,推動了多種類不平衡數(shù)據(jù)的研究。
在汽車技術發(fā)展中,社會調查作為數(shù)據(jù)采集的重要手段,被廣泛應用。由于調查數(shù)據(jù)涉及地區(qū)、人群、型號等多種因素,所采集到的數(shù)據(jù)呈現(xiàn)出不平衡特性,后期數(shù)據(jù)分類較難;其他行業(yè)也有不平衡數(shù)據(jù)分析的需求,因此,不平衡數(shù)據(jù)的重采樣是一個普遍問題。然而,已有的重采樣方法無法對多種類不平衡數(shù)據(jù)進行完善[21-23]。本文提出一種基于超平面的抽樣及重組重采樣算法(SVM+RDS),先對每種類別數(shù)據(jù)進行排序;然后對不同種類樣本進行最大公共基數(shù)抽樣;再按照不同種類完成重組;最后,通過多次迭代的采樣法生成新的數(shù)據(jù)集。提出的重采樣算法不僅能保持原有數(shù)據(jù)的特征,還能為數(shù)據(jù)分類擴大訓練的數(shù)據(jù)集合種類,為機器學習中數(shù)據(jù)分類及數(shù)據(jù)挖掘提供了一種新方法。
多種類的不平衡數(shù)據(jù)特征主要表現(xiàn)為樣本種類多,不平衡度差異大[15]。因此,數(shù)據(jù)重采樣既要保持各種類原有數(shù)據(jù)分布特征,又要平衡不同種類樣本的數(shù)量。為了平衡不同類別樣本的數(shù)據(jù)量,如果僅對大樣本數(shù)據(jù)進行欠采樣,新的數(shù)據(jù)集合會因為舍棄部分樣本而丟失重要信息;如果直接對小樣本進行過采樣,新的數(shù)據(jù)集合又會因為生成大量新樣本而出現(xiàn)過擬合現(xiàn)象。經(jīng)過對比大小樣本的數(shù)據(jù)量,以最大公共基數(shù)對所有樣本進行分層抽樣,按照公共基數(shù)倍數(shù)重組構成新的樣本數(shù)據(jù)集合,既滿足了多種類樣本中數(shù)據(jù)量的平衡,又保持了原有數(shù)據(jù)特征。
首先,在每一類樣本中,按照樣本中各個數(shù)據(jù)到分類超平面的距離對樣本數(shù)據(jù)進行重新排序,確保采樣過程中數(shù)據(jù)的有序性。為保持數(shù)據(jù)量的平衡性,小樣本全數(shù)采樣;大樣本通過間隔抽樣的方法構成公共基數(shù),在保持原有數(shù)據(jù)特征基礎上,以防止大樣本抽樣的重復性。先對大樣本進行等距離分組,每次抽樣時從各個組內按照從頭至尾的順序只采集一個數(shù)據(jù),由此構成一個公共基數(shù),其采集數(shù)量等于分組數(shù)量。最后,在大致保持整體樣本特征的基礎上,重新組合不同種類樣本之間的公共基數(shù),構建多種類的平衡數(shù)據(jù)集。采樣過程中,公共基數(shù)為保持不同種類樣本間的平衡性,分組間隔采樣則為了保持原有數(shù)據(jù)特征完整性的前提下,能夠減少大樣本的數(shù)量,由此構建成多種類平衡的數(shù)據(jù)集合。
對于樣本種類為n的不平衡數(shù)據(jù)集D={D1,D2,D3,…,Dn},其中Di代表第i類樣本,i=1,2,…,n。每種類別的樣本數(shù)量為Di={x1,x2,x3,…,xm},m為第i類樣本中數(shù)據(jù)的數(shù)量。首先,將該集合中的樣本按照數(shù)據(jù)到超平面距離的大小進行排序,保持采樣前各種類內部的樣本數(shù)據(jù)特征。為了比較不同種類的樣本數(shù)量,定義排序后的樣本數(shù)量集合S={S1,S2,S3,…,Sn},其中Si代表第i類樣本數(shù)量,Si 1) 當S3 2) 當S1+S2 3) 當2(S1+S2) 由此可知,樣本數(shù)據(jù)的不平衡度影響G值的確定方法,也直接影響采樣后樣本數(shù)量的大小。 輸入:多種類的不平衡數(shù)據(jù)集合,D={D1,D2,D3,…,Dn} 輸出:多種類的平衡數(shù)據(jù)集合。 算法流程: 步驟1樣本數(shù)據(jù)排序。在每一類樣本中,按照數(shù)據(jù)到超平面的距離大小,樣本Ai的數(shù)據(jù)排序結果為x1 步驟2求最大公共基數(shù)G。比較各個類別樣本的數(shù)量,結合不平衡度參數(shù),求取采樣點最大公共基數(shù)G作為采樣最小單元數(shù)。 步驟3分層采樣。按照公共采樣基數(shù)G,在多種類樣本中進行一次采樣,每一類樣本形成(Si-G)+1組抽樣方法。 步驟4組合數(shù)據(jù)集。按照平衡度不同,對原有樣本采樣后進行重組數(shù)據(jù)集。判斷樣本數(shù)據(jù)的不平衡度,小樣本取樣為Si或G,大樣本取樣數(shù)約為G的倍數(shù)。 以自動駕駛汽車接受度中氣候為例,有冰雪天氣A1=110 d,雨霧天氣A2=50 d,晴天A3=200 d,以上情況符合G值確定的條件2,A2全數(shù)取樣,A1全數(shù)取樣,A3按照160 d取樣,共有41種取樣方法。 為了驗證算法的可行性,從國際標準數(shù)據(jù)集UCI中選取不平衡數(shù)據(jù)集作為訓練樣本[15-16,19-20]對算法進行訓練;然后,取一組自動駕駛汽車調查數(shù)據(jù)作為測試集,以此驗證算法的實用性,選取的不平衡數(shù)據(jù)集按照不平衡度分布,見表1。 表1 不平衡數(shù)據(jù)訓練及測試集合 建立數(shù)據(jù)采樣模型后,選取自動駕駛汽車接受度調查中的價格、能耗、排量和舒適性4類數(shù)據(jù)集作為訓練數(shù)據(jù),選取安全性數(shù)據(jù)集作為測試數(shù)據(jù)。分層重組采樣過程及效果如圖1所示。 圖1 汽車安全性市場調研中不平衡數(shù)據(jù)的重組采樣過程曲線 為了更加精確地評價本算法的性能,以機器學習分類算法來檢驗采樣數(shù)據(jù)的可用性。通過分析混淆矩陣中各個參數(shù)的含義,選用復合指標來評價算法性能。在不平衡數(shù)據(jù)中,定義少數(shù)類別為正類,大數(shù)類別為負類,混淆矩陣的類別見表2。 表2 混淆矩陣的類別 表中,TP表示預測為正類,實際也是正類的樣本數(shù)目;FN表示預測為負類,實際卻是正類的樣本數(shù)目;FP表示預測為正類,實際是負類的樣本數(shù)目;TN表示預測為負類,實際是負類的樣本數(shù)目。由混淆矩陣所定義的查全率、真正率和查準率3個指標,其定義式如下: 準確率Acc=(TP+TN)/(TP+TN+FN+FP) (1) 查全率Rec=TP/(TP+FN) (2) 查準率Pre=TP/(TP+FP) (3) 特異率Spc=TN/(FP+FN) (4) 由指標定義可知,單類指標能夠精確反應平衡數(shù)據(jù)采集中的算法性能,在不平衡數(shù)據(jù)分類中,由于小樣本的樣本量少,容易分類錯誤,部分指標之間是相互矛盾的,故采用多個指標綜合評價算法的性能。經(jīng)過對比分析,Acc已經(jīng)綜合考慮了4類指標大小,適合作為綜合評價參數(shù);同理,F(xiàn)-value綜合考慮了正類樣本的查全率和查準率,G-mean考察了正、負樣本查全率和特異率大小,故選定這3個復合指標評價采樣算法的性能。F-value和G-mean 2個指標定義如下。 1)F-value。F-value是精準率P和召回率R的調和平均數(shù)。這2個數(shù)值的調和平均數(shù)更加接近于2個數(shù)當中較小的那個。因此,如果F值較大,那么精準率和召回率都很大。 (5) 2) G-mean。G-mean是求Rec和Spc乘積的平方根。如果G-mean較大,則Rec和Spc這2個數(shù)都應該較大。例如,2個數(shù)相乘大于0.5,至少應該2個數(shù)都大于0.7。 (6) 以電動汽車市場調研舒適性數(shù)據(jù)集為測試集(見表1),經(jīng)過不同算法采樣后,利用同一分類算法來檢驗采樣數(shù)據(jù)的可用性來評價采樣算法的性能。用本文提出的算法(SVM+RDS)與當下流行的典型算法隨機過采樣(SMOTE)、超平面過采樣(SVMOM)、隨機混合采樣(SMO+TLK)和混合過采樣(SVM+ENN)對同一數(shù)據(jù)集進行重采樣和數(shù)據(jù)分類,通過對比復合指標來反映不同算法的性能,評價指標的計算結果見表3。 表3 評價指標的計算 由表3可以得出,本文提出的算法在F-value和G-mean兩項復合指標的值高于其他4種算法,其Acc的值與其他算法大小持平。由復合指標Acc的定義可知,本算法在樣本集合中對正、負樣本的分類方面與其他算法性能相差不大;由復合指標F-value和G-mean的定義可知,本算法SVM-RDS對小樣本的查全率和查準率明顯高于其他算法,這說明在對不平衡數(shù)據(jù)的重采樣中,本算法能夠精準地提取小樣本的數(shù)據(jù)特征,有效區(qū)分大、小樣本種類。因此,本文提出的算法在保持整體采樣準確率的基礎上,對不平衡數(shù)據(jù)重采樣具有較好的通用性和實用性。 針對多種類的不平衡數(shù)據(jù),提出了一種基于最大公共采樣基數(shù)分層抽樣和總體平衡的重組采樣方法。與現(xiàn)有采樣方法相比,所提出的算法在數(shù)據(jù)特征保持方面有較好的表現(xiàn)。經(jīng)過實際數(shù)據(jù)測試,在正樣本分類中,與其他算法相比,本算法精度較高,表現(xiàn)為在真實為正的樣本中有絕大部分樣本被識別出來;而在判斷為正樣本的數(shù)據(jù)中,真正為正樣本的數(shù)據(jù)較多。通過復合指標的計算,所提出的算法在查準率和查全率均明顯高于其他算法,對不平衡數(shù)據(jù)采集具有較高的精準度。根據(jù)分層理論,在大樣本特征不變的前提下,樣本數(shù)據(jù)量減少;再根據(jù)組合理論,由不同公共基數(shù)構成的平衡新樣本集在整體數(shù)量上保持不變,但所生成的新樣本集數(shù)量是由原各類別樣本以公共基數(shù)為單元所進行的組合方式?jīng)Q定的。這種采樣方法減小了機器訓練和測試的算法耗時,為機器學習中多種類不平衡數(shù)據(jù)處理提供了一種通用的采樣方法。3 算法設計
4 仿真實驗
4.1 采集過程
4.2 算法評價指標的選取
5 結論