論文読みメモ: Think Globally, Act Locally: A Deep Neural Network Approach to High-Dimensional Time Series Forecasting(その1)

以下の論文を読みます。

Rajat Sen, Hsiang-Fu Yu, Inderjit S. Dhillon. Think Globally, Act Locally: A Deep Neural Network Approach to High-Dimensional Time Series Forecasting. In Advances in Neural Information Processing Systems 32, 2019.
https://papers.nips.cc/paper/8730-think-globally-act-locally-a-deep-neural-network-approach-to-high-dimensional-time-series-forecasting
※ キャラクターは架空のものです。解釈の誤りは筆者に帰属します。お気付きの点がありましたらご指摘ください。
次回:まだ
f:id:cookie-box:20200101101603p:plain:w60

近年の時系列データには、一系列が一個人に対応し、何千もの系列が互いに相関するようなものがありうるとありますね。なのでそれらの系列からグローバルなパターンを搾り取った上で、個別データに対するキャリブレーションをするとよい予測ができるのではないかといっています。そこでこの論文で提案するモデル、DeepGLO は「グローバルな」Matrix Factorizartion モデルと、個別の系列の性質及びそれらの相関を捉えるネットワークを組み合わせるということです。


冒頭で時系列予測は様々な分野で重要な課題だといって挙げられている例は、1番上のは本論文と同じ Amazon の方々の論文で、2番目は割と古いですね。3番目も結構古い本です。最近のデータセットは何千もの相互に相関する時系列  Y \in \mathbb{R}^{n \times t} が含まれているということですが、ECサイトでいう「各カテゴリの需要」や「各商品の需要」というのを指しているのでしょうか。需要が高まりそうな商品については契約している業者に在庫の補充を促したりするのですかね?
それで、時系列予測は伝統的には個々の系列や少数の系列たちに対して AR、ARIMA、指数平滑法、Box-Jenkins法、状態空間モデルを適用する方法がとられてきたとありますね。このうち、状態空間モデルについては複数の系列を一緒に取り扱えますよね。しかし、膨大な数の系列にはスケールしないということですか。まあそんな気はしますが…。そして、すべての系列が共通にもっているパターンを上手く利用できないともあります。これは状態空間モデルでもそうなんでしょうか。よくわかりません。それらに対してニューラルネット手法として RNN、LSTM、WaveNet の話があって、これらは大規模な時系列も学習できるものの、2つの欠点があると指摘していますね。
  • 個々の時系列の規模が異なると上手くいかない。例えば個々の製品の需要予測の場合、人気商品の需要の規模はニッチな商品のそれよりも大きい。このような場合、上記のようなニューラルネット手法では正規化が必要になる。しかし、正規化のパラメータ調整は難しい。
  • モデルは予測時に個別のデータの過去データしか利用していない。しかし、データはすべての時系列にわたるグローバルなパターンをもっている。
…グローバルなパターンを活用しようとしたモデルについてこう簡単にかかれていますが、具体的にどのようにグローバルなパターンを捉えているのですかね?

f:id:cookie-box:20200101101614p:plain:w60

1つ目の方は論文内の図がわかりやすいけど以下のような感じだね。まず2次元畳込みをして、その出力を普通にGRUする層と、スキップしてGRUする層もつくって(例えば1時間毎といった周期性があるデータなら1時間スキップして1時間毎のレベルの変化を学習するみたいな)、それらの出力を全結合してニューラルネットの予測結果にする。それを、通常のARモデルの結果と足し合わせるみたい。

f:id:cookie-box:20200208002515p:plain:w480

2つ目はスケーラブルで欠損値があっても大丈夫らしい。Wal-mart E-commerce datasets でよい予測ができたと。

もう少しつづく