cupy.random.RandomState#

class cupy.random.RandomState(seed=None, method=None)[source]#

伪随机数生成器的可移植容器。

此类的实例保存随机数生成器的状态。该状态仅在初始化此实例时当前所在的设备上可用。

cupy.random 的函数使用此类的全局实例。不同的设备使用不同的实例。当前设备的全局状态可以通过 cupy.random.get_random_state() 函数获取。

参数:
  • seed (Noneint) – 随机数生成器的种子。详见 seed() 方法。

  • method (int) –

    随机数生成器的方法。以下值可用:

    cupy.cuda.curand.CURAND_RNG_PSEUDO_DEFAULT
    cupy.cuda.curand.CURAND_RNG_PSEUDO_XORWOW
    cupy.cuda.curand.CURAND_RNG_PSEUDO_MRG32K3A
    cupy.cuda.curand.CURAND_RNG_PSEUDO_MTGP32
    cupy.cuda.curand.CURAND_RNG_PSEUDO_MT19937
    cupy.cuda.curand.CURAND_RNG_PSEUDO_PHILOX4_32_10
    

方法

beta(a, b, size=None, dtype=<class 'float'>)[source]#

返回从 Beta 分布中抽取的样本数组。

binomial(n, p, size=None, dtype=<class 'int'>)[source]#

返回从二项分布中抽取的样本数组。

chisquare(df, size=None, dtype=<class 'float'>)[source]#

返回从卡方分布中抽取的样本数组。

choice(a, size=None, replace=True, p=None)[source]#

返回给定一维数组中的随机值数组。

另请参阅

dirichlet(alpha, size=None, dtype=<class 'float'>)[source]#

返回从 Dirichlet 分布中抽取的样本数组。

exponential(scale=1.0, size=None, dtype=<class 'float'>)[source]#

返回从指数分布中抽取的样本数组。

警告

此函数可能会同步设备。

f(dfnum, dfden, size=None, dtype=<class 'float'>)[source]#

返回从 F 分布中抽取的样本数组。

另请参阅

gamma(shape, scale=1.0, size=None, dtype=<class 'float'>)[source]#

返回从伽马分布中抽取的样本数组。

geometric(p, size=None, dtype=<class 'int'>)[source]#

返回从几何分布中抽取的样本数组。

gumbel(loc=0.0, scale=1.0, size=None, dtype=<class 'float'>)[source]#

返回从 Gumbel 分布中抽取的样本数组。

hypergeometric(ngood, nbad, nsample, size=None, dtype=<class 'int'>)[source]#

返回从超几何分布中抽取的样本数组。

laplace(loc=0.0, scale=1.0, size=None, dtype=<class 'float'>)[source]#

返回从 Laplace 分布中抽取的样本数组。

logistic(loc=0.0, scale=1.0, size=None, dtype=<class 'float'>)[source]#

返回从 Logistic 分布中抽取的样本数组。

lognormal(mean=0.0, sigma=1.0, size=None, dtype=<class 'float'>)[source]#

返回从对数正态分布中抽取的样本数组。

logseries(p, size=None, dtype=<class 'int'>)[source]#

返回从对数级数分布中抽取的样本数组。

警告

此函数可能会同步设备。

multivariate_normal(mean, cov, size=None, check_valid='ignore', tol=1e-08, method='cholesky', dtype=<class 'float'>)[source]#

返回从多元正态分布中抽取的样本数组。

警告

此函数调用一个或多个 cuSOLVER 例程,如果未满足输入条件,可能会产生无效结果。要检测这些无效结果,您可以在 cupyx.errstate()cupyx.seterr() 中将 linalg 配置设置为非 ignore 的值。

negative_binomial(n, p, size=None, dtype=<class 'int'>)[source]#

返回从负二项分布中抽取的样本数组。

警告

此函数可能会同步设备。

noncentral_chisquare(df, nonc, size=None, dtype=<class 'float'>)[source]#

返回从非中心卡方分布中抽取的样本数组。

警告

此函数可能会同步设备。

noncentral_f(dfnum, dfden, nonc, size=None, dtype=<class 'float'>)[source]#

返回从非中心 F 分布中抽取的样本数组。

警告

此函数可能会同步设备。

normal(loc=0.0, scale=1.0, size=None, dtype=<class 'float'>)[source]#

返回正态分布样本数组。

pareto(a, size=None, dtype=<class 'float'>)[source]#

返回从 Pareto II 分布中抽取的样本数组。

permutation(a)[source]#

返回一个置换范围或数组的置换。

poisson(lam=1.0, size=None, dtype=<class 'int'>)[source]#

返回从 Poisson 分布中抽取的样本数组。

power(a, size=None, dtype=<class 'float'>)[source]#

返回从幂分布中抽取的样本数组。

警告

此函数可能会同步设备。

rand(*size, **kwarg)[source]#

返回在区间 [0, 1) 上均匀分布的随机值。

randint(low, high=None, size=None, dtype=<class 'int'>)[source]#

返回在区间 [low, high) 上的标量或整数值数组。

randn(*size, **kwarg)[source]#

返回标准正态分布随机值数组。

random_sample(size=None, dtype=<class 'float'>)[source]#

返回在区间 [0, 1) 上的随机值数组。

rayleigh(scale=1.0, size=None, dtype=<class 'float'>)[source]#

返回从瑞利分布中抽取的样本数组。

警告

此函数可能会同步设备。

seed(seed=None)[source]#

使用种子重置随机数生成器的状态。

shuffle(a)[source]#

返回一个打乱顺序的数组。

另请参阅

standard_cauchy(size=None, dtype=<class 'float'>)[source]#

返回从标准 Cauchy 分布中抽取的样本数组。

standard_exponential(size=None, dtype=<class 'float'>)[source]#

返回从标准指数分布中抽取的样本数组。

standard_gamma(shape, size=None, dtype=<class 'float'>)[source]#

返回从标准伽马分布中抽取的样本数组。

standard_normal(size=None, dtype=<class 'float'>)[source]#

返回从标准正态分布中抽取的样本。

standard_t(df, size=None, dtype=<class 'float'>)[source]#

返回从标准 t 分布中抽取的样本数组。

tomaxint(size=None)[source]#

在 0 和最大整数(含)之间抽取整数。

返回在区间 [0, np.iinfo(np.int_).max] 上均匀分布的随机整数样本。np.int_ 类型转换为 C long integer 类型,其精度取决于平台。

参数:

size (intintstuple) – 输出形状。

返回:

抽取的样本。

返回类型:

cupy.ndarray

另请参阅

numpy.random.RandomState.tomaxint()

triangular(left, mode, right, size=None, dtype=<class 'float'>)[source]#

返回从三角分布中抽取的样本数组。

警告

此函数可能会同步设备。

uniform(low=0.0, high=1.0, size=None, dtype=<class 'float'>)[source]#

返回在某个区间上均匀分布的样本数组。

vonmises(mu, kappa, size=None, dtype=<class 'float'>)[source]#

返回从 von Mises 分布中抽取的样本数组。

wald(mean, scale, size=None, dtype=<class 'float'>)[source]#

返回从 Wald 分布中提取的样本数组。

weibull(a, size=None, dtype=<class 'float'>)[source]#

返回从 Weibull 分布中提取的样本数组。

警告

此函数可能会同步设备。

zipf(a, size=None, dtype=<class 'int'>)[source]#

返回从 Zipf 分布中提取的样本数组。

警告

此函数可能会同步设备。

__eq__(value, /)#

返回 self==value。

__ne__(value, /)#

返回 self!=value。

__lt__(value, /)#

返回 self<value。

__le__(value, /)#

返回 self<=value。

__gt__(value, /)#

返回 self>value。

__ge__(value, /)#

返回 self>=value。