- [2205.13504] Are Transformers Effective for Time Series Forecasting?(2023年6月17日参照).
- AAAI 2023 で発表された研究のプレプリント版である。Autoformer や FEDformer のような時系列長期予測向け Transformer モデルよりも、もっと単純なモデル(DLinear)の方が時系列長期予測性能がよいことを示している。
- Yes, Transformers are Effective for Time Series Forecasting (+ Autoformer)(2023年6月17日参照).
- タイトルの通り [1] への反論のような位置付けの Hugging Face のブログ記事である。[1] と異なるタスク設定で検証した結果やはり Autoformer の方がよかったどころかそれより vanilla Transformer がよかったことを示している。結びに大規模時系列データセットの必要性を訴えている。Hugging Face のライブラリで Autoformer を提供していることもあってか Autoformer の説明が詳しい。なお [2] 中に使用方法があるように DLinear
も Hugging Face から提供されているは GluonTS から提供されている。 - Autoformer: Decomposition Transformers with Auto-Correlation for Long-Term Series Forecasting | OpenReview(2023年6月17日参照).
- NeurIPS 2021 で発表された Transformer を時系列長期予測用に改修した研究である。
- FEDformer: Frequency Enhanced Decomposed Transformer for Long-term Series Forecasting(2023年6月17日参照).
- ICML 2022 で発表された Transformer を時系列長期予測用に改修した研究である。
- Crossformer: Transformer Utilizing Cross-Dimension Dependency for Multivariate Time Series Forecasting | OpenReview(2023年6月17日参照).
- ICLR 2023 で発表された Transformer を多変量時系列長期予測用に改修した研究である。このブログ記事の中で触られなかったがこれも Transformer ベース時系列モデルなので [1] の矛先のはずである。もっとも、これも Transformer を用いることは前提に予測精度を高めたという論調にはみえる。なお、この研究はタイトル通り時刻間だけでなく成分間の依存関係にもアテンションを適用しており、[2] で多変量時系列の場合の予測の困難さに立ち向かう研究として言及されていた。
まとめ
|
ときに副部長、先日以下のようなタイトルの研究をみつけたんです。
[1] [2205.13504] Are Transformers Effective for Time Series Forecasting?
上記は arXiv のリンクですが、調べると同名の研究が AAAI 2023 で発表されていました。AAAI 2023 の会議録はまだ公開されていないようなので arXiv を参照していますが。それで、上記のタイトルの問いかけが気になっていたんですが、なんと先ほどこれに Yes と回答する記事をみつけたんです。Hugging Face のブログで、公開日がちょうど昨日でした。
[2] Yes, Transformers are Effective for Time Series Forecasting (+ Autoformer)
疑問を投げたら誰かが回答してくれるなんて心温まるインターネットですね。いや、[1] は反語表現だから [2] は心温まる回答どころか煽りに近い気もするけど……。
そうなんですか? どれどれ、[1] のアブストラストをみると……趣意は以下のようなものですね。
「近年 Transformer ベースのモデルで時系列長期予測精度を高める路線の研究が盛んであるが、Transformer は単語から単語へのアテンションを学びこそすれ、時間ステップ間の依存性は直接学ばないので時系列予測には不利なはずである。実際、シンプルな一層のモデル(DLinear)の性能が Transformer ベース時系列長期予測モデルの性能を凌駕した。」
ええっ!? ということは、Autoformer [3] さんや FEDformer [4] さんは私を騙していたんですか……? 詐欺罪と器物損壊罪で訴えます……。何を損壊されたんだ……。というか、Autoformer も FEDformer も少なくともアブストラクトは「Transformer の時系列長期予測精度を高めるには?」といったもので、Transformer でないモデルへの優位性を主張するものじゃないし……実際、Autoformer は Transformer ベースのモデルを除いては LSTNet、LSTM、TCN としか比較していないし、FEDformer にいたっては Transformer ベースのモデルとしか比較していないしね。部長を騙したのではないよ。もちろん、Transformer 自体が時系列予測に向かないならなぜ Transformer の改良を盛んにするのかという [1] の突っ込みはもっともだけれど、[1] も理論面から Transformer は時系列予測に向かないといっているわけではないよね、経験的にいくつかのベンチマークデータでセルフアテンションしないモデルの優位性を示しているだけで。理論の裏付けがない以上、ことさら Transformer が時系列予測に有効ではないと言い切れないはずだよ。あと、[1] の Figure3 の (a) (c) あたりをみると、これはただの印象だけど DLinear は「どんなモデルであったって読み違えそうな状況下でたまたま控えめな予測をしたので平均誤差を膨らませずに済んだ」って雰囲気もしないでもないんだよね。こういう状況下では LSTM の忘却ゲートや GRU のリセットゲートが役に立ちそうな気もするけど。
それで、[1] の 4 節をみると、その DLinear は Autoformer と FEDformer の成分分解スキームはそのまま利用しているんだね。DLinear はトレンド成分と季節成分に分解した後に1層の線形レイヤーを適用して再度足し合わせるだけのものらしい。Autoformer は Transformer が時系列のパターンを学習しやすいように長期トレンドを除去したわけだけど、長期トレンドを除去したら Transformer じゃなくたって学習しやすかったということだったのかな? もし Autoformer が成分分解スキーム単品の有効性を検証していたら [1] の結果はそこでわかっていたかもしれないね。ただ Transformer ベースでないモデルに適用する想定ではなかったんだろうけどね。
な、なるほど……では、その [1] への返歌である [2] はどのように主張しているのでしょうか。
TL;DR の箇所には、「DLinear は、有利な場合もあるが、共変量(Ex. Traffic データにおける日付時刻)を取り込みづらい」とある。こちらも特定のタスクにおける実験結果からそういっているだけのはずだけど。記事の最下部のほうに、DLinear が Traffic データにおいて週末の交通量予測を外している(週末かどうかを取り込めないため)グラフがあるよ。ただこれもこれで DLinear に結構不利な比較に感じられるけど。
ん? [1] では Traffic データでも DLinear が勝ちという結果ではなかったのでしたっけ?? [2] の記事が検証し直したら異なる結果になったということですか??
いや、[2] では Traffic データ中の 862 系列をそれぞれ単変量時系列として1つの共通のモデルを訓練しているからタスクが異なっている。さらに、予測ホライズンと評価指標も違っている。[1] の評価指標は「96~720 期先までの MSE および MAE」だけど、[2] の評価指標は「24期先までの MASE」になっている。
MASE?
Mean Absolute Scaled Error の略で、[2] からリンクがあるけど以下に定義があるね。
MASE - a Hugging Face Space by evaluate-metric
分母は訓練データから計算するんだね。例えば日次データであって完全に7日周期のデータだったら分母がゼロになる。完全に周期的なデータに近いほど評価が厳しくなる。他方、前週の同じ曜日の値とずれやすいなら分母はそれだけ大きくなり MASE による評価は甘くなる。これ、MASE が 1 より大きくなるようなら「前週の同じ曜日の値をそのまま提示していた方がまだまし」ってことになるね。そういうことがわかる指標みたいだ。他方、MSE では自明でない予測ができているのかわからないし、さらに予測ホライズンが長いとなおさら「週末のピーク時間帯を予測できているのか」とかを反映しないよね。Traffic は毎時データだから 96~720 期先って 4~30 日先で、任意の時点から 4~30 日先までの中に週末のピーク時間帯が占める割合って小さいはずで、週末のピーク時間帯の予測ができなくても誤差を抑えられるのかもしれない。平日の予測に特化した方がよいまであるかもしれないし。実用的にはありがたくない誤差の縮め方をしている可能性が DLinear だけでなく Autoformer や FEDformer にもあるかもしれない。というか [2] の記事の Conclusion にある表では vanilla Transformer が Autoformer に勝っているし。
ええ……やっぱり Autoformer さんは私を騙していたんじゃないですか……。
ただ [2] は指標以前にタスク自体を変えていることもあるからオリジナルのタスクで 24 期先予測を MASE で評価しても vanilla Transformer が勝るかはわからないけど。というか [2] の結びで大規模時系列データセットの必要性を訴えているところをみるに、「862 変量時系列を単変量時系列とみなして色々なパターンを含む大規模データにしたので [1] の研究とは結果が変わった」って暗にいいたいのかな……てっきり予測ホライズンと評価指標を変えたから結果が変わったのだと初見で思い込んでしまったけど。どちらの寄与が大きいのかな?