docstr: Returns negative log-likelihood of `target` under `distr`.
  
  Parameters
  ----------
  F
  target
      Tensor with shape (batch_size, seq_len, target_dim)
  distr
      Distribution instances
  
  Returns
  -------
  Loss
      Tensor with shape (batch_size, seq_length, 1)
docstr_tok: ["Returns","negative","log-likelihood","of","`","target","`","under","`","distr","`",".","Parameters","--","--","--","--","--","F","target","Tensor","with","shape","(","batch_size",",","seq_len",",","target_dim",")","distr","Distribution","instances","Returns","--","--","--","-","Loss","Tensor","with","shape","(","batch_size",",","seq_length",",","1",")"]
code: def loss(self, F, target: Tensor, distr: Distribution) -> Tensor:
      """
      Returns negative log-likelihood of `target` under `distr`.
  
      Parameters
      ----------
      F
      target
          Tensor with shape (batch_size, seq_len, target_dim)
      distr
          Distribution instances
  
      Returns
      -------
      Loss
          Tensor with shape (batch_size, seq_length, 1)
      """
      # we sum the last axis to have the same shape for all likelihoods
      # (batch_size, subseq_length, 1)
      return -distr.log_prob(target).expand_dims(axis=-1)
  
imports: from typing import List, Optional, Tuple
  import mxnet
  from gluonts.core.component import validated
  from gluonts.mx import Tensor
  from gluonts.mx.block.scaler import MeanScaler, NOPScaler
  from gluonts.mx.distribution import Distribution, DistributionOutput
  from gluonts.mx.util import assert_shape, weighted_average
label_desc: Use image node_id 6 for calling the DeepVARNetwork obj's underlying member method code with example usage: obj.loss(F, target, distr) and returns: unknown