Non-stationary Transformers: Rethinking the Stationarity in Time Series Forecasting

Non-stationary Transformers: Rethinking the Stationarity in Time Series Forecasting [1] とは、Transformer を非定常な時系列の予測に対応させるべく、Transformer に下記 2 点の改修("Series Stationarization", "De-stationary Attention")をした研究である。

  1. Transformer を適用させる前後に正規化・逆正規化を設置する(これによって、プレ処理で定常時系列にしておく必要がなくなり、また、スケールファクターを内部で活用できる)。
  2. 正規化時のスケールファクターに応じてセルフアテンションの重みを調整する。
この提案モデル Non-stationary Transformers は、時系列予測のベンチマークデータ(Electricity, ETT, Exchange, ILI, Traffic, Weather 等)で、Transformer, Informer, Reformer などの既存モデルに対して MSE を大幅に(47~49%)削減した。

なお、本研究は NeurIPS 2022 accepted papers にあるので NeurIPS 2022 で発表されるはずであるが、以下の記述は 2022年9月30日時点の arXiv 版に基づく。


参考文献

  1. Yong Liu, Haixu Wu, Jianmin Wang, Mingsheng Long. Non-stationary Transformers: Rethinking the Stationarity in Time Series Forecasting.[arXiv]
    • Non-stationary Transformers の原論文である。
  2. Taesung Kim, Jinhee Kim, Yunwon Tae, Cheonbok Park, Jang-Ho Choi, Jaegul Choo. Reversible Instance Normalization for Accurate Time-Series Forecasting against Distribution Shift. in ICLR 2022.[OpenRevew.net]
    • ICLR 2022 で発表された研究であり、Non-stationary Transformers と趣旨が同じで、非定常時系列に対処するためにやはりスケールファクターを差し引いて差し戻す枠組みである。かつ、スケールファクターを差し引いた後に訓練可能なスケールファクターでスケールした系列を学習することが特徴である(RevIN: 可逆な2段階正規化)。これはセルフアテンションに何かするものではないので、系列モデルであれば何にでも適用できる枠組みである。Non-stationary Transformers は RevIN + Transformer に対して優位性があることを示している。

提案モデル Non-stationary Transformers

Transformer は遠く離れた過去の値への依存性も学習できる点が自然言語のみならず時系列の予測にも有利だが、データの分布の平均 and/or 分散が時間変化していくような非定常な時系列の予測には弱い[注釈1]。このような問題に対処する常套手段として、プレ処理(今回は正規化)で予め系列を定常にしておくことが多いが、これは原系列の情報を損ね、本来は異なる状況を同一視してしまうことにつながる。そうなると、爆発的な変化などの予測が結局難しくなる。

予測性能が損なわれないようにしたいが、非定常系列もよく予測したい。そこで、Transformer に下記 2 点の改修をする。

Series Stationarization

Transfomrer の適用前後に以下の処理を行うことで、Transformer を通る際は定常な系列にする。
  • Transformer の適用前に、$S \times C$ 次元の入力データを平均 0、分散 1 になるように変換する($S$ は系列長、$C$ は変数の数)。 $x_i' = (x_i - \mu_x) / \sigma_x$
  • Transformer の適用後に逆変換する。 $\hat{y}_i' = \sigma_x (y_i' - \mu_x)$

De-stationary Attention

定常化された系列にセルフアテンションを計算することで Outlier 領域に外れることは回避できるが、これでは結局原系列の非定常性を予測に反映できない。そこで、セルフアテンションの重みを以下のように修正することで原系列に対するセルフアテンションを近似することを試みる。ただし、係数 $\tau = \exp \bigl( {\rm MLP}(\sigma_x, x) \bigr)$ とバイアス $\Delta = {\rm MLP}(\mu_x, x)$ はスケールファクターから学習する。
$$ {\rm Attn}(Q', K', V', \tau, \Delta) = {\rm Softmax} \left( \frac{\tau Q' K' ^\top + 1 \Delta^\top }{\sqrt{d_k}} \right) V' $$
なお、上式の形の係数とバイアスで近似することの正当性は、原系列 $x$ をそのまま $Q, K$ に変換して計算したときのセルフアテンションを、定常化された $x'$ に対する $Q', K'$ の式でかくと (5) 式になることに起因する[注釈2]


検証実験

時系列予測のベンチマークデータである Electricity, ETT, Exchange, ILI, Traffic, Weather の予測タスクで既存モデルと比較している。Table 1 には各データが非定常であることを示すために各データの ADF 検定統計量が併記されている。Table 2, 3 には既存の時系列予測モデルとの比較がある。Table 4 には Transformer との比較があり、Series Stationarization + De-stationary Attention の有効性を実証的に示している。Table 5 では RevIN + Transformer に対する優位性も示すとともに、Series Stationarization だけではやはり不十分で、De-stationary Attention まで適用することで予測性能が向上することを示している。


注釈

  1. 自然言語などに比べ時系列は Outlier 領域に出て行きやすいということを含意していると思われる。系列モデルであっても CNN や RNN は Transformer と違って相対位置間の関連を学習するので値のレンジが外れたときにも相対位置間の関連がある程度保たれていれば予測が破壊されにくいのではないかと思われる。
  2. (5) 式は近似的にではなく厳密に成り立っている式なので、律儀にこれを学習すると Outlier 問題から解放されないはずである。定常化された系列間の依存性を $Q', K'$ が学習し、非定常性の分の調整を $\tau, \Delta$ に切り離すことに意味がある。