Files
pytorch-ts/examples/Implicit-Quantile-Network-Example.ipynb
T
2022-12-23 14:34:54 +08:00

59 KiB

In [1]:
import matplotlib.pyplot as plt
import json

from gluonts.dataset.repository.datasets import get_dataset
from gluonts.evaluation import Evaluator
from gluonts.evaluation.backtest import make_evaluation_predictions

from pts.model.deepar import DeepAREstimator
from pts.modules.distribution_output import ImplicitQuantileOutput
from pts import Trainer
from pts.dataset.repository.datasets import dataset_recipes
In [2]:
import torch
In [3]:
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
In [4]:
dataset = get_dataset("m5", regenerate=False)
In [5]:
print(f"Recommended prediction horizon: {dataset.metadata.prediction_length}")
print(f"Frequency of the time series: {dataset.metadata.freq}")
Recommended prediction horizon: 28
Frequency of the time series: D
In [6]:
estimator = DeepAREstimator(
    distr_output=ImplicitQuantileOutput(output_domain="Positive"),
    cell_type='GRU',
    input_size=63,
    num_cells=64,
    num_layers=3,
    dropout_rate=0.2,
    use_feat_dynamic_real=True,
    use_feat_static_cat=True,
    cardinality=[int(cat_feat_info.cardinality) for cat_feat_info in dataset.metadata.feat_static_cat],
    embedding_dimension = [4, 4, 4, 4, 16],
    prediction_length=dataset.metadata.prediction_length,
    context_length=dataset.metadata.prediction_length*2,
    freq=dataset.metadata.freq,
    scaling=True,
    trainer=Trainer(device=device,
                    epochs=20,
                    learning_rate=1e-3,
                    num_batches_per_epoch=120,
                    batch_size=256,
                   )
)
In [7]:
predictor = estimator.train(dataset.train, num_workers=8)
  0%|          | 0/119 [00:00<?, ?it/s]
  0%|          | 0/119 [00:00<?, ?it/s]
  0%|          | 0/119 [00:00<?, ?it/s]
  0%|          | 0/119 [00:00<?, ?it/s]
  0%|          | 0/119 [00:00<?, ?it/s]
  0%|          | 0/119 [00:00<?, ?it/s]
Exception ignored in: Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    self._shutdown_workers()
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers


Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    self._shutdown_workers()
<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>Exception ignored in: 
Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
        self._shutdown_workers()
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'
AssertionError: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>can only test a child processAssertionError: if w.is_alive():
can only test a child process
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive

    Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__

    self._shutdown_workers()
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
assert self._parent_pid == os.getpid(), 'can only test a child process'Exception ignored in: 
<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>AssertionError    : Exception ignored in: can only test a child process
if w.is_alive():
Traceback (most recent call last):
Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>

<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive

  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
Exception ignored in:             Traceback (most recent call last):
self._shutdown_workers()<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
self._shutdown_workers()

Exception ignored in:   File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    assert self._parent_pid == os.getpid(), 'can only test a child process'if w.is_alive():
AssertionError: can only test a child process
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    self._shutdown_workers()Traceback (most recent call last):

  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
        
if w.is_alive():Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
self._shutdown_workers()  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
        if w.is_alive():


Exception ignored in:   File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
assert self._parent_pid == os.getpid(), 'can only test a child process'<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
Traceback (most recent call last):
Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__

      File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'if w.is_alive():
    self._shutdown_workers()  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
        assert self._parent_pid == os.getpid(), 'can only test a child process'
AssertionErrorself._shutdown_workers()
:   File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    
can only test a child process
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
self._shutdown_workers()    
AssertionError: assert self._parent_pid == os.getpid(), 'can only test a child process'
AssertionError: can only test a child process  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers

    
if w.is_alive():
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    
Exception ignored in: can only test a child process
AssertionErrorassert self._parent_pid == os.getpid(), 'can only test a child process'  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
if w.is_alive():can only test a child process<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>: 
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    
assert self._parent_pid == os.getpid(), 'can only test a child process'
Exception ignored in: 
    AssertionError
if w.is_alive():Traceback (most recent call last):
AssertionError<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>: 
: can only test a child process  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
can only test a child process    
assert self._parent_pid == os.getpid(), 'can only test a child process'

Traceback (most recent call last):

AssertionError  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
Exception ignored in:     <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>self._shutdown_workers()Exception ignored in: 

  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>    
if w.is_alive():Traceback (most recent call last):

  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    assert self._parent_pid == os.getpid(), 'can only test a child process'
Traceback (most recent call last):
AssertionError:   File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
can only test a child process:     
self._shutdown_workers()can only test a child process

  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
Exception ignored in: 
<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>      File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
self._shutdown_workers()    assert self._parent_pid == os.getpid(), 'can only test a child process'
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'


Traceback (most recent call last):
AssertionErrorAssertionError  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
: :     can only test a child processcan only test a child processself._shutdown_workers()


  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():    
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'
AssertionError: can only test a child process
self._shutdown_workers()
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'
AssertionError: can only test a child process
  0%|          | 0/119 [00:00<?, ?it/s]
  0%|          | 0/119 [00:00<?, ?it/s]
Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
Exception ignored in: Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
        self._shutdown_workers()
self._shutdown_workers()Exception ignored in:   File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers

<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    
    if w.is_alive():
if w.is_alive():Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    self._shutdown_workers()
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'
AssertionError: can only test a child process
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    
  0%|          | 0/119 [00:00<?, ?it/s]
assert self._parent_pid == os.getpid(), 'can only test a child process'

AssertionError  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    : Exception ignored in: Exception ignored in: Exception ignored in: Exception ignored in: assert self._parent_pid == os.getpid(), 'can only test a child process'Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0><function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0><function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>can only test a child process<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>



AssertionError

Traceback (most recent call last):
Traceback (most recent call last):
Traceback (most recent call last):
: Traceback (most recent call last):
Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
can only test a child process  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
            
    self._shutdown_workers()self._shutdown_workers()    self._shutdown_workers()self._shutdown_workers()


  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
self._shutdown_workers()    
if w.is_alive():
          File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
if w.is_alive():if w.is_alive():
        

  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
if w.is_alive():  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
if w.is_alive():
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    
        assert self._parent_pid == os.getpid(), 'can only test a child process'  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive

assert self._parent_pid == os.getpid(), 'can only test a child process'AssertionErrorassert self._parent_pid == os.getpid(), 'can only test a child process'  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process': 
AssertionError: can only test a child process


    AssertionErrorAssertionErrorcan only test a child processassert self._parent_pid == os.getpid(), 'can only test a child process'
: : AssertionErrorcan only test a child process

: can only test a child processcan only test a child process

  0%|          | 0/119 [00:00<?, ?it/s]
  0%|          | 0/119 [00:00<?, ?it/s]
Exception ignored in: Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    self._shutdown_workers()Traceback (most recent call last):

  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    self._shutdown_workers()
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    
assert self._parent_pid == os.getpid(), 'can only test a child process'  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'
AssertionError: can only test a child process

AssertionError: can only test a child process
Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    self._shutdown_workers()
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'
AssertionError: can only test a child process
Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    self._shutdown_workers()
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'
AssertionError: can only test a child process
Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    self._shutdown_workers()
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'
AssertionError: can only test a child process
  0%|          | 0/119 [00:00<?, ?it/s]
  0%|          | 0/119 [00:00<?, ?it/s]
  0%|          | 0/119 [00:00<?, ?it/s]
Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
Exception ignored in: Traceback (most recent call last):
Traceback (most recent call last):
Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    self._shutdown_workers()    
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():self._shutdown_workers()

  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    Traceback (most recent call last):
assert self._parent_pid == os.getpid(), 'can only test a child process'  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__

AssertionError    : can only test a child processself._shutdown_workers()


Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    self._shutdown_workers()
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
        if w.is_alive():if w.is_alive():  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers


  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
        assert self._parent_pid == os.getpid(), 'can only test a child process'assert self._parent_pid == os.getpid(), 'can only test a child process'    

AssertionErrorif w.is_alive():AssertionError: : can only test a child processcan only test a child process

Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    
self._shutdown_workers()  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive

  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'
AssertionError    : assert self._parent_pid == os.getpid(), 'can only test a child process'can only test a child process

AssertionError: can only test a child process
Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    self._shutdown_workers()
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():
Exception ignored in:   File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
        self._shutdown_workers()assert self._parent_pid == os.getpid(), 'can only test a child process'
AssertionError: 
can only test a child process  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    
if w.is_alive():
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'
AssertionError: can only test a child process
Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    self._shutdown_workers()
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'AssertionError
Exception ignored in: : <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
can only test a child processTraceback (most recent call last):

  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    self._shutdown_workers()
Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    self._shutdown_workers()
Traceback (most recent call last):
Exception ignored in: <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__

    self._shutdown_workers()  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    
Traceback (most recent call last):
if w.is_alive():  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
      File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers

  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers

AssertionErrorself._shutdown_workers()    : can only test a child process
    if w.is_alive():
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():if w.is_alive():

  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'    assert self._parent_pid == os.getpid(), 'can only test a child process'
AssertionError: can only test a child process

  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive

Exception ignored in:     assert self._parent_pid == os.getpid(), 'can only test a child process'<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>
AssertionErrorAssertionError: : Exception ignored in: can only test a child processcan only test a child process<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>



Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
    Traceback (most recent call last):
Exception ignored in:   File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__
<function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>    
self._shutdown_workers()Traceback (most recent call last):
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__

      File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
self._shutdown_workers()    
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
if w.is_alive():Exception ignored in: 
    <function _MultiProcessingDataLoaderIter.__del__ at 0x7fd49bea94c0>  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive

if w.is_alive():    Traceback (most recent call last):
assert self._parent_pid == os.getpid(), 'can only test a child process'
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1466, in __del__

      File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
AssertionErrorself._shutdown_workers(): 
can only test a child process  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers

    if w.is_alive():
      File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
assert self._parent_pid == os.getpid(), 'can only test a child process'    
assert self._parent_pid == os.getpid(), 'can only test a child process'AssertionError
: AssertionErrorcan only test a child process: 
can only test a child process
self._shutdown_workers()
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1449, in _shutdown_workers
    if w.is_alive():
  File "/home/wassname/miniforge3/envs/glounts/lib/python3.9/multiprocessing/process.py", line 160, in is_alive
    assert self._parent_pid == os.getpid(), 'can only test a child process'
AssertionError: can only test a child process
  0%|          | 0/119 [00:00<?, ?it/s]
  0%|          | 0/119 [00:00<?, ?it/s]
In [ ]:
forecast_it, ts_it = make_evaluation_predictions(
    dataset=dataset.test,  # test dataset
    predictor=predictor,  # predictor
    num_samples=100,  # number of sample paths we want for evaluation
)
In [ ]:
forecasts = list(forecast_it)
tss = list(ts_it)
In [ ]:
evaluator = Evaluator()
agg_metrics, item_metrics = evaluator(iter(tss), iter(forecasts), num_series=len(dataset.test))
Running evaluation: 100%|██████████| 30490/30490 [00:01<00:00, 27259.18it/s]
/home/krasul/.env/pytorch/lib/python3.8/site-packages/pandas/core/dtypes/cast.py:1672: UserWarning: Warning: converting a masked element to nan.
  subarr = np.array(values, dtype=dtype, copy=copy)
In [ ]:
print(json.dumps(agg_metrics, indent=4))
{
    "MSE": 4.755984111358613,
    "abs_error": 834177.9219083469,
    "abs_target_sum": 1231764.0,
    "abs_target_mean": 1.4428196598416543,
    "seasonal_error": 1.12721783493784,
    "MASE": 0.8981968607451877,
    "MAPE": 0.8099336448562378,
    "sMAPE": 1.6020707415533486,
    "OWA": NaN,
    "MSIS": 8.260408136542406,
    "QuantileLoss[0.1]": 232933.92667773535,
    "Coverage[0.1]": 0.5482148713864025,
    "QuantileLoss[0.2]": 432863.72900996683,
    "Coverage[0.2]": 0.5567293726280275,
    "QuantileLoss[0.3]": 602256.93819869,
    "Coverage[0.3]": 0.5704551843695826,
    "QuantileLoss[0.4]": 737814.7064298784,
    "Coverage[0.4]": 0.5920418872698383,
    "QuantileLoss[0.5]": 834177.922027275,
    "Coverage[0.5]": 0.6226373986787334,
    "QuantileLoss[0.6]": 884780.6868602519,
    "Coverage[0.6]": 0.6591399990629399,
    "QuantileLoss[0.7]": 876329.6622192905,
    "Coverage[0.7]": 0.7127079136016631,
    "QuantileLoss[0.8]": 791094.1399574431,
    "Coverage[0.8]": 0.7817387433819231,
    "QuantileLoss[0.9]": 586032.7896624055,
    "Coverage[0.9]": 0.8721290352809268,
    "RMSE": 2.1808218889580626,
    "NRMSE": 1.5114999813610817,
    "ND": 0.677222196710041,
    "wQuantileLoss[0.1]": 0.18910597052498315,
    "wQuantileLoss[0.2]": 0.35141774642704837,
    "wQuantileLoss[0.3]": 0.4889385776810249,
    "wQuantileLoss[0.4]": 0.5989903150521353,
    "wQuantileLoss[0.5]": 0.677222196806592,
    "wQuantileLoss[0.6]": 0.7183037390768459,
    "wQuantileLoss[0.7]": 0.711442826888341,
    "wQuantileLoss[0.8]": 0.6422448942796211,
    "wQuantileLoss[0.9]": 0.4757671028398342,
    "mean_absolute_QuantileLoss": 664253.8334492152,
    "mean_wQuantileLoss": 0.5392703743973806,
    "MAE_Coverage": 0.16756209425937085
}
In [ ]:
item_metrics.plot(x='MSIS', y='MASE', kind='scatter')
plt.grid(which="both")
plt.show()
In [ ]: