Research on improving imbalanced numerical data using NGN algorithm
Xing Changzheng,Zheng Xin,LiangJunfeng (CollegeofElectronicamp; Information Engineering,Liaoning Technical University,HuludaoLioning1251o5,China)
Abstract:When minorityclassamplesare scarce,traditional oversampling methods struggleto increasethesamplecount. This paper introduced a NGN algorithm that synthesized new data byadding generator-generated dataas noise to theoriginal minorityclassamplesuntilbalance wasachieved.Thegenerator employedafour-layerfullyconnectednetworkandintegrated low-structureandhigh-structurefeaturegenerationtechniquestoenhancethequalityanddiversityofthegenerateddata.For verylimited minorityclassamples,NGNgeneratednewsamples,mergedthemwiththeoriginal minorityclassdata,and performedclustering to achieve balance withinclusters while minimizing the impactof noise.The study evaluated NGNon6unbalanceddatasets,applied4oversamplingalgorithms tobalancethedatasets,andclasifiedthebalanceddatasetsusing4classificationmethods.TheexperimentalresultsdemonstratethatNGNefectivelyincreasesthenumberof minorityclasssamples, enhances the model’sability to learn minority classfeatures,and significantly improves classification performance.
Key words:numerical generator network(NGN);generator;noise;extremely scarce minority class;balance
0 引言
數(shù)據(jù)不平衡的問題源自于樣本分布的不均衡。通常情況下,多數(shù)類樣本容易獲取,而少數(shù)類樣本卻難以獲得,導致多數(shù)類樣本數(shù)量遠遠大于少數(shù)類樣本數(shù)量。實際上,如預測糖尿病[1]、金融欺詐[2]、氣壓系統(tǒng)[3]等均存在數(shù)據(jù)不平衡的問題。因此,如何處理數(shù)據(jù)缺失和類不平衡成為了當前數(shù)據(jù)處理所面臨的重要問題。目前的優(yōu)化方法主要在數(shù)據(jù)處理和算法修改兩個層面上進行。
在算法層面中常采用的算法有聚類融合、集成學習、優(yōu)化算法等。其中,具有代表性的聚類融合主要是利用多個聚類結(jié)果的共識來形成一個更加穩(wěn)定和準確的聚類結(jié)果,并且聚類融合在處理復雜結(jié)構(gòu)數(shù)據(jù)或多個聚類算法結(jié)果不一致時更有效。但該方法存在數(shù)據(jù)依賴、算法選擇局限和結(jié)果不穩(wěn)定性等缺點;數(shù)據(jù)處理通常采用過采樣和欠采樣[4]。其中,欠采樣是一種通過減少多數(shù)類樣本的數(shù)量來實現(xiàn)數(shù)據(jù)平衡的方法。然而,這種策略導致部分數(shù)據(jù)信息的丟失,影響模型的泛化能力。過采樣是指通過增加少數(shù)類樣本的復制或生成新的少數(shù)類樣本,以達到數(shù)據(jù)平衡。其中最經(jīng)典的算法是Chawla等人[5提出的SMOTE(syntheticminorityoversamplingtechnique)的基本思想是對少數(shù)類樣本中的每個樣本,找出其最近鄰的樣本,然后在這些最近鄰樣本之間隨機選取一個點,生成新的合成樣本。Han 等人[提出了Borderline-SMOTE,通過選擇邊界樣本進行合成樣本的生成,提高生成的合成樣本質(zhì)量。He等人[提出了一種處理不平衡數(shù)據(jù)集的采樣方法ADASYN(adaptivesyn-theticsampling),該算法注重為難分類的少數(shù)類樣本生成更多的合成樣本,從而適應局部數(shù)據(jù)分布。然而,數(shù)據(jù)不平衡比例較大時,上述算法會引入大量的噪聲,從而改變數(shù)據(jù)的分布。針對上述問題,Douzas等人[提出了K-meansSMOTE算法。該算法先對整體數(shù)據(jù)集進行K-means聚類,然后選擇少數(shù)類樣本比例較高的簇來生成合成樣本。王亮等人[9提出DBVMCS-MOTE算法,使用簇密度分布函數(shù),目的是保留簇中少數(shù)類樣本含有重要的分類信息。陳俊豐等人[1提出WKMeans-SMOTE,選擇特征加權(quán)的聚類算法對原始數(shù)據(jù)集進行聚類,從而提高聚類效果。但是上述算法并沒有考慮到少數(shù)類樣本的稀缺性,少數(shù)類在只有幾個的情況下無法生成新的少數(shù)類樣本,而聚類后的數(shù)據(jù)集會使少數(shù)類的樣本更少,失去了聚類的意義。
除此之外,還有將優(yōu)化算法與分類算法融合的方法可以提升分類精度,例如文獻[11]使用BAOA(abinaryversionofthearithmeticoptimizationalgorithm)解決分類中的特征問題,從而提高了分類。文獻[12]提出了一種二元版本的人工藻類算法(artificialalgaealgorithm,AAA)。該算法在探索屬性空間以及識別分類問題中最具價值特征方面展現(xiàn)了卓越的能力。Too等人[13]提出了一種超學習二進制蜻蜓算法(hyperlearningbinarydragonflyalgorithm,HLBDA)來解決冠狀病毒的特征選擇問題。上述方法減少了極少數(shù)類樣本的特征,導致模型無法捕捉極少數(shù)類樣本的特征。
為了解決極端樣本不平衡問題,本文提出了數(shù)值生成網(wǎng)絡(numericalgeneratornetwork,NGN),用于生成少數(shù)類樣本,使數(shù)據(jù)集能夠進行聚類和過采樣操作,同時NGN算法也可應用于不平衡數(shù)據(jù)集。
本文的創(chuàng)新點如下所示:a)提出一種生成少數(shù)類數(shù)據(jù)的算法NGN;b)將NGN應用于二維數(shù)據(jù)的不平衡數(shù)據(jù)集,使其平衡;c)為了處理只有幾個樣本的少數(shù)類情況,NGN利用所有的少數(shù)類樣本生成新的樣本,從而增加少數(shù)類樣本,使分類器能夠更好地區(qū)分正類和負類。
1生成器介紹
生成器(generator)的任務是接收隨機噪聲或潛在空間的輸入,并生成類似于訓練數(shù)據(jù)的新樣本。它通常由一系列反向傳播的全連接層組成,其中每一層都將輸入映射到更高維度的空間。生成分類器的模型主要有樸素貝葉斯分類器和線性判別分析。在分類應用領(lǐng)域中,核心目標是實現(xiàn)從觀測值 X 到結(jié)果 Y 的轉(zhuǎn)換。此過程既能夠直接完成計算而無須借助概率分布;也能夠?qū)o定觀測值 X 時標簽 Y 的概率予以估計,并以此作為分類的依據(jù);還能夠?qū)β?lián)合分布 P(X,Y) 進行估算,從中得出給定觀測值 X 時結(jié)果 Y 的概率,隨后以此為分類的基礎(chǔ)。
給定聯(lián)合分布模型 P(X,Y) ,各個變量的分布計算為
其中: X 是連續(xù)的,因此對其進行積分;認為 Y 是離散的,因此對其進行求和。在生成對抗網(wǎng)絡(generativeadversarialnet-work,GAN)[14]中,生成器的目標是生成逼真的數(shù)據(jù),使得判別器無法區(qū)分生成數(shù)據(jù)和真實數(shù)據(jù),但是GAN具有很高的復雜度,運行時間更長。所以去掉GAN判別器的部分,只用生成器生成數(shù)值數(shù)據(jù),降低復雜度和運行時間。
2 數(shù)值生成網(wǎng)絡(NGN)
結(jié)構(gòu)。NGN的核心組件是生成器,生成器的作用是接受一個低維的隨機向量作為輸入,并通過逐層映射,生成具有少數(shù)類結(jié)構(gòu)的噪聲。生成器使用不同的神經(jīng)元數(shù)將生成的特征分為低結(jié)構(gòu)特征和高結(jié)構(gòu)特征并合并。生成器采用四層全連接層(denselayer),并將各層按順序連接,結(jié)構(gòu)如圖1所示。每一層的線性變換為
針對少數(shù)類非常少,只有幾個的時候,ADASYN會使少數(shù)類與更多的多數(shù)類樣本合成,使少數(shù)類的信息損失;SMOTE生成的少數(shù)類樣本會集中在少數(shù)類樣本之間的空隙,導致少數(shù)類樣本更加集中;聚類算法會難以找到明確的聚類中心,聚類后少數(shù)類樣本更少,使樣本更加不平衡且無法使用SMOTE、ADASYN和RUS進行過采樣。因此,本文提出了一種旨在生成極少數(shù)類樣本的網(wǎng)絡,即NGN。該方法的具體步驟如算法1所示。
G(x)=WXminor+b
其中: W 為權(quán)重; b 為偏置; G(x) 為生成器的輸出。
第一層神經(jīng)元數(shù)量為32,且采用的激活函數(shù)是修正線性單元(rectifiedlinearuint,ReLU),這一層接收輸入數(shù)據(jù)并進行線性變換,再經(jīng)過ReLU激活。ReLU函數(shù)實現(xiàn)簡單且能夠產(chǎn)生稀疏的輸出,在某些情況下減少參數(shù)之間的相互依賴。其公式為[15]
算法1NGN算法輸入:數(shù)據(jù)集data。
輸出:新的數(shù)據(jù)集new_data。
a)獲取data中的少數(shù)類;
b)生成器根據(jù)少數(shù)類的特征生成噪聲數(shù)據(jù);
c)將噪聲數(shù)據(jù)與少數(shù)類合成新的數(shù)據(jù);
d)重復步驟b)c),直到多數(shù)類與少數(shù)類數(shù)量達到平衡。
由于極少數(shù)類樣本數(shù)量不足,往往缺少足夠的樣本支持來有效訓練模型,所以模型往往無法學習到極少數(shù)類樣本的特征
f(x)=max(0,X)
第二層將提取結(jié)構(gòu)信息,三四層將第二層輸出擴大形成高結(jié)構(gòu)特征,將第二和四層在結(jié)構(gòu)上拼接起來,從而在同一層中同時包含兩種不同結(jié)構(gòu)的信息。這種操作有助于在后續(xù)層中綜合兩種結(jié)構(gòu)的特征。輸出數(shù)據(jù)與少數(shù)類特征的維度相同。這通常用于生成具有特定特征分布的樣本,從而與少數(shù)類數(shù)據(jù)特征結(jié)構(gòu)相同。激活函數(shù)使用ReLU。
輸出層的激活函數(shù)采用的是指數(shù)線性單元(exponentiallinearunit,ELU)[16],本文對ELU進行了修改。無論 X 是正是負,公式都為
f(x)=a(eX-1)
這樣會使生成的噪聲變大,且合成后的數(shù)據(jù)不容易分散在原來數(shù)據(jù)的周圍。
最后,為了降低網(wǎng)絡負載并提升訓練效率,本文引入并修改了dropout正則化技術(shù)[17]。通過在訓練過程中隨機丟棄網(wǎng)絡中一定比例的神經(jīng)元,dropout能夠有效地減少模型對特定訓練樣本的依賴,從而提高模型的泛化能力。dropout的數(shù)學表達式為
其中: p 是丟棄概率,表示每個神經(jīng)元被丟棄的概率; F 是與極少數(shù)類的特征維度相同的掩碼。其中每個元素獨立地以概率1-p 為1,以概率 p 為0。
在許多現(xiàn)實世界的應用中,數(shù)據(jù)往往近似服從正態(tài)分布。而且正態(tài)分布在訓練過程中通常能夠提供穩(wěn)定的梯度,給定的少數(shù)類數(shù)據(jù)特征維度 X ,生成器 G 給定輸入噪聲時生成噪聲數(shù)據(jù) Y 的分布表示。
通過生成器生成噪聲添加到原來的數(shù)據(jù)上,實現(xiàn)了對極少
數(shù)類樣本的數(shù)據(jù)擴充。
2.1多數(shù)類與少數(shù)類平衡
在少數(shù)類平衡的情況下,少數(shù)類樣本的數(shù)量較少,但是相對于多數(shù)類來說數(shù)量并不是非常少。在這種情況下,本文使用NGN來生成噪聲與原始數(shù)據(jù)合成的少數(shù)類樣本,以平衡數(shù)據(jù)集中各個類別的樣本數(shù)量。使用NGN進行過采樣的偽代碼如下所示。
算法2NGN進行過采樣
輸入:數(shù)據(jù)集data。
輸出:新的數(shù)據(jù)集new_data。
a)將data分成多數(shù)類major,少數(shù)類minor,提取minor的特征 X b)計算循環(huán)次數(shù) L
循環(huán)次數(shù)舍棄小數(shù)點后位數(shù),進行循環(huán)
c)如果數(shù)據(jù)為小數(shù),則生成noise,且維度與 X 相同
d)生成新的數(shù)據(jù): :new=noise+minor ,結(jié)束循環(huán)
e)計算還需要生成的個數(shù):
rest=data-major-minor-new
f)根據(jù)rest的個數(shù)生成,重復上述步驟d)e)
g) 返回new_data
上述算法的時間復雜度為 O(L×X×n) ,其中 n 取決于神經(jīng)網(wǎng)絡的層數(shù)、每層的神經(jīng)元數(shù)量以及每次迭代的樣本數(shù)??臻g復雜度為 O(new×X×m) ,其中 m 為生成器網(wǎng)絡結(jié)構(gòu)的參數(shù)。
注意以下三點:a)如果noise為1以下的小數(shù),需視情況縮小或擴大noise的倍數(shù);b)因為生成器默認生成的數(shù)據(jù)是小數(shù),如果原數(shù)據(jù)為整數(shù),則生成noise_int;c)有時原數(shù)據(jù)的某個列為0,則將對應的列也變?yōu)?。
2.2多數(shù)類與少數(shù)類數(shù)量極少的平衡
針對少數(shù)類數(shù)量極少的樣本,傳統(tǒng)過采樣方法存在一些局限性。比如,ADASYN在樣本分布離散化或少數(shù)類別僅有幾個樣本時無法進行合成;SMOTE生成的合成樣本傾向于集中在少數(shù)類周圍,導致模型更關(guān)注少數(shù)類。在這種情況下,NGN被用來生成合成的少數(shù)類樣本,擴充少數(shù)類樣本的數(shù)量。
在使用NGN合成少數(shù)類樣本時,生成數(shù)據(jù)的個數(shù)對生成后的新數(shù)據(jù)分布起很大的作用,如果生成數(shù)據(jù)過多,導致扭曲了真實數(shù)據(jù)分布的特征。因此在確定生成少數(shù)類的數(shù)量時,須考慮數(shù)據(jù)分布的情況。
算法3確定少數(shù)類的個數(shù)
輸入:極少數(shù)類樣本minor。
輸出:簇cluster。
a)使用NGN生成少數(shù)類樣本,生成新的數(shù)據(jù)集new_datab)對 new_data使用手肘法[18]
c)計算輪廓系數(shù)[19]
d)結(jié)合輪廓系數(shù)和手肘點確定簇的個數(shù)k
e)返回cluster
肘形指的是在某些分析曲線或圖形中,數(shù)據(jù)變化趨勢形成的一個明顯拐點,形狀類似于人的肘部。肘形的特征是曲線在拐點之前呈現(xiàn)快速變化的趨勢,而在拐點之后變化趨于平緩。在許多實際應用中,肘形的選擇非常模糊,因為數(shù)據(jù)不包含一個明顯的拐點,導致曲線較為平滑,從而使肘部的判斷變得主觀或模糊。而輪廓系數(shù)對數(shù)據(jù)中的噪聲和異常值敏感,因為異常點會拉高與其他簇的距離,從而影響輪廓系數(shù)的計算。特別是當數(shù)據(jù)集中存在大量離群點時,輪廓系數(shù)的值會失真。但是輪廓系數(shù)彌補手肘法的不足,手肘法側(cè)重于最小化簇內(nèi)的誤差,但并不直接考慮簇之間的分離性。輪廓系數(shù)則同時考慮了簇的緊密度和分離性。所以為了使數(shù)據(jù)集更容易確定聚類的簇值,本文將手肘法與輪廓法結(jié)合使用,先使用手肘法確定一個初步的聚類數(shù)目范圍。手肘法比較直觀,為選擇合理的聚類數(shù)目提供一個候選區(qū)間。在這個候選區(qū)間內(nèi),計算不同聚類數(shù)目的輪廓系數(shù),選取輪廓系數(shù)最大的那個聚類數(shù)目,作為最終的選擇。
圖2展示了經(jīng)過NGN過采樣處理后,少數(shù)類樣本的分布情況。從圖中觀察到少數(shù)類樣本的數(shù)量顯著增加且擴展了少數(shù)類的分布范圍,減少了特征空間的稀疏性。
3實驗設計與結(jié)果分析
3.1 數(shù)據(jù)集介紹
實驗使用的是UCI數(shù)據(jù)庫上的七組標準公開數(shù)據(jù)集,分別是pima[20]、transfusion[21]、hcv_data[22、wine[23]、gls[24]ionosphere[25]和 。其中:pima、transfusion、ionosphere 是二分類數(shù)據(jù)集;hcv_data、wine、glass、ecoli是多類別數(shù)據(jù)集。hcv_data、glass存在少數(shù)類為例數(shù)的情況。hcv_data用于分類肝炎狀態(tài)或預測疾病的嚴重程度,共有5例類別,其中blooddonor類有533例、hepatitis類有24例、fibrosis類21例、cirrhosis類有30例,suspectblooddonor類僅有7例,將suspectblooddonor作為少數(shù)類,其余的作為多數(shù)類。glass共有6例類別,其中建筑窗戶有70例,非浮點數(shù)的(建筑窗戶)有76例,車窗有17例,集裝箱有13例,餐具有9例,大燈有29例。將類別6作為少數(shù)類,其余作為多數(shù)類。wine有3例類別,其中類別1為59例,類別2有71例,類別3有48例,將類別3作為少數(shù)類,其余作為多數(shù)類。ecoli共有8例類別,分別對應不同的亞細胞位置:細胞質(zhì)有143例、內(nèi)膜有77例、周質(zhì)有52例、內(nèi)膜但無明確類別有35例、外膜有20例、外膜脂蛋白有5例、內(nèi)膜脂蛋白有2例,以及內(nèi)膜空間蛋白有2例。這里本文選擇內(nèi)膜脂蛋白作為少數(shù)類,其余作為多數(shù)類。
實驗前通常需要對原始數(shù)據(jù)集進行處理。其中,將缺失值設為0,簡化數(shù)據(jù)處理過程,并使數(shù)據(jù)更易于解釋;針對字符數(shù)據(jù),需要將其轉(zhuǎn)換為數(shù)值數(shù)據(jù),因為過采樣只能處理數(shù)值數(shù)據(jù)。
數(shù)據(jù)集具體如表1所示。不平衡比率的定義如下:
多數(shù)類樣本數(shù)量不平衡比率 少數(shù)類樣本數(shù)量
3.2 實驗設計
本文實驗是在Windows10系統(tǒng)、i5-8300H處理器、NVIDI-AGTX1050顯卡、20GB存儲的計算機上進行,編程語言為Python,使用jupyter notebook平臺實現(xiàn)。
為了驗證NGN的過采樣效果,將二元數(shù)據(jù)集分別使用NGN、SMOTE、ADASYN以及Borderline-SMOTE進行過采樣,并采用隨機森林算法(random forest,RF)[27]、AdaBoost(adaptiveboosting)[28]、XGB(XGBoost)[29]、ExtraTrees[30]四種分類算法進行評估。SMOTE是經(jīng)典的過采樣基準算法,通過插值生成新的少數(shù)類樣本,有效緩解樣本不平衡問題,但在特定條件下生成的樣本缺乏分布信息。ADASYN關(guān)注難分類區(qū)域,適應性地生成的更多靠近邊界的少數(shù)類樣本,強化分類器對復雜區(qū)域的學習能力。而Borderline-SMOTE專注于增強少數(shù)類與多數(shù)類邊界樣本的學習,通過針對性生成強化分類器對邊界的理解。選擇這些算法進行對比,通過多維度驗證NGN的改進效果,特別是在生成質(zhì)量、難分類區(qū)域表現(xiàn)以及分布敏感性等方面,突出其相較于傳統(tǒng)方法的優(yōu)勢。隨機森林通過處理高維和非線性特征,展現(xiàn)了對噪聲和不平衡數(shù)據(jù)的魯棒性。Extra-Trees利用更隨機的決策劃分減少過擬合,計算效率高,在多數(shù)類主導和高不平衡比率數(shù)據(jù)集上表現(xiàn)出色。AdaBoost通過調(diào)整樣本權(quán)重,增強對少數(shù)類的識別能力,適合特征邊界清晰或樣本量較小的數(shù)據(jù)集。XGBoost則結(jié)合梯度提升和樹模型的優(yōu)點,通過正則化減少過擬合,在復雜特征的中小型數(shù)據(jù)集上性能卓越。綜合這些算法的特性,它們結(jié)合隨機性、權(quán)重調(diào)整和魯棒性,能夠適應多樣化的場景,并通過多算法對比減少模型選擇偏差,有效驗證不平衡數(shù)據(jù)上的泛化能力。這些算法充分結(jié)合了數(shù)據(jù)集的特性,包括數(shù)據(jù)規(guī)模、特征分布和不平衡比率等方面,體現(xiàn)出對不同數(shù)據(jù)集適配性的全面考慮。同時,它們在泛化能力、抗噪性以及特征權(quán)重學習等性能上各具優(yōu)勢,能夠有效應對不同場景下的不平衡數(shù)據(jù)分類需求,從而凸顯了多算法評估在解決不平衡數(shù)據(jù)問題中的重要性和優(yōu)勢。
為了驗證NGN在少數(shù)類樣本數(shù)量極少的情況下合成樣本的效果,使用數(shù)據(jù)集對其與SMOTE、ADASYN和Borderline-SMOTE算法進行比較,并觀察少數(shù)類合成樣本的分布情況。
訓練中設置Input ,batch
epoch=10 (204號SMOTE、ADASYN、Borderline-SMOTE的參數(shù)設置為默認。為了獲取最佳分類器和過采樣器的結(jié)果,利用貝葉斯尋優(yōu)算法確定了最優(yōu)參數(shù)組合[31]。貝葉斯優(yōu)化通過構(gòu)建一個概率模型來估計目標函數(shù)的未知特性,并利用該模型指導搜索,以減少不必要的評估。它采取迭代的方式,在每次迭代中選擇最具潛力的點進行評估,并據(jù)此更新概率模型,以便在有限的評估次數(shù)內(nèi)逼近最優(yōu)參數(shù)配置。實驗中使用十次十折(10-fold)交叉驗證的平均值作為最終性能度量的結(jié)果。
3.3 評價指標
為了評估分類器在解決特定任務中的表現(xiàn),評價指標包括準確率、精確率、召回率 分數(shù)和ROC曲線下面積(AUC)等,這些指標提供了對分類器性能不同方面的評估。
針對不平衡二分類問題,準確率是無法衡量分類器性能優(yōu)劣的。本文選取 F1 分數(shù)、G-mean和ROC曲線下面積(AUC)作為評價指標。這些指標能夠更好地反映分類器在不同類別上的表現(xiàn),更全面地評估分類器的性能優(yōu)劣。 F1 分數(shù)和G-mean都是根據(jù)混淆矩陣(表2)來計算的。
TP(truepositive)表示模型正確分類的多數(shù)類樣本數(shù)量;FN(1negtive)表示模型錯誤分類的多數(shù)類樣本數(shù)量;FP(1positive)表示模型錯誤分類的少數(shù)類樣本數(shù)量;TN(truenegative)表示模型正確分類的少數(shù)類樣本數(shù)量。
F1 分數(shù)是精確率(precision)和召回率(recall)的調(diào)和平均值,它綜合考慮了分類器的準確性和完整性。精確度的定義如下:
召回率的定義如下:
F1 分數(shù)定義如下:
G-mean是準確率和召回率的幾何平均值,是用來衡量分類器在不平衡數(shù)據(jù)集上的整體性能。G-mean考慮了類別不平衡的情況,能夠更好地反映分類器對少數(shù)類的分類效果。針對不平衡的數(shù)據(jù)集,已經(jīng)發(fā)現(xiàn)G-mean度量高度代表算法的性能。
G-mean的定義如下:
AUC衡量了分類器根據(jù)不同的分類閾值對正負樣本進行排序的能力,并計算了ROC曲線(receiveroperatingcharacteris-ticcurve)下的面積。ROC曲線是以召回率為縱軸,假陽性率(1positiverate)為橫軸繪制的曲線。分類器根據(jù)不同的閾值將樣本劃分為正例和負例,并計算出對應的真陽性率和假陽性率。AUC則表示ROC曲線下的面積,取值在0\~1,越接近1表示分類器性能越好。
3.4少數(shù)類平衡實驗結(jié)果分析
本文算法及對比算法的實驗結(jié)果如表3\~6所示。從表中看出,NGN算法的 F1 -score和G-mean在二維數(shù)據(jù)中達到了與其他過采樣算法相近甚至更好的效果。在pima、transfusion數(shù)據(jù)集中,NGN在大部分情況下表現(xiàn)出與其他算法相比較高的AUC,F(xiàn)1 -score和G-mean,這表明NGN生成了質(zhì)量更高的少數(shù)類樣本,從而使分類器能夠更好地學習到少數(shù)類數(shù)據(jù)的特征。因為生成器生成的噪聲很小,添加噪聲后的少數(shù)類樣本保持了數(shù)據(jù)集的整體特征分布,從而使得生成的樣本具有更高的代表性,從而更好地反映原始少數(shù)類樣本的分布特性。分類器在訓練過程中能夠?qū)W習到更豐富的信息,提高對少數(shù)類樣本的識別能力。與其他過采樣算法相比,NGN在特定分布下能夠有效增強對少數(shù)類樣本的識別能力,進而提高 F1 -score。在平衡精確率和召回率方面,NGN展現(xiàn)了優(yōu)異的性能,顯著提升了G-mean值。通過NGN生成的樣本,成功擴展了少數(shù)類的分布范圍,這不僅提升了少數(shù)類的精確率和召回率,同時也促進了整體分類性能的提高。此外,NGN生成的樣本具有更好的代表性,在某種程度上減少了噪聲影響,從而提高了少數(shù)類的召回率。
在Ionosphere上,某些情況下NGN的性能并不是最優(yōu)的。因為Ionosphere的特征已經(jīng)足夠明顯,在這種情況下,添加噪聲不會帶來太大的優(yōu)勢,所以性能會接近其他的算法,而沒有明顯的提升。
圖3展示了Ionosphere經(jīng)過四種過采樣方法后的數(shù)據(jù)分布。SMOTE通過在少數(shù)類樣本的鄰域內(nèi)生成新樣本,使少數(shù)類樣本的分布更加均勻,填補了原本稀疏的區(qū)域。ADASYN則在少數(shù)類樣本稀疏區(qū)域生成更多樣本,增強模型在這些區(qū)域的學習能力,使得稀疏區(qū)域的少數(shù)類數(shù)據(jù)密度更高,有利于區(qū)分,但導致局部密度過高。Borderline-SMOTE生成點主要集中在分類邊界,提高了模型在復雜邊界區(qū)域的辨別能力,NGN與上述過采樣方法相比,生成的新樣本與原少數(shù)類樣本相似,增強了少數(shù)類特征表達,更加貼近少數(shù)類的實際分布。
3.5極少數(shù)類平衡實驗結(jié)果分析
圖3展示了ionosphere、ecoli、wine和hcv_data數(shù)據(jù)集經(jīng)過四種過采樣方法后的數(shù)據(jù)分布,其中棕色為多數(shù)類,藍色為少數(shù)類(見電子版)。從圖3看出,較遠距離的點SMOTE、ADASYN、Borderline-SMOTE不能利用全部的少數(shù)類樣本合成,是因為SMOTE通過在少數(shù)類樣本之間插值來生成新的少數(shù)類樣本。如果少數(shù)類樣本非常稀疏,彼此之間的距離很大,新樣本會處于過度外推的位置,無法正確反映少數(shù)類的分布;ADASYN生成樣本的方法依賴于現(xiàn)有樣本的插值,如果現(xiàn)有樣本之間的距離較大,插值生成的新樣本會落在樣本分布的外圍區(qū)域,導致分布失真;少數(shù)類樣本周圍的噪聲點會對插值過程產(chǎn)生較大影響。Borderline-SMOTE生成的新樣本會受到這些噪聲點的影響,導致生成不準確或不可靠的樣本,從而影響模型的性能。相比之下,NGN通過在現(xiàn)有少數(shù)類樣本上添加噪聲生成新樣本,利用了所有現(xiàn)有的少數(shù)類樣本,無須依賴鄰近樣本進行插值,因此避免因少數(shù)類樣本稀疏而導致的插值問題。通過添加生成器生成的正態(tài)分布噪聲,NGN能夠生成多樣化的新樣本,這些新樣本能夠更好地覆蓋少數(shù)類樣本的分布范圍,保持了數(shù)據(jù)集的整體特征分布,提高模型的泛化能力。由于噪聲是圍繞原始樣本生成的,NGN避免了插值方法導致的過度外推問題,生成的新樣本不會偏離原始樣本的分布范圍。
在不同分類器上,各種過采樣方法對少數(shù)類樣本分類性能的提升效果有所差異。SMOTE通過線性插值生成新樣本,在randomforest和ExtraTrees中表現(xiàn)穩(wěn)定,但在XGBoost上略遜于NGN;其效果依賴于原始數(shù)據(jù)的分布特性,對wine和ecoli數(shù)據(jù)集的分類性能提升顯著。ADASYN更加自適應,優(yōu)先增強稀疏區(qū)域的少數(shù)類樣本,在hcv_data和glass數(shù)據(jù)集中表現(xiàn)較好,尤其在AdaBoost分類器中AUC和 F1 -score較優(yōu)。Borderline-SMOTE專注于增強類別邊界樣本的分布,使分類器在邊界樣本區(qū)分能力上表現(xiàn)更佳,顯著提升了AUC和G-mean,特別是在wine中表現(xiàn)出色。NGN則在多個分類器中展現(xiàn)出卓越性能,尤其在XGBoost和ExtraTrees中對wine和ecoli的AUC提升顯著,結(jié)合密度感知和邊界強化,使得樣本分布更加全面。
NGN生成的數(shù)據(jù)能夠增加極少數(shù)類樣本,從而增強少數(shù)類特征,不僅彌補了原始數(shù)據(jù)分布中的不平衡性,還顯著提升了少數(shù)類的可辨識性,使得分類器能夠更有效地識別這些樣本。在hcv_data中suspectblooddonor類是少數(shù)類,但其分類直接關(guān)系到肝炎嚴重程度的預測和個體的健康干預。如果模型無法準確識別該類,導致漏診或誤診,影響治療效果。在glass中,通過增加大燈的樣本,模型能夠更好地區(qū)分與其他玻璃類型的微小差異,這對玻璃工業(yè)中材料分類和質(zhì)量控制尤為重要。在ecoli中增加內(nèi)膜脂蛋白類樣本,幫助模型更好地識別這一亞細胞位置,進而提升生物學研究中蛋白質(zhì)功能預測的精確性。
從現(xiàn)實生活中來看,增加極少數(shù)類的數(shù)量尤其重要。例如,在醫(yī)療診斷中,少見疾病通常數(shù)據(jù)不足,而NGN生成更具代表性的樣本,從而提升診斷模型對罕見病例的識別能力。在欺詐檢測中,欺詐行為的數(shù)據(jù)量往往遠少于正常行為,通過NGN生成的虛擬樣本,幫助模型更精準地區(qū)分合法與非法交易。此外,在生態(tài)保護中,一些瀕危物種的相關(guān)數(shù)據(jù)十分稀缺,NGN能夠模擬出更多的特征分布,進而提高分類模型對瀕危物種的監(jiān)測能力。通過增加極少數(shù)類樣本,NGN不僅解決了數(shù)據(jù)稀缺的問題,還在多個領(lǐng)域為少數(shù)類的決策和識別提供了更廣泛的支持。
4生成器迭代次數(shù)對生成噪聲的影響
如圖4所示,隨著迭代次數(shù)的增加,生成器的損失函數(shù)值逐漸降低,生成的樣本逐漸逼近真實樣本分布,并在其周圍形成聚集。同時,迭代次數(shù)的增多也帶來了時間復雜度的提升。然而,NGN的目標并非僅僅復制原始數(shù)據(jù),而是生成具有多樣性的新數(shù)據(jù)。因此,在實際應用中,應盡量減少迭代次數(shù),以促進生成器產(chǎn)生更為豐富和多樣化的數(shù)據(jù)樣本和降低算法的時間復雜度。
5結(jié)束語
本文針對少數(shù)類樣本只有幾個的情況,提出了一種基于GAN的算法NGN,即用GAN生成的數(shù)據(jù)作為噪聲與原少數(shù)類樣本結(jié)合生成新的少數(shù)類樣本,使少數(shù)類能夠進行聚類和分類,從而減小噪聲的引入。同時將該方法作為過采樣方法與其他的過采樣進行比較,用于處理數(shù)據(jù)不平衡。實驗結(jié)果表明,NGN能夠利用所有的少數(shù)類樣本生成新的數(shù)據(jù)集,同時NGN作為過采樣算法比其他過采樣算法表現(xiàn)得更優(yōu)。
下一步工作將研究改進NGN算法,使其應用于多類別的數(shù)據(jù)且多數(shù)類樣本與少數(shù)類樣本的比例較不平衡的情況,使生成的少數(shù)類能準確地劃分邊界。
參考文獻:
[1]Wang Xuchun,Ren Jiahui,Ren Hao,et al.Diabetesmellitus early warning and factor analysis using ensemble Bayesian networks with SMOTE-ENNand Boruta[J].Scientific Reports,2023,13(1): 12718.
[2]Yu Lean,Li Mengxin,Liu Xiaojun.A two-stage case-based reasoningdrivenclassificationparadigm forfinancial distresspredictionwith missingand imbalanced data[J].Expert Systemswith Applications,2024,249:123745.
[3]Rahman M S, Sumathy V. Forecasting failure-prone air pressure systems(FFAPS)in vehiclesusing machine learning[J].Automatika,2024,65(1):1-13.
[4]He Haibo,Garcia EA.Learning fromimbalanced data[J].IEEE Trans on Knowledgeand Data Engineering,20o9,21(9): 1263-1284.
[5]Chawla NV,Bowyer KW,Hall LO,et al.SMOTE:synthetic minority over-sampling technique[J].Journal of Artificial IntelligenceResearch,2002,16:321-357.
[6].Han Hui,WangWenyuan,Mao Binghuan.Borderline-SMOTE:a newover-sampling method in imbalanced data sets learning [C]/′ ProcofInternational Conference on Intelligent Computing. Berlin: Springer,2005:878-887.
[7]HeHaibo,BaiYang,GarciaEA,etal.ADASYN:adaptive synthetic sampling approach for imbalanced learning [C]/′ Procof IEEE International Joint Conference on Neural Networks. Piscataway, NJ:IEEEPress,2008:1322-1328.
[8]Douzas G,Bacao F,Last F. Improving imbalanced learning through a heuristic oversampling method based on K-means and SMOTE[J]. Information Sciences,2018,465:1-20.
[9]王亮,冶繼民.整合DBSCAN和改進 SMOTE的過采樣算法[J]. 計算機工程與應用,2020,56(18):111-118.(Wang Liang,Ye Jimin.Hybrid algorithm of DBSCANand improved SMOTE for oversampling[J].Computer Engineering and Applications,2020, 56(18):111-118.)
[10]陳俊豐,鄭中團.WKMeans與SMOTE結(jié)合的不平衡數(shù)據(jù)過采樣 方法[J].計算機工程與應用,2021,57(23):106-112.(Chen Junfeng,Zheng Zhongtuan. Over-sampling method on imbalanced data based on WKMeans and SMOTE[J].Computer Engineering and Applications,2021,57(23):106-112.)
[11]Khodadadi N, Khodadadi E,Al-Tashi Q,et al.BAOA: binary arithmetic optimization algorithm withK-nearest neighbor classifier for feature selection[J]. IEEE Access,2023,11:94094-94115.
[12]Turkoglu B,Ali Uymaz S, Kaya E.Binary artificial algae algoritm for feature selection [J].Applied Soft Computing,2022,120:108630.
[13]TooJ,Mirjalili S.Ahyperlearningbinarydragonflyalgorithmfor feature selection: a COvID-19 case study [J]. Knowledge-Based Systems,2021,212:106553.
[14] CreswellA,White T,Dumoulin V,et al.Generative adversarial networks:an overview [J].IEEE Signal Processing Magazine, 2018,35(1) : 53-65.
[15] Glorot X,Bordes A,Bengio Y. Deep sparse rectifier neural networks [C]//Procofthe14th International Conferenceon Artificial Intelligence and Statistics.[S.1.]:PMLR,2011: 315-323.
[16]Clevert DA, Unterthiner T,Hochreiter S.Fastand accurate deep network learningbyexponential linear units(ELUs)[EB/OL]. (2016-02-22). https://arxiv.org/abs/1511. 07289.
[17]Hinton G E,Srivastava N,Krizhevsky A,et al. Improving neural networks by preventing co-adaptation of feature detectors [EB/OL]. (2012-07-03). https://arxiv.org/abs/1207.0580.
[18]Thorndike R L.Who belongs in the family?[J].Psychometrika, 1953,18(4) : 267-276.
[19]RouseeuwP.Siouetes:agrapicalaidtoheinterpreationand validation of cluster analysis[J].Jourmal of Computational and Applied Mathematics,1987,20:53-65.
[20]Kahn M.Diabetes[EB/OL].(1994).https://archive.ics.uci. edu/dataset/34/diabetes.
[21]Yeh I. Blood transfusion service center[EB/OL].(2008-10-02). https://archive. ics. uci. edu/dataset/176/blood + transfusion + service + center.
[22] Lichtinghagen R, Klawonn F, Hoffmann G. HCV data[EB/OL]. (2020-06-09).https://archive.ics.uci.edu/dataset/571/hcv+dats.
[23]Aeberhard S,F(xiàn)orina M.Wine[EB/OL].(1991-06-30).https:// archive. ics.uci. edu/dataset/109/wine.
[24]German B. Glassidentification [EB/OL].(1987-08-31). https:// archive.ics.uci.edu/dataset/42/glass+identification.
[25]SigillitoV,WingS,HuttonL,et al.Ionosphere[EB/OL].(1988- 12-31).htps://archive.ics.uci. edu/dataset/52/ionosphere.
[26]Nakai K.Ecoli [EB/OL].(1996-08-31).htps://archive. ics. uci. edu/dataset/39/ecoli.
[27]BreimanL.Random forests[J].Machine Learning,20l9,45:5-32.
[28]Freund Y,Schapire RE.Experiments with anew boosting algorithm [C]//Proc of the 14th International Conference on Machine Learning. New York:ACM Press,1996:148-156.
[29]Friedman JH. Greedy function approximation:a gradient boosting machine[J]. The Annals of Statistics,2001,29(5):1189-1232.
[30]Geurts P,Ernst D,Wehenkel L.Extremely randomized trees[J]. Machine Leaming,2006,63(1): 3-42.
[31]FrazierPI.A tutorial onBayesianoptimization[EB/OL].(2018- 07-08).https://arxiv.org/abs/1807.02811.