Svm的最佳化目標是什麼

支持向量機(Support Vector Machine, SVM)是一種常見的機器學習算法,用於解決分類和回歸問題。在分類問題中,SVM 的目標是找到一個超平面(Hyperplane),該超平面能夠最好地分隔不同類別的數據點。在回歸問題中,SVM 的目標是找到一個函數,該函數能夠最小化測試數據點與預測值之間的誤差。

在分類問題中,SVM 的最佳化目標是最大化邊界(margin),這意味著它會尋找一個超平面,使得所有數據點與超平面之間的距離最大。這個目標可以通過最小化以下目標函數來實現:

[ \min_{w, b} \frac{1}{2} |w|^2 ]

其中,( w ) 是模型參數,( b ) 是偏置項,( |w|^2 ) 是 ( w ) 的二范數。這個目標函數稱為「硬邊界」(hard margin)SVM,因為它會找到一個超平面,將所有數據點都分隔開來,沒有任何數據點落在邊界內。

在某些情況下,可能會有一些數據點無法被完美分隔,這時可以使用「軟邊界」(soft margin)SVM,允許一些數據點錯分。軟邊界SVM會引入一個稱為「鬆弛變量」(slack variable)的參數 ( \xi_i ),表示每個數據點可以錯分的程度。最佳化目標變成了:

[ \min{w, b, \xi} \frac{1}{2} |w|^2 + C \sum{i=1}^{l} \xi_i ]

其中,( C ) 是調節參數,用來平衡邊界寬度和錯分數據點的數量。這個目標函數會最小化邊界寬度和錯分數據點的總和。

在回歸問題中,SVM 的最佳化目標是找到一個函數 ( f(x) ),該函數能夠最小化測試數據點與預測值之間的誤差。這個目標可以通過最小化以下目標函數來實現:

[ \min{w, b} \sum{i=1}^{l} (y_i - f(x_i))^2 ]

其中,( y_i ) 是實際值,( f(x_i) ) 是預測值。這個目標函數稱為「平方誤差」(squared error),它會最小化預測值與實際值之間的誤差。