ノイズを伴うデータ拡張を使用したより高いオーバーフィッティング?


8

私はオーディオ分類のニューラルネットワークをトレーニングしています。

UrbanSound8Kデータセット(Model1)でトレーニングした後、入力に追加されたノイズの異なるレベルが予測精度にどのように影響したかを評価したいと思いました。ベースライン精度モデル1 = 65%

予想通り、ノイズのレベルが高くなると精度が低下しました。

次に、ノイズを使用したデータ拡張(Model2)を実行することにしました。それで、データセットを取り、同じファイルで複製しましたが、ピンクノイズ(+0 dB SNR)を追加しています。

(私が)予想したように、全体的な精度が向上し(非常にわずかですが、0.5%)、ネットワークは入力のノイズ破損に対してより堅牢になりました。

しかしながら!私が予期していなかったことの1つは、ノイズのある破損のない入力(検証入力)のみを予測すると、ネットワークの精度が低下することでした。どういうわけか、それはクリーンな入力に適合しすぎているため、これらのオーディオの予測精度が低下しています。

したがって、Model2は数値で予測すると、ノイズの多い入力では69%の精度(必ずしも訓練されたのと同じノイズではない)で予測し、クリーンな入力では47%の精度で予測します。

この結果について何か説明や直感はありますか?

ネットワークは、ますます多様なトレーニングデータを持っているため、より有意義な機能を学習するだろうと期待していました。ノイズの多い入力にオーバーフィットする方が難しいと思いますが、それでも主にクリーンな入力にオーバーフィットした理由がわかりません。

-------------------------------------------------編集1 ------------------------------------------------- ---------------

役立つかもしれない別の情報:

ノイズがほとんどないノイズの多い入力でModel2を評価する場合でも、ネットワークはクリーンな入力(耳へのノイズがほとんどない入力とほとんど同じ)の場合よりもパフォーマンスが優れています。


「元の入力のみを予測すると精度が低下した」と言う場合、破損していないトレーニングデータまたは破損していない検証データを意味しますか?前者は悪くなるが、後者は良くなると期待すべきです。
shimao

破損していない検証データ@shimao
sdiabr

データ拡張の前または後に入力を正規化していますか?どのように正規化していますか?
ジョニー・ローモンド2018年

入力の正規化は実行しませんでした
。– sdiabr

トレーニングセットには、「クリーン」と「ノイズ」の両方のデータが含まれていますか、それとも単に「ノイズ」がありますか?
ジュバーブ2018年

回答:


2

エラーのない入力機能にモデルを適合させます。次に、同じデータにエラー(ノイズ)を追加し、モデルを再度適合させます。ノイズのない入力(エラーのない入力)よりもノイズの多い入力(エラーのある入力)の方が予測が悪いことがわかりました。モデルは、ノイズのない入力では以前のモデルと同じように良好であり、ノイズの多い入力ではより良好であると期待していました。

トレーニングデータを追加せず、ノイズのある同じデータを複製しただけです。直感的に、すべてのノイズのない入力でトレーニングされたモデルは、すべてのノイズのあるデータでトレーニングされたモデルよりも入力のノイズが少ない場合、より正確な予測になります。同様に、私の直感は、すべてのノイズのないデータでトレーニングされたモデルよりも、すべてのノイズのあるデータでトレーニングされたモデルの方が、ノイズの多い入力から予測した方が正確であることです。ノイズのないデータとノイズの多いデータが混在している場合、私の直感は、ノイズのないデータのみでトレーニングされたモデルよりもノイズのないデータのみでトレーニングされたモデルよりも、ノイズの多いデータでより優れた予測が得られ、ノイズのないデータでより優れた予測が得られることです。これはあなたが観察したことと一致しているようです。

編集:

基本的に、データのノイズを信号と間違えるとオーバーフィッティングが発生します。ノイズという用語は、役に立たない情報またはトレーニングデータにのみ固有の情報の概念的な意味で使用します。これが発生した場合、モデルはトレーニングデータによく適合しますが、一般化は不十分です。ポイントがあり、モデルがすべてのポイントを補間するとします。ポイントにノイズが多い場合、この動作は望ましくありません。データ拡張に関する基本的な知識は、トレーニングデータにノイズを追加すると、近似するモデルが全体のエラーを最小化するために、これらの近くのポイント間のエラーのバランスをとる傾向があるためです。このモデルは、ノイズの多いデータとノイズのないデータの両方を予測するときにエラーが少ないという点で、平均的な意味で優れています。トレーニングデータとは少し異なるデータに一般化します。しかしながら、


回答@Natをありがとう。いくつかの注意:最初の段落で「それからいくつか追加してモデルを再度フィットしました」と言いましたが、モデルを再度フィットしませんでした。クリーンな入力、ノイズの多い入力でトレーニングしたモデルをテストしました。あなたが最後に言うことは本当ですが、私が観察したものではありません。私が観察したのは、clean_inputs + noisy_inputsでトレーニングされたモデルは、クリーンな入力(明らかな種類)でトレーニングされたモデルよりもノイズの多い入力を予測することです。精度の低いクリーンな入力を予測します。
sdiabr

私が理解すれば、「モデルにふさわしい」という言葉には問題があると思います。次の2つのモデルがあります。1)クリーンなデータでトレーニングされた2)クリーンでノイズの多いデータでトレーニングされた。それが私が言おうとしていたことです。あなたのコメントでのあなたの説明が、私が私の回答で述べたものとどのように異なるのか理解できません。「...ノイズの多いデータのみでトレーニングされたモデルよりも、ノイズのないデータの予測が優れています。」ノイズの多いデータのみでトレーニングされたモデルは、架空のモデルです(3)。
Nat

申し訳ありませんが、私は何かを誤解していると思います。しかし問題は、なぜノイズ+クリーン入力でモデルをトレーニングすると、クリーン入力のみでトレーニングされたモデルで評価したときに、クリーン入力の精度予測がクリーン入力の精度予測に対して低下するのかということです...データ拡張のすべてのポイントを行いましたか?より多様なデータをネットワークに供給することで、ネットワークがより良い機能を学習し、より良いパフォーマンスを発揮するようになると思いました。
sdiabr

私はあなたのコメントに応じて私の答えを編集しました
Nat

なぜ「モデルはノイズの多いデータとノイズのないデータを区別しない」と言うのですか?回答ありがとうございます。それでも、もう少し「科学的」な答えを期待していたので、今のところその答えは受け入れられないようにしておきます。
sdiabr
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.