Balanced Graph Structure Learning for MTS Forecasting (2022)Permalink
ContentsPermalink
- Abstract
- Introduction
- Graph Structure Learning
- Methodology
- Graph Structure Learning module
- MGN
- SSU
- Temporal Forecasting module
- Graph Selection
- DCRNN
- Graph Structure Learning module
0. AbstractPermalink
Propose
-
without the need of pre-defined graphs
-
balance the trade-off between efficiency & flexibility
BGSLF (Baalnced Graph Structure Learning for MTS Forecasting)Permalink
Modules
- (1) MGN (Multi-Graph Generation Network)
- (2) Graph Selection Module
- (1) & (2) → to balance the trade-off
- (3) SSU (Smooth Sparse Unit)
- to design sparse graph structure
1. IntroductionPermalink
ContributionsPermalink
-
Propose BGSLF
- aim of learning smooth & sparse dependencies between variables
- can generate a specified number of graphs
- then, can select BEST graph per input
-
Graph Structure Learning module
-
incorporate domain knowledge
→ save lots of parameters
-
-
SSU (Smooth Sparse Unit)
- to infer continuous & sparse dependencies
- no need of non-differentiable functions
- ex) Top-K, Regularization
2. Graph Stucture LearningPermalink
Recent works
- consider spatial & temporal SEPERATELY
GWN (Graph Wave Net)
- use adaptive A
STAWnet
-
attention to get self-learned node embedding
( to capture spatial embedding )
GWN & STAWnet : use Dilated Causal Convolution
MTGNN
- learn 2 embedding vectors per node
- then obtain A
GDN
- node embedding per node
- then build kNN graph
AGCRN
- 2 adaptive modules for enhancing GCN
- infer dynamic spatial relations
3. MethodologyPermalink
(1) Graph Structure Learning modulePermalink
a) MGN (Multi-Graph Generation Network)Permalink
- extract dynamic spatial relationships
- use difference operation
Diff(X:,1,Xi:,2,Xi,3,⋯,Xi,T)={X:,2−X:,1,X:,3−Xi,2,⋯,Xi,T−Xi,T−1}≜{ˆX:,1,ˆXi,2,…,ˆX:,T−1}.
Considering periodicity of TS, set period P to segment MTS
→ S=⌊Ttrain /P⌋
- then, concatenate them!
- O=[ˆX1,ˆX2……ˆXS]∈RS×N×D×P.
Then, use 2d-conv & FC layer to obtain R graphs
→ These constitute the graph set A.
b) SSU (Smooth Sparse Unit)Permalink
- to learn continuous & sparse graphs
2 function : f & φ
- [smooth function 1] f:R→R
- f(x)={e−1x(x>0)0(x≤0).
- [smooth function 2] φ:R→[0,1]
- φ(x)=αf(x)αf(x)+f(1−x)(α∈R+).
- φ(x)≡ 0 for x≤0
- φ(x)∈(0,1) for 0<x<1
- φ(x)≡1 for x≥1.
- φ(x)=αf(x)αf(x)+f(1−x)(α∈R+).
Output adjacency matrix : A=αf(G)αf(G)+f(1−G)
- G∈RN×N : output of FC layer in (a)
(2) Temporal Forecasting modulePermalink
a) Graph SelectionPermalink
- from R graphs, select the best one ( finding optimal graph structure )
- for each TS Xin ∈RB×Tin×N×D,
- select the best graph!
Optimal graph : A=argmaxAi∈Acos⟨XTX,Ai⟩
- cos⟨X,Y⟩=∑i,jxijyij√∑i,jx2ij⋅∑i,jy2ij,
- X=∑Bi=1∑Dj=1Xin [i,:,:,j]∈RTin×N,