バックテスティング/定義

バックテスティング定義


著者Joannès Vermorel、2013年8月最終推敲

時系列予測の文脈において、バックテスティングの概念は既存の履歴データを使用する予測法の精度を評価する過程を指しています。その過程は通常反復的で、履歴データにある複数の日付で繰り返されます。バックテスティングは予測法の期待される将来的精度を見通す為に使用されます。それにより、どの予測モデルが最も精度が高いと見なされるべきか知ることができます。

バックテスティングの方法

バックテスティングは履歴データでカバーしている期間内のしきい値リストを選ぶことから始まります。下の例ではしきい値はT1、T2、T3、T4として列挙されています。

Image


それぞれのしきい値は、

  • 履歴データは、しきい値で切り捨てられ、
  • 予測モデルは、切り捨てられたデータに照準を当て、適用され、
  • 予測は切り捨てられていない元のデータと比較されます。

最後に、平均予測誤差は、すべてのしきい値を介して生み出されています。

この平均誤差は(将来に対する)真の予測を作成する際のモデルに関連する予測誤差として解釈されることができます。適したしきい値を選ぶことは当面の問題に関しての何らかの知識が必要になります。一般に、しきい値を増やすことで過剰適合問題に対する抵抗力改善につながります。

一般に何百ものSKUが介入することから、在庫最適化の過程において、僅かなしきい値のみで非常に高い確信を持って予測法が他に比べて勝っているのか判断することができます。

よくある間違い: 一度の学びで多くを予測

バックテスティングは一般に新たな予測モデルはそれぞれのしきい値に照準を当てることから、コンピューティングリソースの面でかなり集約的と言えます。結果として、履歴データの全範囲を利用して予測モデルを一度だけ試した方が、バックテスティングの反復を続行していることを見受けることが頻繁にあります。この方法の利点としては、バックテスティングの大幅なるスピードアップです。

しかしながら、そのようなは見当違いで、顕著な過剰適合問題に繋がるのです。確かに、暗黙のうちに将来のデータが予測モデルにとって利用可能となることから、どのように様々な予測が学習段階でとられても、この将来についての情報をモデルが埋め込むことになるのです。結果、バックテストによって測られた精度は、モデルの一般的な能力を反映しておらず、むしろ記憶の能力を反映するものとなります。つまり、モデルがデータセットから類似の状況を再現する能力に対しての評価となるのです。

Lokadのアプローチ

バックテスティングはLokadの予測技術の中核となっています。それぞれの時系列において、最終的予測を作成する上で、どのモデルを選ぶべきか判断する際に利用します。しかしながら、ここで発表した簡単なバックテスティングの見方は小売や製造業での全ての状況に適してはいません。例えば、新しく発表した商品において、大幅なバックテスティングをするには時系列は短過ぎることになるかもしれません。特売や商品発表は、それに適したアプローチが必要となります。