class_docstr: DistributionOutput class for the Incremental (Spline) Quantile Function
  Parameters
  ----------
  num_pieces
      number of spline pieces for each spline
      ISQF reduces to IQF when num_pieces = 1
  qk_x
      List containing the x-positions of quantile knots
  tol
      tolerance for numerical safeguarding
class_docstr_tok: ["DistributionOutput","class","for","the","Incremental","(","Spline",")","Quantile","Function","Parameters","--","--","--","--","--","num_pieces","number","of","spline","pieces","for","each","spline","ISQF","reduces","to","IQF","when","num_pieces","=","1","qk_x","List","containing","the","x-positions","of","quantile","knots","tol","tolerance","for","numerical","safeguarding"]
docstr: function outputing the distribution class
  distr_args: distribution arguments
  loc: shift to the data mean
  scale: scale to the data
docstr_tok: ["function","outputing","the","distribution","class","distr_args",":","distribution","arguments","loc",":","shift","to","the","data","mean","scale",":","scale","to","the","data"]
code: def distribution(
      self,
      distr_args,
      loc: Optional[torch.Tensor] = None,
      scale: Optional[torch.Tensor] = None,
  ) -> ISQF:
      """
      function outputing the distribution class
      distr_args: distribution arguments
      loc: shift to the data mean
      scale: scale to the data
      """
  
      distr_args, qk_x = self.reshape_spline_args(distr_args, self.qk_x)
  
      distr = self.distr_cls(*distr_args, qk_x, self.tol)
  
      if scale is None:
          return distr
      else:
          return TransformedISQF(
              distr, [AffineTransform(loc=loc, scale=scale)]
          )
  
imports: from typing import Dict, List, Optional, Tuple
  import torch
  import torch.nn.functional
  from torch.distributions import AffineTransform, TransformedDistribution
  from gluonts.core.component import validated
  from .distribution_output import DistributionOutput
label_desc: Use image node_id 3 for calling the ISQFOutput obj's underlying member method code with example usage: obj.distribution(distr_args, loc, scale) and returns: distr, TransformedISQF