多標簽分類概述


 前言 

本文介紹了多標簽分類的基本概念和評估指標,總結了可用於提高多標簽分類模型性能的多種方法:建模技巧、監督特征選擇方法、無監督特征選擇方法和上采樣方法。

 

本文來自公眾號CV技術指南的技術總結系列

關注公眾號CV技術指南 ,專注於計算機視覺的技術總結、最新技術跟蹤、經典論文解讀。

 

什么是多標簽分類?


眾所周知,二元分類將給定的輸入分為兩類,1 或 0。多標簽或多目標分類從給定的輸入中同時預測多個二元目標。例如,我們的模型可以預測給定的圖片是狗還是貓,以及它的皮毛是長還是短。

目標在多標簽分類中是互斥的,這意味着一個輸入可以屬於多個類。 

本文將總結一些可以提高多標簽分類模型性能的常用方法。

 

評分指標


大多數用於二元分類的指標可以通過計算每列的指標,然后取分數的平均值來應用於多標簽。我們可以使用的一個指標是對數損失或二元交叉熵。對於考慮類不平衡的更好度量,我們可以使用 ROC-AUC。

圖片

ROC-AUC曲線

 

建模技巧


在我們開始對特征進行花哨的技巧之前,分享一些關於設計適合多標簽分類情況的模型的技巧。

對於大多數非神經網絡模型,唯一的選擇是為每個目標訓練一個分類器,然后結合預測。庫 scikit-learn 提供了一個簡單的包裝類來執行此操作,即 OneVsRestClassifier。

盡管這將使分類器能夠執行多標簽任務,但這不是應該采用的方法。這有幾個缺點。首先,訓練時間會比較長,至於每個目標,我們都在訓練一個新的模型。其次,模型無法學習不同標簽之間的關系或標簽相關性。

第二個問題可以通過執行兩階段訓練來解決,我們將目標的預測與原始特征相結合作為第二階段訓練的輸入數據。這樣做的缺點是訓練時間將大大增加,因為現在您必須訓練兩倍於以前的模型數量。

神經網絡更適合這種情況。標簽的數量是網絡中輸出神經元的數量。現在我們可以將任何二元分類損失應用於模型,模型將同時輸出所有目標。這解決了非神經網絡模型的兩個問題,因為我們只需要訓練一個模型,網絡可以通過輸出神經元學習不同的標簽相關性。

圖片

 

監督特征選擇方法


在開始任何特征工程或選擇之前,特征應該被規范化或標准化。使用 Quantile Transformer 將減少數據的偏度,使特征服從正態分布。另一種選擇是標准化特征,這可以通過從數據中減去均值,然后除以標准差來完成。與 Quantile Transformer 相比,這完成了類似的工作,兩者都旨在將數據轉換為更魯棒,但 Quantile Transformer 的計算成本更高。

在這種情況下使用監督特征選擇方法有點棘手,因為大多數算法都是為單個目標設計的。為了解決這個問題,我們可以將多標簽情況轉換為多類問題。一種流行的方法是 LabelPowerset,其中將訓練數據的每個唯一標簽組合轉換為一個類。scikit-multilearn 庫為此提供了工具。

工具鏈接:

http://scikit.ml/api/skmultilearn.problem_transform.lp.html

圖片

變換后,我們可以使用信息增益和chi2等方法來選擇特征。雖然這種方法是可行的,但當我們有數百甚至數千種不同的獨特標簽組合時,事情就會變得棘手,這就是無監督特征選擇方法可能更好的地方。

 

無監督特征選擇方法


在無監督方法中,我們不需要考慮多標簽情況的性質,因為無監督方法不依賴於標簽。

這里有一些算法:

  • 主成分分析或其他類似的因子分析方法。這會從特征中刪除冗余信息並為模型提取有用的見解。對此的一個重要說明是,確保在應用 PCA 之前先對數據進行標准化,因為這樣每個特征對分析的貢獻都是相同的。使用 PCA 的另一個技巧是,我們可以將這些減少的特征連接回原始數據,作為模型可以選擇使用的額外信息,而不是采用算法提供的縮減特征。

  • 方差閾值。這是一種降低特征維度的簡單而有效的方法。我們丟棄具有低方差或分布的特征。這可以通過找到更好的選擇閾值來優化,一般使用0.5作為初始閾值。

  • 聚類。我們可以通過從輸入數據創建集群來創建新特征,然后將相應的集群分配給輸入數據的每一行作為新的特征列。

圖片

KMeans Clustering

 

上采樣方法


當我們的分類數據高度不平衡時使用上采樣方法,然后我們為稀有類生成人工樣本,以便模型專注於稀有類。為了在多標簽情況下創建新樣本,我們可以使用 MLSMOTE 或多標簽合成少數過采樣技術。

MLSMOTE項目地址:

https://github.com/niteshsukhwani/MLSMOTE

這是對原始 SMOTE 方法的修改。在這種情況下,在我們為少數類生成數據並分配相應的少數標簽后,我們還通過計算每個標簽在相鄰數據點中出現的次數來生成與數據點相關聯的其他標簽,並取具有 超過一半的數據點計數的頻率。

 

作者:Andy Wang

編譯:CV技術指南

原文鏈接:

https://andy-wang.medium.com/bags-of-tricks-for-multi-label-classification-dc54b87f79ec

 

歡迎關注公眾號 CV技術指南 ,專注於計算機視覺的技術總結、最新技術跟蹤、經典論文解讀。

在公眾號中回復關鍵字 “入門指南“可獲取計算機視覺入門所有必備資料。

其它文章

ML2021 | PatrickStar:通過基於塊的內存管理實現預訓練模型的並行訓練

ICCV2021 | PnP-DETR:用Transformer進行高效的視覺分析

ICCV2021 | 醫學影像等小數據集的非自然圖像領域能否用transformer?

ICCV2021 | Vision Transformer中相對位置編碼的反思與改進

ICCV2021 | TransFER:使用Transformer學習關系感知的面部表情表征

2021-視頻監控中的多目標跟蹤綜述

統一視角理解目標檢測算法:最新進展分析與總結

全面理解目標檢測中的anchor      |    姿態估計綜述

目標檢測中回歸損失函數總結     |     小目標檢測常用方法總結

視覺Transformer綜述    |    2021年小目標檢測最新研究綜述

Siamese network綜述    |  小目標檢測的一些問題,思路和方案

視頻理解綜述:動作識別、時序動作定位、視頻Embedding

從CVPR 2021的論文看計算機視覺的現狀

ICCV2021 | MicroNet:以極低的 FLOPs 改進圖像識別

ICCV2021 | 重新思考視覺transformers的空間維度

CVPR2021 | TransCenter: transformer用於多目標跟蹤算法

CVPR2021 | 開放世界的目標檢測

CVPR2021 | TimeSformer-視頻理解的時空注意模型

CVPR2021 | 一個高效的金字塔切分注意力模塊PSA

CVPR2021 | 特征金字塔的新方式YOLOF

經典論文系列 | 重新思考在ImageNet上的預訓練

經典論文系列 | Group Normalization & BN的缺陷

經典論文系列 | 目標檢測--CornerNet  & anchor boxes的缺陷

經典論文系列 | 縮小Anchor-based和Anchor-free檢測之間差距的方法:自適應訓練樣本選擇

CV方向的高效閱讀英文文獻方法總結

CNN可視化技術總結(一)-特征圖可視化

CNN可視化技術總結(二)--卷積核可視化

CNN可視化技術總結(三)--類可視化

CNN可視化技術總結(四)--可視化工具與項目

池化技術總結    |  NMS總結    |  注意力機制總結

特征金字塔總結      |  數據增強方法總結

計算機視覺專業術語總結(一)構建計算機視覺的知識體系

欠擬合與過擬合技術總結    |  損失函數技術總結

CNN可視化技術總結

CNN結構演變總結—經典模型

CNN結構演變總結—輕量化模型

CNN結構演變總結—設計原則

論文創新的常見思路總結

在公眾號《CV技術指南》中回復“技術總結”可獲取以上所有總結系列文章的匯總pdf


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM