2012-08-27 64 views
1

     我想學習一般SVM實現它採用QP問題進行培訓。最初,我不想學習序列最小優化(SMO)類型的算法,它超出了QP矩陣大小問題。任何人都可以給我一些參考,學習純粹的通用SVM實現的任何編程語言,如C,C++或Java。這樣我就可以理解SVM中的基本問題,它會幫助我學習其他一些SVM優化算法。一般SVM實現

回答

6

這個blog post by Mathieu Blondel解釋瞭如何在Python中使用通用QP解算器(在這種情況下,他使用的是CVXOPT)解決帶或不帶內核的SVM問題。

源代碼發佈在gist上,並且由於n維數組的numpy數組符號(在這種情況下,主要是2D矩陣和1D矢量),非常容易理解。

1

您可以查看一些提到的資源here。查看現有代碼也是可取的。其中一個最流行的實現是LIBSVM,它是開源的,所以你可以研究實現。

+0

嗨Qnan,我已經提到了LIBSVM,正如你所建議的那樣......在LIBSVM中,我可以看到SMO類型的分解方法(使用訓練支持向量機的二階信息的工作集選擇)。這是一般的SVM實施嗎? –

+0

LIBSVM正在實現OP不感興趣的特定於SVM的優化器,即順序最小優化(SMO)。 – ogrisel

+1

@ogrisel它確實在那裏說「最初」 – Qnan