반응형
Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

mayreel 님의 블로그

CROSSFORMER: Transformer Utilizing Cross-dimension Dependency for Multivariate Time Series Forecasting(1/2) 본문

Paper

CROSSFORMER: Transformer Utilizing Cross-dimension Dependency for Multivariate Time Series Forecasting(1/2)

mayreel 2024. 6. 18. 21:50
반응형

ABSTRACT

  • 다변량 시계열(MTS)을 예측하는 Transformer 기반 모델들은 long-term dependency에 뛰어난 성능을 가지지만, temporal dependency에 초점을 두고 있어서 여러 차원(변수) 간의 의존성을 무시하는 경향이 있음
  • 이러한 문제점을 해결하기 위해서 차원 간 의존성을 활용하는 Transformer 기반 모델인 Crossformer를 제안
  • 해당 모델에서는 Dimension-Segment-Wise(DSW) embedding을 통해 입력된 MTS를 2D Vector array에 embedding하여 시간과 차원(변수) 사이의 정보를 보존
  • 이후, 시간과 차원 간의 dependency를 효율적으로 가저오기 위해 Two-Stage Attention(TSA) layer를 사용
  • 해당 모델을 실험한 결과, 기존의 Transformer 기반 모델보다 효율적이고 성능이 좋았음

1. INTRODUCTION

  • 다변량 시계열(MTS): 여러 차원을 가지는 시계열로 각 차원은 특정 단변량 시계열(예: 날씨의 기후 특성)을 나타냄
  • 과거의 데이터를 기반으로 미래를 예측하는 것이 목적인 MTS는 날씨, 에너지, 금융 등 다양한 분야에서 활용
  • 그 중에서 Transformer 기반 모델이 long-term temporal dependency에 뛰어난 성능을 보여주고 가장 많이 활용
  • Transformer와 비교했을 때, 가장 큰 차이는 시간에 대한 dependency 이외에도 차원과 차원 간의 정보가 예측에 활용되는 것이 Crossformer의 특징
    • 예시: 기온을 예측할 때, 과거의 기온 데이터 이외에도 풍속도 예측에 활용
  • (a)에서 attention score map은 여러 개의 segment를 구성하고 data point간의 거리가 가까울 수록 비슷한 attention weight를 가짐
  • (b)처럼 Transformer 기반 모델은 모든 차원을 동시에 임베딩하여 시간 간의 dependency에서는 강점을 가지지만 차원 간의 dependency에서는 효율적이지 못함
  • 하지만, Crossformer(c)는 DSW 차원(변수) 간의 관계를 고려한 embedding 방법을 적용하여 시간과 차원 각각의 dependency에 효율적인 예측 가능
  • DSW embedding에서 각 차원(변수)의 시계열을 segment로 분할한 뒤, 다음 feature vector에 embedding하여 2D Vector array를 생성
  • 이후, 2D Vector array 간의 시간 및 차원 간의 dependency를 효율적으로 학습하기 위해 Two-Stage-Attention(TSA) layer를 활용
  • DSW embedding, TSA layer를 사용하여 예측을 위한 Hierarchical Encoder-Decoder(HED)를 설계
  • Encoder의 상위 layer는 하위 layer의 output을 병합
  • Decoder layer는 서로 다른 scale에서 예측값을 도출
  • 6개의 벤치마크로 실험한 결과, 다른 9개의 모델보다 Crossformer의 성능이 더 좋았음

2. RELATED WORKS

Multivariate Time Series Forecasting

  • time dependency를 잘 학습하지만, long-term dependency에 취약함
  • 다변량 시계열 예측 모델은 통계 기반 모델과 딥러닝 모델 2가지로 나뉨
  • 통계 모델
    • Vector Auto-Regressive(VAR) Model, Vector Auto-Regressive Moving Average(VARMA)
  • 딥러닝 모델
    • 데이터를 벡터의 시퀀스로 사용, CNN/RNN 등을 사용하여 temporal dependency 학습
    • TCN, DeepAR, CNN, RNN, MTGNN
  • 딥러닝이 발전하면서 일반적으로 통계 모델보다 딥러닝 모델의 성능이 우수함

Transformers for MTS Forecasting

  • time dependency의 복잡도를 줄일 수 있지만, 차원(변수) 간의 dependency를 무시하는 경향이 있음
  • LogTrans
    • 기존 트랜스포머보다 적은 메모리 사용하여 병목현상을 없앰
    • Transformer의 계산 복잡도를 $O(L^2)$에서 $O(L(log(L))^2)$로 줄여주는 LogSparse Transformer
  • Informer
    • 계단식 레이어 인풋을 절반으로 줄여 Self-Attention이 지배적인 Attention을 집중시키고, 효과적으로 매우 긴 인풋 시퀀스를 다룸
    • KL divergence를 사용하여 유사도를 측정하고, 시간 복잡도와 공간 복잡도가 $O(L(log(L)))$인 ProbSparse self-attention를 사용
  • Pyraformer
    • 피라미드 구조(pyramid structure)를 활용하여 시간 복잡도를 $O(L)$로 낮추고, 입력 시퀀스의 길이에 따라 유연하게 처리할 수 있는 Transformer 기반의 모델
    • 입력 시퀀스를 여러 다양한 해상도로 다운샘플링하고, 각 해상도에서의 정보를 합성하여 전체 시퀀스에 대한 표현을 생성
  • FEDformer
    • 복잡도: $O(L)$
    • 주파수 어텐션 블록과 분해 방식을 사용

Vision Transformers

  • 자연어 처리(NLP)에서 많이 사용되는 Transformer를 Vision Task에 적용
  • ViT
    • 기존의 제한적인 Attetion 메커니즘에서 벗어나, CNN구조 대부분을 Transformer로 대체
    • 이미지를 Patch로 분할 후 Sequence로 재배열하여 input으로 사용해 효율적인 계산 가능

3. METHODOLOGY

  • 다변량 시계열 예측의 목적
    • 과거의 정보 $x_{1:T} ∈ R^{T×D}$가 주어졌을 때, 시계열 $x_{T+1:T+τ} ∈ R^{τ×D}$의 값을 예측하는 것
      • $τ$: 미래 time step , $T$: 과거 time step, $D$: 차원의 개수
    • 차원 간의 dependency를 얻기 위해 Dimension-Segment-Wise(DSW) embedding을 사용하여 MTS를 embedding
    • embedded segment 간의 dependency를 얻기 위해 Two-Stage Attention(TSA) layer를 제안
    • 이후, 예측을 위한 정보를 종합하기 위해 DSW embedding과 TSA layer를 사용하여 hierarchical encoder-decoder(HED)를 설계

3-1 DIMENSION-SEGMENT-WISE EMBEDDING

  • 해당 논문의 접근 방법을 설명하기 위해서 MTS forecasting에 사용된 기존의 Transformer 기반 Model의 embedding method를 분석한 결과 이전의 Transformer 기반 Model은 주로 시간 간 dependency를 학습하지만, embedding 과정에서 차원 간 dependency는 고려되지 않기 때문에 예측이 제한적
  • Transformer 기반 MTS 예측 모델의 Self-attention score를 시각화한 Fig 1.(a)에서 서로 가까운 data point에서 Self-attention score가 비슷함
  • 위의 두 가지 근거로 embedded vector가 Fig. 1(b)와 같이 single step의 all dimension의 값을 나타내기보다 Fig. 1(c)와 같이 단일 차원의 series segment를 나타내야 함
  • 따라서 각 차원을 길이($L_{seg}$)의 segment로 나눈 뒤, embedding하는 Dimension-Segment-Wise (DSW) embedding을 제안
  • 단, $x_{i, d}^{(s)} \in R^{L_{seg}}$는 차원($d$)에서 $L_{seg}$의 길이를 가지는 $i$번째 segment이고, $T, τ$는 $L_{seg}$로 나눌 수 있다고 가정
  • 이후, 각 segment들은 Position mbedding이 추가된 linear projection을 통해 vector로 embedding
  • 이때 $E ∈ R^{d_{model}×L_{seg}}$는 learnable projection matrix, $E_{i,d}^{(pos)}∈R^{d_{model}}$은 $(i, d)$번째 learnable position embedding
  • 임베딩된 이후, 2D vector array($H = {h_{i, d}|1≤i≤{T\over L_{seg}}, 1≤d≤D}$)를 얻을 수 있음
    • $h_{i, d}$: 단변량 시계열 Segment
  • 하지만 segmentation은 다른 MTS 예측 Transformer Model과 마찬가지로 차원 간 dependency를 얻지 못하기 때문에 Two-Stage Attention(TSA) layer를 추가적으로 설계

3-2 TWO-STAGE ATTENTION LAYER

  • DSW를 과정을 통해서 얻은 2D vector array $H$는 ViT처럼 1D Sequence로 flatten해줘야 하지만 2가지를 고려해야 함
    1. 이미지의 height와 width가 이미지의 길이라는 같은 의미를 가지지만 다변량 시계열의 time, dimension은 서로 다른 의미를 가지기 때문에 이미지와 동일한 방식으로 처리하면 안된다.
    2. 2D array의 self-attention을 바로 적용할 경우, $O(D^2 {T^2 \over L_{seg}^2})$ 만큼의 복잡도가 발생하기 때문에 차원($D$)이 클 경우에는 좋지 못한 방법이다.
  • 따라서 해당 논문에서는 1D Sequence로 flatten하는 방법을 사용하지 않고 시간 간의 dependency와 차원 간의 dependency를 2D array에서 얻기 위해 Two-Stage Attention(TSA) Layer(Fig.2(a))를 설계