torch.bernoulli 的使用方法(附代码示例)

  • Post author:
  • Post category:其他


torch.bernoulli 的使用方法(附代码示例)



功能解释

*

torch.bernoulli(input,

, generator=None, out=None) → Tensor



从伯努利分布中提取二进制随机数(0或1),输入张量应为包含用于绘制二进制随机数的概率的张量。因此,输入中的所有值都必须在以下范围内(0,1)。

第i个元素的输出tensor将要根据输入的第i个概率值,来决定是否生成1值。

输出tensor仅仅只有0或1值,并且其形状和输入的Input的形状是一样的。

输出out可以是一个整型类型,但是输入必须是浮点型数据类型。



参数

 input (Tensor)-对于伯努利分布的输入概率值。
 generator (torch.Generator, optional) –为了采样,一个伪随机数生成器。
 out(Tensor, optional) –输出的tensor。



代码示例

这里是代码实现部分

>>> a = torch.empty(3, 3).uniform_(0, 1)  # generate a uniform random matrix with range [0, 1]
>>> a
tensor([[ 0.1737,  0.0950,  0.3609],
        [ 0.7148,  0.0289,  0.2676],
        [ 0.9456,  0.8937,  0.7202]])
>>> torch.bernoulli(a)
tensor([[ 1.,  0.,  0.],
        [ 0.,  0.,  0.],
        [ 1.,  1.,  1.]])

>>> a = torch.ones(3, 3) # probability of drawing "1" is 1
>>> torch.bernoulli(a)
tensor([[ 1.,  1.,  1.],
        [ 1.,  1.,  1.],
        [ 1.,  1.,  1.]])
>>> a = torch.zeros(3, 3) # probability of drawing "1" is 0
>>> torch.bernoulli(a)
tensor([[ 0.,  0.,  0.],
        [ 0.,  0.,  0.],
        [ 0.,  0.,  0.]])



版权声明:本文为qq_37681364原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。