?

利用可信反事實的不平衡數據過采樣方法

2024-03-12 08:58峰,宋媚,祝
計算機工程與應用 2024年5期
關鍵詞:實例分類器分類

高 峰,宋 媚,祝 義

江蘇師范大學計算機科學與技術學院,江蘇 徐州 221000

不平衡數據是指樣本中某一類的樣本個數遠大于其他類的樣本個數[1]。在二分類問題中,類別樣本數較多者稱為多數類(正類),較少者為少數類(負類)。在許多實際應用中都存在著這個問題,如醫療診斷[2]、軟件缺陷預測[3]、信用欺詐檢測[4]等。在數據不平衡的分類問題中,由于傳統分類算法考慮的是整體精度的最大化,會導致分類器的學習偏向多數類,而忽略對少數類的識別,進而削弱對少數類的識別效果,降低了分類器整體性能。然而,少數類往往才是更加關注的對象,例如在信用欺詐檢測中,違約樣本(負類)才是需要重點識別的,錯誤識別存在違約可能的樣本往往要比誤分守信用戶帶來的損失要大。因此,如何有效處理不平衡數據對于機器學習分類問題具有重要意義。

目前,對不平衡數據集的處理方式主要有兩類:算法層面的改進和數據層面的改進。算法層面是通過修改傳統分類算法機理或調整其代價權重,以減少其對多數類的決策偏差,但是它們并沒有改善原始數據間的類不平衡性,不能提供更多的決策信息,具有一定的使用局限性[5-7],所以在實際應用中,更多采用的是數據層面的改進。數據層面即對原數據集進行重采樣以平衡數據分布[8],重采樣包括欠采樣和過采樣兩種。欠采樣即刪除部分多數類樣本來平衡數據集,但由于很容易在刪除過程中丟失掉數據的重要信息,造成欠擬合,因此,眾多學者更傾向于過采樣方法的相關研究[9]。最經典的過采樣方法是Chawla等[10]提出的SMOTE算法,其使用插值法在相鄰的少數類樣本之間產生新樣本,以平衡原始數據分布。后又有眾多學者根據SMOTE算法提出了一系列改進算法,如Borderline-SMOTE[11]、ADASYN[12]、WKMeans-MOTE[13]等。不難發現,SMOTE及其改進算法都是基于插值法生成的“虛擬”樣本,并沒有充分挖掘原始數據集中的有用信息,使得生成的新樣本并不能很好的體現數據特征,對分類性能提升有限。

結合上述研究,本文提出了一種基于反事實解釋的過采樣方法,使用基于案例推理的反事實方法進行數據擴充,根據現有實例的真實特征值(不是插值)合成反事實實例(少數類樣本),從而填充少數類,解決類不平衡問題。經典的反事實解釋案例是當一個智能系統拒絕個人貸款申請時給出的解釋[14],當用戶問為什么被拒時,該系統可能會給出:“如果你每個月的收入能再多300美元,那么貸款申請將會被通過”的解釋。在反事實解釋生成方面,主要有擾動式和填充式兩種。擾動的主要思想是對查詢樣本(多數類)進行最小限度的特征調整,以改變決策區域,主要方法有ADAM[14]解算器、梯度下降[15]、混合整數編碼[16]、K-D 樹[17]等。填充式主要是根據現有數據的真實特征值進行樣本合成。Smyth 和Keane[18]在2020年提出了一種基于案例推理的反事實生成方法,有效地利用了數據的邊界信息。王明等[19]提出了一種基于貪心樹的反事實解釋生成方法:生成鏈接樹,具有更高的數據真實性,為反事實解釋的應用提供了可能。在應用方面,馬舒岑等[20]利用反事實樣本分析結果生成用戶報告,為貸款失敗用戶改善自身情況提供了確切建議。Temraz 等[21]在氣候對作物生長的影響研究中,使用基于案例的反事實方法增強數據集,改善了氣候破壞時期的后續預測。夏子芳等[22]將反事實與知識圖譜進行結合,有效提升了推薦的可解釋性。以上研究都驗證了反事實解釋的可用性。Temraz和Keane[23]也將反事實解釋應用于數據增強,使模型分類性能得到了有效提升,但是其并沒有考慮所生成反事實實例的決策區域問題。

綜合上述研究,本文針對不平衡數據分類問題,在數據層面提出了一種基于反事實的數據過采樣方法,并對生成的決策邊界的非正確反事實合成樣本進行了篩除。為了驗證本方法的有效性,在KEEL與UCⅠ數據庫中選取多組數據與其他算法進行了多維度對比實驗,實驗結果表明,本文所提方法能明顯提升基本分類器在不平衡數據集上的AUC 值、F1 值和G-mean 值,具有良好的泛化性。

1 基于反事實的過采樣處理步驟

基于擾動的反事實解釋生成方法是對查詢樣本的“盲”擾動,有時會合成邊界外的、無效的樣本[14,24-25],這在類不平衡問題中可能存在嚴重副作用,因為它表示用噪聲數據填充少數類。因此,本文參考了Keane等[18]提出的基于案例的方法生成反事實實例。這種由實例引導的方法,首先捕獲數據集中現有實例之間的反事實關系構建“反事實對”,然后查詢樣本(多數類)依據KNN算法查找最近已配對實例鄰居并根據已配對鄰居“反事實對”之間的特征差異來改變其決策區域。這對于不平衡數據集意味著決策邊界的類別改變。

1.1 基于反事實生成“少數”樣本

位于決策邊界兩側相反類中的樣本,依據一定約束條件(限定特征差異)會形成一對反事實對cf,其捕獲了數據集中現有兩實例之間的反事實關系。如圖1 所示,圓圈與正方形所在決策區域分別為多數類與少數類,x與p為一對原生反事實對,dp為其差異特征;x′為未配對查詢實例,依據HEOM 距離尋找其最近已配對實例x,將匹配特征mx′與dp組合合成新的實例p′添加到數據集中,以改進未來的預測。一些形式化定義如下:

圖1 反事實數據生成方法Fig.1 Counterfactual data generation methods

(1)X是一個多數類集合,P是一個少數類集合。

(2)反事實對集合CF,一個原生反事實對cf(x,p),x∈X,p∈P。

(3)未配對實例x′的最近鄰已配對實例為x,有F(x)≠F(x′),匹配特征mx′,差異特征dp。

具體步驟如下:

輸入:訓練集T,匹配容忍度match_tol,類別特征索引數組Cat。

輸出:添加了合成樣本后的新數據集。

步驟1計算數據集T的CF集:將T劃分為多數類X和少數類P,對多數空間中的實例(稱為配對實例)和在少數空間中的反事實相關實例(稱為反事實實例)進行配對,形成本地反事實對cf(x,p)。每一原生反事實對都有一組匹配特征和一組差異特征,其中的差異決定了樣本所屬類在決策邊界上的變化。其中,mx′是來自x′所對應的匹配特征列的具體數據,dp是來自p所對應的差異特征列的具體數據。

步驟2對于查詢實例x′,從多數類中找到其最近鄰已配對實例x,即原生反事實對cf(x,p):對于x′,使用HEOM距離找到其最近鄰x,這是一個涉及原生反事實對cf(x,p)的配對實例。設F為數據某特征,a、b為該特征的兩個具體值,式(1)為HEOM[26]距離計算方式,這種距離度量方式保證了每個特征對總距離的貢獻都在0到1之間。

步驟3轉移匹配特征mx′以及差異特征dp:將實例x′所對應的匹配特征列的數據mx′以及原生反事實對cf(x,p)中p所對應的差異特征列數據dp轉移到新實例p′上,進而生成少數類樣本。

需要注意的是,匹配容忍度是CF中的一個參數,它用于提高數據集中良好的原生反事實對的可用性。如果沒有容忍,即要求數量特征在數值上須相等,此時發現的反事實對會很少,新樣本生成效益也可能會大大減少。在尋找一個原生反事實對的匹配和差異特征時,cf通過計算每個特征的最大值減去最小值作為基礎容忍度base。如果兩實例某特征差值在base×(match_tol)范圍內則允許匹配,類別特征相同才視為匹配成功。此外,如何定義“好的”反事實配對是該算法的一個關鍵點。在傳統意義上將一個“好的”反事實對定義為不超過兩個特征差異的配對。在后續實踐中,也有學者選用1~3 個[21,27]特征差異的反事實解釋。在本文中,實驗發現,具有2 個差異的原生反事實相對于1、3、4 和5 個能獲得更好的性能。由于匹配容忍度與特征差異個數的限制,并不是每一個多數類樣本都有對應的反事實樣本,因此,最后生成的反事實合成樣本個數是不確定的,輸出的新的數據集并不是“絕對的”平衡,但新生成的樣本能更好地反映數據集的邊界信息差異,更有利于分類器的分類。

1.2 篩除無效樣本

個別新生成的實例并不是一個有效的反事實解釋,即可能落在相同決策區域內。例如,圖1中新的反事實實例n′與k′具有相同的類,因為匹配特征值(來自k′)和差異特征(來自n)的組合不足以改變k′的類,如果將此類樣本作為少數類樣本進行數據填充,則會產生眾多噪聲,進而影響模型的預測。因此,本文對生成的反事實合成樣本進行了篩除,即將訓練好的分類器作為基礎模型,去判別新樣本所屬決策區域。如果判斷n′屬于少數類區域即可認為p′為好的反事實解釋,否則進行以下操作來改變n′的決策區域:

n′所擁有的來自k′的匹配特征不變,自適應迭代與n同類的有序最近鄰,直到有一個類別變化。每個最近鄰的差異特征值導致一個新的候選反事實實例q′,當q′的類別發生變化時,適應成功終止;如果沒有近鄰樣本能產生類變化,那么適應失敗。

SVM 以結構風險最小化為原則,克服了分類器高維、非線性和局部極小點等一系列問題,具有更好的魯棒性,作為基礎分類器的改進方案可以實現良好的分類性能[28-29]。目前,已有眾多學者在不平衡數據問題中基于SVM 模型做出了進一步研究,例如:改良SVM 算法分類超平面[30]、與SMOTE算法進行結合采樣[31]等,這些研究都有效解決了數據不平衡問題。因此,本文也選取SVM作為基本分類器來判別反事實樣本點決策區域。

綜上,本文方法完整流程如下:

2 實驗設計

2.1 評價指標

在類不平衡問題的研究中,經常會出現模型整體預測準確率較高,而少數類預測準確率為0 的狀況,而少數類樣本往往更是需要重點關注與處理的。因此,準確率已不能很好地評估模型效果。針對不平衡數據集,有眾多學者已經提出了更合理的評價指標,如F1、G-mean,兩者均基于混淆矩陣進行計算(見表1)。

表1 混肴矩陣Table 1 Confusion matrix

據表1,可計算如下指標:

查準率precision 表示當模型預測為正時的可信度,召回率recall 表示模型將樣本中正類樣本預測正確的概率。

根據式(4)可以看出,F1 綜合了precision 和recall兩者,更加關注少數類樣本的分類效果,在類不平衡問題中可以很好的評估模型。

G-mean 是recall 和specificity 的幾何均值,兼顧了多少類與少數類,可用于評估模型整體分類性能。

2.2 實驗數據集

本文從KEEL和UCⅠ兩大數據庫共選取了9組數據集進行實驗,且兼顧了數據類型、數據大小、數據屬性、數據不平衡率(正類樣本總數/負類樣本總數),詳見表2。

表2 數據集的基本信息Table 2 Basic information of datasets

2.3 實驗方法與算法參數

為了更全面、準確的評價算法,選用4 種采樣方法(SMOTE、Borderline1-SMOTE、Borderline2-SMOTE、ADASYN,簡稱SM、B1、B2、ADA)分別在5 個分類器(RF、SVM、Logistic、DT、AdaBoost)上與本文方法進行了對比實驗。每次實驗中,都用5 折交叉驗證的5 次平均結果作為相應指標最終得分。本文算法的參數如表3所示,匹配容忍度match_tol設置為0.1,其決定了數值型特征匹配的好壞,值越小對于匹配要求越嚴格。特征差異個數diff_nums設置為2,即要求兩實例只有在特征差異個數不大于2時才視為匹配成功?;诸惼鱏VM的C設置為1。

表3 算法參數Table 3 Algorithm parameters

2.4 實驗結果

2.4.1 實驗結果對比與分析

為了保證結果的穩定性,以下實驗都是基于10 次隨機種子數不同的5折交叉驗證的平均結果,即50次結果的平均。

表4為本文所提方法與4種傳統過采樣方法在9種不平衡數據集、5 種不同分類器上的F1 與G-mean 的實驗結果,黑色粗體表示同一數據集、不同采樣方法結果的最大值。在45 組不同組合的實驗中,本文在35 組中都同時達到了最高F1與G-mean最大,相較其他方法效果有了明顯提升。其中,在5 種不同的類器上,相較其他方法,9 組數據集的平均F1 值分別至少提升了18%、8.5%、11.1%、7.9%、9.7%,平均G-mean 至少提升了4.3%、4.5%、4.4%、2.1%、3.6%。這說明:基于反事實的過采樣方法生成的新樣本更加可信,對于邊界分類可以提供更多有用的信息,可以有效提升分類器對少數類樣本的識別能力與整體數據的分類效果,具有良好的泛化性。

表4 5種方法的F1與G-mean值對比Table 4 Comparison of F1 and G-mean values between 5 methods

如果以每種算法在不同分類器上能取得最高AUC的數據集總數量來評估整體模型,即每種過采樣算法分別在5 個分類器與9 組數據集上進行交叉組合實驗(共45組實驗)取得最高AUC的實驗組數,本文所提出方法得分也是最高的(見表5):在未經采樣處理的情況下,共有3 組實驗取得最高AUC,占比6.7%;經SMOTE 采樣后得分最高的有5組,占比11.1%;經B1-SMOTE采樣后得分最高的有1組,占比2.2%;經SMOTE采樣后得分最高的有1組,占比2.2%;經ADASYN采樣后無得分最高實驗組,經本文方法采樣后得分最高的共有35組,占比77.8%。

表5 各算法能取得最高AUC的數據集數量Table 5 Number of datasets that each algorithm can achieve highest AUC

為了更直觀地觀察算法整體效果,本文統計了各算法在不同數據集上各分類器的平均G-mean與F1值,具體見圖2、圖3。圖2 為每個算法在各分類器上的平均G-mean圖,可以看出,本文算法在不同數據集上都有很好的預測效果,表現穩定。圖3是每個算法在各分類器上的平均F1值圖,在9種數據集上,本文算法在其中5項上都獲得了最高F1 值,且提升效果明顯;B2 與ADASYN分別在Pi 和Ad 上取得了最優F1,但不難發現,本文算法與其差距都甚小,依舊表現良好;在Segment和V0這兩種數據集上,未經采樣處理的原始數據取得了最優平均F1值,其他過采樣算法F1值出現了明顯下降,但本文算法減少較小,這也證明了該算法生成的樣本點更加可信,對模型預測的噪聲更少。

圖2 各算法平均G-mean值圖Fig.2 Average G-mean value plot of each algorithm

圖3 各算法平均F1值圖Fig.3 Average F1 value plot of each algorithm

2.4.2 與其他文獻中的算法對比

表6 為本文算法與其他文獻中所提算法在相同數據集上的分類效果對比,其中,分類器都采用了SVM,且取其他算法的最優評價指標值??梢钥闯?,本文算法在不同數據、不同評價指標下都具有一定的優勢,這也驗證了本算法的有效性。

表6 基于SVM分類器與其他文獻算法對比Table 6 Comparison with other literature algorithms based on SVM classifier

3 結束語

為解決數據不平衡問題,本文提出了一種利用反事實的過采樣方法,相比其他傳統過采樣方法,充分利用了現有實例的特征屬性,生成基于真實數據的新樣本,更能挖掘原始數據集的有用信息,為了保證反事實合成樣本的有效性,對合成樣本又進行了邊界可信清除。通過結合不同分類器,分別在9組數據集上與經典過采樣方法進行了比較,實驗結果表明,本方法在AUC、G-mean和F1上都有明顯的提升,且具有良好的魯棒性。

同時,與近年其他文獻中所述算法進行了同維度對比,同樣表現出了一定的優勢,這也進一步驗證了本方法的有效性。本文所提方法是針對二分類問題的,如何利用反事實方法在多分類數據不平衡問題中進行有效的過采樣,是進一步研究的方向。

猜你喜歡
實例分類器分類
分類算一算
分類討論求坐標
數據分析中的分類討論
BP-GA光照分類器在車道線識別中的應用
教你一招:數的分類
加權空-譜與最近鄰分類器相結合的高光譜圖像分類
結合模糊(C+P)均值聚類和SP-V-支持向量機的TSK分類器
完形填空Ⅱ
完形填空Ⅰ
基于LLE降維和BP_Adaboost分類器的GIS局部放電模式識別
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合