Svm

支持不平衡數據的 SVM

  • April 18, 2014

我想嘗試在我的數據集上使用支持向量機 (SVM)。不過,在我嘗試解決這個問題之前,有人警告我 SVM 在極其不平衡的數據上表現不佳。就我而言,我可以有多達 95-98% 的 0 和 2-5% 的 1。

我試圖找到有關在稀疏/不平衡數據上使用 SVM 的資源,但我能找到的只是“sparseSVM”(使用少量支持向量)。

我希望有人能簡要解釋一下:

  1. 預計 SVM 對此類數據集的處理效果如何
  2. 必須對 SVM 算法進行哪些修改(如果有)
  3. 什麼資源/論文討論了這個

許多 SVM 實現通過為正面和負面實例分配不同的權重來解決這個問題。本質上,您對樣本進行稱重,以便正面的權重之和等於負面的權重之和。當然,在評估 SVM 時,您必須記住,如果 95% 的數據是負數,那麼通過始終預測負數來獲得 95% 的準確率是微不足道的。所以你必須確保你的評估指標也被加權,以使它們保持平衡。

特別是在libsvm您作為標籤添加的 中,有一個標誌允許您設置類權重(-w我相信,但請查看文檔)。

最後,根據個人經驗,我可以告訴你,我經常發現 SVM 在有或沒有權重校正的情況下都會產生非常相似的結果。

引用自:https://stats.stackexchange.com/questions/94295

comments powered by Disqus