class_docstr: Dataset Split Manager. Possess train/valid/test datasets and provide data loaders
  
  Parameters:
  --------------
  train_set: torch.utils.data.Dataset
      training dataset
  valid_set: torch.utils.data.Dataset or None
      validation dataset if provided
  test_set: torch.utils.data.Dataset
      test dataset
  collate_fn: callable
      function that accepts a batch of inputs and
      returns a stacked version for each data field
  always_validation: bool
      if True, use test data at request of validation loader;
      otherwise return None
class_docstr_tok: ["Dataset","Split","Manager",".","Possess","train\/valid\/test","datasets","and","provide","data","loaders","Parameters",":","--","--","--","--","--","--","--","train_set",":","torch.utils.data.Dataset","training","dataset","valid_set",":","torch.utils.data.Dataset","or","None","validation","dataset","if","provided","test_set",":","torch.utils.data.Dataset","test","dataset","collate_fn",":","callable","function","that","accepts","a","batch","of","inputs","and","returns","a","stacked","version","for","each","data","field","always_validation",":","bool","if","True",",","use","test","data","at","request","of","validation","loader",";","otherwise","return","None"]
code: def valid_loader(
      self,
      batch_size: int,
      cuda_device: int,
      n_workers: int = 0,
  ) -> Iterator:
      if self.valid_set is None:
          if self.always_validation:
              dataset = self.test_set
          else:
              raise AttributeError("No validation set")
      else:
          dataset = self.valid_set
      return self._data_loader(
          dataset,
          batch_size,
          False,
          cuda_device,
          False,
          n_workers,
          None,
      )
  
file_path: gluonts/src/gluonts/nursery/daf/tslib/dataset/loader.py
imports: from typing import NamedTuple, Callable, Optional, Iterator
  import re
  from torch import Tensor
  from torch._six import container_abcs, int_classes, string_classes
  from torch.utils.data import Dataset, DataLoader, DistributedSampler
  import torch
  from ..engine.distributed import is_distributed, get_world_size
label_desc: Use image node_id 7 for calling the MetaDataset obj's underlying member method code with example usage: obj.valid_loader(batch_size, cuda_device, n_workers) and returns: self