mindspore2022/docs/api/api_python/nn_probability/mindspore.nn.probability.di...

242 lines
7.4 KiB
ReStructuredText
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

mindspore.nn.probability.distribution.Beta
================================================
.. py:class:: mindspore.nn.probability.distribution.Beta(concentration1=None, concentration0=None, seed=None, dtype=mstype.float32, name='Beta')
Beta 分布Beta Distribution
连续随机分布,取值范围为 :math:`[0, 1]` ,概率密度函数为
.. math::
f(x, \alpha, \beta) = x^\alpha (1-x)^{\beta - 1} / B(\alpha, \beta).
其中 :math:`B` 为 Beta 函数。
**参数:**
- **concentration1** (int, float, list, numpy.ndarray, Tensor) - Beta 分布的alpha。
- **concentration0** (int, float, list, numpy.ndarray, Tensor) - Beta 分布的beta。
- **seed** (int) - 采样时使用的种子。如果为None则使用全局种子。默认值None。
- **dtype** (mindspore.dtype) - 采样结果的数据类型。默认值mindspore.float32。
- **name** (str) - 分布的名称。默认值:'Beta'。
.. note::
- `concentration1``concentration0` 中元素必须大于零。
- `dtype` 必须是float因为 Beta 分布是连续的。
**异常:**
- **ValueError** - `concentration1` 或者 `concentration0` 中元素小于0。
- **TypeError** - `dtype` 不是float的子类。
.. py:method:: concentration0
:property:
返回concentration0也称为 Beta 分布的 beta
**返回:**
Tensorconcentration0 的值。
.. py:method:: concentration1
:property:
返回concentration1也称为 Beta 分布的 alpha
**返回:**
Tensorconcentration1 的值。
.. py:method:: cdf(value, concentration1, concentration0)
在给定值下计算累积分布函数Cumulatuve Distribution Function, CDF
**参数:**
- **value** (Tensor) - 要计算的值。
- **concentration1** (Tensor) - Beta 分布的 alpha。默认值None。
- **concentration0** (Tensor) - Beta 分布的 beta。默认值None。
**返回:**
Tensor累积分布函数的值。
.. py:method:: cross_entropy(dist, concentration1_b, concentration0_b, concentration1, concentration0)
计算分布a和b之间的交叉熵。
**参数:**
- **dist** (str) - 分布的类型。
- **concentration1_b** (Tensor) - 对比 Beta 分布的 alpha。
- **concentration0_b** (Tensor) - 对比 Beta 分布的 beta。
- **concentration1** (Tensor) - Beta 分布的 alpha。默认值None。
- **concentration0** (Tensor) - Beta 分布的 beta。默认值None。
**返回:**
Tensor交叉熵的值。
.. py:method:: entropy(concentration1, concentration0)
计算熵。
**参数:**
- **concentration1** (Tensor) - Beta 分布的 alpha。默认值None。
- **concentration0** (Tensor) - Beta 分布的 beta。默认值None。
**返回:**
Tensor熵的值。
.. py:method:: kl_loss(dist, concentration1_b, concentration0_b, concentration1, concentration0)
计算KL散度即KL(a||b)。
**参数:**
- **dist** (str) - 分布的类型。
- **concentration1_b** (Tensor) - 对比 Beta 分布的 alpha。
- **concentration0_b** (Tensor) - 对比 Beta 分布的 beta。
- **concentration1** (Tensor) - Beta 分布的 alpha。默认值None。
- **concentration0** (Tensor) - Beta 分布的 beta。默认值None。
**返回:**
TensorKL散度。
.. py:method:: log_cdf(value, concentration1, concentration0)
计算给定值对于的累积分布函数的对数。
**参数:**
- **value** (Tensor) - 要计算的值。
- **concentration1** (Tensor) - Beta 分布的 alpha。默认值None。
- **concentration0** (Tensor) - Beta 分布的 beta。默认值None。
**返回:**
Tensor累积分布函数的对数。
.. py:method:: log_prob(value, concentration1, concentration0)
计算给定值对应的概率的对数。
**参数:**
- **value** (Tensor) - 要计算的值。
- **concentration1** (Tensor) - Beta 分布的 alpha。默认值None。
- **concentration0** (Tensor) - Beta 分布的 beta。默认值None。
**返回:**
Tensor累积分布函数的对数。
.. py:method:: log_survival(value, concentration1, concentration0)
计算给定值对应的生存函数的对数。
**参数:**
- **value** (Tensor) - 要计算的值。
- **concentration1** (Tensor) - Beta 分布的 alpha。默认值None。
- **concentration0** (Tensor) - Beta 分布的 beta。默认值None。
**返回:**
Tensor生存函数的对数。
.. py:method:: mean(concentration1, concentration0)
计算期望。
**参数:**
- **concentration1** (Tensor) - Beta 分布的 alpha。默认值None。
- **concentration0** (Tensor) - Beta 分布的 beta。默认值None。
**返回:**
Tensor概率分布的期望。
.. py:method:: mode(concentration1, concentration0)
计算众数。
**参数:**
- **concentration1** (Tensor) - Beta 分布的 alpha。默认值None。
- **concentration0** (Tensor) - Beta 分布的 beta。默认值None。
**返回:**
Tensor概率分布的众数。
.. py:method:: prob(value, concentration1, concentration0)
计算给定值下的概率。对于连续是计算概率密度函数Probability Density Function
**参数:**
- **value** (Tensor) - 要计算的值。
- **concentration1** (Tensor) - Beta 分布的 alpha。默认值None。
- **concentration0** (Tensor) - Beta 分布的 beta。默认值None。
**返回:**
Tensor概率值。
.. py:method:: sample(shape, concentration1, concentration0)
采样函数。
**参数:**
- **shape** (tuple) - 样本的shape。
- **concentration1** (Tensor) - Beta 分布的 alpha。默认值None。
- **concentration0** (Tensor) - Beta 分布的 beta。默认值None。
**返回:**
Tensor根据概率分布采样的样本。
.. py:method:: sd(concentration1, concentration0)
计算标准差。
**参数:**
- **concentration1** (Tensor) - Beta 分布的 alpha。默认值None。
- **concentration0** (Tensor) - Beta 分布的 beta。默认值None。
**返回:**
Tensor概率分布的标准差。
.. py:method:: survival_function(value, concentration1, concentration0)
计算给定值对应的生存函数。
**参数:**
- **value** (Tensor) - 要计算的值。
- **concentration1** (Tensor) - Beta 分布的 alpha。默认值None。
- **concentration0** (Tensor) - Beta 分布的 beta。默认值None。
**返回:**
Tensor生存函数的值。
.. py:method:: var(concentration1, concentration0)
计算方差。
**参数:**
- **concentration1** (Tensor) - Beta 分布的 alpha。默认值None。
- **concentration0** (Tensor) - Beta 分布的 beta。默认值None。
**返回:**
Tensor概率分布的方差。