mindspore.nn.probability.bijector.ScalarAffine
- class mindspore.nn.probability.bijector.ScalarAffine(scale=1.0, shift=0.0, name='ScalarAffine')[源代码]
- 标量仿射Bijector(Scalar Affine Bijector)。 此Bijector对应的映射函数为: \[Y = a * X + b\]- 其中a是比例因子,b是移位因子。 - 参数: - scale (float, list, numpy.ndarray, Tensor) - 比例因子。默认值:1.0。 
- shift (float, list, numpy.ndarray, Tensor) - 移位因子。默认值:0.0。 
- name (str) - Bijector名称。默认值:’ScalarAffine’。 
 - Note - shift 和 scale 中元素的数据类型必须为float。如果 shift 、 scale 作为numpy.ndarray或Tensor传入,则它们必须具有相同的数据类型,否则将引发错误。 - 异常: - TypeError - shift 或 scale 中元素的数据类型不为float,或 shift 和 scale 的数据类型不相同。 
 - 支持平台:
- Ascend- GPU
 - 样例: - >>> import mindspore >>> import mindspore.nn as nn >>> from mindspore import Tensor >>> >>> # To initialize a ScalarAffine bijector of scale 1.0 and shift 2. >>> scalaraffine = nn.probability.bijector.ScalarAffine(1.0, 2.0) >>> value = Tensor([1, 2, 3], dtype=mindspore.float32) >>> ans1 = scalaraffine.forward(value) >>> print(ans1.shape) (3,) >>> ans2 = scalaraffine.inverse(value) >>> print(ans2.shape) (3,) >>> ans3 = scalaraffine.forward_log_jacobian(value) >>> print(ans3.shape) () >>> ans4 = scalaraffine.inverse_log_jacobian(value) >>> print(ans4.shape) () - property shift
- 返回映射的位置。 - 返回: - Tensor,映射的位置值。 
 - property scale
- 返回映射的比例。 - 返回: - Tensor,映射的比例值。 
 - forward(value)
- 正映射,计算输入随机变量 \(X = value\) 经过映射后的值 \(Y = g(value)\)。 - 参数: - value (Tensor) - 输入随机变量的值。 
 - 返回: - Tensor,输入随机变量的值。 
 - forward_log_jacobian(value)
- 计算正映射导数的对数值,即 \(\log(dg(x) / dx)\)。 - 参数: - value (Tensor) - 输入随机变量的值。 
 - 返回: - Tensor,正映射导数的对数值。 
 - inverse(value)
- 正映射,计算输出随机变量 \(Y = value\) 时对应的输入随机变量的值 \(X = g(value)\)。 - 参数: - value (Tensor) - 输出随机变量的值。 
 - 返回: - Tensor,输出随机变量的值。 
 - inverse_log_jacobian(value)
- 计算逆映射导数的对数值,即 \(\log(dg^{-1}(x) / dx)\)。 - 参数: - value (Tensor) - 输出随机变量的值。 
 - 返回: - Tensor,逆映射导数的对数值。