私は比較的新しいSVMです。私はmatlabの 'fitcsvm'関数を使って1クラスのSVMモデルを訓練しようとしています。 'rbf'(〜ガウスカーネル)カーネル関数が使用されます。SVMの高速化(モデル訓練)
私のデータサイズは約150kです。残念ながら、モデルの訓練時間は遅い(約3分)。私は
SVMModel = fitcsvm(X、Y、 'KernelScale'、 '自動車'、 '標準化'、真の 'KernelFunction'、 'RBF'、 'ニュー' SVMモデルを訓練するためにMATLABで次の行を使用します、1)。
Xデータポイント(〜150K)の数であり、mは、機能番号(= 2つの機能)
あるYは、Iデータlable、あるN * M行列であります1クラスモデルを訓練するy = ones(n、1);
モデルをスピードアップするためのアドバイス/提案トレーニングの手順は?
おかげ
これは非常に広いです! kernelSVMはO(n^2)とO(n^3)の間の複雑さを持っています(n = n_samples、キャッシュに依存します)。私はこの実装がlibsvmを内部的に使用しているかどうかはわかりません(libsvm論文の1つを挙げていますが、私が期待したものではありません)ので、おそらくlibsvmを使って何かを得るでしょう。 – sascha
私の個人的な経験では、[LibSVM](https://www.csie.ntu.edu.tw/~cjlin/libsvm/)のmatlabインテグレーションは、組み込みのfitcsvmよりもはるかに高速です。 –
ありがとうSaschaとVahe LibSVMはうまく動作します よろしくおねがいします。 – Jason