TS-1. 店舗の売上予測(単時系列問題)

キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 
DataRobot コミュニティ

TS-1. 店舗の売上予測(単時系列問題)

それでは早速、実際に時系列モデリングを行っていきましょう。具体的にはこのページの下部に添付しているエクセルファイル(店舗売上予測.xlsx, 店舗売上予測_予測.xlsx)を使いながらDataRobotで時系列モデルを作成し、予測まで行います。

 今回はある店舗全体の売上をDataRobotの時系列モデリングによって予測していきます。データは図1のような構成になっています。(店舗売上予測.xlsx 

YasunariN_0-1591119068720.png

図1. トレーニングデータスナップショット(店舗売上予測.xlsx )

  • 一番左の黄色の列に日付が格納されています。時系列モデリングでは日付、時間を示す特徴量が少なくとも1つ必要です。
  • 次に緑の5列は来客数や割引商品、プロモーション商品、返品率や従業員数などその日の店舗に関する情報です。
  • 青色の4列はクリスマス期間、ブラックフライデー期間、祝日、イベントといったカレンダー情報です。
  • オレンジ色の3列は年間経済成長率、失業者数、年間CPIが経済指標として格納されています。この列には欠損も多く含まれていることが見て取れます。DataRobotが自動で補完するので、欠損値が含まれるデータをそのまま入れることが可能です。
  • 最後に右端の赤い列に売上が格納されています。今回はこの売上が予測の対象となります。

このファイルをDataRobotの以下の画面にドラッグアンドドロップで投入します。

YasunariN_1-1591119068560.png

図2. DataRobotのデータインポート画面

ドラッグアンドドロップが完了したらターゲットに「売上」を設定し、何を予測するかを教えます。

YasunariN_2-1591119068693.png

図3. ターゲットの設定

次に「時系列認識モデルを設定」を押して、主時間を表す特徴量として「日付」を選択します。(DataRobotが自動で時間が格納された特徴量をサジェストしてくれます。)

YasunariN_3-1591119068717.png

図4. 時間認識モデルの選択

YasunariN_4-1591119068695.png

図5. 主時間を表す特徴量の設定

その後、左下の「時系列モデリング」を選択します。この設定をする事で時系列モデリングが行われます。

YasunariN_5-1591119068786.png

図6. 時系列モデリングの選択

この後はいくつか時系列モデリングの詳細な設定を行っていきます。
まず、図7のように派生特徴量を作成する期間と予測したい期間の設定を行います。ここではデフォルトのまま、過去35日間の期間を使って特徴量を派生し、1~7日先の予測を行います。

YasunariN_6-1591119068726.png

図7. 特徴量の派生ウィンドウと予測ウィンドウの設定

次に、事前に既知の特徴量を設定しましょう。今回のデータでは青色の列である「クリスマス期間」「ブラックフライデー期間」「祝日」「イベント」が事前にわかっている情報ですので、特徴量一覧からこれらを選択しチェックします。

YasunariN_7-1591119068730.png
図8. 事前に既知の特徴量の選択

 

そして「メニュー」から「4個の特徴量を事前に既知として切り替える」を選びます。

YasunariN_8-1591119068727.png

図9. 選択した特徴量を事前に既知として切り替え

これで、これらの特徴量を事前に既知と設定することができました。

YasunariN_9-1591119068716.png

図10. 事前に既知として切り替えられた特徴量

訪問客数などと違い、クリスマスなど前もって知る事ができる変数を既知の変数であると設定する事は非常に重要です。
以上で設定は完了です。それでは「開始」ボタンを押してモデリングを開始しましょう。

YasunariN_10-1591119068713.png

図11. 時系列モデリングの開始

「開始」ボタンを押すと図12のように派生特徴量を生成するフェーズを挟んで複数のモデルが作成されます。

YasunariN_11-1591119068714.png

図12. 派生特徴量の生成

特徴量の派生が完了した後、「データ」から特徴量の一覧を見ると、インプットデータには14列しかなかったものから特徴量の数が300弱まで増えていることが確認できます。DataRobotではこの様に、インプットデータの時系列の特徴量エンジニアリングを自動で行います。

YasunariN_12-1591119068718.png

図13. 生成された派生特徴量

モデルの生成が終わったらリーダーボードから上位のモデルを選んで精度を確認してみましょう。モデルの「評価」から「時系列の精度」を選択することで、実測値とモデルの予測値の時間軸での当てはまりを視覚的に確認することができます。

YasunariN_13-1591119068558.png

図14. 時系列の精度

また、「解釈」から「特徴量のインパクト」を選ぶことで、派生特徴量も含めたものの中でどの特徴量がインパクトがあるのかを用意に確認することができます。

YasunariN_14-1591119068722.png

図15. 派生特徴量も含めた特徴量のインパクト

モデルの確認ができたのでこのモデルを使って予測を行ってみましょう。予測に必要になるのは図16のようなモデル作成に使用したデータと同じ特徴量をもったデータです。
 今回予測に使うデータ(店舗売上予測_予測.xlsx )の予測対象期間は2014/06/15から2014/06/21ですのでその期間のデータは日付と事前に既知な特徴量以外は空白となっています。
 また、派生特徴量を生成するのに必要な期間(今回は35日前から当日まで)のデータも含まれている必要があります。

YasunariN_15-1591119068728.png

図16. 予測に使うデータのスクリーンショット(店舗売上予測_予測.xlsx )

「予測」から「予測を作成」を行い、このファイルをドラッグアンドドロップして「予測を計算」を押すことでアップロードしたデータに対する予測を生成できます。

YasunariN_16-1591119068725.png

図17. 予測の計算

予測結果はCSVファイルとしてダウンロードすることもできますし、「プレビュー」を押すことで図18のように視覚的に確認することもできます。青色の点と線が予測値の推移で、80%予測区間も合わせて表示されています。

YasunariN_17-1591119068783.png

図18. 予測プレビュー

以上、DataRobotによる時系列モデリングの流れを簡単に見てきました。ここからは以下の各ステップについてより詳細に見ていきましょう。

バージョン履歴
最終更新日:
‎06-29-2020 05:17 PM
更新者: