SOTAVerified

xPatch: Dual-Stream Time Series Forecasting with Exponential Seasonal-Trend Decomposition

2024-12-23Code Available2· sign in to hype

Artyom Stitsyuk, Jaesik Choi

Code Available — Be the first to reproduce this paper.

Reproduce

Code

Abstract

In recent years, the application of transformer-based models in time-series forecasting has received significant attention. While often demonstrating promising results, the transformer architecture encounters challenges in fully exploiting the temporal relations within time series data due to its attention mechanism. In this work, we design eXponential Patch (xPatch for short), a novel dual-stream architecture that utilizes exponential decomposition. Inspired by the classical exponential smoothing approaches, xPatch introduces the innovative seasonal-trend exponential decomposition module. Additionally, we propose a dual-flow architecture that consists of an MLP-based linear stream and a CNN-based non-linear stream. This model investigates the benefits of employing patching and channel-independence techniques within a non-transformer model. Finally, we develop a robust arctangent loss function and a sigmoid learning rate adjustment scheme, which prevent overfitting and boost forecasting performance. The code is available at the following repository: https://github.com/stitsyuk/xPatch.

Tasks

Benchmark Results

DatasetModelMetricClaimedVerifiedStatus
Electricity (192)xPatchMSE0.14—Unverified
Electricity (336)xPatchMSE0.16—Unverified
Electricity (720)xPatchMSE0.19—Unverified
Electricity (96)xPatchMSE0.13—Unverified
ETTh1 (192) MultivariatexPatchMSE0.38—Unverified
ETTh1 (336) MultivariatexPatchMSE0.39—Unverified
ETTh1 (720) MultivariatexPatchMSE0.44—Unverified
ETTh1 (96) MultivariatexPatchMSE0.35—Unverified
ETTh2 (192) MultivariatexPatchMSE0.28—Unverified
ETTh2 (336) MultivariatexPatchMSE0.31—Unverified
ETTh2 (720) MultivariatexPatchMSE0.38—Unverified
ETTh2 (96) MultivariatexPatchMSE0.23—Unverified
ETTm1 (192) MultivariatexPatchMSE0.32—Unverified
ETTm1 (336) MultivariatexPatchMSE0.36—Unverified
ETTm1 (720) MultivariatexPatchMSE0.42—Unverified
ETTm1 (96) MultivariatexPatchMSE0.28—Unverified
ETTm2 (192) MultivariatexPatchMSE0.21—Unverified
ETTm2 (336) MultivariatexPatchMSE0.26—Unverified
ETTm2 (720) MultivariatexPatchMSE0.34—Unverified
ETTm2 (96) MultivariatexPatchMSE0.15—Unverified
Exchange (192)xPatchMAE0.3—Unverified
Exchange (336)xPatchMAE0.42—Unverified
Exchange (720)xPatchMAE0.7—Unverified
Exchange (96)xPatchMAE0.2—Unverified
Illness (24)xPatchMAE0.64—Unverified
Illness (36)xPatchMAE0.65—Unverified
Illness (48)xPatchMAE0.69—Unverified
Illness (60)xPatchAccuracy0.77—Unverified
Solar (192)xPatchMAE0.22—Unverified
Solar (336)xPatchMAE0.22—Unverified
Solar (720)xPatchMAE0.22—Unverified
Solar (96)xPatchMAE0.2—Unverified
Traffic (192)xPatchMSE0.38—Unverified
Traffic (336)xPatchMSE0.39—Unverified
Traffic (720)xPatchMSE0.44—Unverified
Traffic (96)xPatchMSE0.36—Unverified
Weather (192)xPatchMSE0.19—Unverified
Weather (336)xPatchMSE0.22—Unverified
Weather (720)xPatchMSE0.29—Unverified
Weather (96)xPatchMSE0.15—Unverified

Reproductions