郭旗
(首都經(jīng)濟(jì)貿(mào)易大學(xué)管理工程學(xué)院,北京 100070)
隨著計(jì)算機(jī)技術(shù)和人工智能的飛速發(fā)展,各個(gè)領(lǐng)域的數(shù)據(jù)激增,數(shù)據(jù)量呈現(xiàn)出爆炸性增長(zhǎng)的趨勢(shì)。這種快速增長(zhǎng)的數(shù)據(jù)量對(duì)于計(jì)算機(jī)技術(shù)的發(fā)展提出了嚴(yán)峻的挑戰(zhàn),同時(shí)也為數(shù)據(jù)科學(xué)家和工程師們提供了更多的機(jī)遇和挑戰(zhàn)。為了更好地利用這些數(shù)據(jù),需要不斷地開發(fā)新的技術(shù)和算法,以便從這些龐大的數(shù)據(jù)集中提取出有價(jià)值的信息和見解。但是目前所接觸的數(shù)據(jù)存在著信息量大、信息冗余、價(jià)值隱性等特點(diǎn),為后續(xù)機(jī)器學(xué)習(xí)建模帶來(lái)了不少困擾。基于其統(tǒng)計(jì)特性[1],數(shù)據(jù)預(yù)處理方法在提升模型性能方面發(fā)揮著重要作用,特別是在大數(shù)據(jù)的背景下。更重要的是,處理大數(shù)據(jù)的過程中,應(yīng)該關(guān)注數(shù)據(jù)處理的各個(gè)方面,包括噪聲數(shù)據(jù)的處理、類別不平衡數(shù)據(jù)的處理及特征選擇方法等,從多層次出發(fā)全方位地關(guān)注整個(gè)數(shù)據(jù)預(yù)處理過程,并不斷優(yōu)化數(shù)據(jù)處理的各個(gè)部分,使其適應(yīng)多種數(shù)據(jù)集的需要。
中國(guó)已成為全球最大的互聯(lián)網(wǎng)市場(chǎng),這些數(shù)據(jù)在加速推動(dòng)著中國(guó)的數(shù)字經(jīng)濟(jì)和人工智能技術(shù)的發(fā)展,并且正在對(duì)全球的計(jì)算機(jī)科學(xué)和數(shù)據(jù)分析領(lǐng)域產(chǎn)生著深遠(yuǎn)的影響。特別是2022 年習(xí)近平總書記在黨的二十大上所做的報(bào)告中提出了建設(shè)數(shù)字中國(guó)的戰(zhàn)略目標(biāo),包括加快數(shù)字基礎(chǔ)設(shè)施建設(shè)、加強(qiáng)數(shù)據(jù)資源保護(hù)、推動(dòng)數(shù)字經(jīng)濟(jì)發(fā)展等。基于此,本文從數(shù)據(jù)預(yù)處理的角度出發(fā),結(jié)合其在機(jī)器學(xué)習(xí)算法中的應(yīng)用,探討數(shù)據(jù)預(yù)處理技術(shù)的重要性。
為了給機(jī)器學(xué)習(xí)模型輸入整齊、有用的數(shù)據(jù),整個(gè)數(shù)據(jù)預(yù)處理的過程包含數(shù)據(jù)清洗過程、類別不平衡數(shù)據(jù)處理過程、特征選擇過程等方面。
在數(shù)據(jù)清洗過程中,重復(fù)值、缺失值、噪聲數(shù)據(jù)的處理構(gòu)成了3 個(gè)重要的方面,具體如下:①重復(fù)值的處理。對(duì)于數(shù)據(jù)集中出現(xiàn)的重復(fù)值,如重復(fù)訂單、重復(fù)客戶信息、重復(fù)出行數(shù)據(jù)等,可以對(duì)重復(fù)值進(jìn)行去重處理[2],采用保留其在數(shù)據(jù)集中唯一值的方法進(jìn)行數(shù)據(jù)預(yù)處理。②缺失值的處理。對(duì)于缺失值,目前有2 種處理方法。一種方法是對(duì)無(wú)用數(shù)據(jù)的缺失而言,且缺失數(shù)據(jù)占總數(shù)據(jù)量比例較少,在確保刪除缺失值對(duì)于分析結(jié)果沒有影響的前提下,往往采用刪除的方式對(duì)數(shù)據(jù)集進(jìn)行處理;另一種方法是對(duì)缺失數(shù)據(jù)進(jìn)行填充,在缺失數(shù)據(jù)量較高或者數(shù)據(jù)價(jià)值較高的情況下,選擇某種替代值對(duì)缺失數(shù)據(jù)進(jìn)行填充,能夠在很大程度上對(duì)原有數(shù)據(jù)進(jìn)行還原。③噪聲數(shù)據(jù)的處理。由于數(shù)據(jù)集中的噪聲數(shù)據(jù)與其他數(shù)據(jù)間存在較大的偏差,為此要以某種標(biāo)準(zhǔn)對(duì)這些噪聲數(shù)據(jù)進(jìn)行剔除處理[3]。一般來(lái)說(shuō),通過使用基于統(tǒng)計(jì)的異常值檢測(cè)方法,如計(jì)算數(shù)據(jù)的平均數(shù)和標(biāo)準(zhǔn)差,可以有效地檢測(cè)出離群值。
對(duì)于類別不平衡數(shù)據(jù)的處理,一般采用某種采樣方法增加數(shù)據(jù)集中少數(shù)類實(shí)例或者減少多數(shù)類實(shí)例已達(dá)到數(shù)據(jù)集中不同類別數(shù)據(jù)的相對(duì)平衡。過采樣方法是類別不平衡數(shù)據(jù)預(yù)處理技術(shù)中最常用的方法,通過按照某種標(biāo)準(zhǔn)增加新的少數(shù)類實(shí)例以達(dá)到類間相對(duì)平衡的效果,從而實(shí)現(xiàn)原始偏態(tài)數(shù)據(jù)的再平衡[4];欠采樣方法則相反,是通過刪除多數(shù)類實(shí)例的數(shù)目來(lái)達(dá)到類間分布的平衡。大多數(shù)人使用過采樣方法,因?yàn)榍凡蓸臃椒ㄈ菀讈G失重要的樣本信息且其分類結(jié)果不穩(wěn)定。然而,一些研究人員通過改進(jìn)和調(diào)整欠采樣方法,仍然能夠獲得良好的分類結(jié)果[5]。
高維度的數(shù)據(jù)集為分類預(yù)測(cè)任務(wù)增加了難度,當(dāng)將維度過多的數(shù)據(jù)輸入到機(jī)器模型算法中進(jìn)行學(xué)習(xí)和預(yù)測(cè)時(shí),分類器無(wú)法對(duì)其中的特征進(jìn)行有效處理。因此,特征選擇方法的運(yùn)用在數(shù)據(jù)預(yù)處理過程中很有必要,其目標(biāo)是選擇更多相關(guān)的特征。
特征選擇研究于20 世紀(jì)60 年代初就已經(jīng)開始,當(dāng)時(shí)的研究主要集中于統(tǒng)計(jì)學(xué)方面的問題,而且由于數(shù)據(jù)量較少,涉及的特征也較少。20 世紀(jì)90 年代以來(lái),隨著數(shù)據(jù)量的膨脹和機(jī)器學(xué)習(xí)模型的發(fā)展與應(yīng)用,迫切需要一個(gè)綜合性能較好的特征選擇算法。文獻(xiàn)[6]將特征選擇方法和遺傳算法進(jìn)行結(jié)合,并將其應(yīng)用于短時(shí)強(qiáng)降水和非強(qiáng)降水預(yù)報(bào)中,發(fā)現(xiàn)特征選擇方法能夠?qū)㈩A(yù)測(cè)準(zhǔn)確率分別提升8.66%和1.05%。
本文選擇刪除空缺值和重復(fù)值、去除偏離平均值3 倍標(biāo)準(zhǔn)差以上數(shù)據(jù)的方法來(lái)對(duì)數(shù)據(jù)進(jìn)行清洗。
過采樣和欠采樣是不平衡數(shù)據(jù)預(yù)處理的2 種主要方法。其中過采樣(Synthetic Minority Oversampling Technique,SMOTE)算法[7]的思想是分析少數(shù)類樣本,根據(jù)少數(shù)類樣本人工合成新樣本,并將其添加到數(shù)據(jù)集中。
假設(shè):首先,對(duì)于少數(shù)類中的每個(gè)樣本x,使用歐幾里得距離來(lái)計(jì)算從它到少數(shù)類樣本集中所有樣本的距離,并得到它的k個(gè)最近鄰居;然后,根據(jù)樣本不平衡率來(lái)確定采樣率N,對(duì)于每個(gè)少數(shù)類樣本x,從其k個(gè)最近鄰居中隨機(jī)選擇n個(gè)樣本;最后,根據(jù)等式xnew=x+rand(0,1)×(x-xn),在原始樣本之間及其n個(gè)鄰居之間進(jìn)行插值生成n個(gè)新的合成樣本而基于聚類的欠采樣(Cluster Under-Sampling,CUS)[8]從原始數(shù)據(jù)集中分離出多數(shù)類和少數(shù)類,并使用k均值聚類算法將多數(shù)類實(shí)例聚類為k個(gè)聚類。此后,通過隨機(jī)選擇大多數(shù)樣本的1/n并去除其余樣本集,對(duì)每個(gè)創(chuàng)建的聚類進(jìn)行隨機(jī)欠采樣。由于在采樣之前使用聚類,理論上該算法將消除由于隨機(jī)欠采樣而導(dǎo)致的顯著數(shù)據(jù)減少的一些影響。
欠采樣技術(shù)的基本思想是刪除部分多數(shù)類樣本,因此會(huì)造成分類信息的丟失;而過采樣技術(shù)通過增加少數(shù)類樣本的數(shù)量,保留甚至增加了少數(shù)類的分布信息。因此,使用過采樣和欠采樣結(jié)合的手段來(lái)重新調(diào)整數(shù)據(jù)集間不同類別之間的樣本分布。
在輸入空間里,過多的輸入特征會(huì)導(dǎo)致整個(gè)模型的冗余,刪除冗余的特征將有助于減少計(jì)算成本并提升模型的準(zhǔn)確性,也將有助于避免模型的過擬合。此外,更緊湊的指標(biāo)可以幫助研究者關(guān)注更重要的指標(biāo),并持續(xù)跟蹤重要指標(biāo)后續(xù)的預(yù)測(cè)性能。本文采用基于特征權(quán)重的啟發(fā)式搜索方法RFE(Recursive Feature Elimination,遞歸特征消除),啟發(fā)式搜索是利用啟發(fā)式信息不斷縮小搜索空間的方法。在特征選擇中,特征權(quán)重可作為啟發(fā)式信息。該算法的思想是進(jìn)行多輪訓(xùn)練,每輪訓(xùn)練后,消除若干低權(quán)值(例特征權(quán)重系數(shù)或者特征重要性)的特征,再基于新的特征集進(jìn)行下一輪訓(xùn)練,一直迭代到保留需要數(shù)量的特征為止。
將上述3 種方法集成起來(lái),提出基于集成的數(shù)據(jù)預(yù)處理技術(shù),不僅能夠多維度進(jìn)行數(shù)據(jù)預(yù)處理,克服多方面數(shù)據(jù)集本身存在的弊端;還可以結(jié)合各自方法的優(yōu)勢(shì),將數(shù)據(jù)預(yù)處理的能力發(fā)揮到最大。
在UCⅠ數(shù)據(jù)庫(kù)中選取了3 個(gè)數(shù)據(jù)集,如表1 所示。選擇決策樹、支持向量機(jī)和神經(jīng)網(wǎng)絡(luò)這3 種機(jī)器模型以驗(yàn)證所提出的數(shù)據(jù)預(yù)處理方法的有效性。
表1 3 個(gè)UCI 數(shù)據(jù)集
按照7∶3 的比例劃分為訓(xùn)練集和測(cè)試集。首先用訓(xùn)練集訓(xùn)練3 個(gè)機(jī)器學(xué)習(xí)模型,迭代30 次從而得到最優(yōu)參數(shù);然后再用測(cè)試集驗(yàn)證模型的準(zhǔn)確性。所使用的模型評(píng)價(jià)指標(biāo)包括召回率、準(zhǔn)確率和AUC(Area Under Curve,ROC 曲線下與坐標(biāo)軸圍成的面積)值。ROC(Receiver Operating Characteristic,受試者工作特征)曲線被稱為接受者操作特征曲線,可以用來(lái)評(píng)估分類算法的性能;AUC 值用于衡量分類模型的性能。AUC 的值介于0~1 之間,越接近1 表示模型的性能越好,越接近0.5 表示模型的隨機(jī)猜測(cè)性能,而越接近0 表示模型的性能越差。
本文提出的基于集成的數(shù)據(jù)預(yù)處理方法下的3 種機(jī)器學(xué)習(xí)模型的實(shí)證結(jié)果如表2 所示,其中符號(hào)“&”前后的數(shù)字分別表示數(shù)據(jù)預(yù)處理前后的指標(biāo)得分。從實(shí)證結(jié)果可以看出,無(wú)論是決策樹、支持向量機(jī)還是神經(jīng)網(wǎng)絡(luò),雖然在數(shù)據(jù)預(yù)處理之前就已經(jīng)達(dá)到了很高的預(yù)測(cè)效能,均在85%以上,但是采用本文提出的基于集成的數(shù)據(jù)預(yù)處理技術(shù)之后,每一個(gè)機(jī)器學(xué)習(xí)模型的預(yù)測(cè)性能又更上一層樓,分別提升0.8%~4.7%,這表明了基于集成的數(shù)據(jù)預(yù)處理技術(shù)對(duì)于提高機(jī)器學(xué)習(xí)算法性能的有效性。從3 個(gè)算法來(lái)看,支持向量機(jī)在3 項(xiàng)指標(biāo)上均表現(xiàn)出最優(yōu)秀的性能,其次是神經(jīng)網(wǎng)絡(luò),然后是決策樹。
本文提出了一種基于集成的數(shù)據(jù)預(yù)處理技術(shù),將數(shù)據(jù)清洗、類別不平衡數(shù)據(jù)處理、特征選擇3 個(gè)階段集成到一起,并將其在決策樹、支持向量機(jī)、神經(jīng)網(wǎng)絡(luò)這3 種機(jī)器學(xué)習(xí)算法上進(jìn)行應(yīng)用。通過UCⅠ數(shù)據(jù)庫(kù)的3 個(gè)數(shù)據(jù)集(splice_scale、ala 和DRD)的實(shí)證分析結(jié)果可以看出,在經(jīng)過數(shù)據(jù)預(yù)處理之后,無(wú)論是哪個(gè)機(jī)器學(xué)習(xí)模型,都不同程度地提升了模型的預(yù)測(cè)性能,最高將預(yù)測(cè)準(zhǔn)確率提升了3.5%。這樣的結(jié)果也證明了在大數(shù)據(jù)時(shí)代數(shù)據(jù)預(yù)處理方法作為數(shù)據(jù)分析、建模的首要部分,在整個(gè)過程中的重要性。