- 研究動機
- 文章貢獻
- MC-CCR 多類聯合清洗和重取樣演算法
- 二分類組合清洗和重取樣
- 多分類聯合清洗和重取樣
- 實驗結果
- 資料集和實驗設定
- 消融實驗
- 對比實驗
- 類別標籤噪聲的影響
- 優點和創新點
Paper Reading 是從個人角度進行的一些總結分享,受到個人關注點的側重和實力所限,可能有理解不到位的地方。具體的細節還需要以原文的內容為準,部落格中的圖表若未另外說明則均來自原文。
論文概況 | 詳細 |
---|---|
標題 | 《Combined Cleaning and Resampling algorithm for multi-class imbalanced data with label noise》 |
作者 | Michał Koziarski, Michał Woźniak, Bartosz Krawczyk |
發表期刊 | Knowledge-based systems |
發表年份 | 2020 |
期刊等級 | 中科院 SCI 期刊分割槽(2022年12月最新升級版)1 區,CCF-C |
論文程式碼 | https://github.com/michalkoziarski/MC-CCR. |
作者單位:
- Department of Electronics, AGH University of Science and Technology, Al. Mickiewicza 30, 30-059 Kraków, Poland
- Department of Systems and Computer Networks, Wrocław University of Science and Technology, Wybrzeże Wyspiańskiego 27, 50-370 Wrocław, Poland
- Department of Computer Science, School of Engineering, Virginia Commonwealth University, 401 West Main Street, P.O. Box 843019, Richmond, VA 23284-3019, USA
研究動機
資料不平衡的會嚴重影響機器學習演算法的效能,當前大部分研究工作都是基於二分類問題展開的,其唯一目標是降低不平衡的程度。有研究指出,在學習過程中構成挑戰的並不是資料不平衡本身,而是被資料不平衡放大的其他資料難度因素,包括:樣本量小、存在不相交和重疊的資料分佈、存在異常值和噪聲樣本。此外多分類資料的不平衡問題沒有得到重視,在多類任務的情況下不平衡問題肯定更為複雜,已提出的二分類器不能很好地適應多類任務。許多研究工作側重於將多分類分解為二分類,然而對於多類不平衡分類問題的會導致資訊丟失。
文章貢獻
針對現有工作在多分類不平衡問題的不足,本文提出了一種新的多分類聯合清洗和重取樣演算法 MC-CCR。MC-CCR 主要使用了分解策略的思想,利用基於能量的方法對適合過取樣的區域進行建模。與 SMOTE 相比,該方法受小分離點和異常值的影響較小。接著將其與清理操作相結合,減少了重疊類分佈對學習演算法效能的影響。最後提出了一種迭代策略將二分類的場景擴充套件到多分類,MC-CCR 比傳統的多類分解策略受類間關係資訊丟失的影響更小。透過多個多類不平衡基準資料集的實驗研究結果表明,該方法對噪聲具有較高的魯棒性,並且與現有方法相比具有較高的效能。
MC-CCR 多類聯合清洗和重取樣演算法
二分類組合清洗和重取樣
CCR 演算法基於兩個經驗性的結論:
- 資料不平衡本身並不會對分類效能產生負面影響,只有存在其他資料困難因素,如類別的重疊等,才會給模型帶來困難。
- 當考慮資料不平衡的指標來最佳化分類效能時,犧牲一些精度來實現更好的 recall 通常是有益的,可能比典型的過取樣或欠取樣演算法更顯著。
在進行取樣之前,需要先清理位於少數類例項附近的多數類樣本進行預處理。該步驟目的是減少類重疊的問題,並使分類器的預測偏向少數類。本文提出了一種基於能量的方法,在每個少數類樣本週圍構建球形區域。球體使用能量(演算法的一個引數)進行擴充套件,在擴充套件過程中遇到的每個多數類樣本的成本都會增加。對於一個給定的少數類樣本 xi,關聯球體的當前半徑用 ri 表示。以 xi 為中心,半徑為 r 的球體內的多數類樣本的數量為 fn(r)。目標半徑用 r'i 表示,fn(r'i)=fn(ri)+1,定義由 ri 到 r'i 的擴充套件引起的能量變化為:
在球體膨脹過程中,給定球體的半徑增加到能量完全耗盡的點,每次遇到多數類樣本後代價增加。最後球體內部的大部分觀測都被推到了它的外圍,整個過程如下圖所示。由於每次遇到多數類樣本後的擴充套件成本增加,它可以區分可能被錯誤標記的例項。同時在類分佈重疊的情況下,儘管單個球體的尺寸很小,但它們的大體積仍然導致較大的清洗區域。由於球體內部的大部分觀測值都是平移而不是完全去除,因此在很大程度上保留了與它們原始位置相關的資訊,限制了特定區域類密度的失真。
接著合成新的少數類樣本,透過先前設計的清洗區域內進行過取樣。這樣不僅可以防止合成樣本與多數類樣本的分佈重疊,還可以避免對新樣本的錯誤標記。此外還透過加權的方式對過取樣的少數類樣本進行選擇,將重點放在困難的樣本上。主要透過相關球體的半徑來挖掘困難樣本,定義在一個少數類樣本 xi 周圍生成的合成樣本的數量為如下公式。
其中多數類樣本的集合用 Xmaj 表示,少數類樣本的集合用 Xmin 表示。這樣不僅能減少類不平衡帶來的偏差,還能自適應地將分類決策邊界向困難的樣例移動。該步驟的整體流程如下虛擬碼所示:
下圖展示了二分類情況下的樣例,所提出的方法有 3 個階段:在少數類樣本週圍形成球體,清理球體內的多數類樣本,以及基於球體半徑的自適應過取樣。
多分類聯合清洗和重取樣
本文將 CCR 演算法透過一種迭代分解的策略擴充套件到多分類,該策略主要是使用已經處理過的類的樣本集合依次對單個類進行重新取樣。包括以下步驟:
- 根據樣本的數量按降序對類進行排序;
- 對於每個少數類,構建了一個由來自每個已考慮的類別的隨機抽樣的樣本組成;
- 使用 CCR 演算法進行處理,將當前考慮的類的樣本作為少數類,將多數類樣本集合整體作為多數類;
- 生成的合成少數派類樣本被合併到原始資料中,這些合成樣本可用於為後面的類構建組合多數類的集合。
該方法的整體流程如下虛擬碼所示。CCR 相比於 OVA 策略相比,該演算法具有兩個優點。第一是多數類樣本的集合通常小於所有樣本的集合,計算開銷相對較小。第二是在 OVA 分解中具有較多樣本的類可以支配其餘的類,CCR 方法為組合多數類樣本集合中的每個類分配相同的權重。
所提出的 MC-CCR 演算法和幾種基於 SMOTE 的方法的比較如下圖所示,可見 S-SMOTE 容易受到標籤噪聲和不相交資料分佈的影響,從而產生與多數類分佈重疊的合成少數類樣本。 Borderline S-SMOTE 雖然對個別錯誤標記的樣本不太敏感,但受不相交資料分佈的影響更大。用 ENN 進行後處理可以緩解異常值的問題,但同時排除了代表性不足的區域。MC-CCR 透過約束樣本週圍的過取樣區域,減少了標籤錯誤樣本的負面影響,同時也沒有忽略未被多數類樣本包圍的異常值。
實驗結果
資料集和實驗設定
實驗使用來自 KEEL 的 20 個多分類不平衡資料集,資料集的基本資訊如下表所示。實驗使用十折交叉驗證進行評估,重複 10 次實驗取平均值,對訓練資料進行三折交叉驗證進行引數選擇,然後使用 Friedman 檢驗和 Shaffer 分析。
本文方法主要和多分類過取樣演算法比較,對比演算法包括基於迴圈分解策略的 SMOTE(SMOTE-all)、靜態 SMOTE(S-SMOTE)、Mahalanobis 距離過取樣(MBO)、基於 KNN 的 SMOTE(SMOM) 以及迭代劃分濾波器 SMOTE(SMOTEIPF)。透過過取樣處理後,使用 DT、MLP、KNN 和 Bayes 分類器進行分類,設計的演算法和分類器設定如下表所示。
消融實驗
此處驗證 MC-CCR 中三個元件的有效性,第一個是 MC-CCR 的清理策略為平移 T,實驗時設定了完全移除位於球體內部的樣本的移除策略 R,以及不進行任何清理並忽略多數類樣本的忽略策略 I。第二個 MC-CCR 的樣本選擇的機率與球體半徑成比例 P,實驗時設定了樣本隨機選擇的 Random 策略 R。第三是本文對於多分類分解時,使用了只對樣本量較多的類按比例進行抽樣的 sampling 策略 S,實驗設定了將所有剩餘類別的所有樣本組合在一起的 Complete 策略 C。實驗結果如下表所示,可見 MC-CCR 使用的模組的平均效能最佳。
對比實驗
此處將 MC-CCR 演算法與其他過取樣演算法進行比較,結果如下表所示,可見本文提出的演算法的效能更優。
類別標籤噪聲的影響
最後對標籤噪聲對 MC-CCR 的預測效能的影響進行評估,策略是選擇訓練樣本的一個子集,將其標籤替換為隨機選擇的其他標籤,噪聲水平包括 {0.0, 0.05, 0.1, 0.15, 0.20, 0.25}。實驗結果如下圖所示,可見對於大多數資料集,隨著噪聲水平的增加效能體現出明顯惡化的趨勢,MC-CCR 通常具有更好的預測效能。
優點和創新點
個人認為,本文有如下一些優點和創新點可供參考學習:
- 對於少數類樣本鄰域的處理,本文提出了一種基於能量的度量方式,將多數類樣本以球面的形式外推,這樣有助於得到更加明確的決策邊界;
- 在過取樣方面,MC-CCR 可以透過構造的球面對少數類樣本進行加權,使得演算法能夠更好地關注困難樣本;
- 本文透過迭代分解的策略將二分類的情況擴充套件到了多分類,該方法對於不同類別的重疊具有一定的魯棒性。