機器學習:核方法和soft svm
阿新 • • 發佈:2019-02-11
淺談SVM核方法
在用svm進行二分類的時候,如果資料在當前維上不是線性可分的,那麼就需要把原始的樣本資料投影到高維的空間上。高維可分之後在大會到現在的維度,但是這裡有一個問題就是:這樣做的運算量太大了。如下所示: 在上面的圖片中,紅色區域就是我們最終的計算結果。Z代表的是投影之後的資料,我們知道Z.T*Z計算的是兩個樣本之間的相似度,前面的那一坨可以認為是係數。我們最後想要的是最小化樣本之間的距離。也就是說你可以認為SVM是找出支撐點之後,然後挨個的計算每一個樣本點和支撐點的距離。但是但是哈,你不認為這裡的計算量也太大了吧。當原始資料點是二維平面上的點的時候,進行投影對映之後得到的是4維度,這個時候計算的複雜度是4,那麼原始樣本點是100維呢?你試試。。。下面就看看什麼是核方法:如下所示
第一行表示的是原始的樣本(x1,x2.....xn)在進行高維對映之後的樣本點。第二行表示高維樣本資料向量的乘積,觀察一下最終的額結果是什麼。就是結果的樣子。最終的結果是原始樣本的另一種表示方法。因為原始樣本都是一次,那麼高維的當然也就最高次數也就是二。這個時候我們就可以來定義核方法啦。也就是第三行所示。這叫做多項式核。最終的結果可以寫成這樣。
高斯核的厲害之處就是僅僅用一個引數就可以叨叨和多項式核相同的結果。並且直接可以到無窮維度的對映。對映的維度越高,那也就可達到更加理想的結果。利用高斯核,最終的徑向基函式表示如下
效果如下,很明顯最後的那付圖,嚴重的過擬合了。 到這裡你會想,不對哈,對映的高維空間是什麼樣子呢?呵呵,管他呢,最終能達到想要的結果不就可以了。對吧。根據某一個理論,當計算得到的向量乘積是非負正定矩陣,就一定存在一個高維空間使得可以計算得到最終的結果,至於最終高維空間是什麼,咱不理會。。。