1 基礎概念
1.1 時系列データの定義
時系列データとは、時間の経過に伴って順序付けられた観測値の集合である。各データ点は等間隔または不等間隔の時間点に対応し、観測値間の時間的依存性が重要な特徴となる。典型的な例としては、日次株価、月次売上高、年次GDP、1時間ごとの気温などが挙げられる。
1.2 時系列の構成要素
時系列データは複数の構成要素に分解可能であり、これらを理解することが適切なモデル選択の基礎となる。
1.2.1 トレンド
トレンドは時系列データの長期的な上昇または下降の傾向を表す。線形トレンド(直線的な増減)と非線形トレンド(曲線的な増減)に分類される。例えば、人口増加に伴う電力量消費の長期的な上昇はトレンドの一例である。
1.2.2 季節性
季節性は固定された既知の周期(例:月、四半期、曜日)で繰り返されるパターンを指す。季節性は期間が固定されており、例えばアイスクリームの月間売上高は夏にピークを迎え冬に低下するという規則的な変動を示す。
1.2.3 周期性
周期性は季節性と異なり、固定されていない変動期間を持つ循環パターンである。景気循環(好況と不況の繰り返し)は典型的な例で、期間が数年にわたることが多く、正確な周期は事前に特定できない。
1.2.4 ノイズ(残差)
ノイズはトレンド、季節性、周期性を除去した後に残る不規則な変動成分である。ランダムな変動や測定誤差など、モデルで説明できない部分を表し、理想的にはホワイトノイズ(平均0、一定分散の無相関系列)となる。
1.3 定常性と非定常性
定常性とは、時系列の統計的性質(平均、分散、自己共分散)が時間を通じて一定である特性を指す。弱定常性は平均と自己共分散が時間に依存しないことを要求する。非定常性はこれらの性質が時間変化する状態であり、経済指標(上昇トレンドを持つGDPなど)は典型的な非定常系列である。多くの予測モデルは定常性を前提とするため、階差(差分)を取るなどの変換で非定常系列を定常化する。
1.4 自己相関と偏自己相関
自己相関(ACF)は、時系列の現在値と過去の値(ラグ)との間の相関関係を測定する関数である。偏自己相関(PACF)は、中間のラグの影響を除去した後の、特定のラグにおける純粋な相関を示す。ACFとPACFのプロットは、ARIMAモデルの次数決定や季節性の検出に不可欠な道具であり、例えばAR(1)過程ではACFが指数的に減衰し、PACFはラグ1でのみ有意な値を持つ。
2 古典的予測手法
2.1 移動平均法
移動平均法は、直近の一定期間の観測値の平均を次の期間の予測値とする単純な手法である。単純移動平均(SMA)は全ての観測値に等しい重みを与え、加重移動平均(WMA)は最近の値に大きな重みを割り当てる。平滑化効果により短期的な変動を除去できるが、予測値は過去の値に遅れるという特性を持つ。
2.2 指数平滑法
2.2.1 単純指数平滑法
単純指数平滑法は、過去の観測値に指数関数的に減少する重みを付けて予測する手法である。平滑化パラメータα(0<α<1)により最近の値の影響度を調整し、αが大きいほど直近の値を重視する。トレンドや季節性がないデータに適している。
2.2.2 ホルト線形トレンド法
ホルト線形トレンド法は、単純指数平滑法を拡張し、トレンド成分を明示的にモデル化する。レベル(水準)とトレンド(傾き)の二つの平滑化パラメータを用いて、線形トレンドを持つ非季節性データを予測する。トレンドの変化に適応できる。
2.2.3 ホルト・ウィンターズ法
ホルト・ウィンターズ法は、ホルト法に季節成分を追加した手法である。加法モデル(季節変動の振幅が一定)と乗法モデル(振幅がレベルに比例)の二種類があり、レベル、トレンド、季節性の三つの平滑化パラメータを使用する。月次売上予測など、トレンドと季節性を併せ持つデータに有効である。
2.3 ARIMAモデル
ARIMA(自己回帰和分移動平均)モデルは、非定常系列を階差によって定常化した後、自己回帰と移動平均を組み合わせた広く使われる線形モデルである。ARIMA(p,d,q)の表記で、pは自己回帰次数、dは階差の回数、qは移動平均次数を示す。
2.3.1 自己回帰(AR)成分
AR成分は、現在の値を過去の値の線形結合で表現するモデルである。AR(p)モデルはp期前までの値を説明変数とし、過去のパターンが将来に持続する性質(慣性)を捉える。例えば、AR(1)モデルは直前の値のみから現在の値を予測する。
2.3.2 移動平均(MA)成分
MA成分は、現在の値を過去の誤差項(予測誤差)の線形結合で表現するモデルである。MA(q)モデルはq期前までの誤差項を使用し、突発的なショックの影響が徐々に減衰するプロセス(例:在庫調整の効果)をモデル化する。
2.3.3 階差(I)と季節性ARIMA(SARIMA)
階差操作は、非定常系列を定常化するために隣接する観測値の差を取る処理である。1階差(d=1)は線形トレンドを除去し、2階差(d=2)は曲線的なトレンドに対応する。SARIMA(季節性ARIMA)モデルはARIMAに季節成分を追加し、パラメータ(p,d,q)(P,D,Q,s)で表記される。ここでsは季節周期(例:s=12の月次データ)、P,D,Qは季節成分の次数である。
2.4 状態空間モデルとカルマンフィルター
状態空間モデルは、観測方程式(観測値と状態の関係)と状態遷移方程式(状態の時間発展)から構成される確率モデルである。カルマンフィルターは、この状態空間モデルに対して逐次的に状態推定と予測を行う最適アルゴリズムである。ノイズを含む観測から真の状態を推定し、欠損値の補完やリアルタイム予測に活用される。例えば、GPS信号と加速度計データを統合する位置推定システムで応用される。
3 機械学習による予測手法
3.1 教師あり学習への変換
時系列予測を教師あり学習問題として扱う手法では、過去の値(ラグ特徴量)を説明変数、予測対象の未来値を目的変数としてデータを再構成する。例えば、t-2、t-1の値からtの値を予測するために、各時刻のデータを(入力: [y_{t-2}, y_{t-1}], 出力: y_t)の形式に変換する。この変換により、従来の教師あり学習モデル(ランダムフォレスト、サポートベクターマシンなど)を適用可能となる。
3.2 リカレントニューラルネットワーク(RNN)
RNNは系列データを逐次的に処理するニューラルネットワークであり、隠れ状態を通じて過去の情報を保持する。各タイムステップで入力と前の隠れ状態から新しい隠れ状態を計算し、時系列の時間的依存性を学習する。しかし、長期依存性の学習において勾配消失問題に直面するため、改良型が主流となっている。
3.2.1 LSTM(長短期記憶)
LSTMは、忘却ゲート、入力ゲート、出力ゲートの三つのゲート機構を持ち、セル状態を通じて長期記憶を保持する。忘却ゲートは不要な過去情報を破棄し、入力ゲートは新しい情報をセル状態に追加し、出力ゲートはセル状態から出力を生成する。これにより、数十〜数百ステップ先の長期依存関係を効果的に学習でき、株価予測や需要予測で高い性能を示す。
3.2.2 GRU(ゲート付き回帰型ユニット)
GRUはLSTMを簡略化したアーキテクチャであり、二つのゲート(リセットゲートと更新ゲート)を持つ。リセットゲートは過去の情報をどの程度無視するか、更新ゲートは過去の状態と新しい情報の混合比率を決定する。パラメータ数がLSTMより少ないため計算効率が高く、十分なデータ量がある場合にはLSTMと同等の性能を発揮する。
3.3 畳み込みニューラルネットワーク(CNN)を用いた方法
CNNは主に画像処理で発展したが、時系列予測にも応用される。一次元畳み込み層を用いて時系列データから局所的なパターン(例:短期の上昇トレンドや周期的な波形)を抽出し、これらを階層的に組み合わせて予測を行う。TCN(時間畳み込みネットワーク)は、拡張畳み込みを用いて受容野を拡大し、長期依存性を捉える。計算が並列化可能で、RNNよりも学習が高速である利点がある。
3.4 Transformerと自己注意機構
Transformerは自己注意機構を核として、系列全体の任意の位置間の依存関係を直接計算するアーキテクチャである。時系列予測では、マルチヘッド注意機構が異なる時間スケールのパターンを同時に捉えられる。しかし、計算コストが系列長の二乗に比例するため、長系列には注意が必要である。
3.4.1 Informer
Informerは長系列時系列予測(LSTF)向けに設計されたTransformer派生モデルである。ProbSparse自己注意機構を採用し、重要度の高いクエリのみに注意を集中させることで計算複雑性を低減する。また、自己注意の蒸留操作により階層的に系列長を短縮し、メモリ消費と計算時間を大幅に削減する。
3.4.2 PatchTST
PatchTSTは、時系列をパッチ(連続する部分系列)に分割してTransformerに入力する手法である。各パッチを一つのトークンとして扱うことで、個々の時間点ではなく局所的なパターンに焦点を当てる。チャネル独立(各変数を別々に処理)の設計により、多変量時系列でも効果的に学習でき、従来のTransformer系モデルよりも優れた予測性能を示す。
3.5 勾配ブースティング法(XGBoost, LightGBM)
勾配ブースティング法は、決定木を逐次的に学習し、前の木の誤差を補正するアンサンブル手法である。XGBoostは正則化項の導入と並列計算による高速化が特徴で、LightGBMはGOSS(勾配ベースの片側サンプリング)とEFB(排他的特徴バンドル)により大規模データでも高速な学習を実現する。これらの手法は、手動で作成したラグ特徴量や移動平均などの派生特徴量と組み合わせて、特徴量工学が重要となる時系列タスクで高い性能を発揮する。
4 予測の評価と運用
4.1 予測精度の指標
4.1.1 RMSE(平均二乗誤差平方根)
RMSEは予測誤差の二乗の平均の平方根であり、次元が元のデータと一致するため解釈が容易である。大きな誤差に敏感であり、外れ値の影響を強く受ける特性を持つ。同一のデータセット内でのモデル比較に適している。
4.1.2 MAE(平均絶対誤差)
MAEは予測誤差の絶対値の平均であり、RMSEと比較して外れ値の影響を受けにくい。実際のビジネス指標(在庫不足の絶対数など)との整合性が高く、直感的な解釈が可能である。
4.1.3 MAPE(平均絶対百分率誤差)
MAPEは予測誤差を実際の値で割った百分率の平均であり、異なるスケールの系列間での比較を可能にする。ただし、実際の値がゼロまたはゼロに近い場合に無限大または異常値を示すため、そのようなデータには注意が必要である。
4.2 クロスバリデーションとウォークフォワード法
時系列データでは、ランダムな分割が時間的順序を破壊するため、標準的なクロスバリデーションは使用できない。ウォークフォワード法は、固定された訓練期間でモデルを学習し、直近の一定期間を検証期間として予測精度を評価した後、訓練期間を前方にスライドさせて繰り返す手法である。これにより、現実の予測運用に近い評価が可能となり、過剰適合の検出に有効である。
4.3 実務における諸注意
4.3.1 データの前処理と欠損値処理
時系列データの前処理では、外れ値の検出と処理(中央値や前後の値による置換)、欠損値の補完(直線補間、前回値補完、モデルベースの補完)が重要である。欠損値が多い場合、補完方法が予測精度に大きな影響を与えるため、適切な手法の選択と検証が必要である。また、異常値はトレンドや季節性を歪めるため、ドメイン知識に基づいた対応が求められる。
4.3.2 予測の不確実性の定量化
点推定(単一の予測値)だけでなく、予測区間(例:80%信頼区間)や分布の提供が実務的には重要である。ブートストラップ法、ベイズモデリング、分位点回帰(例:分位点LSTM)などを用いて不確実性を定量化し、意思決定のリスク評価に活用する。特に在庫管理では、安全在庫量の算出に予測の不確実性情報が不可欠である。
4.3.3 モデルの更新と再学習戦略
時系列のパターンは経時的に変化するため(概念ドリフト)、定期的なモデル更新が必要である。オンライン学習(ストリーミングデータに逐次適応)とバッチ再学習(一定期間ごとに全データで再学習)の二つの戦略がある。再学習の頻度は、データの変化速度と計算コストのバランスで決定し、例えば季節性の強いデータでは四半期ごとの更新が適切な場合がある。また、予測誤差の監視(ドリフト検出)により、自動的にモデル更新をトリガーする仕組みの構築が推奨される。