quick start

Here is an example to train DLinear model in a long-term forecast settings, see ../examples/quickstart.py for more details

quick start
 1from torch_timeseries.dataset import ETTh1
 2from torch_timeseries.dataloader import StandardScaler, SlidingWindow, SlidingWindowTS
 3from torch_timeseries.model import DLinear
 4from torch.nn import MSELoss, L1Loss
 5from torch.optim import Adam
 6dataset = ETTh1('./data')
 7scaler = StandardScaler()
 8dataloader = SlidingWindowTS(dataset,
 9    window=96,
10    horizon=1,
11    steps=336,
12    batch_size=32,
13    train_ratio=0.7,
14    val_ratio=0.2,
15    scaler=scaler,
16    )
17model = DLinear(dataloader.window, dataloader.steps, dataset.num_features, individual= True)
18
19optimizer = Adam(model.parameters())
20loss_function = MSELoss()
21
22
23# train
24model.train()
25for scaled_x, scaled_y, x, y, x_date_enc, y_date_enc in dataloader.train_loader:
26    optimizer.zero_grad()
27
28    scaled_x = scaled_x.float()
29    scaled_y = scaled_y.float()
30    scaled_pred_y = model(scaled_x)
31
32    loss = loss_function(scaled_pred_y, scaled_y)
33    loss.backward()
34    optimizer.step()
35    print(loss)