検証の精度が向上している一方で、検証の損失が増加している可能性はありますか


27

CIFAR10データセットで簡単なニューラルネットワークをトレーニングしています。しばらくすると、検証の損失が増加し始めましたが、検証の精度も向上しています。テストの損失とテストの精度は向上し続けています。

これはどのように可能ですか?検証損失が増加すると、精度が低下するようです。

PS似たような質問がいくつかありますが、そこで何が起こっているのか誰も説明しませんでした。ここに画像の説明を入力してください


2
あなたはここに私の答えに理解するためにいくつかのヒントを確認することができます。stats.stackexchange.com/questions/258166/...を
ahstat

@ahstat技術的にどのように可能であるかは理解していますが、ここでどのように発生するかはわかりません。
コンスタンチンソロマトフ

「イラスト2」は私とあなたが経験したもので、一種の過剰適合です。私の特定の問題については、セットをシャッフルした後に軽減されました。
-ahstat

@ahstatオーバーフィッティングと戦う方法はたくさんあります。たとえば、ドロップアウトを使用する場合があります。私が一番おもしろいのは、これの説明です。すなわち、なぜ徐々に増加しているのでしょうか。
コンスタンチンソロマトフ

回答:


11

Ankurの答えとその下のコメントに基づいて、私は次のシナリオが可能だと思いますが、その証拠はありません。2つの現象が同時に発生している可能性があります。

  1. 境界線予測を使用したいくつかの例では予測が改善されるため、出力クラスが変化します(たとえば、0.4が猫、0.6が馬と予測された猫の画像は、0.4が馬、0.6が猫と予測されます)。これにより、精度が向上し、損失が減少します。

  2. 非常に悪い予測を持ついくつかの例は悪化し続けます(たとえば、0.8で馬であると予測された猫の画像は0.9で馬であると予測されます)AND / OR(特にマルチクラスの場合、より可能性が高い?)予測は少し悪くなります(たとえば、猫であると0.9で予測された猫の画像は、猫である0.8で予測されます)。この現象により、損失は増加しますが、精度は変わりません。

現象2が、ある時点で、多くの例(何らかの理由でよく理解されていない特定のクラスなど)および/または1から得られる損失減少よりも損失増加が大きい場合、シナリオで自分自身を見つけてください。
繰り返しになりますが、これは起こっていることではないかもしれませんが、そのようなシナリオを思い付くことができると、(クロスエントロピー)損失と精度の間の時々滑りやすい関係を思い出す必要があると思います。


15

セットの精度は、最高のソフトマックス出力と正しいラベル付きクラスをクロスチェックするだけで評価されます。ソフトマックス出力の高さに依存しません。より明確にするために、いくつかの数字を示します。

犬、猫、馬の3つのクラスがあるとします。私たちの場合、正しいクラスはhorseです。現在、softmaxの出力は[0.9、0.1]です。この損失については約0.37です。分類子は、それが馬であることを予測します。softmax出力が[0.6、0.4]である別のケースを考えます。損失〜0.6。分類子は、まだ馬であることを予測します。しかし、確かに、損失は増加しました。したがって、出力の分布がすべてです。


4
観察:あなたの例では、精度は変わりません。まだ100%です。損失が減少し、精度も低下する例はありますか?
ヒューパーキンス

1

アンクールの答えから、私には次のように思われます。

correctclassestotalclasses

ながら

less

そう...

高い検証精度 + 高損失スコア vs 高トレーニング精度 + 低損失スコアは、モデルがトレーニングデータで過剰適合している可能性があることを示唆しています。


0

多くの回答は、これがどのように可能かを説明する数学的計算に焦点を当てています。しかし、彼らはなぜそうなるのかを説明しません。そして、彼らはより明確にするためにさらに掘る方法を提案することはできません。

私には3つの仮説があります。そして、それらを検証するためのいくつかの実験を提案します。この問題の説明に役立つことを願っています。

  1. ラベルがうるさい。val_lossが最小のときとval_accが最大のときの誤った予測を比較します。これらのサンプルが正しくラベル付けされているかどうかを確認してください。
  2. [そうではない]モデルには、確実な情報の十分な側面がありません。より多くの大きな隠れ層を試してください。
  3. [非常に乱暴な推測]これは、モデルが特定の事柄について、より長く訓練されていると確信できない場合です。このような状況は人間にも起こります。誰かがテクニックを学び始めたとき、彼は何が良いか悪いか、特定のことは何のためにあるのかを正確に伝えられます(高い確実性)。彼がより多くのケースと例を通過すると、彼はより良い決定を下すことができる(より正確に)場合でも、特定の境界線がぼやけることがあることを認識します(確実性が低く、損失が大きくなります)。そして、膨大なサンプルのリストと多くの試行錯誤を経てマスターになると、最終的にはより確実になるかもしれません(より多くのトレーニングデータ)。したがって、この場合、トレーニングデータ(ラベルではない)にノイズを追加する実験が役立つことをお勧めします。

これらの仮説に同意しない場合は、これについて議論しないでください。それらを証明するか、間違っていることを証明するかどうかに関係なく、それらを検証する実験を行うことはより有意義です。

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