讀古今文學網 > 機器學習實戰 > 6.7 本章小結 >

6.7 本章小結

支持向量機是一種分類器。之所以稱為「機」是因為它會產生一個二值決策結果,即它是一種決策「機」。支持向量機的泛化錯誤率較低,也就是說它具有良好的學習能力,且學到的結果具有很好的推廣性。這些優點使得支持向量機十分流行,有些人認為它是監督學習中最好的定式算法。

支持向量機試圖通過求解一個二次優化問題來最大化分類間隔。在過去,訓練支持向量機常採用非常複雜並且低效的二次規劃求解方法。John Platt引入了SMO算法,此算法可以通過每次只優化2個alpha值來加快SVM的訓練速度。本章首先討論了一個簡化版本所實現的SMO優化過程,接著給出了完整的Platt SMO算法。相對於簡化版而言,完整版算法不僅大大地提高了優化的速度,還使其存在一些進一步提高運行速度的空間。有關這方面的工作,一個經常被引用的參考文獻就是「Improvements to Platt's SMO Algorithm for SVM Classifier Design」1。

1. S. S. Keerthi, S. K. Shevade, C. Bhattacharyya, and K. R. K. Murthy, 「Improvements to Platt's SMO Algorithm for SVM Classifier Design,」 Neural Computation 13, no. 3,( 2001), 637–49.

核方法或者說核技巧會將數據(有時是非線性數據)從一個低維空間映射到一個高維空間,可以將一個在低維空間中的非線性問題轉換成高維空間下的線性問題來求解。核方法不止在SVM中適用,還可以用於其他算法中。而其中的徑向基函數是一個常用的度量兩個向量距離的核函數。

支持向量機是一個二類分類器。當用其解決多類問題時,則需要額外的方法對其進行擴展。SVM的效果也對優化參數和所用核函數中的參數敏感。

下一章將通過介紹一個稱為boosting的方法來結束我們有關分類的介紹。讀者不久就會看到,在boosting和SVM之間存在著許多相似之處。