音認識のためのスペクトログラムによるディープラーニング


12

スペクトログラムを使用して音(たとえば、動物の音)を分類する可能性を検討していました。アイデアは、深い畳み込みニューラルネットワークを使用して、スペクトログラムのセグメントを認識し、1つ(または複数)のクラスラベルを出力することです。これは新しいアイデアではありません(たとえば、クジラの音の分類音楽スタイルの認識を参照)。

私が直面している問題は、さまざまな長さのサウンドファイルがあり、したがってさまざまなサイズのスペクトログラムがあることです。これまでのところ、私が見たすべてのアプローチでは固定サイズのサウンドサンプルを使用していますが、サウンドファイルが10秒または2分の長さになる可能性があるため、これを行うことはできません。

たとえば、最初は鳥の音、最後はカエルの音(出力は "Bird、Frog"になります)。私の現在の解決策は、ニューラルネットワークに一時的なコンポーネントを追加することです(リカレントニューラルネットワークをさらに作成する)が、今のところそれを単純に保ちたいと思います。アイデア、リンク、チュートリアルなど...?


1
最も簡単な方法は、STFT(スペクトログラム)の代わりに固定長FFTを使用することです。これにより、可変長の問題が解消されます。なぜリカレントニューラルネットワークを適用しないのですか?機能する例が必要ですか?その場合、どのソフトウェアを使用するかについて柔軟性がありますか?
Emre

1
固定長FFTを使用すると、多くの情報が失われると思います。その場合、まずセグメンテーションを行う必要があると思います。そこでは、「興味深い」部分を探します。私はそうするかもしれないし、再帰型ニューラルネットワークに行くかもしれません(例はいいですが、それほど必要ではありません。ラザニアを使いたかったのです)。私がそれを回避しようとした理由は、再帰型ニューラルネットワークの出力の処理がより難しいためです(各タイムステップで、ファイル全体のラベルしかありません)。それで、私は最も単純なモデルから始めて、徐々にそれをより複雑にしたかったのです。
user667804 2016年

最終的に何を使用したか、および見つけた最良のアプローチを教えていただけますか?@ user667804
nia

解決のために、この論文をチェックアウト:ceur-ws.org/Vol-1609/16090547.pdf indidivual出力のスペクトログラムの固定サイズのチャンクにCNNを使用して、(1つの最終予測を生成するための出力を平均平均は、仕事に思えますベスト)。
user667804 2017

回答:


4

自動音声認識(ASR)の場合、フィルターバンク機能はスペクトログラムでCNNと同じように機能します表1。動物の音を分類するために、fbankでDBN-DNNシステムをトレーニングできます。

実際には、ビタビ復号化は長い発話に対してうまく機能しないため、長い発話は短い発話に分割されます。同じことができます。

長い発話を固定長の小さな発話に分割できます。長い発話を小さな発話に分割するのは簡単です。問題は、短い発話の長さを長くして固定長に達することです。

スペクトログラムの周波数軸をワープして、小さな発話を増強することができます。このデータの増強は、ASRのパフォーマンス改善することが示されているデータaugumentationを

複数のサウンドが含まれる長い発話の場合、音楽セグメンテーションアルゴリズムを使用して、複数の発話に分割できます。これらの発話は、分割または拡張のいずれかによって固定長で作成できます。


4

RNNでは十分な結果が得られず、トレーニングも難しいため、CNNを使用しました。

特定の動物の音は数秒しかないため、スペクトログラムをチャンクに分割できます。私は3秒の長さを使いました。次に、各チャンクで分類を実行し、出力を平均して、オーディオファイルごとに1つの予測を作成します。これは非常にうまく機能し、実装も簡単です。

より詳しい説明はここにあります:http : //ceur-ws.org/Vol-1609/16090547.pdf

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.