講完了分類,接著我們來看看回歸怎麼做,SVM一開始是用來解分類問題的,再之後才被推廣到回歸問題,也就是說在SVM中,回歸是比分類難的。
Regression這邊也有soft margin的slack variable,而且一個資料向量有兩個,又另外導入了一個epsilon insensitive function,定義如下
slack variable現在除了 xi 多了一個有戴帽子的xi 我們就叫他 xi hat,示意圖如下(圖片出自:PRML - p341),現在的support vector指的變成在margin外面的向量
xi 對應的是 t > y + epsilon
xi hat則是 t < y - epsilon
總之我們對應的條件就可以換成
這邊我們要最小化的函數是
透過上面的slack variable 與 insensitive function就可以轉換為
接著跟之前一樣,用langrange multipler來做最佳化,條件有
以及 xi們都要大於等於零,所以可以寫成(式子有點長)
接著簡單的對 w, b, xi, xi hat微分,得到四個最佳解的條件
並且推導出預測要使用
對應的KKT condition是(圖片出自prml : p342)
而與之前相同 a 與 a hat 不是零的就是 support vector,我們以此計算 b ,算出來之後,SVM for regression就完成了!
您好:
請問若使用svm來做迴歸,自變數一定都要是numeric嗎?還是factor的也可以?
因網路上只找到用iris mtcars等,自變數皆為numeric的例子,有點怕怕的