随机采样 (cupy.random
)#
cupy.random
与 numpy.random
之间的差异
cupy.random
下的大多数函数支持dtype
选项,而对应的 NumPy API 中不存在此选项。此选项可以直接生成 float32 值,且没有额外的空间开销。cupy.random.default_rng()
默认使用 XORWOW 位生成器。随机状态无法序列化。详见下文描述。
CuPy 不保证在不同主要版本中使用相同的数字生成器。这意味着即使使用相同的种子和分布,新主要版本通过
cupy.random
生成的数字也可能与之前版本不同。
新随机生成器 API#
随机生成器#
|
使用默认的 BitGenerator (XORWOW) 构建新的 Generator。 |
|
BitGenerators 容器。 |
位生成器#
|
通用 BitGenerator。 |
CuPy 提供以下位生成器实现
|
使用 cuRAND XORWOW 设备生成器的 BitGenerator。 |
|
使用 cuRAND MRG32k3a 设备生成器的 BitGenerator。 |
|
使用 cuRAND Philox4x3210 设备生成器的 BitGenerator。 |
旧版随机生成#
|
伪随机数生成器的可移植容器。 |
cupy.random
中的函数#
|
Beta 分布。 |
|
二项分布。 |
|
返回随机字节。 |
|
卡方分布。 |
|
从给定的一维数组返回随机值数组。 |
|
Dirichlet 分布。 |
|
指数分布。 |
|
F 分布。 |
|
Gamma 分布。 |
|
几何分布。 |
|
返回从 Gumbel 分布中抽取的样本数组。 |
|
超几何分布。 |
|
Laplace 分布。 |
|
Logistic 分布。 |
|
返回从对数正态分布中抽取的样本数组。 |
|
对数级数分布。 |
|
返回从多项分布中抽取的数组。 |
|
多元正态分布。 |
|
负二项分布。 |
|
非中心卡方分布。 |
|
非中心 F 分布。 |
|
返回正态分布样本数组。 |
|
Pareto II 或 Lomax 分布。 |
|
返回一个置换范围或数组的置换。 |
|
Poisson 分布。 |
|
幂分布。 |
|
返回区间 |
|
返回区间 |
|
返回标准正态随机值数组。 |
|
返回区间 |
|
返回区间 |
|
返回区间 |
|
返回区间 |
|
Rayleigh 分布。 |
|
返回区间 |
|
使用种子重置随机数生成器的状态。 |
|
打乱数组。 |
|
标准 Cauchy 分布。 |
|
标准指数分布。 |
|
标准 Gamma 分布。 |
|
返回从标准正态分布中抽取的样本数组。 |
|
标准 Student's t 分布。 |
|
三角分布。 |
|
返回区间上均匀分布的样本数组。 |
|
von Mises 分布。 |
|
Wald 分布。 |
|
Weibull 分布。 |
|
Zipf 分布。 |
CuPy 目前不提供 cupy.random.get_state
和 cupy.random.set_state
。请改用以下 CuPy 特有 API。请注意,这些函数使用 cupy.random.RandomState
实例表示内部状态,该状态无法序列化。
获取当前设备的随机数生成器状态。 |
|
|
设置当前设备的随机数生成器状态。 |