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

Non-stationary Transformers: Rethinking the Stationarity in Time Series Forecasting [paper] とは、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 版に基づく。

参考文献

paper
Yong Liu, Haixu Wu, Jianmin Wang, Mingsheng Long. Non-stationary Transformers: Exploring the Stationarity in Time Series Forecasting. Advances in Neural Information Processing Systems (NeurIPS), vol. 35, pp. 9881−9893, 2022.
revin
Yong Liu, Haixu Wu, Jianmin Wang, Mingsheng Long. Non-stationary Transformers: Exploring the Stationarity in Time Series Forecasting. Advances in Neural Information Processing Systems (NeurIPS), vol. 35, pp. 9881−9893, 2022.
こちらは 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

Series Stationarization を適用すると原系列が 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$ に切り離すことに意味がある。