SVM 當樣本數小於維度的時候

2021-07-05 06:41:29 字數 829 閱讀 4163

比如:人臉識別的時候,兩個人臉的樣本數分別為5,pca降維後維度為35。

用svm訓練的模型進行分類時候,往往發現線性核要比高斯核正確率高。這是為什麼?

(1)一般來說,當選取高斯核函式時候,訓練得到的函式(就是那個分類超平面)可以以任意高的精度逼近給定的連續函式,這意味著用高斯核的效果至少不會比線性核差。但是問題在於,g值的選擇會對得到的分類超平面有很大的影響,能否選擇到合適的g就決定了分類器的效果。當選擇的g不好的時候,效果比線性核差也是合理的。

(2)當樣本數比維度少的時候,在原始的樣本空間上,樣本一定是線性可分的,一定可以找到那樣的超平面,但是有乙個前提,樣本在原始空間上不能夠同在乙個超平面上。比如三維情況下,兩個類別的樣本都只有兩個,只要這四個樣本不在乙個平面上,就一定可以找到乙個超平面將他們分開(我沒有找到數學上的證明,也不太確定是否真的正確,希望有網友可以證明下)。就是說,樣本的維度為n,只要樣本不要全部都分布在同乙個超平面上,就可在n維上找乙個超平面將他們分開。但是在這種特殊情況下需要注意的是,原始樣本空間可以線性可分,並不意味著用線性核訓練得到的超平面就一定好。因為樣本太少,它很可能沒有辦法充分體現該類別的分布,會出現欠學習的現象。當然利用高斯核得到的超平面可能會比較好,但是也可能更差(原因如上)。

說到這裡,讓我回想起高斯核的作用不就是把樣本的維度對映到更高維度而實現線性可分的嗎?當維度本來就遠比樣本數多,相對樣本數,可以說已經處於高維了,豈不是也可以線性可分了呢?當然我覺得略有不同,但是意思可能是差不多的。

當然很多問題中,比如維度過高,或者樣本海量的情況下,大家更傾向於用線性核,因為效果相當,但是在速度和模型大小方面,線性核會有更好的表現。

如果可以,最好能夠選擇比較有代表性的樣本,它會訓練後得到更好的分類器。

機器學習樣本資料集,訓練正負樣本

1 caltech 101 資料庫 該資料庫在2003年被發布,包括101類目標影象和1類背景影象,共102類,彩色影象較多,有部分灰度影象。總共影象數為9145 除去背景後總數為8677 每類影象數大約在31 800之間,影象大小為300 200。此資料庫的特點是 每個影象只含有乙個目標,且目標大...

小樣本資料集介紹

本篇對小樣本學習常用資料集進行介紹,由於本人理解問題,可能還存在誤差。1 omniglot 相當於1623個類,每類20個樣本。對於one shot來說,support num per class 1,query num per class 19。每個影象都與筆畫資料配對,座標序列為 x,y,t x...

MySQL Sakila樣本資料庫

sakila樣本資料庫介紹 sakila樣本資料庫是mysql官方提供的乙個模擬 租賃資訊管理的資料庫,提供了乙個標準模式,可作為書中例子,教程 文章 樣品,等等,對學習測試來說是個不錯的選擇。mysql other mysql documentation example databases sak...