class_docstr: Chi distribution.
  
  The Chi distribution is defined over nonnegative real numbers and uses a
  degrees of freedom ('df') parameter.
  
  #### Mathematical Details
  
  The probability density function (pdf) is,
  
  ```none
  pdf(x; df, x >= 0) = x**(df - 1) exp(-0.5 x**2) / Z
  Z = 2**(0.5 df - 1) Gamma(0.5 df)
  ```
  
  where:
  
  * `df` denotes the degrees of freedom,
  * `Z` is the normalization constant, and,
  * `Gamma` is the [gamma function](
    https://en.wikipedia.org/wiki/Gamma_function).
  
  The Chi distribution is a transformation of the Chi2 distribution; it is the
  distribution of the positive square root of a variable obeying a Chi2
  distribution.
docstr: Construct Chi distributions with parameter `df`.
  
  Args:
    df: Floating point tensor, the degrees of freedom of the
      distribution(s). `df` must contain only positive values.
    validate_args: Python `bool`, default `False`. When `True` distribution
      parameters are checked for validity despite possibly degrading runtime
      performance. When `False` invalid inputs may silently render incorrect
      outputs.
    allow_nan_stats: Python `bool`, default `True`. When `True`, statistics
      (e.g., mean, mode, variance) use the value `NaN` to indicate the result
      is undefined. When `False`, an exception is raised if one or more of the
      statistic's batch members are undefined.
    name: Python `str` name prefixed to Ops created by this class.
      Default value: `'Chi'`.
docstr_tok: ["Construct","Chi","distributions","with","parameter","`","df","`",".","Args",":","df",":","Floating","point","tensor",",","the","degrees","of","freedom","of","the","distribution","(","s",")",".","`","df","`","must","contain","only","positive","values",".","validate_args",":","Python","`","bool","`",",","default","`","False","`",".","When","`","True","`","distribution","parameters","are","checked","for","validity","despite","possibly","degrading","runtime","performance",".","When","`","False","`","invalid","inputs","may","silently","render","incorrect","outputs",".","allow_nan_stats",":","Python","`","bool","`",",","default","`","True","`",".","When","`","True","`",",","statistics","(","e.g.",",","mean",",","mode",",","variance",")","use","the","value","`","NaN","`","to","indicate","the","result","is","undefined",".","When","`","False","`",",","an","exception","is","raised","if","one","or","more","of","the","statistic","'s","batch","members","are","undefined",".","name",":","Python","`","str","`","name","prefixed","to","Ops","created","by","this","class",".","Default","value",":","`","'Chi","'","`","."]
code: def __init__(
      self, df, validate_args=False, allow_nan_stats=True, name="Chi"
  ):
      """Construct Chi distributions with parameter `df`.
  
      Args:
        df: Floating point tensor, the degrees of freedom of the
          distribution(s). `df` must contain only positive values.
        validate_args: Python `bool`, default `False`. When `True` distribution
          parameters are checked for validity despite possibly degrading runtime
          performance. When `False` invalid inputs may silently render incorrect
          outputs.
        allow_nan_stats: Python `bool`, default `True`. When `True`, statistics
          (e.g., mean, mode, variance) use the value `NaN` to indicate the result
          is undefined. When `False`, an exception is raised if one or more of the
          statistic's batch members are undefined.
        name: Python `str` name prefixed to Ops created by this class.
          Default value: `'Chi'`.
      """
      parameters = dict(locals())
      with tf.name_scope(name) as name:
          dtype = dtype_util.common_dtype([df], dtype_hint=tf.float32)
          self._df = tensor_util.convert_nonref_to_tensor(
              df, name="df", dtype=dtype
          )
          super(Chi, self).__init__(
              distribution=chi2.Chi2(
                  df=self._df,
                  validate_args=validate_args,
                  allow_nan_stats=allow_nan_stats,
              ),
              bijector=invert_bijector.Invert(
                  square_bijector.Square(validate_args=validate_args)
              ),
              validate_args=validate_args,
              parameters=parameters,
              name=name,
          )
  
imports: import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import invert
  from tensorflow_probability.python.bijectors import softplus
  from tensorflow_probability.python.bijectors import square
  from tensorflow_probability.python.distributions import chi2
  from tensorflow_probability.python.distributions import kullback_leibler
  from tensorflow_probability.python.distributions import transformed_distribution
  from tensorflow_probability.python.internal import assert_util
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import parameter_properties
  from tensorflow_probability.python.internal import tensor_util
  from tensorflow_probability.python.math import special
label_desc: Use image node_id 1 to create a new Chi object from inherited base classes: transformed_distribution with example: obj = Chi(df, validate_args, allow_nan_stats, name)