torch.bernoulli
-
torch.bernoulli(input: Tensor, *, generator: Generator | None, out: Tensor | None) → Tensor -
Генерирует двоичные случайные числа (0 или 1) из распределения Бернулли.
Тензор
inputдолжен содержать вероятности, используемые для генерации двоичного случайного числа. Следовательно, все значения вinputдолжны находиться в диапазоне: .Элемент выходного тензора с индексом будет принимать значение в соответствии с вероятностью для элемента с индексом , заданной в
input.Возвращаемый тензор
outсодержит только значения 0 или 1 и имеет ту же форму, что иinput.outможет иметь целочисленный типdtype, ноinputдолжен иметь тип с плавающей точкойdtype.- Параметры:
-
input (Tensor) – входной тензор значений вероятности для распределения Бернулли
- Именованные аргументы:
-
-
generator (
torch.Generator, optional) – генератор псевдослучайных чисел для выборки - out (Tensor, optional) – выходной тензор.
-
generator (
Пример:
>>> 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.]])
© 2026, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://docs.pytorch.org/docs/2.14/generated/torch.bernoulli.html