当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.random.stateless_poisson用法及代码示例


从泊松分布输出确定性伪随机值。

用法

tf.random.stateless_poisson(
    shape, seed, lam, dtype=tf.dtypes.int32, name=None
)

参数

  • shape 一维整数张量或 Python 数组。输出张量的形状。
  • seed 形状 [2] 张量,随机数生成器的种子。必须具有数据类型 int32int64 。 (使用 XLA 时,仅允许使用 int32。)
  • lam 张量。泊松分布的速率参数"lambda"。形状必须与 shape 的最右侧尺寸相匹配。
  • dtype 样本的 Dtype(允许使用 int 或 float dtype,因为样本是离散的)。默认值:int32。
  • name 操作的名称(可选)。

返回

  • samples 用随机泊松值填充的指定形状的张量。对于每个 i,每个 samples[..., i] 都是来自 Poisson 分布的独立抽取,速率为 lam[i]

生成的值遵循具有指定速率参数的泊松分布。

这是tf.random.poisson 的无状态版本:如果使用相同的种子和形状运行两次,它将产生相同的伪随机数。在同一硬件上多次运行的输出是一致的,但可能会在 TensorFlow 版本之间或在非 CPU/GPU 硬件上发生变化。

stateless_poissonpoisson 之间的 shape 参数的解释存在细微差别:在 poisson 中,shape 始终位于 lam 的形状之前;而在 stateless_poisson 中, lam 的形状必须与 shape 的尾随尺寸匹配。

例子:

samples = tf.random.stateless_poisson([10, 2], seed=[12, 34], lam=[5, 15])
# samples has shape [10, 2], where each slice [:, 0] and [:, 1] represents
# the samples drawn from each distribution

samples = tf.random.stateless_poisson([7, 5, 2], seed=[12, 34], lam=[5, 15])
# samples has shape [7, 5, 2], where each slice [:,:, 0] and [:,:, 1]
# represents the 7x5 samples drawn from each of the two distributions

rate = tf.constant([[1.], [3.], [5.]])
samples = tf.random.stateless_poisson([30, 3, 1], seed=[12, 34], lam=rate)
# samples has shape [30, 3, 1], with 30 samples each of 3x1 distributions.

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.random.stateless_poisson。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。