宣晶雪 張權 李曉紅 王書宜
摘?要:針對不平衡數(shù)據(jù)集少類樣本分類精度低的現(xiàn)象,本文提出了一種新的不平衡數(shù)據(jù)擴充采樣算法。改進算法通過距離度量,在少類樣本中心與其近鄰間進行隨機線性插值,使數(shù)據(jù)平衡。改進算法與SMOTE算法、C_SMOTE算法分別對5個不平衡數(shù)據(jù)集進行擴充分類對比實驗,基于AUC、OOB、F值與G值評價指標及成對樣本T檢驗,證明改進算法能有效緩解類不平衡,并具有更優(yōu)異的不平衡數(shù)據(jù)處理性能。
關鍵詞:不平衡數(shù)據(jù);SMOTE算法;安全點;噪聲點;隨機森林算法
隨著人工智能領域的飛速發(fā)展,基于大數(shù)據(jù)的分類研究被認為是可期待的新技術[1]。由于采樣環(huán)境差異,大數(shù)據(jù)通常存在類不平衡。類不平衡問題會產(chǎn)生許多標準學習算法分類性能的嚴重障礙[2]。分類器進行訓練時,往往更易學習多類(負類)樣本的特性,從而引起少類(正類)樣本被誤分,導致嚴重后果。例如,醫(yī)學研究的分類問題中,如若有正常樣本80個,患病樣本20個,即使所有的患病樣本都被誤分,分類模型的準確率仍能達到80%。但就實際問題而言,誤診會產(chǎn)生嚴重影響。因此,不平衡數(shù)據(jù)集的擴充分類顯得尤為重要[3]。
1?SMOTE算法分析
SMOTE算法是由Chawla提出的不平衡數(shù)據(jù)擴充的常見算法[4]。其基本原理是在少類樣本與其近鄰樣本間進行隨機的線性插值來完成數(shù)據(jù)擴充,以達到一定的不平衡比率。不平衡比率為樣本集合中少類樣本數(shù)目與多類樣本數(shù)目的比值[5]。
SMOTE算法的具體步驟為:對任意的一個少類樣本xi(i=1,2,…,n),計算xi與其他少類樣本的距離,得到樣本xi的k個近鄰。再從k個近鄰中任意選取m個近鄰樣本,記作xij(j=1,2,…,m),通過在xi與xij之間進行隨機的線性插值構造新的少類樣本。插值公式為:
xnew=xi+rand(0,1)(xij-xi)
其中xnew表示人為構造的少類樣本,rand[0,1]是區(qū)間[0,1]上滿足均勻分布的隨機數(shù)。
2?改進算法
2.1?改進算法設計
首先,SMOTE算法雖在一定程度上改善了不平衡數(shù)據(jù)集的分類效果,但其k值需人為確定,具有一定的盲目性[6]。其次,對于邊緣點而言,經(jīng)SMOTE算法擴充后的樣本點仍可能是邊緣點,導致擴充數(shù)據(jù)邊緣化,且易模糊正負類邊界。
本文提出改進算法,依據(jù)一定的劃分規(guī)則,將少類樣本劃分為安全點與噪聲點,僅在安全點與少類樣本中心點(少類樣本均值)間以線性插值的方式構造少類樣本。使得擴充的少類樣本分布在原始少類樣本中心點附近,有效避免擴充數(shù)據(jù)邊緣化,且規(guī)避SMOTE算法中k值選取的不確定性。
2.2?改進算法流程
假設原始數(shù)據(jù)維度為m×r,m為樣本總個數(shù),r為樣本特征總個數(shù)。其中少類樣本維度為n×r,多類樣本維度為(m-n)×r。
(1)歸一化預處理。分別對少類、多類樣本進行歸一化處理,使所有樣本取值介于[0,1]之間,避免量綱差異產(chǎn)生誤差。
x′ij=xij-xjminxjmax-xjmin
其中x′ij為已進行歸一化預處理后的第j個特征屬性下的第i個樣本,xij為原始數(shù)據(jù)中第j個特征屬性下的第i個樣本,xjmax為樣本基于第j個特征屬性下的最大值,xjmin為樣本基于第j個特征屬性下的最小值。
(2)計算少類樣本中心點。依據(jù)下式,取歸一化后各特征屬性下的均值為少類樣本中心點,記作x′center。
x′center=(1n∑ni=1x′i1,1n∑ni=1x′i2,…,1n∑ni=1x′ir)
其中是x′ir為已進行歸一化預處理后的第r個特征屬性下的第i個樣本,n為少類樣本個數(shù)。
(3)劃分少類數(shù)據(jù)為安全點和噪聲點。計算少類樣本中心x′center與每個少類樣本點x′i之間的歐氏距離,記作disti(i=1,2,…,n)。并計算少類樣本中心x′center與多類樣本點間歐氏距離的平均值,記作distaverage。若distidistaverage,則第i個少類樣本點記為噪聲點;若disti
(4)數(shù)據(jù)擴充。在少類樣本中心點x′center與安全點之間通過如下公式進行數(shù)據(jù)擴充。
x′new=x″i+rand(0,1)(x′center-x″i)
其中x′new為新擴充的少類樣本,x″i為安全點集合中的少類樣本,rand[0,1]是區(qū)間[0,1]上滿足均勻分布的隨機數(shù)。
(5)選取不平衡比率。文獻[2]中研究表明不平衡比率為0.7時,擴充融合數(shù)據(jù)分類效果最優(yōu)。故本文當不平衡比率達到0.7時停止擴充。
(6)更新總數(shù)據(jù)集。將擴充后的少類樣本與預處理后的數(shù)據(jù)集合融合,隨機抽樣劃分訓練集與測試集為3∶1,并利用隨機森林模型對更新后的數(shù)據(jù)集進行分類。
改進算法流程圖如圖1所示:
3?對比實驗分析
3.1?實驗評估指標
本文不平衡數(shù)據(jù)擴充分類實驗中的評價指標為AUC值、袋外誤差OOB、F值與G值。
3.2?實驗環(huán)境
實驗數(shù)據(jù)來源于UCI數(shù)據(jù)庫中Pima、WPBC、WDBC、Ionosphere、Breastcancerwisconsin?5個不平衡數(shù)據(jù)集,表1為其具體信息。本文提出的改進算法由Excel、Python與SPSS共同實現(xiàn)。Excel用于劃分安全點與噪聲點,擴充算法由Excel與Python共同實現(xiàn),隨機森林算法使用Python3.7軟件編程實現(xiàn),成對樣本T檢驗通過SPSS實現(xiàn)。隨機森林模型進行分類時,采用5折交叉驗證防止過擬合,通過Gini指數(shù)選取最優(yōu)特征,每棵決策樹選取的特征個數(shù)依據(jù)經(jīng)驗公式h=logr2+1計算,r為每個數(shù)據(jù)集中總特征個數(shù),每棵決策樹選取的h個特征是隨機的。
3.3?數(shù)值實驗
本文提出改進算法與SMOTE算法、C_SMOTE算法分別對5個不平衡數(shù)據(jù)集進行擴充,并用隨機森林模型對擴充后的融合數(shù)據(jù)分類。為獲取科學準確的實驗結果,重復擴充分類實驗5次,取其平均值為最終實驗結果。
3.4?實驗結果分析
3.4.1?對比試驗結果分析
Pima、WDBC、WPBC、Ionosphere和Breastcancerwisconsin數(shù)據(jù)集的實驗結果如圖2~圖6所示,粗體表示實驗效果較好的數(shù)據(jù)組。
根據(jù)圖2~圖6可知,對于5個數(shù)據(jù)集合而言,均是改進算法組對應的AUC值、F值、G值最高,OOB值最低。因此本文提出的改進算法對應的擴充分類效果優(yōu)于原始未擴充數(shù)據(jù)、SMOTE算法和C_SMOTE算法。
3.4.2?成對樣本T檢驗分析
為了進一步說明改進算法較SMOTE算法具備更良好的不平衡擴充性能,采用成對樣本T檢驗對其進行驗證。Sig雙側值是成對樣本T檢驗的主要評價指標,若Sig雙側值小于0.05,則配對樣本有顯著性差異,否則不具有顯著性差異。配對樣本為5個不平衡數(shù)據(jù)集基于改進算法與SMOTE算法連續(xù)10次擴充分類實驗的OOB值,表2為5組數(shù)據(jù)的成對樣本統(tǒng)計量表格,粗體為實驗效果較好的數(shù)據(jù)組。表3為5組數(shù)據(jù)成對樣本檢驗結果。
根據(jù)表2可知,改進算法組對應的泛化誤差更小,標準差與標準誤差更低。即與SMOTE算法相比,改進算法對應的擴充分類效果更好,對不平衡數(shù)據(jù)的處理能力更優(yōu)。
根據(jù)表3可知,5組配對樣本數(shù)據(jù)的Sig雙側值均小于0.05,因此改進算法與SMOTE算法分別對5個不平衡數(shù)據(jù)集進行擴充,再經(jīng)隨機森林模型進行分類,其分類效果具有顯著性差異。
結語
本文提出了一種基于SMOTE算法的不平衡數(shù)據(jù)擴充采樣算法?;跀?shù)據(jù)層面,模擬原始少類樣本的分布特性,圍繞少類樣本中心,在安全點內(nèi)線性插值構造數(shù)據(jù),使得擴充數(shù)據(jù)分布在中心點附近,有效克服擴充數(shù)據(jù)邊緣化。實驗表明,改進算法顯著提升不平衡數(shù)據(jù)集的分類效果,有效緩解了不平衡數(shù)據(jù)集分類難的現(xiàn)象。不平衡數(shù)據(jù)擴充其本質(zhì)是希望提高原始少類樣本的分類效果。未來,可從原始少類樣本角度出發(fā),嘗試增加僅評估原始少類樣本分類效果的評價指標,對算法擴充性能進行驗證。
參考文獻:
[1]唐思均.基于優(yōu)化SMOTE算法的非平衡大數(shù)據(jù)集分類研究[J].沈陽工程學院學報(自然科學版),2021,17(03):7176.
[2]Ma?L,Li?Y,F(xiàn)an?S,et?al.A?Hybrid?Method?for?Image?Segmentation?Based?on?Artificial?Fish?Swarm?Algorithm?and?Fuzzy?cMeans?Clustering[J].Computational?and?Mathematical?Methods?in?Medicine,2015(4):110.
[3]張?zhí)煲?,丁立?一種基于SMOTE的不平衡數(shù)據(jù)集重采樣方法[J].計算機應用與軟件,2021,38(09):273279.
[4]Nitesh?V?Chawla,Kevin?W?Bowyer,Lawrence?O?Hall.SMOTE:Synthetic?Minority?Oversampling?Technique[J].Journal?of?Artificial?Intelligence?Research,2002,16(1):321357.
[5]李志強,余炫樸.基于SMOTELR的大學生學術失信預測研究[J].東北師大學報(哲學社會科學版),2021(04):7683.
[6]王文博,曾小梅,趙引川,等.基于SMOTEXGBoost的變壓器缺陷預測[J].華北電力大學學報(自然科學版),2021,48(05):5460+71.
基金資助:黑龍江省省屬高等學校基本科研業(yè)務費科研項目(145109132)
作者簡介:宣晶雪(1995—?),女,漢族,黑龍江齊齊哈爾人,碩士,助教,研究方向:系統(tǒng)分析與優(yōu)化研究。