code: def next_epoch(self):
      
      epoch = next(self._all_epochs)
      folder = os.path.join(self._root, str(epoch), self._subset)
      self.data = []
      silence = None
  
      gc.disable()
  
      for filename in os.listdir(folder):
        command = os.path.splitext(os.path.basename(filename))[0]
        with open(os.path.join(folder, filename), "r") as pkl_file:
          audio = pickle.load(pkl_file)
  
        # Check for 'silence'
        if command == "silence":
          silence = audio
        else:
          target = self.classes.index(os.path.basename(command))
          self.data.extend(itertools.product(audio, [target]))
  
      gc.enable()
  
      target = self.classes.index("silence")
      self.data += [(silence, target)] * int(len(self.data) * self._silence_percentage)
      return epoch
docs: Load next epoch from disk