3つの注意点
これまでは時系列分析の便利な部分ばかりを述べてきたが、注意しないといけない部分もいくつかある。まずは、データ期間の長さである。トレンドや周期性を適切に評価するためには、ある程度長期間のデータがとれていないと難しい。たとえば、ある短期間で見るとトレンドが大きく変化していても、長期間で見ると実はほぼ横ばいだった、という可能性もあるし、もちろんその逆もあり得る。また周期性を求める際は、同じ時期のデータが最低2つ以上ないと計算することができない。本稿で取り上げたような月次データの場合は、2年以上のデータが必要となる(週次・日次も同様)。
次に、イベントによる影響である。たとえばチョコレートは、毎年バレンタインデー近くになると需要が急激に増えるが、この「イベント効果」による変動があまりにも大きいとモデルの当てはまりや予測性能が悪くなってしまう。だが、「この時期にイベントが起こる」というドメイン知識がある場合は、ダミー変数を設定するなどの方法でその知識を反映させ、モデルを改善することができる。
最後に、過学習である。これは、モデルが手元にあるデータに過剰に適合し、手元にない未知のデータに対する予測性能が下がってしまう問題である。本稿の時系列分析ではデータを「トレンド」「周期性」で分解したが、トレンドが頻繁に変化していたり、周期性の波があまりにも激しかったりする場合、この過学習が起きている可能性が高い。これを避けるためには、モデルパラメーターのチューニングや、交差検定と言われるような手続きが必要になる。
このようにいくつか注意点はあるが、時系列分析はとても魅力的な手法である。近年では「AutoML」と呼ばれる、プログラムを書かずともGUIで分析を実行できるツールが複数出てきており、ハードルはここ数年で下がってきている。たとえば、aiforcesolutions社の「AMATERASRAY」には、モデル作成や予測はもちろん、上記のイベント設定や過学習を避けるための機能も搭載されている。みなさんも、時系列分析を使ったデータの評価や予測を試してみてはいかがだろうか。