Функция randint
Функция randint генерирует тензор с целыми числами,
равномерно распределенными на полуинтервале от low
(включая) до high (не включая). Первым параметром
указывается нижняя граница low, вторым - верхняя
граница high, третьим - размерность тензора size.
Также можно указать тип данных элементов через параметр
dtype и устройство размещения через device.
Синтаксис
torch.randint(low, high, size, [dtype], [device])
Пример
Создадим одномерный тензор из пяти случайных целых чисел в диапазоне от 0 до 9:
import torch
torch.manual_seed(0)
t = torch.randint(0, 10, (5,))
print(t)
Результат выполнения кода:
tensor([4, 9, 3, 0, 3])
Пример
Создадим двумерный тензор размером 2x3 со случайными числами от 1 до 5 (включая 1, исключая 5):
import torch
torch.manual_seed(0)
t = torch.randint(1, 5, (2, 3))
print(t)
Результат выполнения кода:
tensor([
[4, 4, 2],
[1, 2, 2],
])
Пример
Укажем тип данных элементов как torch.float
для получения вещественных чисел с нулевой дробной частью:
import torch
torch.manual_seed(0)
t = torch.randint(0, 10, (3,), dtype=torch.float)
print(t)
Результат выполнения кода:
tensor([4., 9., 3.])
Пример
Используем параметр device для размещения тензора
на графическом процессоре (если доступен):
import torch
torch.manual_seed(0)
t = torch.randint(0, 10, (2, 2), device='cuda')
print(t)
Результат выполнения кода:
tensor([
[4, 9],
[3, 0],
], device='cuda:0')
Пример
Если указать только один параметр, он трактуется как
верхняя граница high, а нижняя граница
по умолчанию равна 0:
import torch
torch.manual_seed(0)
t = torch.randint(5, (3,))
print(t)
Результат выполнения кода:
tensor([4, 0, 2])
Смотрите также
-
функцию
rand,
которая генерирует тензор со случайными числами из равномерного распределения на интервале [0, 1) -
функцию
randn,
которая генерирует тензор со случайными числами из стандартного нормального распределения -
функцию
randperm,
которая генерирует случайную перестановку целых чисел от 0 до n-1 -
функцию
rand_like,
которая генерирует тензор со случайными числами, повторяя форму переданного тензора