0

SVMディジット分類器の概念の教授を実装する必要があります。私がキャンバスに書いた入力を分類するのは単純なはずです。しかし、私はそれを最初から実装する必要があります。言語は関係ありません。

誰かが私にそれを行うことができる方法を段階的に説明してくれませんか?資料へのリンクが役立ちます。しかし、私は理論よりも実践に関連した何かが必​​要です。私はすでにそれについてのいくつかの理論的な記事を読んだからです。そして、それがどのように機能するかについての基本的なアイデアを持っていますが、それでもこのアイデアを実際の例に変換する方法にはいくつかの問題があります。

どうもありがとう。

4

2 に答える 2

5

SVM を作成するための段階的な手順はありません。それらの背後にある理論と数学を理解することは重要です。なぜなら、それらはアルゴリズムで大きな役割を果たしており、その背景がないとアルゴリズムを理解するのが難しいからです。

開始するのに最適な場所は、John Platt のSequential Minimal Optimization (SMO)アルゴリズムです。私は以前にこの論文を実装したことがありますが、Platt は多くの背景知識があることを前提としています。優れた入門書は、Lutz Hamel の著書Knowledge Discovery with Support Vector Machinesです。この本はすべての動機を与えてくれるので、SVM を理解したいのであれば、統計学や最適化理論について知っている必要も最新の知識を持っている必要もありません。

本当にシンプルにしたいだけなら、UNT のこのSimplified SMO アルゴリズム から始めて、足を濡らしてください。これは、最適化を一切行わない SMO アルゴリズムです。

Platt の SMO アルゴリズムは、現時点では最先端ではありませんが、現在使用されている多くのアルゴリズムの基礎となっています。LibSVMとSVMLightのソース コードはオンラインで入手できますこれらは、SMO コンセプトの 2 つの異なる最適化に基づいています。

より高いレベルで問題がなければ、MatLab やその他の言語のインターフェイスを持つCVXなどの凸型最適化パッケージを使用して SVM を実装できます。その場合、SVM のコアで最適化問題を設定し、ソルバーに解を見つけてもらうだけです。QP ソルバーをゼロから実装することはお勧めしません。

既存のライブラリを使用したい場合で、「最初から」と言うときは、SVM アルゴリズム自体よりもデータを処理することを指している場合、Rで利用可能なような既存の実装を調べることができます。その方法については、「R でのベクター マシンのサポート」を参照してください。Hamel の本でも R を使用しています。

手書きの数字認識データセットは、多数のSVM 論文で使用されており、分類子の比較に使用されています。

于 2012-05-23T17:41:20.073 に答える
0

これは SVM に関する完璧な記事です。それらは、いくつかの理論とステップバイステップガイドを提供します-それを実装する方法。

于 2012-05-23T22:11:41.857 に答える