class_docstr: The NBEATS Block as described in the paper:
  https://arxiv.org/abs/1905.10437. This is the Seasonal block variant.
  
  Parameters
  ----------
  width
      Width of the fully connected layers with ReLu activation.
  num_block_layers
      Number of fully connected layers with ReLu activation.
  expansion_coefficient_length
      Not used in this block type.
  prediction_length
      Length of the prediction. Also known as 'horizon'.
  context_length
      Number of time units that condition the predictions
      Also known as 'lookback period'.
  has_backcast
      Only the last block of the network doesn't.
  kwargs
      Arguments passed to 'HybridBlock'.
code: def __init__(self, **kwargs) -> None:
      super().__init__(**kwargs)
  
      # the number of coefficient in the fourier basis per sine and cosine
      # each determined depending on prediction length, as defined by paper
      # also: dont use floor because prediction_length=1 should be mapped to
      # 0
      self.num_coefficients = int((self.prediction_length / 2) - 1) + 1
  
      with self.name_scope():
          if self.has_backcast:
              self.theta_backcast = mx.gluon.nn.Dense(
                  units=2 * self.num_coefficients,
                  prefix="theta_backcast_dense_",  # linear activation:
              )
              self.backcast = mx.gluon.nn.HybridLambda(
                  lambda F, thetas: F.dot(thetas, self.backcast_basis),
                  prefix="backcast_lambda_",
              )
          self.theta_forecast = mx.gluon.nn.Dense(
              units=2 * self.num_coefficients,
              prefix="theta_forecast_dense_",  # linear activation:
          )
          self.forecast = mx.gluon.nn.HybridLambda(
              lambda F, thetas: F.dot(thetas, self.forecast_basis),
              prefix="forecast_lambda_",
          )
  
imports: from typing import List, Optional
  import mxnet
  import numpy
  from gluonts.core.component import validated
  from gluonts.mx import Tensor
  from gluonts.mx.block.scaler import MeanScaler, NOPScaler
  from gluonts.time_feature import get_seasonality
label_desc: Use image node_id 1 to create a new NBEATSSeasonalBlock object from inherited base classes: NBEATSBlock with example: obj = NBEATSSeasonalBlock()