docstr: ivy.Container instance method variant of ivy.poisson_nll_loss. This
  method simply wraps the function, and so the docstring for ivy.
  poisson_nll_loss also applies to this method with minimal changes.
  
  Parameters
  ----------
  self
      input array or container containing input labels.
  target
      input array or container containing the target labels.
  log_input
      If `True`, the loss is computed as
      :math:`exp(input) - target * input`. If `False`, the loss is computed as
      :math:`input - target * log(input + eps)`. Default is `True`.
  full
      Whether to compute the full loss, i.e.,
      to add the Stirling approximation term
      :math:`target * log(target) - target + 0.5 * log(2 * pi * target)`.
      Default is `False`.
  eps
      Small value to prevent evaluation of `log(0)` when `log_input` is `False`.
      Default is 1e-8.
  reduction
      Specifies the reduction applied to the output.
      Options are 'none', 'mean', or 'sum'.
      'none': no reduction will be applied. 'mean': the output will be averaged.
      'sum': the output will be summed.
      Default is 'mean'.
  key_chains
      The key-chains to apply or not apply the method to. Default is ``None``.
  to_apply
      If input, the method will be applied to key_chains, otherwise key_chains
      will be skipped. Default is ``input``.
  prune_unapplied
      Whether to prune key_chains for which the function was not applied.
      Default is ``False``.
  map_sequences
      Whether to also map method to sequences (lists, tuples).
      Default is ``False``.
  
  Returns
  -------
  ret
      An array of the same shape as `input` representing
      the Poisson Negative Log Likelihood Loss.
  
  Raises
  ------
  ValueError
      If the `input` and `target` tensors do not have the same shape.
  
  Examples
  --------
  >>> x = ivy.Container(a=ivy.array([[1, 0, 2]], dtype=ivy.float32),
  ...              b=ivy.array([[3, 2, 1]], dtype=ivy.float32))
  >>> y = ivy.Container(a=ivy.array([[0.6, 0.2, 0.3]], dtype=ivy.float32),
  ...              b=ivy.array([[0.8, 0.2, 0.2]], dtype=ivy.float32))
  >>> z = x.poisson_nll_loss(y)
  >>> print(z)
  {
      a: ivy.array(3.30244565),
      b: ivy.array(9.06429195)
  }
docstr_tok: ["ivy.Container","instance","method","variant","of","ivy.poisson_nll_loss",".","This","method","simply","wraps","the","function",",","and","so","the","docstring","for","ivy",".","poisson_nll_loss","also","applies","to","this","method","with","minimal","changes",".","Parameters","--","--","--","--","--","self","input","array","or","container","containing","input","labels",".","target","input","array","or","container","containing","the","target","labels",".","log_input","If","`","True","`",",","the","loss","is","computed","as",":","math",":","`","exp","(","input",")","-","target","*","input","`",".","If","`","False","`",",","the","loss","is","computed","as",":","math",":","`","input","-","target","*","log","(","input","+","eps",")","`",".","Default","is","`","True","`",".","full","Whether","to","compute","the","full","loss",",","i.e.",",","to","add","the","Stirling","approximation","term",":","math",":","`","target","*","log","(","target",")","-","target","+","0.5","*","log","(","2","*","pi","*","target",")","`",".","Default","is","`","False","`",".","eps","Small","value","to","prevent","evaluation","of","`","log","(","0",")","`","when","`","log_input","`","is","`","False","`",".","Default","is","1e-8",".","reduction","Specifies","the","reduction","applied","to","the","output",".","Options","are","'none","'",",","'mean","'",",","or","'sum","'",".","'none","'",":","no","reduction","will","be","applied",".","'mean","'",":","the","output","will","be","averaged",".","'sum","'",":","the","output","will","be","summed",".","Default","is","'mean","'",".","key_chains","The","key-chains","to","apply","or","not","apply","the","method","to",".","Default","is","``","None","``",".","to_apply","If","input",",","the","method","will","be","applied","to","key_chains",",","otherwise","key_chains","will","be","skipped",".","Default","is","``","input","``",".","prune_unapplied","Whether","to","prune","key_chains","for","which","the","function","was","not","applied",".","Default","is","``","False","``",".","map_sequences","Whether","to","also","map","method","to","sequences","(","lists",",","tuples",")",".","Default","is","``","False","``",".","Returns","--","--","--","-","ret","An","array","of","the","same","shape","as","`","input","`","representing","the","Poisson","Negative","Log","Likelihood","Loss",".","Raises","--","--","--","ValueError","If","the","`","input","`","and","`","target","`","tensors","do","not","have","the","same","shape",".","Examples","--","--","--","--",">",">",">","x","=","ivy.Container","(","a=ivy.array","(","[","[","1",",","0",",","2","]","]",",","dtype=ivy.float32",")",",","...","b=ivy.array","(","[","[","3",",","2",",","1","]","]",",","dtype=ivy.float32",")",")",">",">",">","y","=","ivy.Container","(","a=ivy.array","(","[","[","0.6",",","0.2",",","0.3","]","]",",","dtype=ivy.float32",")",",","...","b=ivy.array","(","[","[","0.8",",","0.2",",","0.2","]","]",",","dtype=ivy.float32",")",")",">",">",">","z","=","x.poisson_nll_loss","(","y",")",">",">",">","print","(","z",")","{","a",":","ivy.array","(","3.30244565",")",",","b",":","ivy.array","(","9.06429195",")","}"]
code: def poisson_nll_loss(
      self: Union[ivy.Container, ivy.Array, ivy.NativeArray],
      target: Union[ivy.Container, ivy.Array, ivy.NativeArray],
      *,
      log_input: [Union[bool, ivy.Container]] = True,
      full: [Union[bool, ivy.Container]] = False,
      eps: [Union[float, ivy.Container]] = 1e-8,
      reduction: [Union[str, ivy.Container]] = "mean",
      key_chains: Optional[
          Union[List[str], Dict[str, str], ivy.Container]
      ] = None,
      to_apply: Union[bool, ivy.Container] = True,
      prune_unapplied: Union[bool, ivy.Container] = False,
      map_sequences: Union[bool, ivy.Container] = False,
  ) -> ivy.Container:
      r"""ivy.Container instance method variant of ivy.poisson_nll_loss. This
      method simply wraps the function, and so the docstring for ivy.
      poisson_nll_loss also applies to this method with minimal changes.
  
      Parameters
      ----------
      self
          input array or container containing input labels.
      target
          input array or container containing the target labels.
      log_input
          If `True`, the loss is computed as
          :math:`exp(input) - target * input`. If `False`, the loss is computed as
          :math:`input - target * log(input + eps)`. Default is `True`.
      full
          Whether to compute the full loss, i.e.,
          to add the Stirling approximation term
          :math:`target * log(target) - target + 0.5 * log(2 * pi * target)`.
          Default is `False`.
      eps
          Small value to prevent evaluation of `log(0)` when `log_input` is `False`.
          Default is 1e-8.
      reduction
          Specifies the reduction applied to the output.
          Options are 'none', 'mean', or 'sum'.
          'none': no reduction will be applied. 'mean': the output will be averaged.
          'sum': the output will be summed.
          Default is 'mean'.
      key_chains
          The key-chains to apply or not apply the method to. Default is ``None``.
      to_apply
          If input, the method will be applied to key_chains, otherwise key_chains
          will be skipped. Default is ``input``.
      prune_unapplied
          Whether to prune key_chains for which the function was not applied.
          Default is ``False``.
      map_sequences
          Whether to also map method to sequences (lists, tuples).
          Default is ``False``.
  
      Returns
      -------
      ret
          An array of the same shape as `input` representing
          the Poisson Negative Log Likelihood Loss.
  
      Raises
      ------
      ValueError
          If the `input` and `target` tensors do not have the same shape.
  
      Examples
      --------
      >>> x = ivy.Container(a=ivy.array([[1, 0, 2]], dtype=ivy.float32),
      ...              b=ivy.array([[3, 2, 1]], dtype=ivy.float32))
      >>> y = ivy.Container(a=ivy.array([[0.6, 0.2, 0.3]], dtype=ivy.float32),
      ...              b=ivy.array([[0.8, 0.2, 0.2]], dtype=ivy.float32))
      >>> z = x.poisson_nll_loss(y)
      >>> print(z)
      {
          a: ivy.array(3.30244565),
          b: ivy.array(9.06429195)
      }
      """
      return self._static_poisson_nll_loss(
          self,
          target,
          log_input=log_input,
          full=full,
          eps=eps,
          reduction=reduction,
          key_chains=key_chains,
          to_apply=to_apply,
          prune_unapplied=prune_unapplied,
          map_sequences=map_sequences,
      )
  
imports: from typing import Optional, Union, List, Dict
  import ivy
  from ivy.data_classes.container.base import ContainerBase
label_desc: Use image node_id 14 for calling the _ContainerWithLossesExperimental obj's underlying member method code with example usage: obj.poisson_nll_loss(target) and returns: self