データセットがあるとします。私はそれにいくつかの回帰を実行します。別のテストデータセットがあります。このセットで回帰をテストします。テストデータでRMSEを見つけます。学習アルゴリズムがうまく機能しているとどのように結論付ける必要がありますか。つまり、取得したRMSEがデータに適していると結論付けるために、データのどのプロパティを確認する必要があるかを意味します。
データセットがあるとします。私はそれにいくつかの回帰を実行します。別のテストデータセットがあります。このセットで回帰をテストします。テストデータでRMSEを見つけます。学習アルゴリズムがうまく機能しているとどのように結論付ける必要がありますか。つまり、取得したRMSEがデータに適していると結論付けるために、データのどのプロパティを確認する必要があるかを意味します。
そこには2つの異なるタイプの質問があると思います。 1つは、タイトルで尋ねることです。「適切なRMSE値は何ですか?」もう1つは、RMSEを使用してモデルを異なるデータセットと比較する方法です。
最初の、つまりタイトルの質問では、RMSEが従属変数(DV)と同じ単位を持っていることを思い出してください。 )。これは、絶対的な良いしきい値または悪いしきい値がないことを意味しますが、DVに基づいて定義できます。 0から1000の範囲のデータムの場合、0.7のRMSEは小さいですが、範囲が0から1になると、それ以上小さくなりません。ただし、RMSEは小さいほど良いですが、研究分野でDVに何が期待されるかを知ることで、RMSEのレベルについて理論的な主張をすることができます。RMSEはいつでも正規化できることに注意してください。
2番目の質問、つまりRMSEを使用して異なるデータセットを持つ2つのモデルを比較する場合、DVが両方のモデルで同じであれば、それを行うことができます。ここでは、小さいほど良いですが、これらのRMSE間のわずかな違いは、関連性がないか、重要ではない可能性があることに注意してください。
優れたモデルを構築した場合、トレーニングとテストセットのRMSEは非常に似ているはずです。テストセットのRMSEがトレーニングセットのRMSEよりもはるかに高い場合は、データが大幅に適合しすぎている可能性があります。つまり、サンプルで十分にテストするモデルを作成しましたが、テストしたときの予測値はほとんどありません。サンプルから。
これは古いスレッドですが、私の答えが同じ質問への答えを探している人に役立つことを願っています。
時系列分析について話すとき、ほとんどの場合、ARIMAモデル(およびそのバリアント)の研究を意味します。したがって、私は私の答えで同じことを仮定することから始めます。
まず、以前のコメンターであるR. Asturが説明しているように、RMSEはスケールに依存する、つまり従属変数に依存するため、優れたRMSEなどはありません。したがって、ユニバーサル番号を優れたRMSEとして主張することはできません。
MAPEやMASEなどのスケールフリーの適合性を選択したとしても、良好であるというしきい値を主張することはできません。これは間違ったアプローチです。 「私のMAPEはそんなものなので、私のフィット感/予測は良い」とは言えません。あなたがあなたの問題に取り組むべきだと私が信じる方法は次のとおりです。最初に、Rのarima()関数出力をループするなどのロジックを使用して、いくつかの「可能な限り最良の」モデルを見つけ、最小のRMSE、MAPE、またはMASEに基づいて最良のn個の推定モデルを選択します。私たちは特定のシリーズについて話しているので、普遍的な主張をしようとはしていないので、これらの手段のいずれかを選ぶことができます。もちろん、残差診断を行う必要があり、最良のモデルが正常に動作するACFプロットでホワイトノイズ残差を生成することを確認する必要があります。いくつかの適切な候補ができたので、各モデルのサンプル外MAPEをテストし、サンプル外MAPEが最適なモデルを選択します。
結果として得られるモデルは、次の意味で最高のモデルです。
ここで重要な点の1つは、従属変数または残余項の十分なラグを含めることで、ARIMA(またはそのバリアント)の時系列を推定できることです。ただし、その適合した「最良の」モデルは、適合しすぎて、サンプル外の精度が劇的に低くなる可能性があります。つまり、私の箇条書き1を満たしますが、2は満たしません。
その場合、あなたがする必要があるのは:
これがお役に立てば幸いです。
RMSEの特定のしきい値を修正することはできません。テストデータセットとトレーニングデータセットの両方のRMSEの比較を確認する必要があります。モデルが適切であれば、テストデータのRMSEはデータセットのトレーニングと非常によく似ています。それ以外の場合は、以下の条件が満たされました。
テストのRMSE>トレインのRMSE =>データの過剰適合。
テストのRMSE<トレインのRMSE =>データのフィッティング中。
個人的には、RMSE /標準偏差アプローチが好きです。範囲は誤解を招く可能性があり、偏った分布または外れ値が存在する可能性がありますが、標準偏差がこれを処理します。同様に、RMSE /平均は完全に間違っています-平均がゼロの場合はどうなりますか?ただし、これは、適切なモデルがあるかどうかを判断するのに役立ちません。この課題は、2項分類を使用して、「私のGiniが80%優れているか」を尋ねるのと似ています。場合によります。おそらく、追加のチューニングや機能エンジニアリングを行うことで、90%のジニ係数を与える(そしてテストサンプルに対して検証する)より良いモデルを構築できたはずです。また、ユースケースと業界によっても異なります。行動クレジットスコアを作成している場合、80%のジニ係数は「かなり良い」です。ただし、新しいアプリケーションのクレジットスコア(本質的にアクセスできるデータが少ない)を開発している場合は、60%のジニ係数がかなり適しています。モデルのRMSE / std dev "score"が良いかどうかということになると、これを適用し、さまざまなユースケースから学ぶことによって、独自の直感を開発する必要があると思います。