
時系列データに対する学習・テスト期間の選択
商品販売予測や電力需要予測などの時系列データに対する予測では、一般に、
・ トレンド
・ 季節変動
・ 循環変動(周期の確定していない変動)
・ 不規則変動(偶発変動)
を、データ分析により見極めることが大切ですが、このことと関連して、学習やテストを行う期間の選択は、モデルの性能評価に大きく影響します。
例えば、季節商品であれば、予測時点からの近々、例えば半年の売上げ実績データよりも、前年同時期のデータの方が重要です。
また、通年商品であっても、経済状況や顧客嗜好の変化を考慮し、学習データに含めるかどうかの判断が必要な場合もあります。
(複数年に渡るデータを単に学習させただけでは、その期間の平均的モデルが得られるだけであって、時系列データの上記特徴をモデルに取り入れるには、一工夫必要である点には注意が必要です。)
特に学習期間が特にシビアとなる分野の一つは、システムトレードの世界です。
システムトレードとは、投資を行う際に、投資家の裁量を排して一定ルールに従って売買を行うことをいいます。
ここでは、利益が最大となる売買ルールを決定するために、過去データを用いてパラメータを最適化します。
このことを「バックテスト」と呼んでいます。 一方、そのパラメータ最適化期間を含まない未来の一定期間において、その売買ルールの評価を実施することを「フォワードテスト」と呼び、売買ルールの良し悪しと適用期間を判断します(注)。
ニューラルネットワークのような機械学習でいうところの過学習と同様に、システムトレードの世界では、バックテストでは非常によいが、フォワードテストでは評価のよくない売買ルールを「カーブフィッティング」と呼んで、戒めています。
(注) 例えば、10年間のデータのうち、前半の7年をバックテスト用データ、後の3年をフォワードテスト用データとする。あるいは、ウォークフォワードテストといって、テスト期間をずらしながらバックテストとフォワードテストを複数回行い、その結果を比較することで、最適な学習期間とルール適用期間を判断する方法もあります。
※弊社では、データ分析プロジェクトにまつわる様々なご相談に、過去20年以上に渡るプロジェクト経験に基づき、ご支援しています。社内セミナーの企画等、お気軽にご相談いただければ幸いです。
製品カタログ