次のような機械学習ルーチンを Octave にまとめました。
- 音声ファイルから特徴を抽出
- 機能はスケーリングおよび正規化されています
- SVM 分類器のトレーニング
- 分類が行われます
私が抱えている問題は、ステップ 2、3、および 4 がデータベース全体で完了するまでに数秒かかることです。ただし、ステップ 1 はファイルごとに約 1 秒かかります。これは過剰です。
時間がかかる理由は、ほとんどの場合、を使用してファイルごとに複数の指数フィットを実行しているためですleasqr
。
クラスごとに約 1500 のサウンド ファイルがあり、3 つ以上のクラスがあるため、合計が増え始めます。15,000 個のファイルに拡張したいと考えていますが、現在の特徴抽出速度では実現不可能です。
特徴抽出のステップに何度も対処しなければならない理由は、それを使用して分類器のパフォーマンスを微調整してきたからです。たとえば、指数フィットが実行される範囲を変更することによって。
私の質問は次のとおりです。手間のかかるプロセスを外部で実行した経験はありませんが、それは実行可能な解決策でしょうか? もしそうなら、このような状況の良い/標準的な慣行は何ですか? そうでない場合、良い習慣は何ですか?