Files
pytorch-ts/examples/Multivariate-Flow-Solar.ipynb
T
2020-05-25 12:32:31 +02:00

67 KiB

In [1]:
import numpy as np
import pandas as pd

import torch
In [2]:
from pts.dataset import to_pandas, MultivariateGrouper, TrainDatasets
from pts.dataset.repository import get_dataset, dataset_recipes
from pts.model.tempflow import TempFlowEstimator
from pts.model.transformer_tempflow import TransformerTempFlowEstimator
from pts import Trainer
from pts.evaluation import make_evaluation_predictions
from pts.evaluation import MultivariateEvaluator
In [3]:
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")

Prepeare data set

In [4]:
dataset = get_dataset("solar_nips", regenerate=False, shuffle=False)
In [5]:
dataset.metadata
Out [5]:
MetaData(freq='H', target=None, feat_static_cat=[CategoricalFeatureInfo(name='feat_static_cat', cardinality='137')], feat_static_real=[], feat_dynamic_real=[], feat_dynamic_cat=[], prediction_length=24)
In [6]:
train_grouper = MultivariateGrouper(max_target_dim=int(dataset.metadata.feat_static_cat[0].cardinality))

test_grouper = MultivariateGrouper(num_test_dates=int(len(dataset.test)/len(dataset.train)), 
                                   max_target_dim=int(dataset.metadata.feat_static_cat[0].cardinality))
In [7]:
dataset_train = train_grouper(dataset.train)
dataset_test = test_grouper(dataset.test)

Evaluator

In [8]:
evaluator = MultivariateEvaluator(quantiles=(np.arange(20)/20.0)[1:],
                                  target_agg_funcs={'sum': np.sum})

GRU-Real-NVP

In [45]:
estimator = TempFlowEstimator(
    target_dim=int(dataset.metadata.feat_static_cat[0].cardinality),
    prediction_length=dataset.metadata.prediction_length,
    cell_type='GRU',
    input_size=552,
    freq=dataset.metadata.freq,
    scaling=True,
    dequantize=True,
    n_blocks=4,
    trainer=Trainer(device=device,
                    epochs=45,
                    learning_rate=1e-3,
                    num_batches_per_epoch=100,
                    batch_size=64)
)
In [46]:
predictor = estimator.train(dataset_train)
forecast_it, ts_it = make_evaluation_predictions(dataset=dataset_test,
                                             predictor=predictor,
                                             num_samples=100)
forecasts = list(forecast_it)
targets = list(ts_it)

agg_metric, _ = evaluator(targets, forecasts, num_series=len(dataset_test))
99it [00:10,  9.03it/s, avg_epoch_loss=-43.1, epoch=0]
99it [00:10,  9.03it/s, avg_epoch_loss=-126, epoch=1]
99it [00:11,  9.00it/s, avg_epoch_loss=-142, epoch=2]
99it [00:10,  9.37it/s, avg_epoch_loss=-143, epoch=3]
99it [00:10,  9.09it/s, avg_epoch_loss=-153, epoch=4]
99it [00:11,  8.76it/s, avg_epoch_loss=-157, epoch=5]
99it [00:10,  9.03it/s, avg_epoch_loss=-157, epoch=6]
99it [00:11,  8.94it/s, avg_epoch_loss=-166, epoch=7]
99it [00:11,  8.56it/s, avg_epoch_loss=-169, epoch=8]
99it [00:11,  8.84it/s, avg_epoch_loss=-168, epoch=9]
98it [00:11,  8.89it/s, avg_epoch_loss=-170, epoch=10]
99it [00:11,  8.89it/s, avg_epoch_loss=-172, epoch=11]
98it [00:10,  9.00it/s, avg_epoch_loss=-172, epoch=12]
99it [00:10,  9.02it/s, avg_epoch_loss=-177, epoch=13]
99it [00:10,  9.48it/s, avg_epoch_loss=-180, epoch=14]
98it [00:10,  9.65it/s, avg_epoch_loss=-180, epoch=15]
99it [00:10,  9.01it/s, avg_epoch_loss=-182, epoch=16]
99it [00:10,  9.11it/s, avg_epoch_loss=-182, epoch=17]
99it [00:10,  9.02it/s, avg_epoch_loss=-182, epoch=18]
98it [00:11,  8.89it/s, avg_epoch_loss=-182, epoch=19]
99it [00:10,  9.01it/s, avg_epoch_loss=-179, epoch=20]
99it [00:10,  9.15it/s, avg_epoch_loss=-183, epoch=21]
99it [00:11,  8.96it/s, avg_epoch_loss=-188, epoch=22]
99it [00:11,  8.96it/s, avg_epoch_loss=-188, epoch=23]
99it [00:10,  9.04it/s, avg_epoch_loss=-190, epoch=24]
98it [00:11,  8.85it/s, avg_epoch_loss=-193, epoch=25]
98it [00:10,  8.95it/s, avg_epoch_loss=-193, epoch=26]
99it [00:11,  8.93it/s, avg_epoch_loss=-192, epoch=27]
99it [00:10,  9.06it/s, avg_epoch_loss=-193, epoch=28]
98it [00:10,  8.97it/s, avg_epoch_loss=-193, epoch=29]
99it [00:11,  8.95it/s, avg_epoch_loss=-196, epoch=30]
98it [00:10,  8.95it/s, avg_epoch_loss=-193, epoch=31]
99it [00:10,  9.05it/s, avg_epoch_loss=-192, epoch=32]
99it [00:11,  8.90it/s, avg_epoch_loss=-197, epoch=33]
99it [00:11,  8.93it/s, avg_epoch_loss=-198, epoch=34]
98it [00:11,  8.85it/s, avg_epoch_loss=-197, epoch=35]
99it [00:10,  9.01it/s, avg_epoch_loss=-198, epoch=36]
98it [00:10,  8.97it/s, avg_epoch_loss=-200, epoch=37]
98it [00:11,  8.85it/s, avg_epoch_loss=-199, epoch=38]
99it [00:10,  9.04it/s, avg_epoch_loss=-197, epoch=39]
99it [00:11,  8.97it/s, avg_epoch_loss=-199, epoch=40]
99it [00:11,  8.88it/s, avg_epoch_loss=-201, epoch=41]
98it [00:11,  8.90it/s, avg_epoch_loss=-201, epoch=42]
99it [00:10,  9.09it/s, avg_epoch_loss=-202, epoch=43]
98it [00:10,  8.93it/s, avg_epoch_loss=-199, epoch=44]
  0%|          | 0/137 [00:00<?, ?it/s]
Running evaluation: 7it [00:00, 79.28it/s]
  1%|          | 1/137 [00:00<00:14,  9.68it/s]
Running evaluation: 7it [00:00, 80.80it/s]
  1%|▏         | 2/137 [00:00<00:13,  9.72it/s]
Running evaluation: 7it [00:00, 81.36it/s]
  2%|▏         | 3/137 [00:00<00:13,  9.77it/s]
Running evaluation: 7it [00:00, 81.19it/s]
  3%|▎         | 4/137 [00:00<00:13,  9.80it/s]
Running evaluation: 7it [00:00, 82.08it/s]
  4%|▎         | 5/137 [00:00<00:13,  9.85it/s]
Running evaluation: 7it [00:00, 77.88it/s]
  4%|▍         | 6/137 [00:00<00:13,  9.72it/s]
Running evaluation: 7it [00:00, 78.87it/s]
  5%|▌         | 7/137 [00:00<00:13,  9.65it/s]
Running evaluation: 7it [00:00, 77.08it/s]
  6%|▌         | 8/137 [00:00<00:13,  9.55it/s]
Running evaluation: 7it [00:00, 76.53it/s]
  7%|▋         | 9/137 [00:00<00:13,  9.43it/s]
Running evaluation: 7it [00:00, 80.35it/s]
  7%|▋         | 10/137 [00:01<00:13,  9.52it/s]
Running evaluation: 7it [00:00, 78.39it/s]
  8%|▊         | 11/137 [00:01<00:13,  9.54it/s]
Running evaluation: 7it [00:00, 77.60it/s]
  9%|▉         | 12/137 [00:01<00:13,  9.53it/s]
Running evaluation: 7it [00:00, 79.24it/s]
  9%|▉         | 13/137 [00:01<00:13,  9.49it/s]
Running evaluation: 7it [00:00, 80.02it/s]
 10%|█         | 14/137 [00:01<00:12,  9.57it/s]
Running evaluation: 7it [00:00, 78.62it/s]
 11%|█         | 15/137 [00:01<00:12,  9.55it/s]
Running evaluation: 7it [00:00, 78.47it/s]
 12%|█▏        | 16/137 [00:01<00:12,  9.52it/s]
Running evaluation: 7it [00:00, 80.37it/s]
 12%|█▏        | 17/137 [00:01<00:12,  9.59it/s]
Running evaluation: 7it [00:00, 81.06it/s]
 13%|█▎        | 18/137 [00:01<00:12,  9.67it/s]
Running evaluation: 7it [00:00, 81.19it/s]
 14%|█▍        | 19/137 [00:01<00:12,  9.73it/s]
Running evaluation: 7it [00:00, 82.05it/s]
 15%|█▍        | 20/137 [00:02<00:11,  9.80it/s]
Running evaluation: 7it [00:00, 81.38it/s]
 15%|█▌        | 21/137 [00:02<00:11,  9.83it/s]
Running evaluation: 7it [00:00, 79.80it/s]
 16%|█▌        | 22/137 [00:02<00:11,  9.80it/s]
Running evaluation: 7it [00:00, 81.03it/s]
 17%|█▋        | 23/137 [00:02<00:11,  9.82it/s]
Running evaluation: 7it [00:00, 79.49it/s]
 18%|█▊        | 24/137 [00:02<00:11,  9.74it/s]
Running evaluation: 7it [00:00, 80.46it/s]
 18%|█▊        | 25/137 [00:02<00:11,  9.76it/s]
Running evaluation: 7it [00:00, 83.16it/s]
 19%|█▉        | 26/137 [00:02<00:11,  9.81it/s]
Running evaluation: 7it [00:00, 81.61it/s]
 20%|█▉        | 27/137 [00:02<00:11,  9.84it/s]
Running evaluation: 7it [00:00, 81.16it/s]
 20%|██        | 28/137 [00:02<00:11,  9.85it/s]
Running evaluation: 7it [00:00, 73.60it/s]
 21%|██        | 29/137 [00:02<00:11,  9.59it/s]
Running evaluation: 7it [00:00, 81.64it/s]
 22%|██▏       | 30/137 [00:03<00:11,  9.68it/s]
Running evaluation: 7it [00:00, 81.16it/s]
 23%|██▎       | 31/137 [00:03<00:10,  9.72it/s]
Running evaluation: 7it [00:00, 82.76it/s]

Running evaluation: 7it [00:00, 80.90it/s]
 24%|██▍       | 33/137 [00:03<00:10,  9.78it/s]
Running evaluation: 7it [00:00, 80.28it/s]
 25%|██▍       | 34/137 [00:03<00:10,  9.78it/s]
Running evaluation: 7it [00:00, 80.43it/s]
 26%|██▌       | 35/137 [00:03<00:10,  9.78it/s]
Running evaluation: 7it [00:00, 81.23it/s]
 26%|██▋       | 36/137 [00:03<00:10,  9.81it/s]
Running evaluation: 7it [00:00, 81.30it/s]
 27%|██▋       | 37/137 [00:03<00:10,  9.84it/s]
Running evaluation: 7it [00:00, 81.99it/s]
 28%|██▊       | 38/137 [00:03<00:10,  9.87it/s]
Running evaluation: 7it [00:00, 80.61it/s]
 28%|██▊       | 39/137 [00:04<00:09,  9.82it/s]
Running evaluation: 7it [00:00, 81.20it/s]
 29%|██▉       | 40/137 [00:04<00:09,  9.83it/s]
Running evaluation: 7it [00:00, 81.11it/s]
 30%|██▉       | 41/137 [00:04<00:09,  9.84it/s]
Running evaluation: 7it [00:00, 81.50it/s]
 31%|███       | 42/137 [00:04<00:09,  9.87it/s]
Running evaluation: 7it [00:00, 82.13it/s]
 31%|███▏      | 43/137 [00:04<00:09,  9.89it/s]
Running evaluation: 7it [00:00, 80.91it/s]
 32%|███▏      | 44/137 [00:04<00:09,  9.88it/s]
Running evaluation: 7it [00:00, 79.62it/s]
 33%|███▎      | 45/137 [00:04<00:09,  9.80it/s]
Running evaluation: 7it [00:00, 78.32it/s]
 34%|███▎      | 46/137 [00:04<00:09,  9.70it/s]
Running evaluation: 7it [00:00, 83.13it/s]
 34%|███▍      | 47/137 [00:04<00:09,  9.77it/s]
Running evaluation: 7it [00:00, 73.63it/s]
 35%|███▌      | 48/137 [00:04<00:09,  9.50it/s]
Running evaluation: 7it [00:00, 76.64it/s]
 36%|███▌      | 49/137 [00:05<00:09,  9.42it/s]
Running evaluation: 7it [00:00, 80.82it/s]
 36%|███▋      | 50/137 [00:05<00:09,  9.52it/s]
Running evaluation: 7it [00:00, 75.39it/s]
 37%|███▋      | 51/137 [00:05<00:09,  9.40it/s]
Running evaluation: 7it [00:00, 77.91it/s]
 38%|███▊      | 52/137 [00:05<00:09,  9.41it/s]
Running evaluation: 7it [00:00, 78.21it/s]
 39%|███▊      | 53/137 [00:05<00:08,  9.45it/s]
Running evaluation: 7it [00:00, 80.29it/s]
 39%|███▉      | 54/137 [00:05<00:08,  9.53it/s]
Running evaluation: 7it [00:00, 81.16it/s]
 40%|████      | 55/137 [00:05<00:08,  9.63it/s]
Running evaluation: 7it [00:00, 81.02it/s]
 41%|████      | 56/137 [00:05<00:08,  9.69it/s]
Running evaluation: 7it [00:00, 81.13it/s]
 42%|████▏     | 57/137 [00:05<00:08,  9.74it/s]
Running evaluation: 7it [00:00, 81.67it/s]
 42%|████▏     | 58/137 [00:05<00:08,  9.60it/s]
Running evaluation: 7it [00:00, 79.86it/s]
 43%|████▎     | 59/137 [00:06<00:08,  9.63it/s]
Running evaluation: 7it [00:00, 81.31it/s]
 44%|████▍     | 60/137 [00:06<00:07,  9.70it/s]
Running evaluation: 7it [00:00, 80.42it/s]
 45%|████▍     | 61/137 [00:06<00:07,  9.72it/s]
Running evaluation: 7it [00:00, 80.96it/s]
 45%|████▌     | 62/137 [00:06<00:07,  9.76it/s]
Running evaluation: 7it [00:00, 80.15it/s]
 46%|████▌     | 63/137 [00:06<00:07,  9.76it/s]
Running evaluation: 7it [00:00, 80.72it/s]
 47%|████▋     | 64/137 [00:06<00:07,  9.77it/s]
Running evaluation: 7it [00:00, 78.85it/s]
 47%|████▋     | 65/137 [00:06<00:07,  9.69it/s]
Running evaluation: 7it [00:00, 80.44it/s]
 48%|████▊     | 66/137 [00:06<00:07,  9.73it/s]
Running evaluation: 7it [00:00, 80.88it/s]
 49%|████▉     | 67/137 [00:06<00:07,  9.74it/s]
Running evaluation: 7it [00:00, 81.47it/s]
 50%|████▉     | 68/137 [00:07<00:07,  9.79it/s]
Running evaluation: 7it [00:00, 80.62it/s]
 50%|█████     | 69/137 [00:07<00:06,  9.80it/s]
Running evaluation: 7it [00:00, 80.87it/s]
 51%|█████     | 70/137 [00:07<00:06,  9.79it/s]
Running evaluation: 7it [00:00, 77.90it/s]
 52%|█████▏    | 71/137 [00:07<00:06,  9.69it/s]
Running evaluation: 7it [00:00, 77.50it/s]
 53%|█████▎    | 72/137 [00:07<00:06,  9.59it/s]
Running evaluation: 7it [00:00, 80.34it/s]
 53%|█████▎    | 73/137 [00:07<00:06,  9.62it/s]
Running evaluation: 7it [00:00, 79.45it/s]
 54%|█████▍    | 74/137 [00:07<00:06,  9.64it/s]
Running evaluation: 7it [00:00, 81.21it/s]
 55%|█████▍    | 75/137 [00:07<00:06,  9.71it/s]
Running evaluation: 7it [00:00, 80.50it/s]
 55%|█████▌    | 76/137 [00:07<00:06,  9.73it/s]
Running evaluation: 7it [00:00, 81.01it/s]
 56%|█████▌    | 77/137 [00:07<00:06,  9.76it/s]
Running evaluation: 7it [00:00, 81.26it/s]
 57%|█████▋    | 78/137 [00:08<00:06,  9.80it/s]
Running evaluation: 7it [00:00, 80.99it/s]
 58%|█████▊    | 79/137 [00:08<00:05,  9.81it/s]
Running evaluation: 7it [00:00, 80.81it/s]
 58%|█████▊    | 80/137 [00:08<00:05,  9.77it/s]
Running evaluation: 7it [00:00, 81.21it/s]
 59%|█████▉    | 81/137 [00:08<00:05,  9.79it/s]
Running evaluation: 7it [00:00, 81.45it/s]
 60%|█████▉    | 82/137 [00:08<00:05,  9.82it/s]
Running evaluation: 7it [00:00, 81.25it/s]
 61%|██████    | 83/137 [00:08<00:05,  9.83it/s]
Running evaluation: 7it [00:00, 80.13it/s]
 61%|██████▏   | 84/137 [00:08<00:05,  9.81it/s]
Running evaluation: 7it [00:00, 79.15it/s]
 62%|██████▏   | 85/137 [00:08<00:05,  9.75it/s]
Running evaluation: 7it [00:00, 80.62it/s]
 63%|██████▎   | 86/137 [00:08<00:05,  9.77it/s]
Running evaluation: 7it [00:00, 82.72it/s]

Running evaluation: 7it [00:00, 82.62it/s]
 64%|██████▍   | 88/137 [00:09<00:04,  9.85it/s]
Running evaluation: 7it [00:00, 81.59it/s]
 65%|██████▍   | 89/137 [00:09<00:04,  9.88it/s]
Running evaluation: 7it [00:00, 80.62it/s]
 66%|██████▌   | 90/137 [00:09<00:04,  9.86it/s]
Running evaluation: 7it [00:00, 81.38it/s]
 66%|██████▋   | 91/137 [00:09<00:04,  9.88it/s]
Running evaluation: 7it [00:00, 81.71it/s]
 67%|██████▋   | 92/137 [00:09<00:04,  9.89it/s]
Running evaluation: 7it [00:00, 81.85it/s]
 68%|██████▊   | 93/137 [00:09<00:04,  9.87it/s]
Running evaluation: 7it [00:00, 81.08it/s]
 69%|██████▊   | 94/137 [00:09<00:04,  9.86it/s]
Running evaluation: 7it [00:00, 82.68it/s]
 69%|██████▉   | 95/137 [00:09<00:04,  9.88it/s]
Running evaluation: 7it [00:00, 80.35it/s]
 70%|███████   | 96/137 [00:09<00:04,  9.85it/s]
Running evaluation: 7it [00:00, 81.36it/s]
 71%|███████   | 97/137 [00:09<00:04,  9.84it/s]
Running evaluation: 7it [00:00, 81.28it/s]
 72%|███████▏  | 98/137 [00:10<00:03,  9.85it/s]
Running evaluation: 7it [00:00, 81.06it/s]
 72%|███████▏  | 99/137 [00:10<00:03,  9.85it/s]
Running evaluation: 7it [00:00, 80.01it/s]
 73%|███████▎  | 100/137 [00:10<00:03,  9.82it/s]
Running evaluation: 7it [00:00, 81.70it/s]
 74%|███████▎  | 101/137 [00:10<00:03,  9.85it/s]
Running evaluation: 7it [00:00, 80.67it/s]
 74%|███████▍  | 102/137 [00:10<00:03,  9.84it/s]
Running evaluation: 7it [00:00, 80.49it/s]
 75%|███████▌  | 103/137 [00:10<00:03,  9.82it/s]
Running evaluation: 7it [00:00, 81.27it/s]
 76%|███████▌  | 104/137 [00:10<00:03,  9.84it/s]
Running evaluation: 7it [00:00, 81.05it/s]
 77%|███████▋  | 105/137 [00:10<00:03,  9.85it/s]
Running evaluation: 7it [00:00, 80.27it/s]
 77%|███████▋  | 106/137 [00:10<00:03,  9.83it/s]
Running evaluation: 7it [00:00, 81.00it/s]
 78%|███████▊  | 107/137 [00:10<00:03,  9.79it/s]
Running evaluation: 7it [00:00, 77.18it/s]
 79%|███████▉  | 108/137 [00:11<00:03,  9.65it/s]
Running evaluation: 7it [00:00, 79.07it/s]
 80%|███████▉  | 109/137 [00:11<00:02,  9.63it/s]
Running evaluation: 7it [00:00, 80.43it/s]
 80%|████████  | 110/137 [00:11<00:02,  9.67it/s]
Running evaluation: 7it [00:00, 81.85it/s]
 81%|████████  | 111/137 [00:11<00:02,  9.74it/s]
Running evaluation: 7it [00:00, 80.47it/s]
 82%|████████▏ | 112/137 [00:11<00:02,  9.77it/s]
Running evaluation: 7it [00:00, 80.02it/s]
 82%|████████▏ | 113/137 [00:11<00:02,  9.76it/s]
Running evaluation: 7it [00:00, 81.52it/s]
 83%|████████▎ | 114/137 [00:11<00:02,  9.80it/s]
Running evaluation: 7it [00:00, 81.42it/s]
 84%|████████▍ | 115/137 [00:11<00:02,  9.83it/s]
Running evaluation: 7it [00:00, 80.95it/s]
 85%|████████▍ | 116/137 [00:11<00:02,  9.84it/s]
Running evaluation: 7it [00:00, 80.78it/s]
 85%|████████▌ | 117/137 [00:12<00:02,  9.85it/s]
Running evaluation: 7it [00:00, 81.33it/s]
 86%|████████▌ | 118/137 [00:12<00:01,  9.85it/s]
Running evaluation: 7it [00:00, 82.25it/s]
 87%|████████▋ | 119/137 [00:12<00:01,  9.86it/s]
Running evaluation: 7it [00:00, 81.09it/s]
 88%|████████▊ | 120/137 [00:12<00:02,  7.50it/s]
Running evaluation: 7it [00:00, 79.78it/s]
 88%|████████▊ | 121/137 [00:12<00:01,  8.04it/s]
Running evaluation: 7it [00:00, 81.03it/s]
 89%|████████▉ | 122/137 [00:12<00:01,  8.52it/s]
Running evaluation: 7it [00:00, 81.17it/s]
 90%|████████▉ | 123/137 [00:12<00:01,  8.89it/s]
Running evaluation: 7it [00:00, 81.38it/s]
 91%|█████████ | 124/137 [00:12<00:01,  9.17it/s]
Running evaluation: 7it [00:00, 72.26it/s]
 91%|█████████ | 125/137 [00:12<00:01,  9.07it/s]
Running evaluation: 7it [00:00, 80.07it/s]
 92%|█████████▏| 126/137 [00:13<00:01,  9.27it/s]
Running evaluation: 7it [00:00, 80.94it/s]
 93%|█████████▎| 127/137 [00:13<00:01,  9.44it/s]
Running evaluation: 7it [00:00, 81.67it/s]
 93%|█████████▎| 128/137 [00:13<00:00,  9.57it/s]
Running evaluation: 7it [00:00, 84.00it/s]

Running evaluation: 7it [00:00, 82.48it/s]
 95%|█████████▍| 130/137 [00:13<00:00,  9.72it/s]
Running evaluation: 7it [00:00, 81.11it/s]
 96%|█████████▌| 131/137 [00:13<00:00,  9.77it/s]
Running evaluation: 7it [00:00, 79.90it/s]
 96%|█████████▋| 132/137 [00:13<00:00,  9.76it/s]
Running evaluation: 7it [00:00, 81.81it/s]
 97%|█████████▋| 133/137 [00:13<00:00,  9.80it/s]
Running evaluation: 7it [00:00, 81.61it/s]
 98%|█████████▊| 134/137 [00:13<00:00,  9.84it/s]
Running evaluation: 7it [00:00, 82.01it/s]
 99%|█████████▊| 135/137 [00:13<00:00,  9.88it/s]
Running evaluation: 7it [00:00, 81.80it/s]
 99%|█████████▉| 136/137 [00:14<00:00,  9.90it/s]
Running evaluation: 7it [00:00, 77.76it/s]
100%|██████████| 137/137 [00:14<00:00,  9.68it/s]
Running evaluation: 7it [00:00, 60.08it/s]

Metrics

In [47]:
print("CRPS: {}".format(agg_metric['mean_wQuantileLoss']))
print("ND: {}".format(agg_metric['ND']))
print("NRMSE: {}".format(agg_metric['NRMSE']))
print("MSE: {}".format(agg_metric['MSE']))
CRPS: 0.36531966950112466
ND: 0.45434020382814283
NRMSE: 0.9820216603495642
MSE: 914.7868680304274
In [48]:
print("CRPS-Sum: {}".format(agg_metric['m_sum_mean_wQuantileLoss']))
print("ND-Sum: {}".format(agg_metric['m_sum_ND']))
print("NRMSE-Sum: {}".format(agg_metric['m_sum_NRMSE']))
print("MSE-Sum: {}".format(agg_metric['m_sum_MSE']))
CRPS-Sum: 0.2873863376280519
ND-Sum: 0.35970480888579265
NRMSE-Sum: 0.7184166842326591
MSE-Sum: 9189074.285714285

GRU-MAF

In [17]:
estimator = TempFlowEstimator(
    target_dim=int(dataset.metadata.feat_static_cat[0].cardinality),
    prediction_length=dataset.metadata.prediction_length,
    cell_type='GRU',
    input_size=552,
    freq=dataset.metadata.freq,
    scaling=True,
    dequantize=True,
    flow_type='MAF',
    trainer=Trainer(device=device,
                    epochs=25,
                    learning_rate=1e-3,
                    num_batches_per_epoch=100,
                    batch_size=64)
)
In [18]:
predictor = estimator.train(dataset_train)
forecast_it, ts_it = make_evaluation_predictions(dataset=dataset_test,
                                             predictor=predictor,
                                             num_samples=100)
forecasts = list(forecast_it)
targets = list(ts_it)

agg_metric, _ = evaluator(targets, forecasts, num_series=len(dataset_test))
98it [00:10,  9.05it/s, avg_epoch_loss=-7.36, epoch=0]
99it [00:10,  9.19it/s, avg_epoch_loss=-136, epoch=1]
99it [00:10,  9.12it/s, avg_epoch_loss=-164, epoch=2]
98it [00:10,  8.91it/s, avg_epoch_loss=-179, epoch=3]
98it [00:10,  9.09it/s, avg_epoch_loss=-188, epoch=4]
99it [00:10,  9.05it/s, avg_epoch_loss=-194, epoch=5]
98it [00:10,  9.04it/s, avg_epoch_loss=-198, epoch=6]
98it [00:10,  8.97it/s, avg_epoch_loss=-201, epoch=7]
97it [00:10,  8.90it/s, avg_epoch_loss=-204, epoch=8]
99it [00:10,  9.07it/s, avg_epoch_loss=-206, epoch=9]
99it [00:10,  9.09it/s, avg_epoch_loss=-207, epoch=10]
98it [00:11,  8.90it/s, avg_epoch_loss=-209, epoch=11]
99it [00:10,  9.02it/s, avg_epoch_loss=-210, epoch=12]
98it [00:10,  8.95it/s, avg_epoch_loss=-211, epoch=13]
99it [00:10,  9.21it/s, avg_epoch_loss=-212, epoch=14]
98it [00:10,  9.00it/s, avg_epoch_loss=-213, epoch=15]
99it [00:10,  9.21it/s, avg_epoch_loss=-214, epoch=16]
98it [00:10,  8.95it/s, avg_epoch_loss=-215, epoch=17]
98it [00:11,  8.88it/s, avg_epoch_loss=-216, epoch=18]
99it [00:10,  9.08it/s, avg_epoch_loss=-216, epoch=19]
98it [00:10,  8.96it/s, avg_epoch_loss=-217, epoch=20]
98it [00:10,  8.98it/s, avg_epoch_loss=-218, epoch=21]
97it [00:10,  8.88it/s, avg_epoch_loss=-218, epoch=22]
97it [00:10,  8.83it/s, avg_epoch_loss=-219, epoch=23]
98it [00:10,  8.97it/s, avg_epoch_loss=-219, epoch=24]
  0%|          | 0/137 [00:00<?, ?it/s]
Running evaluation: 7it [00:00, 79.30it/s]
  1%|          | 1/137 [00:00<00:14,  9.67it/s]
Running evaluation: 7it [00:00, 80.37it/s]
  1%|▏         | 2/137 [00:00<00:13,  9.69it/s]
Running evaluation: 7it [00:00, 80.99it/s]
  2%|▏         | 3/137 [00:00<00:13,  9.72it/s]
Running evaluation: 7it [00:00, 80.16it/s]
  3%|▎         | 4/137 [00:00<00:13,  9.74it/s]
Running evaluation: 7it [00:00, 81.87it/s]
  4%|▎         | 5/137 [00:00<00:15,  8.38it/s]
Running evaluation: 7it [00:00, 80.00it/s]
  4%|▍         | 6/137 [00:00<00:15,  8.73it/s]
Running evaluation: 7it [00:00, 80.20it/s]
  5%|▌         | 7/137 [00:00<00:14,  9.02it/s]
Running evaluation: 7it [00:00, 81.10it/s]
  6%|▌         | 8/137 [00:00<00:13,  9.26it/s]
Running evaluation: 7it [00:00, 78.81it/s]
  7%|▋         | 9/137 [00:00<00:13,  9.37it/s]
Running evaluation: 7it [00:00, 80.94it/s]
  7%|▋         | 10/137 [00:01<00:13,  9.51it/s]
Running evaluation: 7it [00:00, 80.86it/s]
  8%|▊         | 11/137 [00:01<00:13,  9.61it/s]
Running evaluation: 7it [00:00, 79.54it/s]
  9%|▉         | 12/137 [00:01<00:12,  9.65it/s]
Running evaluation: 7it [00:00, 80.68it/s]
  9%|▉         | 13/137 [00:01<00:12,  9.70it/s]
Running evaluation: 7it [00:00, 80.79it/s]
 10%|█         | 14/137 [00:01<00:12,  9.67it/s]
Running evaluation: 7it [00:00, 79.82it/s]
 11%|█         | 15/137 [00:01<00:12,  9.69it/s]
Running evaluation: 7it [00:00, 80.53it/s]
 12%|█▏        | 16/137 [00:01<00:12,  9.73it/s]
Running evaluation: 7it [00:00, 76.42it/s]
 12%|█▏        | 17/137 [00:01<00:12,  9.59it/s]
Running evaluation: 7it [00:00, 79.49it/s]
 13%|█▎        | 18/137 [00:01<00:12,  9.61it/s]
Running evaluation: 7it [00:00, 80.33it/s]
 14%|█▍        | 19/137 [00:02<00:12,  9.66it/s]
Running evaluation: 7it [00:00, 81.06it/s]
 15%|█▍        | 20/137 [00:02<00:12,  9.70it/s]
Running evaluation: 7it [00:00, 80.93it/s]
 15%|█▌        | 21/137 [00:02<00:11,  9.74it/s]
Running evaluation: 7it [00:00, 81.20it/s]
 16%|█▌        | 22/137 [00:02<00:11,  9.78it/s]
Running evaluation: 7it [00:00, 80.83it/s]
 17%|█▋        | 23/137 [00:02<00:11,  9.79it/s]
Running evaluation: 7it [00:00, 81.33it/s]
 18%|█▊        | 24/137 [00:02<00:11,  9.82it/s]
Running evaluation: 7it [00:00, 80.91it/s]
 18%|█▊        | 25/137 [00:02<00:11,  9.83it/s]
Running evaluation: 7it [00:00, 81.40it/s]
 19%|█▉        | 26/137 [00:02<00:11,  9.85it/s]
Running evaluation: 7it [00:00, 81.20it/s]
 20%|█▉        | 27/137 [00:02<00:11,  9.86it/s]
Running evaluation: 7it [00:00, 82.38it/s]
 20%|██        | 28/137 [00:02<00:11,  9.90it/s]
Running evaluation: 7it [00:00, 82.08it/s]
 21%|██        | 29/137 [00:03<00:10,  9.92it/s]
Running evaluation: 7it [00:00, 81.48it/s]
 22%|██▏       | 30/137 [00:03<00:10,  9.91it/s]
Running evaluation: 7it [00:00, 80.91it/s]
 23%|██▎       | 31/137 [00:03<00:10,  9.89it/s]
Running evaluation: 7it [00:00, 81.74it/s]
 23%|██▎       | 32/137 [00:03<00:10,  9.89it/s]
Running evaluation: 7it [00:00, 82.56it/s]
 24%|██▍       | 33/137 [00:03<00:10,  9.91it/s]
Running evaluation: 7it [00:00, 82.94it/s]

Running evaluation: 7it [00:00, 81.87it/s]
 26%|██▌       | 35/137 [00:03<00:10,  9.93it/s]
Running evaluation: 7it [00:00, 82.36it/s]

Running evaluation: 7it [00:00, 82.48it/s]
 27%|██▋       | 37/137 [00:03<00:10,  9.96it/s]
Running evaluation: 7it [00:00, 81.42it/s]
 28%|██▊       | 38/137 [00:03<00:09,  9.93it/s]
Running evaluation: 7it [00:00, 81.16it/s]
 28%|██▊       | 39/137 [00:04<00:09,  9.91it/s]
Running evaluation: 7it [00:00, 80.18it/s]
 29%|██▉       | 40/137 [00:04<00:09,  9.86it/s]
Running evaluation: 7it [00:00, 79.44it/s]
 30%|██▉       | 41/137 [00:04<00:09,  9.77it/s]
Running evaluation: 7it [00:00, 78.49it/s]
 31%|███       | 42/137 [00:04<00:09,  9.71it/s]
Running evaluation: 7it [00:00, 81.14it/s]
 31%|███▏      | 43/137 [00:04<00:09,  9.76it/s]
Running evaluation: 7it [00:00, 80.89it/s]
 32%|███▏      | 44/137 [00:04<00:09,  9.77it/s]
Running evaluation: 7it [00:00, 79.56it/s]
 33%|███▎      | 45/137 [00:04<00:09,  9.75it/s]
Running evaluation: 7it [00:00, 80.37it/s]
 34%|███▎      | 46/137 [00:04<00:09,  9.77it/s]
Running evaluation: 7it [00:00, 81.06it/s]
 34%|███▍      | 47/137 [00:04<00:09,  9.80it/s]
Running evaluation: 7it [00:00, 81.00it/s]
 35%|███▌      | 48/137 [00:04<00:09,  9.82it/s]
Running evaluation: 7it [00:00, 79.59it/s]
 36%|███▌      | 49/137 [00:05<00:08,  9.78it/s]
Running evaluation: 7it [00:00, 80.16it/s]
 36%|███▋      | 50/137 [00:05<00:08,  9.78it/s]
Running evaluation: 7it [00:00, 81.13it/s]
 37%|███▋      | 51/137 [00:05<00:08,  9.81it/s]
Running evaluation: 7it [00:00, 80.09it/s]
 38%|███▊      | 52/137 [00:05<00:08,  9.80it/s]
Running evaluation: 7it [00:00, 81.05it/s]
 39%|███▊      | 53/137 [00:05<00:08,  9.82it/s]
Running evaluation: 7it [00:00, 79.80it/s]
 39%|███▉      | 54/137 [00:05<00:08,  9.80it/s]
Running evaluation: 7it [00:00, 79.99it/s]
 40%|████      | 55/137 [00:05<00:08,  9.79it/s]
Running evaluation: 7it [00:00, 80.74it/s]
 41%|████      | 56/137 [00:05<00:08,  9.80it/s]
Running evaluation: 7it [00:00, 80.38it/s]
 42%|████▏     | 57/137 [00:05<00:08,  9.80it/s]
Running evaluation: 7it [00:00, 80.81it/s]
 42%|████▏     | 58/137 [00:05<00:08,  9.81it/s]
Running evaluation: 7it [00:00, 80.07it/s]
 43%|████▎     | 59/137 [00:06<00:07,  9.80it/s]
Running evaluation: 7it [00:00, 79.89it/s]
 44%|████▍     | 60/137 [00:06<00:07,  9.79it/s]
Running evaluation: 7it [00:00, 80.78it/s]
 45%|████▍     | 61/137 [00:06<00:07,  9.81it/s]
Running evaluation: 7it [00:00, 80.28it/s]
 45%|████▌     | 62/137 [00:06<00:07,  9.80it/s]
Running evaluation: 7it [00:00, 80.50it/s]
 46%|████▌     | 63/137 [00:06<00:07,  9.81it/s]
Running evaluation: 7it [00:00, 80.07it/s]
 47%|████▋     | 64/137 [00:06<00:07,  9.76it/s]
Running evaluation: 7it [00:00, 77.93it/s]
 47%|████▋     | 65/137 [00:06<00:07,  9.67it/s]
Running evaluation: 7it [00:00, 80.83it/s]
 48%|████▊     | 66/137 [00:06<00:07,  9.72it/s]
Running evaluation: 7it [00:00, 81.68it/s]
 49%|████▉     | 67/137 [00:06<00:07,  9.79it/s]
Running evaluation: 7it [00:00, 81.13it/s]
 50%|████▉     | 68/137 [00:06<00:07,  9.81it/s]
Running evaluation: 7it [00:00, 81.32it/s]
 50%|█████     | 69/137 [00:07<00:06,  9.84it/s]
Running evaluation: 7it [00:00, 80.92it/s]
 51%|█████     | 70/137 [00:07<00:06,  9.83it/s]
Running evaluation: 7it [00:00, 81.30it/s]
 52%|█████▏    | 71/137 [00:07<00:06,  9.85it/s]
Running evaluation: 7it [00:00, 82.09it/s]
 53%|█████▎    | 72/137 [00:07<00:06,  9.89it/s]
Running evaluation: 7it [00:00, 81.77it/s]
 53%|█████▎    | 73/137 [00:07<00:06,  9.87it/s]
Running evaluation: 7it [00:00, 81.08it/s]
 54%|█████▍    | 74/137 [00:07<00:06,  9.87it/s]
Running evaluation: 7it [00:00, 81.81it/s]
 55%|█████▍    | 75/137 [00:07<00:06,  9.89it/s]
Running evaluation: 7it [00:00, 80.63it/s]
 55%|█████▌    | 76/137 [00:07<00:06,  9.87it/s]
Running evaluation: 7it [00:00, 80.91it/s]
 56%|█████▌    | 77/137 [00:07<00:06,  9.87it/s]
Running evaluation: 7it [00:00, 80.83it/s]
 57%|█████▋    | 78/137 [00:08<00:05,  9.86it/s]
Running evaluation: 7it [00:00, 80.90it/s]
 58%|█████▊    | 79/137 [00:08<00:05,  9.86it/s]
Running evaluation: 7it [00:00, 80.50it/s]
 58%|█████▊    | 80/137 [00:08<00:05,  9.84it/s]
Running evaluation: 7it [00:00, 80.69it/s]
 59%|█████▉    | 81/137 [00:08<00:05,  9.84it/s]
Running evaluation: 7it [00:00, 78.67it/s]
 60%|█████▉    | 82/137 [00:08<00:05,  9.74it/s]
Running evaluation: 0it [00:00, ?it/s]
Running evaluation: 7it [00:00, 57.62it/s]
 61%|██████    | 83/137 [00:08<00:06,  8.73it/s]
Running evaluation: 7it [00:00, 79.47it/s]
 61%|██████▏   | 84/137 [00:08<00:05,  8.97it/s]
Running evaluation: 7it [00:00, 77.83it/s]
 62%|██████▏   | 85/137 [00:08<00:05,  9.12it/s]
Running evaluation: 7it [00:00, 79.50it/s]
 63%|██████▎   | 86/137 [00:08<00:05,  9.26it/s]
Running evaluation: 7it [00:00, 78.65it/s]
 64%|██████▎   | 87/137 [00:08<00:05,  9.33it/s]
Running evaluation: 7it [00:00, 77.89it/s]
 64%|██████▍   | 88/137 [00:09<00:05,  9.37it/s]
Running evaluation: 7it [00:00, 77.88it/s]
 65%|██████▍   | 89/137 [00:09<00:05,  9.39it/s]
Running evaluation: 7it [00:00, 78.58it/s]
 66%|██████▌   | 90/137 [00:09<00:04,  9.43it/s]
Running evaluation: 7it [00:00, 78.98it/s]
 66%|██████▋   | 91/137 [00:09<00:04,  9.45it/s]
Running evaluation: 7it [00:00, 79.47it/s]
 67%|██████▋   | 92/137 [00:09<00:04,  9.47it/s]
Running evaluation: 7it [00:00, 75.97it/s]
 68%|██████▊   | 93/137 [00:09<00:04,  9.37it/s]
Running evaluation: 7it [00:00, 81.28it/s]
 69%|██████▊   | 94/137 [00:09<00:04,  9.47it/s]
Running evaluation: 7it [00:00, 81.42it/s]
 69%|██████▉   | 95/137 [00:09<00:04,  9.57it/s]
Running evaluation: 7it [00:00, 78.29it/s]
 70%|███████   | 96/137 [00:09<00:04,  9.51it/s]
Running evaluation: 7it [00:00, 78.14it/s]
 71%|███████   | 97/137 [00:10<00:04,  9.49it/s]
Running evaluation: 7it [00:00, 79.59it/s]
 72%|███████▏  | 98/137 [00:10<00:04,  9.50it/s]
Running evaluation: 7it [00:00, 81.20it/s]
 72%|███████▏  | 99/137 [00:10<00:03,  9.56it/s]
Running evaluation: 7it [00:00, 81.43it/s]
 73%|███████▎  | 100/137 [00:10<00:03,  9.66it/s]
Running evaluation: 7it [00:00, 82.14it/s]
 74%|███████▎  | 101/137 [00:10<00:03,  9.76it/s]
Running evaluation: 7it [00:00, 80.95it/s]
 74%|███████▍  | 102/137 [00:10<00:03,  9.79it/s]
Running evaluation: 7it [00:00, 75.02it/s]
 75%|███████▌  | 103/137 [00:10<00:03,  9.58it/s]
Running evaluation: 7it [00:00, 80.46it/s]
 76%|███████▌  | 104/137 [00:10<00:03,  9.63it/s]
Running evaluation: 7it [00:00, 81.08it/s]
 77%|███████▋  | 105/137 [00:10<00:03,  9.70it/s]
Running evaluation: 7it [00:00, 82.26it/s]
 77%|███████▋  | 106/137 [00:10<00:03,  9.77it/s]
Running evaluation: 7it [00:00, 81.13it/s]
 78%|███████▊  | 107/137 [00:11<00:03,  9.80it/s]
Running evaluation: 7it [00:00, 81.79it/s]
 79%|███████▉  | 108/137 [00:11<00:02,  9.81it/s]
Running evaluation: 7it [00:00, 81.81it/s]
 80%|███████▉  | 109/137 [00:11<00:02,  9.83it/s]
Running evaluation: 7it [00:00, 79.83it/s]
 80%|████████  | 110/137 [00:11<00:02,  9.78it/s]
Running evaluation: 7it [00:00, 81.44it/s]
 81%|████████  | 111/137 [00:11<00:02,  9.81it/s]
Running evaluation: 7it [00:00, 81.57it/s]
 82%|████████▏ | 112/137 [00:11<00:02,  9.85it/s]
Running evaluation: 7it [00:00, 79.45it/s]
 82%|████████▏ | 113/137 [00:11<00:02,  9.77it/s]
Running evaluation: 7it [00:00, 77.78it/s]
 83%|████████▎ | 114/137 [00:11<00:02,  9.68it/s]
Running evaluation: 7it [00:00, 81.29it/s]
 84%|████████▍ | 115/137 [00:11<00:02,  9.74it/s]
Running evaluation: 7it [00:00, 81.49it/s]
 85%|████████▍ | 116/137 [00:11<00:02,  9.80it/s]
Running evaluation: 7it [00:00, 80.46it/s]
 85%|████████▌ | 117/137 [00:12<00:02,  9.80it/s]
Running evaluation: 7it [00:00, 80.67it/s]
 86%|████████▌ | 118/137 [00:12<00:01,  9.81it/s]
Running evaluation: 7it [00:00, 81.37it/s]
 87%|████████▋ | 119/137 [00:12<00:01,  9.84it/s]
Running evaluation: 7it [00:00, 78.34it/s]
 88%|████████▊ | 120/137 [00:12<00:01,  9.74it/s]
Running evaluation: 7it [00:00, 79.76it/s]
 88%|████████▊ | 121/137 [00:12<00:01,  9.70it/s]
Running evaluation: 7it [00:00, 79.34it/s]
 89%|████████▉ | 122/137 [00:12<00:01,  9.64it/s]
Running evaluation: 7it [00:00, 78.06it/s]
 90%|████████▉ | 123/137 [00:12<00:01,  9.58it/s]
Running evaluation: 7it [00:00, 81.37it/s]
 91%|█████████ | 124/137 [00:12<00:01,  9.67it/s]
Running evaluation: 7it [00:00, 80.66it/s]
 91%|█████████ | 125/137 [00:12<00:01,  9.72it/s]
Running evaluation: 7it [00:00, 81.24it/s]
 92%|█████████▏| 126/137 [00:13<00:01,  9.77it/s]
Running evaluation: 7it [00:00, 82.04it/s]
 93%|█████████▎| 127/137 [00:13<00:01,  9.83it/s]
Running evaluation: 7it [00:00, 81.05it/s]
 93%|█████████▎| 128/137 [00:13<00:00,  9.82it/s]
Running evaluation: 7it [00:00, 83.03it/s]

Running evaluation: 7it [00:00, 82.04it/s]
 95%|█████████▍| 130/137 [00:13<00:00,  9.88it/s]
Running evaluation: 7it [00:00, 80.86it/s]
 96%|█████████▌| 131/137 [00:13<00:00,  9.86it/s]
Running evaluation: 7it [00:00, 81.55it/s]
 96%|█████████▋| 132/137 [00:13<00:00,  9.87it/s]
Running evaluation: 7it [00:00, 81.48it/s]
 97%|█████████▋| 133/137 [00:13<00:00,  9.88it/s]
Running evaluation: 7it [00:00, 81.72it/s]
 98%|█████████▊| 134/137 [00:13<00:00,  9.90it/s]
Running evaluation: 7it [00:00, 81.09it/s]
 99%|█████████▊| 135/137 [00:13<00:00,  9.82it/s]
Running evaluation: 7it [00:00, 76.88it/s]
 99%|█████████▉| 136/137 [00:14<00:00,  9.65it/s]
Running evaluation: 7it [00:00, 81.92it/s]
100%|██████████| 137/137 [00:14<00:00,  9.70it/s]
Running evaluation: 7it [00:00, 61.47it/s]

Metrics

In [19]:
print("CRPS: {}".format(agg_metric['mean_wQuantileLoss']))
print("ND: {}".format(agg_metric['ND']))
print("NRMSE: {}".format(agg_metric['NRMSE']))
print("MSE: {}".format(agg_metric['MSE']))
CRPS: 0.3855313301520275
ND: 0.48820539490099113
NRMSE: 1.018839692673421
MSE: 984.6672641166102
In [20]:
print("CRPS-Sum: {}".format(agg_metric['m_sum_mean_wQuantileLoss']))
print("ND-Sum: {}".format(agg_metric['m_sum_ND']))
print("NRMSE-Sum: {}".format(agg_metric['m_sum_NRMSE']))
print("MSE-Sum: {}".format(agg_metric['m_sum_MSE']))
CRPS-Sum: 0.3268739166960563
ND-Sum: 0.40321702146475014
NRMSE-Sum: 0.75586334994103
MSE-Sum: 10171980.5

Transformer-MAF

In [9]:
estimator = TransformerTempFlowEstimator(
    d_model=16,
    num_heads=4,
    input_size=552,
    target_dim=int(dataset.metadata.feat_static_cat[0].cardinality),
    prediction_length=dataset.metadata.prediction_length,
    context_length=dataset.metadata.prediction_length*4,
    flow_type='MAF',
    dequantize=True,
    freq=dataset.metadata.freq,
    trainer=Trainer(
        device=device,
        epochs=14,
        learning_rate=1e-3,
        num_batches_per_epoch=100,
        batch_size=64,
    )
)
In [10]:
predictor = estimator.train(dataset_train)
forecast_it, ts_it = make_evaluation_predictions(dataset=dataset_test,
                                             predictor=predictor,
                                             num_samples=100)
forecasts = list(forecast_it)
targets = list(ts_it)

agg_metric, _ = evaluator(targets, forecasts, num_series=len(dataset_test))
98it [00:11,  8.71it/s, avg_epoch_loss=-44.8, epoch=0]
98it [00:11,  8.60it/s, avg_epoch_loss=-170, epoch=1]
99it [00:11,  8.82it/s, avg_epoch_loss=-189, epoch=2]
98it [00:11,  8.83it/s, avg_epoch_loss=-201, epoch=3]
99it [00:11,  8.80it/s, avg_epoch_loss=-208, epoch=4]
98it [00:11,  8.72it/s, avg_epoch_loss=-212, epoch=5]
99it [00:11,  8.83it/s, avg_epoch_loss=-216, epoch=6]
99it [00:11,  8.80it/s, avg_epoch_loss=-218, epoch=7]
99it [00:11,  8.84it/s, avg_epoch_loss=-220, epoch=8]
98it [00:11,  8.74it/s, avg_epoch_loss=-222, epoch=9]
99it [00:11,  8.92it/s, avg_epoch_loss=-223, epoch=10]
99it [00:11,  8.74it/s, avg_epoch_loss=-225, epoch=11]
99it [00:11,  8.84it/s, avg_epoch_loss=-226, epoch=12]
99it [00:11,  8.88it/s, avg_epoch_loss=-227, epoch=13]
  0%|          | 0/137 [00:00<?, ?it/s]
Running evaluation: 7it [00:00, 77.77it/s]
  1%|          | 1/137 [00:00<00:21,  6.33it/s]
Running evaluation: 7it [00:00, 80.43it/s]
  1%|▏         | 2/137 [00:00<00:19,  7.08it/s]
Running evaluation: 7it [00:00, 80.35it/s]
  2%|▏         | 3/137 [00:00<00:17,  7.72it/s]
Running evaluation: 7it [00:00, 80.23it/s]
  3%|▎         | 4/137 [00:00<00:16,  8.24it/s]
Running evaluation: 7it [00:00, 79.80it/s]
  4%|▎         | 5/137 [00:00<00:15,  8.64it/s]
Running evaluation: 7it [00:00, 78.88it/s]
  4%|▍         | 6/137 [00:00<00:14,  8.92it/s]
Running evaluation: 7it [00:00, 80.12it/s]
  5%|▌         | 7/137 [00:00<00:14,  9.17it/s]
Running evaluation: 7it [00:00, 80.56it/s]
  6%|▌         | 8/137 [00:00<00:13,  9.36it/s]
Running evaluation: 7it [00:00, 80.12it/s]
  7%|▋         | 9/137 [00:00<00:13,  9.48it/s]
Running evaluation: 7it [00:00, 80.53it/s]
  7%|▋         | 10/137 [00:01<00:13,  9.58it/s]
Running evaluation: 7it [00:00, 80.50it/s]
  8%|▊         | 11/137 [00:01<00:13,  9.65it/s]
Running evaluation: 7it [00:00, 79.77it/s]
  9%|▉         | 12/137 [00:01<00:12,  9.68it/s]
Running evaluation: 7it [00:00, 80.35it/s]
  9%|▉         | 13/137 [00:01<00:12,  9.71it/s]
Running evaluation: 7it [00:00, 77.65it/s]
 10%|█         | 14/137 [00:01<00:12,  9.63it/s]
Running evaluation: 7it [00:00, 77.54it/s]
 11%|█         | 15/137 [00:01<00:12,  9.55it/s]
Running evaluation: 7it [00:00, 80.11it/s]
 12%|█▏        | 16/137 [00:01<00:12,  9.61it/s]
Running evaluation: 7it [00:00, 84.48it/s]

Running evaluation: 7it [00:00, 82.61it/s]
 13%|█▎        | 18/137 [00:01<00:12,  9.75it/s]
Running evaluation: 7it [00:00, 81.09it/s]
 14%|█▍        | 19/137 [00:01<00:12,  9.79it/s]
Running evaluation: 7it [00:00, 80.75it/s]
 15%|█▍        | 20/137 [00:02<00:11,  9.81it/s]
Running evaluation: 7it [00:00, 80.87it/s]
 15%|█▌        | 21/137 [00:02<00:11,  9.82it/s]
Running evaluation: 7it [00:00, 80.69it/s]
 16%|█▌        | 22/137 [00:02<00:11,  9.83it/s]
Running evaluation: 7it [00:00, 80.07it/s]
 17%|█▋        | 23/137 [00:02<00:11,  9.81it/s]
Running evaluation: 7it [00:00, 80.81it/s]
 18%|█▊        | 24/137 [00:02<00:11,  9.83it/s]
Running evaluation: 7it [00:00, 78.27it/s]
 18%|█▊        | 25/137 [00:02<00:11,  9.72it/s]
Running evaluation: 7it [00:00, 76.40it/s]
 19%|█▉        | 26/137 [00:02<00:11,  9.56it/s]
Running evaluation: 7it [00:00, 79.52it/s]
 20%|█▉        | 27/137 [00:02<00:11,  9.58it/s]
Running evaluation: 7it [00:00, 81.30it/s]
 20%|██        | 28/137 [00:02<00:11,  9.67it/s]
Running evaluation: 7it [00:00, 81.19it/s]
 21%|██        | 29/137 [00:03<00:11,  9.74it/s]
Running evaluation: 7it [00:00, 78.78it/s]
 22%|██▏       | 30/137 [00:03<00:11,  9.68it/s]
Running evaluation: 7it [00:00, 76.67it/s]
 23%|██▎       | 31/137 [00:03<00:11,  9.57it/s]
Running evaluation: 7it [00:00, 77.69it/s]
 23%|██▎       | 32/137 [00:03<00:11,  9.51it/s]
Running evaluation: 7it [00:00, 80.35it/s]
 24%|██▍       | 33/137 [00:03<00:10,  9.59it/s]
Running evaluation: 7it [00:00, 81.23it/s]
 25%|██▍       | 34/137 [00:03<00:10,  9.68it/s]
Running evaluation: 7it [00:00, 79.28it/s]
 26%|██▌       | 35/137 [00:03<00:10,  9.67it/s]
Running evaluation: 7it [00:00, 80.90it/s]
 26%|██▋       | 36/137 [00:03<00:10,  9.73it/s]
Running evaluation: 7it [00:00, 80.90it/s]
 27%|██▋       | 37/137 [00:03<00:10,  9.77it/s]
Running evaluation: 7it [00:00, 79.11it/s]
 28%|██▊       | 38/137 [00:03<00:10,  9.73it/s]
Running evaluation: 7it [00:00, 81.05it/s]
 28%|██▊       | 39/137 [00:04<00:10,  9.77it/s]
Running evaluation: 7it [00:00, 81.01it/s]
 29%|██▉       | 40/137 [00:04<00:09,  9.79it/s]
Running evaluation: 7it [00:00, 80.60it/s]
 30%|██▉       | 41/137 [00:04<00:09,  9.80it/s]
Running evaluation: 7it [00:00, 81.29it/s]
 31%|███       | 42/137 [00:04<00:09,  9.82it/s]
Running evaluation: 7it [00:00, 81.37it/s]
 31%|███▏      | 43/137 [00:04<00:09,  9.84it/s]
Running evaluation: 7it [00:00, 81.04it/s]
 32%|███▏      | 44/137 [00:04<00:09,  9.86it/s]
Running evaluation: 7it [00:00, 79.97it/s]
 33%|███▎      | 45/137 [00:04<00:09,  9.83it/s]
Running evaluation: 7it [00:00, 80.23it/s]
 34%|███▎      | 46/137 [00:04<00:09,  9.82it/s]
Running evaluation: 7it [00:00, 80.90it/s]
 34%|███▍      | 47/137 [00:04<00:09,  9.84it/s]
Running evaluation: 7it [00:00, 81.12it/s]
 35%|███▌      | 48/137 [00:04<00:09,  9.84it/s]
Running evaluation: 7it [00:00, 81.41it/s]
 36%|███▌      | 49/137 [00:05<00:08,  9.87it/s]
Running evaluation: 7it [00:00, 81.62it/s]
 36%|███▋      | 50/137 [00:05<00:08,  9.89it/s]
Running evaluation: 7it [00:00, 79.46it/s]
 37%|███▋      | 51/137 [00:05<00:08,  9.83it/s]
Running evaluation: 7it [00:00, 81.46it/s]
 38%|███▊      | 52/137 [00:05<00:08,  9.86it/s]
Running evaluation: 7it [00:00, 81.03it/s]
 39%|███▊      | 53/137 [00:05<00:08,  9.85it/s]
Running evaluation: 7it [00:00, 79.10it/s]
 39%|███▉      | 54/137 [00:05<00:08,  9.80it/s]
Running evaluation: 7it [00:00, 79.98it/s]
 40%|████      | 55/137 [00:05<00:08,  9.78it/s]
Running evaluation: 7it [00:00, 77.92it/s]
 41%|████      | 56/137 [00:05<00:08,  9.70it/s]
Running evaluation: 7it [00:00, 81.25it/s]
 42%|████▏     | 57/137 [00:05<00:08,  9.74it/s]
Running evaluation: 7it [00:00, 82.88it/s]
 42%|████▏     | 58/137 [00:05<00:08,  9.81it/s]
Running evaluation: 7it [00:00, 80.94it/s]
 43%|████▎     | 59/137 [00:06<00:07,  9.83it/s]
Running evaluation: 7it [00:00, 80.83it/s]
 44%|████▍     | 60/137 [00:06<00:07,  9.84it/s]
Running evaluation: 7it [00:00, 80.61it/s]
 45%|████▍     | 61/137 [00:06<00:07,  9.84it/s]
Running evaluation: 7it [00:00, 80.59it/s]
 45%|████▌     | 62/137 [00:06<00:07,  9.84it/s]
Running evaluation: 7it [00:00, 81.34it/s]
 46%|████▌     | 63/137 [00:06<00:07,  9.85it/s]
Running evaluation: 7it [00:00, 81.29it/s]
 47%|████▋     | 64/137 [00:06<00:07,  9.81it/s]
Running evaluation: 7it [00:00, 80.27it/s]
 47%|████▋     | 65/137 [00:06<00:07,  9.79it/s]
Running evaluation: 7it [00:00, 82.31it/s]
 48%|████▊     | 66/137 [00:06<00:07,  9.84it/s]
Running evaluation: 7it [00:00, 81.17it/s]
 49%|████▉     | 67/137 [00:06<00:07,  9.85it/s]
Running evaluation: 7it [00:00, 80.44it/s]
 50%|████▉     | 68/137 [00:07<00:07,  9.82it/s]
Running evaluation: 7it [00:00, 80.87it/s]
 50%|█████     | 69/137 [00:07<00:06,  9.79it/s]
Running evaluation: 7it [00:00, 78.47it/s]
 51%|█████     | 70/137 [00:07<00:06,  9.71it/s]
Running evaluation: 7it [00:00, 81.03it/s]
 52%|█████▏    | 71/137 [00:07<00:06,  9.76it/s]
Running evaluation: 7it [00:00, 78.82it/s]
 53%|█████▎    | 72/137 [00:07<00:06,  9.69it/s]
Running evaluation: 7it [00:00, 78.15it/s]
 53%|█████▎    | 73/137 [00:07<00:06,  9.61it/s]
Running evaluation: 7it [00:00, 77.70it/s]
 54%|█████▍    | 74/137 [00:07<00:06,  9.58it/s]
Running evaluation: 7it [00:00, 80.61it/s]
 55%|█████▍    | 75/137 [00:07<00:06,  9.63it/s]
Running evaluation: 7it [00:00, 79.33it/s]
 55%|█████▌    | 76/137 [00:07<00:06,  9.65it/s]
Running evaluation: 7it [00:00, 80.99it/s]
 56%|█████▌    | 77/137 [00:07<00:06,  9.70it/s]
Running evaluation: 7it [00:00, 81.21it/s]
 57%|█████▋    | 78/137 [00:08<00:06,  9.74it/s]
Running evaluation: 7it [00:00, 81.20it/s]
 58%|█████▊    | 79/137 [00:08<00:05,  9.77it/s]
Running evaluation: 7it [00:00, 80.63it/s]
 58%|█████▊    | 80/137 [00:08<00:05,  9.77it/s]
Running evaluation: 7it [00:00, 83.25it/s]

Running evaluation: 7it [00:00, 82.19it/s]
 60%|█████▉    | 82/137 [00:08<00:05,  9.86it/s]
Running evaluation: 7it [00:00, 81.32it/s]
 61%|██████    | 83/137 [00:08<00:05,  9.86it/s]
Running evaluation: 7it [00:00, 79.08it/s]
 61%|██████▏   | 84/137 [00:08<00:05,  9.81it/s]
Running evaluation: 0it [00:00, ?it/s]
Running evaluation: 7it [00:00, 59.80it/s]
 62%|██████▏   | 85/137 [00:08<00:05,  8.89it/s]
Running evaluation: 0it [00:00, ?it/s]
Running evaluation: 7it [00:00, 61.93it/s]
 63%|██████▎   | 86/137 [00:08<00:05,  8.53it/s]
Running evaluation: 0it [00:00, ?it/s]
Running evaluation: 7it [00:00, 62.18it/s]
 64%|██████▎   | 87/137 [00:09<00:06,  8.27it/s]
Running evaluation: 7it [00:00, 79.80it/s]
 64%|██████▍   | 88/137 [00:09<00:05,  8.67it/s]
Running evaluation: 7it [00:00, 81.51it/s]
 65%|██████▍   | 89/137 [00:09<00:05,  8.98it/s]
Running evaluation: 7it [00:00, 81.50it/s]
 66%|██████▌   | 90/137 [00:09<00:05,  9.24it/s]
Running evaluation: 7it [00:00, 81.78it/s]
 66%|██████▋   | 91/137 [00:09<00:04,  9.43it/s]
Running evaluation: 7it [00:00, 83.24it/s]
 67%|██████▋   | 92/137 [00:09<00:04,  9.58it/s]
Running evaluation: 7it [00:00, 81.40it/s]
 68%|██████▊   | 93/137 [00:09<00:04,  9.66it/s]
Running evaluation: 7it [00:00, 82.05it/s]
 69%|██████▊   | 94/137 [00:09<00:04,  9.76it/s]
Running evaluation: 7it [00:00, 81.61it/s]
 69%|██████▉   | 95/137 [00:09<00:04,  9.82it/s]
Running evaluation: 7it [00:00, 78.35it/s]
 70%|███████   | 96/137 [00:09<00:04,  9.73it/s]
Running evaluation: 7it [00:00, 80.77it/s]
 71%|███████   | 97/137 [00:10<00:04,  9.76it/s]
Running evaluation: 7it [00:00, 82.27it/s]
 72%|███████▏  | 98/137 [00:10<00:03,  9.81it/s]
Running evaluation: 7it [00:00, 81.60it/s]
 72%|███████▏  | 99/137 [00:10<00:03,  9.85it/s]
Running evaluation: 7it [00:00, 82.25it/s]
 73%|███████▎  | 100/137 [00:10<00:03,  9.89it/s]
Running evaluation: 7it [00:00, 81.72it/s]
 74%|███████▎  | 101/137 [00:10<00:03,  9.88it/s]
Running evaluation: 7it [00:00, 83.37it/s]

Running evaluation: 7it [00:00, 81.87it/s]
 75%|███████▌  | 103/137 [00:10<00:03,  9.93it/s]
Running evaluation: 7it [00:00, 81.33it/s]
 76%|███████▌  | 104/137 [00:10<00:03,  9.91it/s]
Running evaluation: 7it [00:00, 80.90it/s]
 77%|███████▋  | 105/137 [00:10<00:03,  9.90it/s]
Running evaluation: 7it [00:00, 81.45it/s]
 77%|███████▋  | 106/137 [00:10<00:03,  9.91it/s]
Running evaluation: 7it [00:00, 80.97it/s]
 78%|███████▊  | 107/137 [00:11<00:03,  9.90it/s]
Running evaluation: 7it [00:00, 81.81it/s]
 79%|███████▉  | 108/137 [00:11<00:02,  9.90it/s]
Running evaluation: 7it [00:00, 82.78it/s]

Running evaluation: 7it [00:00, 80.04it/s]
 80%|████████  | 110/137 [00:11<00:02,  9.90it/s]
Running evaluation: 7it [00:00, 82.18it/s]
 81%|████████  | 111/137 [00:11<00:02,  9.91it/s]
Running evaluation: 7it [00:00, 82.26it/s]

Running evaluation: 7it [00:00, 80.87it/s]
 82%|████████▏ | 113/137 [00:11<00:02,  9.92it/s]
Running evaluation: 0it [00:00, ?it/s]
Running evaluation: 7it [00:00, 54.86it/s]
 83%|████████▎ | 114/137 [00:11<00:02,  8.71it/s]
Running evaluation: 0it [00:00, ?it/s]
Running evaluation: 7it [00:00, 58.60it/s]
 84%|████████▍ | 115/137 [00:11<00:02,  8.25it/s]
Running evaluation: 7it [00:00, 75.16it/s]
 85%|████████▍ | 116/137 [00:12<00:02,  8.49it/s]
Running evaluation: 0it [00:00, ?it/s]
Running evaluation: 7it [00:00, 57.53it/s]
 85%|████████▌ | 117/137 [00:12<00:02,  8.00it/s]
Running evaluation: 0it [00:00, ?it/s]
Running evaluation: 7it [00:00, 57.26it/s]
 86%|████████▌ | 118/137 [00:12<00:02,  7.70it/s]
Running evaluation: 7it [00:00, 80.55it/s]
 87%|████████▋ | 119/137 [00:12<00:02,  8.21it/s]
Running evaluation: 7it [00:00, 81.74it/s]
 88%|████████▊ | 120/137 [00:12<00:01,  8.67it/s]
Running evaluation: 7it [00:00, 79.56it/s]
 88%|████████▊ | 121/137 [00:12<00:01,  8.95it/s]
Running evaluation: 7it [00:00, 81.46it/s]
 89%|████████▉ | 122/137 [00:12<00:01,  9.22it/s]
Running evaluation: 7it [00:00, 80.89it/s]
 90%|████████▉ | 123/137 [00:12<00:01,  9.40it/s]
Running evaluation: 7it [00:00, 80.92it/s]
 91%|█████████ | 124/137 [00:12<00:01,  9.52it/s]
Running evaluation: 7it [00:00, 81.09it/s]
 91%|█████████ | 125/137 [00:13<00:01,  9.61it/s]
Running evaluation: 7it [00:00, 82.04it/s]
 92%|█████████▏| 126/137 [00:13<00:01,  9.70it/s]
Running evaluation: 7it [00:00, 81.77it/s]
 93%|█████████▎| 127/137 [00:13<00:01,  9.78it/s]
Running evaluation: 7it [00:00, 81.17it/s]
 93%|█████████▎| 128/137 [00:13<00:00,  9.81it/s]
Running evaluation: 7it [00:00, 81.65it/s]
 94%|█████████▍| 129/137 [00:13<00:00,  9.82it/s]
Running evaluation: 7it [00:00, 81.73it/s]
 95%|█████████▍| 130/137 [00:13<00:00,  9.82it/s]
Running evaluation: 7it [00:00, 81.02it/s]
 96%|█████████▌| 131/137 [00:13<00:00,  9.80it/s]
Running evaluation: 7it [00:00, 80.68it/s]
 96%|█████████▋| 132/137 [00:13<00:00,  9.78it/s]
Running evaluation: 7it [00:00, 81.46it/s]
 97%|█████████▋| 133/137 [00:13<00:00,  9.79it/s]
Running evaluation: 7it [00:00, 82.36it/s]

Running evaluation: 7it [00:00, 79.63it/s]
 99%|█████████▊| 135/137 [00:14<00:00,  9.81it/s]
Running evaluation: 7it [00:00, 80.53it/s]
 99%|█████████▉| 136/137 [00:14<00:00,  9.81it/s]
Running evaluation: 7it [00:00, 80.42it/s]
100%|██████████| 137/137 [00:14<00:00,  9.59it/s]
Running evaluation: 7it [00:00, 62.66it/s]

Metrics

In [11]:
print("CRPS: {}".format(agg_metric['mean_wQuantileLoss']))
print("ND: {}".format(agg_metric['ND']))
print("NRMSE: {}".format(agg_metric['NRMSE']))
print("MSE: {}".format(agg_metric['MSE']))
CRPS: 0.37264046134993567
ND: 0.5043621354947913
NRMSE: 0.9928759300158241
MSE: 935.1208752979203
In [12]:
print("CRPS-Sum: {}".format(agg_metric['m_sum_mean_wQuantileLoss']))
print("ND-Sum: {}".format(agg_metric['m_sum_ND']))
print("NRMSE-Sum: {}".format(agg_metric['m_sum_NRMSE']))
print("MSE-Sum: {}".format(agg_metric['m_sum_MSE']))
CRPS-Sum: 0.30787625107438427
ND-Sum: 0.4188356756894787
NRMSE-Sum: 0.7504274205713227
MSE-Sum: 10026199.285714285
In [ ]: