class_docstr: Mean absolute scaled error
  
  Defined as ``(y_pred - target).abs() / all_targets[:, :-1] - all_targets[:, 1:]).mean(1)``.
  ``all_targets`` are here the concatenated encoder and decoder targets
class_docstr_tok: ["Mean","absolute","scaled","error","Defined","as","``","(","y_pred","-","target",")",".abs","(",")","\/","all_targets","[",":",",",":","-1","]","-","all_targets","[",":",",","1",":","]",")",".mean","(","1",")","``",".","``","all_targets","``","are","here","the","concatenated","encoder","and","decoder","targets"]
code: def loss(self, y_pred, target, scaling):
      return (
          self.to_prediction(y_pred) - target
      ).abs() / scaling.unsqueeze(-1)
  
imports: from typing import Any, Callable, Dict, List, Optional, Tuple, Union
  import scipy.stats
  import torch
  import torch.nn.functional
  from torch.nn.utils import rnn
  from pytorch_forecasting.metrics.base_metrics import MultiHorizonMetric
  from pytorch_forecasting.utils import create_mask, unpack_sequence, unsqueeze_like
label_desc: Use image node_id 2 for calling the MASE obj's underlying member method code with example usage: obj.loss(y_pred, target, scaling) and returns: unknown