時系列予測モデルをDataRobotを用いて作っており、
解釈から予測の説明を見たところ、
(特徴量A) (match weekday from end of the month) (naive 1 month seasonal value)
が高いことがわかりました。
ドキュメントを見て、
つきましては、1つ目の理解が正しいか、2つ目がどのような意味かを教えていただけると幸いです。よろしくお願いいたします。
解決済! 解決策の投稿を見る。
ご質問ありがとうございます。DataRobotの井原です。
1. ご理解いただいている通り、(naive 1 month seasonal value) は「1ヶ月前の値」です。
より詳しく書くと、naive %特定の過去の日% seasonal value は、%特定の過去の日% に該当し欠損を除く直近の値を含む特徴量です。
今回のような naive 1month seasonal value であれば、1ヶ月前の値となります。
1ヶ月前の値が欠損していれば2ヶ月前の値になります。
naive 関連の特徴量については派生特徴量の naive latest value に関してのQ&Aもご参考にしてください。
2. (match weekday from end of the month) は「月の最後の平日の値」になります。
1つ目の項目と合わせると、「前の月の最後の平日の1ヶ月前の値をそのまま使っている」ということになります。
時系列の特徴量の名前の規則はこちらのドキュメントに詳細がありますので、ご参考にしてください。
https://docs.datarobot.com/ja/docs/modeling/reference/data-detail/feature-eng.html
@mizuki さん
ご返信誠にありがとうございます。
ご返信いただいた、
「前の月の最後の平日の1ヶ月前の値をそのまま使っている」(1ヶ月前の値が欠損していれば2ヶ月前の値になります。)
なのですが、
この度モデル化したものが、
となり、予測時から90日先以降の値を予測しています。
例:
10月末と11月いっぱいのまで値(35日)を使って、12月1日から+90日の、3月1日から3月30日までを予測する
といった様子です。
この場合の 3月1日の(特徴量A) (match weekday from end of the month) (naive 1 month seasonal value)は、派生ウィンド内11月の最後の平日の値、という認識でよろしいでしょうか?
何度も申し訳ありませんが、ご確認の程よろしくお願いいたします。
10月末と11月いっぱいのまで値(35日)を使って、12月1日から+90日の、3月1日から3月30日までを予測する
まず、この状況ですと2ヶ月分のデータを使って3ヶ月先を予測することになり、学習データの行の数が不十分となることが予想されます。
特徴量派生ウィンドウを-35~0日、予測ウィンドウを90~120日とされた場合、最低でも(120-(-35))*2=310日の学習データが必要となりますので、それを前提として回答をいたします。
なお、310日以上の1/1~11/30のデータを使用した場合、デフォルトでは学習データの検定の長さとギャップの長さが設定されます。(高度なオプション内のバックテストを設定をご確認ください)
この場合の 3月1日の(特徴量A) (match weekday from end of the month) (naive 1 month seasonal value)は、派生ウィンド内11月の最後の平日の値、という認識でよろしいでしょうか?
naive 1month seasonal value は1ヶ月前の値、match weekday from end of the month は月末からカウントした平日の値となるため、バックテストで11月最後の平日の予測をする際には10月最後の平日の(特徴量A) の値が特徴量として入っています。
同様に、11月の最後から二番目の平日の予測をする際には10月の最後から二番目の平日の(特徴量A) の値が入るということになります。