7

私の最終年度のプロジェクトでは、犬/樹皮/鳥の音をリアルタイムで識別しようとしています (サウンド クリップを録音することによって)。オーディオ機能として MFCC を使用しています。最初に、jAudio ライブラリを使用してサウンド クリップから 12 個の MFCC ベクトルを抽出しました。今、私は機械学習アルゴリズムを訓練しようとしています (現時点ではアルゴリズムを決定していませんが、おそらく SVM です)。サウンド クリップのサイズは約 3 秒です。このプロセスに関するいくつかの情報を明確にする必要があります。彼らです、

  1. フレームベースの MFCC (フレームごとに 12) または全体的なクリップベースの MFCC (サウンドクリップごとに 12) を使用して、このアルゴリズムをトレーニングする必要がありますか?

  2. アルゴリズムをトレーニングするには、12 の MFCC すべてを 12 の異なる属性と見なす必要がありますか、それとも 12 の MFCC を 1 つの属性と見なす必要がありますか?

これらの MFCC は、クリップの全体的な MFCCS です。

-9.598802712290967 -21.644963856237265 -7.405551798816725 -11.638107212413201 -19.441831623156144 -2.780967392843105 -0.5792847321137902 -13.14237288849559 -4.920408873192934 -2.7111507999281925 -7.336670942457227 2.4687330348335212

これらの問題を克服するために、どんな助けも本当に感謝しています。Google で適切なヘルプを見つけることができませんでした。:)

4

1 に答える 1

5
  1. フレームごとに MFCC を計算する必要があります。信号は時間とともに変化するため、クリップ全体で信号を取得することは意味がありません。さらに悪いことに、犬と鳥が同じような表現になってしまう可能性があります。いくつかのフレーム長を試してみます。一般に、それらはミリ秒のオーダーになります。

  2. それらはすべて個別の機能である必要があります。機械学習アルゴリズムに最適な予測子を決定させます。

MFCC はノイズに敏感なので、まずサンプルのサウンドを確認してください。抽出用のオーディオ機能のはるかに豊富な選択は、たとえばYaafe ライブラリによって提供されます。その多くは、あなたの場合により適しています。具体的にはどれ?鳥の鳴き声の分類で私が最も役立つと思ったものは次のとおりです。

  • スペクトルの平坦性
  • 知覚の広がり
  • スペクトルロールオフ
  • スペクトル減少
  • スペクトル形状統計
  • スペクトル勾配
  • 線形予測コーディング (LPC)
  • ライン スペクトル ペア (LSP)

おそらく、このプロジェクト、特に私が Yaafe とやり取りしている部分をチェックしてみると面白いと思うかもしれません。

あなたが計画しているように、私はSVMを使用していました。今日、私は間違いなく勾配ブースティングを使用します。

于 2016-02-07T14:27:21.927 に答える