SVM を使用して学習しようとしている一連のデータがあります。コンテキストとして、データの次元は 35 で、約 30,000 のデータポイントが含まれています。
以前、このデータセットを使用して Matlab で決定木をトレーニングしましたが、約 20 秒かかりました。エラー率に完全に満足できなかったので、SVM を試すことにしました。
私は最初に試しsvmtrain(X,Y)
ました。約 5 秒後、次のメッセージが表示されます。
??? Error using ==> svmtrain at 453 カーネル関数の計算エラー: メモリ不足です。オプションに HELP MEMORY と入力します。
このエラーを調べたところ、SMOメソッドを使用するよう提案されました: svmtrain(X, Y, 'method', 'SMO');
. 約 1 分後、次のようになります。
??? 236 で ==> seqminopt>seqminoptImpl を使用するとエラーが発生する 最大数 (15000) のメイン ループ パス内で収束が達成されない
==> 100 での seqminopt のエラー [アルファ オフセット] = seqminoptImpl(data, targetLabels, ...
==> 437 での svmtrain のエラー [アルファ バイアス] = seqminopt(training, groupIndex, ...
他の方法 (LS および QP) を使用してみましたが、最初の動作が再び発生します: 5 秒の遅延、その後
??? Error using ==> svmtrain at 453 カーネル関数の計算エラー: メモリ不足です。オプションに HELP MEMORY と入力します。
決定木は非常に簡単に使用できたので、何か間違ったことをしていると思い始めています。ここでは、非常に単純な操作のように見えるものに行き詰まっています。
よろしくお願いいたします。