オーバーフィットのモデルを使用できますか?
-
16-10-2019 - |
質問
私はAUCメトリックのバイナリ分類の問題になっています。トレーニングとテストセットのために、ランダムな分割70%、30%を実行しました。デフォルトのハイパーパラメーターでランダムフォレストを使用した私の最初の試みにより、テストセットでAUC 0.85、トレーニングセットで0.96が得られました。したがって、モデルは覆されています。しかし、0.85のスコアは私のビジネスにとって十分です。また、同じモデルと同じハイパーパラメータで5倍のクロス検証を行いました。テストセットの結果は、0.84〜0.86の間で一貫して何かでした。
私の質問は、スコア0.85を信じて、このモデルを生産で使用できますか?
解決
はい、0.85 AUCがユースケースに十分である場合、これは十分なモデルです。トレーニングセットのパフォーマンスは、モデルがトレーニングセットをどれだけよく知っているかを示します。これは本当に気にしません。モデルが最適化しようとするものです。テストセットのパフォーマンスは、モデルがどれだけうまく一般化されているかを示すことです。これは私たちが気にするものであり、あなたのモデルはあなたの一般化の推定として約0.85になります。トレーニングとテストの違いは標準であり、この場合、より強力な正則化を追加することでより良いパフォーマンスを得ることができますが、0.85で十分な場合は、それを手に入れてください!
他のヒント
私の最初の試み[...]は、テストセットでAUC 0.85、トレーニングセットで0.96を与えてくれました。したがって、モデルは覆されています。
これはまったく真実ではありません。
見る、 (ほとんど)各推定器は、テストデータよりもトレーニングデータの予測スコアが向上します。それは各推定器の過剰フィットを意味するものではありません。
推定器はそうであるため、トレーニングセットでより良いスコアをhabeするのは普通です 構築されています その上で、そのパラメーターはそれのおかげで取り付けられています。ただし、推定器はトレーニングデータに多少なりとも適合できます。
ランダムフォレストの例を見てみましょう。深さが高すぎる場合は、トレーニングデータに大きく適合します。 オーバーフィット. 。深さが十分に高くない場合、他のデータに一般化するのは難しいでしょう:あなた アンダーフィット.
- 不足:
0.96
電車のセット&0.82
テストセット - 考えられる良いフィッティング:
0.96
電車のセット&0.89
テストセット - オーバーフィッティング:
0.96
電車のセット&0.75
テストセット
優れたデータ科学者として、モデルがデータを適切に適合させ、適切に一般化するのに十分ではありませんが、過度に採用することはありません。モデルがどのように一般化するかを制御するために、交差検証技術を使用します。あなたが得る値は、あなたが新しい値で得るものです±このクロス検証に関連する分散
PS:テストデータで頻繁に交差検証を使用すると、 ある意味で, 、このデータを選択して、テストスコアを最大化するために選択します。これは、将来の新しいデータのために過剰適合の形につながる可能性があります。