36 lines
2.2 KiB
ReStructuredText
36 lines
2.2 KiB
ReStructuredText
mindspore.ops.Multinomial
|
||
==========================
|
||
|
||
.. py:class:: mindspore.ops.Multinomial(seed=0, seed2=0, dtype=mstype.int32)
|
||
|
||
返回从输入Tensor对应行进行多项式概率分布采样出的Tensor。
|
||
|
||
.. note::
|
||
- 输入的行不需要求和为1(在这种情况下,我们使用值作为权重),但必须是非负的、有限的,并且具有非零和。
|
||
- 随机种子:通过一些复杂的数学算法,可以得到一组有规律的随机数,而随机种子就是这个随机数的初始值。随机种子相同,得到的随机数就不会改变。
|
||
- 全局的随机种子和算子层的随机种子都没设置或都设置为0:完全随机。
|
||
- 全局的随机种子设置了,算子层的随机种子未设置:采用全局的随机种子和0拼接。
|
||
- 全局的随机种子未设置,算子层的随机种子设置了:使用0和算子层的随机种子拼接。
|
||
- 全局的随机种子和算子层的随机种子都设置了:全局的随机种子和算子层的随机种子拼接。
|
||
|
||
.. warning::
|
||
Ascend后端不支持随机数重现功能, `seed` 和 `seed2` 参数不起作用。
|
||
|
||
参数:
|
||
- **seed** (int,可选) - 算子层的随机种子,用于生成随机数。必须是非负的。默认值: ``0`` 。
|
||
- **seed2** (int,可选) - 全局的随机种子,和算子层的随机种子共同决定最终生成的随机数。必须是非负的。默认值: ``0`` 。
|
||
- **dtype** (mindspore.dtype,可选) - 输出数据类型,必须是int32或者int64,默认: ``mstype.int32`` 。
|
||
|
||
输入:
|
||
- **x** (Tensor) - 包含累加概率和的输入Tensor,必须是一维或二维。
|
||
- **num_samples** (int) - 要抽取的样本数。
|
||
|
||
输出:
|
||
Tensor,具有与输入相同的行。每行的采样索引数为 `num_samples` 。
|
||
|
||
异常:
|
||
- **TypeError** - 如果 `seed` 或者 `seed2` 不是int类型。
|
||
- **TypeError** - 如果 `num_samples` 不是int类型。
|
||
- **TypeError** - 如果 `dtype` 不是int32或者int64类型。
|
||
- **ValueError** - 如果 `seed` 或者 `seed2` 小于零。
|