日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

svm对未知数据的分类_SVM多分类之一对一与一对多

發布時間:2023/12/9 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 svm对未知数据的分类_SVM多分类之一对一与一对多 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

冒泡~今天是在實驗室劃水的最后一天啦!

明天就可以回我滴廈門啦~來更個新!

關于SVM的基本原理可參考之前寫過的《探索SVM(支持向量機)之旅》那個時候主要是理論了解也就知道個大概(雖然現在也只是了解更多一點罷了)

之前更多把SVM定義在二分類問題上 今天著重記錄的是SVM完成多分類。

SVM多分類

SVM算法最初是為二值分類問題設計的,當處理多類問題時,就需要構造合適的多類分類器。構造多分類器可以采用直接法或者間接法。 但是若采取直接法即SVM直接在目標函數上進行修改的話,將多個分類面的參數求解合并到一個最優化問題上,顯然難度太大,其計算復雜度比較高,實現起來比較困難,只適合用于小型問題中。

所以重點講一下間接法

間接法的分類:一對多、一對一

一對多(one-versus-rest,簡稱OVR SVMs)

訓練時依次把某個類別的樣本歸為一類,其他剩余的樣本歸為另一類,這樣k個類別的樣本就構造出了k個SVM。分類時將未知樣本分類為具有最大分類函數值的那類。

舉個例子:假如我有四類要劃分(也就是有存在四個Label),他們是A、B、C、D。 于是我在抽取訓練集的時候,分別選取四個訓練集如下:

1.A所對應的向量作為正集,B,C,D所對應的向量作為負集;

2.B所對應的向量作為正集,A,C,D所對應的向量作為負集;

3.C所對應的向量作為正集,A,B,D所對應的向量作為負集;

4.D所對應的向量作為正集,A,B,C所對應的向量作為負集;

{可以概括為 自己一類為正集 其余類為負集,N個類別(N個label)有N個訓練集}

使用這四個訓練集分別進行訓練,然后的得到四個訓練結果文件。在測試的時候,把對應的測試向量分別利用這四個訓練結果文件進行測試。

最后每個測試都有一個結果f1(x),f2(x),f3(x),f4(x)。

于是最終的結果便是這四個值中最大的一個作為分類結果。

評價:

優點:訓練k個分類器,個數較少,其分類速度相對較快。

缺點:①每個分類器的訓練都是將全部的樣本作為訓練樣本,這樣在求解二次規劃問題時,訓練速度會隨著訓練樣本的數量的增加而急劇減慢;

②同時由于負類樣本的數據要遠遠大于正類樣本的數據,從而出現了樣本不對稱的情況,且這種情況隨著訓練數據的增加而趨向嚴重。解決不對稱的問題可以引入不同的懲罰因子,對樣本點來說較少的正類采用較大的懲罰因子C;

③還有就是當有新的類別加進來時,需要對所有的模型進行重新訓練。

{補充:有以下兩個問題:

1.一個是一個樣本可能同時屬于幾個類

那么看一下這個樣本到各個超平面的距離,哪個遠判給哪個

2.另一個是一個樣本可能不屬于任何一個

這樣這個樣本屬于第N+1類,這個類的數目遠大于N類之和,所以會造成數據偏斜問題}

一對一(one-versus-one,簡稱OVO SVMs或者pairwise)

其做法是在任意兩類樣本之間設計一個SVM,因此k個類別的樣本就要設計k(k-1)/2個SVM。

當對一個未知樣本進行分類時,最后得票最多的類別即為該未知樣本的類別。

Libsvm(一個好用的包)中的多類分類就是根據這個方法實現的

{關于libsvm的使用說明等可以參考(https://www.cnblogs.com/jingyesi/p/4237155.html)}

舉個例子:

假設有四類A,B,C,D四類。在訓練的時候我選擇A,B; A,C; A,D; B,C; B,D;C,D所對應的向量作為訓練集(4X3/2=6),然后得到六個訓練結果,在測試的時候,把對應的向量分別對六個結果進行測試,然后采取投票形式,最后得到一組結果。

投票是這樣的:

A=B=C=D=0;

(A,B)-classifier 如果是A win,則A=A+1;otherwise,B=B+1;

(A,C)-classifier 如果是A win,則A=A+1;otherwise, C=C+1;

...

(C,D)-classifier 如果是A win,則C=C+1;otherwise,D=D+1;

The decision is the Max(A,B,C,D)

(也就是通過看投票的分數來看分類情況)

評價:這種方法雖然好,但是當類別很多的時候,model的個數是n*(n-1)/2,代價還是相當大的。與一對多相比不會有樣本不屬于任何一類的情形出現,但是復雜度變大了。

End~

一個半月的實驗室劃水要結束啦~

希望回家的小李 也會更新!

總結

以上是生活随笔為你收集整理的svm对未知数据的分类_SVM多分类之一对一与一对多的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。