class_docstr: Dataset that generates samples from different sine curves by following the
  setting in Mate-SGD: https://arxiv.org/pdf/1707.09835.pdf
  config:
      num_classes: number of different sine curves.
      support: number of support samples for each sine curve.
      query: number of query samples for each sine curve.
      amplitude: range of amplitude of sine curves.
      frequency: range of frequency of sine curves.
      phase: range of phase of sine curves.
      x_range: range of x of sine curves.
      noise: if add noise to sine curves.
class_docstr_tok: ["Dataset","that","generates","samples","from","different","sine","curves","by","following","the","setting","in","Mate-SGD",":","https",":","\/\/arxiv.org\/pdf\/1707.09835.pdf","config",":","num_classes",":","number","of","different","sine","curves",".","support",":","number","of","support","samples","for","each","sine","curve",".","query",":","number","of","query","samples","for","each","sine","curve",".","amplitude",":","range","of","amplitude","of","sine","curves",".","frequency",":","range","of","frequency","of","sine","curves",".","phase",":","range","of","phase","of","sine","curves",".","x_range",":","range","of","x","of","sine","curves",".","noise",":","if","add","noise","to","sine","curves","."]
code: def __getitem__(self, idx):
      # randomly split support and query
      idxes = np.arange(self.support + self.query)
      np.random.shuffle(idxes)
  
      return (
          torch.from_numpy(
              self.x[idx][idxes[: self.support]]
          ).unsqueeze(1),
          torch.from_numpy(
              self.y[idx][idxes[: self.support]]
          ).unsqueeze(1),
          torch.from_numpy(
              self.x[idx][idxes[self.support :]]
          ).unsqueeze(1),
          torch.from_numpy(
              self.y[idx][idxes[self.support :]]
          ).unsqueeze(1),
      )
  
file_path: PARL/benchmark/torch/maml++/data.py
imports: import numpy
  from torch.utils.data import Dataset, DataLoader
  import torch
  import random
  import numpy
label_desc: Use image node_id 2 for calling the MetaLearningDataSet obj's underlying member method code with example usage: obj.__getitem__(idx) and returns: torch,  torch,  torch,  torch