mars.tensor.random.sample#

mars.tensor.random.sample(size=None, chunk_size=None, gpu=None, dtype=None)#

返回在半开区间 [0.0, 1.0) 内的随机浮点数。

结果来自于指定区间上的“连续均匀”分布。要对\(Unif[a, b), b > a\)进行抽样,将random_sample的输出乘以(b-a)并加上a

(b - a) * random_sample() + a
Parameters
  • size (inttupleints, 可选) – 输出形状。 如果给定的形状是,例如,(m, n, k),那么 m * n * k 个样本将被抽取。 默认值是 None,在这种情况下返回一个 单一值。

  • chunk_size (inttupleinttupleints, 可选) – 每个维度上所需的块大小

  • gpu (bool, 可选) – 如果为True,则在GPU上分配张量,默认为False

  • dtype (数据类型, 可选) – 返回的张量的数据类型。

Returns

out – 形状为 size 的随机浮点数组(除非 size=None,在这种情况下返回一个单一的浮点数)。

Return type

float或浮点数的张量

示例

>>> import mars.tensor as mt
>>> mt.random.random_sample().execute()
0.47108547995356098
>>> type(mt.random.random_sample().execute())
<type 'float'>
>>> mt.random.random_sample((5,)).execute()
array([ 0.30220482,  0.86820401,  0.1654503 ,  0.11659149,  0.54323428])

从[-5, 0)中随机生成的三行两列数组:

>>> (5 * mt.random.random_sample((3, 2)) - 5).execute()
array([[-3.99149989, -0.52338984],
       [-2.99091858, -0.79479508],
       [-1.23204345, -1.75224494]])