はじめに
時間ベースの予測は、時間順序が核心であるという非常に重要な点で通常の表形式の ML とは異なります。データを分割したり機能を作成したりする方法を誤ると、実際にデプロイするときに役に立たない美しい結果を生み出して自分を騙してしまう可能性があります。
レッスンの目標
- 予測と通常の回帰の違いを理解します。
- 基本的な時間フィーチャの作成方法を理解する。
- 時系列での漏洩を回避します。
時系列の特徴
- データは前の順序です。
- トレンド、季節、サイクルがある場合があります。
- 綿密な観察はしばしば相互に依存します。
人気の機能
- sales_t-1、sales_t-7 などの遅延機能。
- 7 日間、30 日間の平均などのローリング統計。
- 曜日、月、四半期、休日などのカレンダー機能。
データを正しく分割する方法
通常の表形式のようにランダムにシャッフルしません。時間軸に沿って分割してみましょう。電車は過去、検証は現在に近く、テストは最新のセグメントです。
ベースラインは非常に重要です
複雑なモデルを使用する前に、前期間の値、移動平均、先週の同じ期間などのベースラインと比較してください。
よくある間違い
- ランダムな分割時系列。
- 将来を見据えたローリング機能を作成します。
- 単純なベースラインと比較しないでください。
練習問題を練習する
- ラグ機能とシンプルなツリーベースのモデルを使用して、毎日の収益を予測します。
- 前日の同じ期間のベースラインと比較します。
- モデルがベースラインを超えてさらに多くの信号を学習するときにコメントを記述します。
完了基準
- データを論理的に時間で分割します。
- 基本的なラグとローリング機能を作成します。
- モデルを時間ベースラインと比較します。
段階的に練習する (上級)
- 時間軸上でトレーニング/検証/テストを構築します。
- ラグ フィーチャとローリング ウィンドウ フィーチャを作成します。
- ML モデルを単純なベースラインと比較します。
- MAE、MAPE、段階ごとのエラーを評価します。
- 重要な季節のマイルストーンでパフォーマンスをテストします。
アーティファクトを送信する必要があります
- 時間の経過に伴う予測と実際のグラフ。
- 週または月ごとのエラー表。
- 季節変動についてコメントし、モデルの更新を提案します。
セルフテストの質問
- ランダムな分割が予測に重大な誤差を引き起こすのはなぜですか?
- 同じ期間のベースラインがすぐに使用できるのはいつですか?
- 時系列で漏洩を起こしやすい特徴はどれですか?