code: def after_epoch(self, epoch_id: int, epoch_data: EpochData) -> None:
          
  
          super().after_epoch(epoch_id=epoch_id, epoch_data=epoch_data)
  
          self._saved_loss.append(epoch_data[self._stream][self._variable][OnPlateau._AGGREGATION])
  
          long_mean = np.mean(self._saved_loss[-self._long_term:])
          short_mean = np.mean(self._saved_loss[-self._short_term:])
          if self._objective == 'min' and long_mean < short_mean:
              self._on_plateau_action(epoch_id=epoch_id, epoch_data=epoch_data)
          elif self._objective == 'max' and long_mean > short_mean:
              self._on_plateau_action(epoch_id=epoch_id, epoch_data=epoch_data)
docs: Call :py:meth:`_on_plateau_action` if the ``long_term``
          variable mean is lower/greater than the ``short_term`` mean.