mindspore.nn.probability.bijector.GumbelCDF
- class mindspore.nn.probability.bijector.GumbelCDF(loc=0.0, scale=1.0, name='GumbelCDF')[source]
GumbelCDF Bijector. This Bijector performs the operation:
\[Y = \exp(-\exp(\frac{-(X - loc)}{scale}))\]- Parameters
loc (float, list, numpy.ndarray, Tensor) – The location. Default: 0.0.
scale (float, list, numpy.ndarray, Tensor) – The scale. Default: 1.0.
name (str) – The name of the Bijector. Default: ‘GumbelCDF’.
- Inputs and Outputs of APIs:
The accessible APIs of the Gumbel_cdf bijector are defined in the base class, including:
forward
inverse
forward_log_jacobian
backward_log_jacobian
It should be notice that the inputs of APIs of the Gumbel_cdf bijector should be always a tensor, with a shape that can be broadcasted to that of loc and scale. For more details of all APIs, including the inputs and outputs of APIs of the Gumbel_cdf bijector, please refer to
mindspore.nn.probability.bijector.Bijector
, and examples below.- Supported Platforms:
Ascend
GPU
Note
scale must be greater than zero. For inverse and inverse_log_jacobian, input should be in range of (0, 1). The dtype of loc and scale must be float. If loc, scale are passed in as numpy.ndarray or tensor, they have to have the same dtype otherwise an error will be raised.
- Raises
TypeError – When the dtype of loc or scale is not float, or when the dtype of loc and scale is not same.
Examples
>>> import mindspore >>> import mindspore.nn as nn >>> import mindspore.nn.probability.bijector as msb >>> from mindspore import Tensor >>> >>> # To initialize a GumbelCDF bijector of loc 1.0, and scale 2.0. >>> gumbel_cdf = msb.GumbelCDF(1.0, 2.0) >>> # To use a GumbelCDF bijector in a network. >>> x = Tensor([1, 2, 3], dtype=mindspore.float32) >>> y = Tensor([0.1, 0.2, 0.3], dtype=mindspore.float32) >>> ans1 = gumbel_cdf.forward(x) >>> print(ans1.shape) (3,) >>> ans2 = gumbel_cdf.inverse(y) >>> print(ans2.shape) (3,) >>> ans3 = gumbel_cdf.forward_log_jacobian(x) >>> print(ans3.shape) (3,) >>> ans4 = gumbel_cdf.inverse_log_jacobian(y) >>> print(ans4.shape) (3,)
- property loc
Return the loc parameter of the bijector.
- Output:
Tensor, the loc parameter of the bijector.
- property scale
Return the scale parameter of the bijector.
- Output:
Tensor, the scale parameter of the bijector.