機器學習演算法之SVM的多分類

2021-07-30 18:29:08 字數 841 閱讀 9046

一、svm可以直接進行多分類嗎

svm本身是對付二分類問題的,所以在處理多分類的時候需要進行必要的改造。

同樣是二分類的情況,logistic回歸可以直接拓展為softmax多分類。但是svm如果直接在目標函式上進行修改的話,就是將多個分類面的引數求解合併到乙個最優化問題上,顯然難度太大,目前也沒有任何實際操作的方法。

二、svm多分類間接實現

1、1-v-rest:將某一類歸為正類,其餘全部是負類。

該方法的最大缺陷是資料集的不平衡,因為某一類的例項往往只佔一小部分。當然解決不平衡的問題可以進行降取樣或者上取樣,但是上取樣中資料集過多重合,易導致過擬合,而降取樣使得資料利用率不足,不能學習整個模型的特性。

2、1-v-1:k類的資料集中,單獨為每兩類的樣本設計svm,進行分類。最終必須設計k(k-1)/2個分類器,最終用投票的方式進行選擇。這也是libsvm採用的方法,但是當類別有1000個的時候、、、

3、根據前兩種方法的比較,可以看出就效能而言寧願多做點事情,也要保證避免過擬合或者**能力不足的情況,所以大部分情況下第二種方法更優。但是第二種成本太大,所以有了第三種方法,類似於svm的二叉樹組合,在**《基於svm的二叉樹多類分類演算法及其在故障診斷中的應用》中,

如果類別為k個,那麼最後只需要k-1個分類器。

該模型的最大缺點就是如果某一層中的分類出錯了,那麼後面的分類器只能將錯就錯。所以選擇差別大的兩類在前,差別小的類在後。

機器學習之SVM多分類

以下內容參考 王正海 基於決策樹多分類支援向量機岩性波譜分類 svm本身是應用於二分類的,所以在處理多分類並且想應用svm有必要進行改進svm如果直接在目標函式上進行修改的話,就是將多個分類面的引數合併到乙個最優化問題上,顯然難度太大。但是對於lr的話,可以直接拓展為softmax多分類。常見的方法...

機器學習 SVM做多分類問題

引言 svm做二分類問題很簡單明瞭,但是如何用二分類構建多分類問題,自己查詢了部分資料,發現普遍分為兩種,一種是直接法,直接求解多目標函式優化問題,但這種方法計算量很大,不實用,另外一種是間接法,通過多個二分類來實現多分類,常見的有一對多和一對一兩種 最後針對一對一要構建n平方個二分類器,如果n過大...

機器學習之線性分類SVM

coding utf 8 created on fri nov 30 21 05 40 2018 author muli import matplotlib.pyplot as plt import numpy as np from sklearn import datasets,cross val...