TL; DR(長すぎて読まなかった):
私は時系列予測問題に取り組んでいます。これは、ディープラーニング(ケラ)を使用して回帰問題として定式化します。私の予測と真のラベル間のピアソン相関を最適化したいと思います。MSEをプロキシとして使用すると、実際にはピアソンを損失関数として直接使用するよりも(相関の観点から)より良い結果が得られるという事実に戸惑っています。ディープラーニングの損失関数として相関メトリックを使用することは悪い習慣と考えられていますか?もしそうなら、なぜですか?
長いバージョン:
私には時系列予測タスクがあります連続するタイムステップの値を観察し、タイムステップ値を予測する必要があります。通常、値はであるため、これを回帰問題として扱い、ディープラーニング(keras)を使用して解決しています。T + 1 [ - 200 、200 ]
私の質問は、損失と測定基準の選択に関するものです。
私のデータの真のラベルは、主に前後にあり、いくつかの極端な値があります。極端な値の多くは誤りであり、それらを正しくすることに集中するように学習をシフトしたくありません。言い換えれば、一般的な傾向を把握できるようになり(正の値と負の値の期間を正しく分類)、たとえば、200ではなく100を予測して「共存」できます。
このため、私の評価指標は、予測値と真の値の間のピアソン相関であるべきだと思います。
さて、損失関数について:理想的には、高いピアソン相関を最適化したい場合、それを損失関数として使用することは理にかなっているでしょう?私は「ベースラインモデル」であるシンプルなアーキテクチャを2回テストしました。1回はピアソン(ミニバッチで計算)を直接損失関数として使用し、もう1回は一般的なMSEをプロキシとして使用しました。どちらの場合も、MSEとピアソンの両方を異なるエポックについて追跡し、検証セットに基づいて「早期停止」を行います。
私の結果:
- 損失としてのMSE:MSE 160、ピアソン0.7
- 損失としてのピアソン:MSE 250、ピアソン0.6
ピアソン損失のより高いMSEは、相関の最適化にはスケールがないという事実の結果であると理解しています。そのため、すべての予測は、MSEを増加させる方法で要因によって「オフ」になる可能性があります。しかし、MSEをプロキシとして使用すると、ピアソン相関自体の点で実際にどのように改善されるのでしょうか。ピアソン相関を損失関数として使用してはならない理由について、最適化に関連する理由はありますか?実際、ほとんど使われていないようですが、その理由を知りたいと思います。