回帰のより最近の観測により多くの重みを割り当てる


9

Rでより最近の観測により多くの重みを割り当てるにはどうすればよいですか?

私はこれをよくある質問または欲求と見なしますが、これを実装する方法を正確に理解するのに苦労します。私はこれについてたくさん検索しようとしましたが、良い実用的な例を見つけることができません。

私の例では、時間の経過とともに大きなデータセットができます。最近のデータ行にある種の指数重み付けを適用したいと言いたいです。したがって、2015年の観測は2012年の観測よりもモデルのトレーニングに重要であると言って、ある種の指数関数を持つことになります。

データセット変数にはカテゴリ値と数値の混合が含まれており、ターゲットは数値です-それが重要な場合。

GBRET / Random Forestなどのモデルを使用して、理想的にはCARETパッケージでテスト/試してみたいと思います。

更新質問

2つのポイント間の日付距離によって重みを指数関数的に減衰させる方法について、以下に示す応答に感謝します。

ただし、このモデルをキャレットでトレーニングする場合、重みはどの程度正確に考慮されますか?各トレーニング行の重み値は、将来のあるポイントとそのポイントが履歴的に発生したときの間の距離です。

重みは予測中にのみ機能しますか?なぜなら、それらがトレーニング中に出てきた場合、さまざまなクロスフォールドが異なる重みを持ち、実際にその前の時点であるかもしれない何かを予測しようとするため、あらゆる種類の問題を引き起こさないのではないでしょうか?


3
質問者が統計上の問題を明確にする必要があるため、投票にクローズします。ここでGBNまたはRFが適切であることは明らかではありません。これをCV.comに移行することを提案
DWin

OK。すぐに例を追加します。私はインターネット上でこの種の質問を見ているだけですが、それを適用/解決する具体的な例はありません。
user3788557

回答:


5

Rでより最近の観測により多くの重みを割り当てるにはどうすればよいですか?

各観測に関連付けられたタイムスタンプがあると思います。変数を計算できますtimeElapsed = modelingTime - observationTime。今、あなたは、のような単純な指数関数適用W=K*exp(-timeElapsed/T)Kスケーリング定数であり、Tある時定数減衰関数のために。Wケースウェイトとして機能します。

私の知る限りでは、多くの関数がパラメーターとしてcaret許可さweightれています。これは、対応する観測に提供されるケースの重みの列です(したがって、#rowsと同じ長さです)。


1
の関数はcaret::trainですweights
timcdlucas

Ujjwalに感謝します。しかし、方程式の「K」を決定する方法は何ですか。ガイドラインやベストプラクティスはありますか?また、減衰関数の「期間」とはどういう意味ですか?
user3788557

Kは単なるスケーリング定数であり、モデルの結果にはあまり影響しません。ケースウェイト値の範囲が0〜1の範囲に近くなるように、値を設定できます。「期間」については、1次の指数関数的減衰関数または平均寿命の時定数とも呼ばれます。ウィキペディアで調べることができます。
Ujjwal Kumar 2016

私の投稿の更新をご覧ください。これはトレーニング中に正しく機能しますか?重みはテストセットに対して使用する場合にのみ適用できるので、トレーニングモデルにバイアスがありますか?トレーニングセットがランダムにシャッフルされている場合、過去の価格を予測するために、または時間的に近くない期間に対して、より高い重みを使用すると、悪い結果になる可能性があります。
user3788557 2016

ケースウェイトがない場合、モデルのトレーニングは古いデータと新しいデータの両方に同等の重要性を与えますが、提案されたケースウェイトでは、新しいデータがより重要になるため、その意味では、新しい観測に偏っていますが、それはあなたが欲しかったもの。なぜ「テストケースにのみ重みを付けることができる」のかわかりません。また、トレーニングセットがランダムにシャッフルされた場合、古い値に対してより高い重みが使用されますか?ときmodelingTimeは、すべてのトレーニングケースのために同じ保たれています。PSのケースウェイトは、モデルを使用するだけでは適用されず、トレーニング期間にのみ適用されます。
Ujjwal Kumar 2016

0

データ(仮定を行うアナリストではなく、推測)は、多くの場合、重み付けスキームの形式を示唆します。これはGLSを介して行われ、加重最小二乗モデルの適切な加重は、誤差分散にある統計的に有意な差から取得されます。見てみましょう手段ARIMA(Tsay法)によって変化し、外れ値の検出を、ここでhttp://docplayer.net/12080848-Outliers-level-shifts-and-variance-changes-in-time-series.html。データを投稿したい場合は、ここに記入してください。私はあなたを啓発する可能性のあるソフトウェアに定期的にアクセスできるので、私はさらに努力して支援します。

私が使用しているソフトウェアのRバージョンがあります。

あなたは、で見えるかもしれませんARIMAによる介入解析における制御変数を含めるには?重みがどのように識別され、エラー分散を安定させるために使用されるかの例があるため、特定の以前の値を効果的に信じる/信じない/割引/重みづけ/信頼する。

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