РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
659 of 769 menu

Функция randint_like

Функция randint_like создает тензор с элементами, которые являются случайными целыми числами из диапазона [low, high). При этом форма нового тензора повторяет форму переданного тензора. Первым параметром функция принимает тензор-образец, вторым и третьим параметрами - нижнюю и верхнюю границы диапазона (числа генерируются от low включительно до high исключительно). Четвертым параметром можно передать тип данных элементов.

Синтаксис

torch.randint_like(input, low, high, [dtype])

Пример

Давайте создадим тензор-образец, а затем на его основе сгенерируем новый тензор со случайными целыми числами от 0 до 10:

import torch torch.manual_seed(0) template = torch.tensor([1, 2, 3, 4, 5]) res = torch.randint_like(template, 0, 10) print(res)

Результат выполнения кода:

tensor([4, 9, 3, 0, 3])

Пример

Сгенерируем тензор той же формы, что и двумерный тензор-образец, со случайными числами от 5 до 15:

import torch torch.manual_seed(42) template = torch.tensor([ [1, 2, 3], [4, 5, 6], ]) res = torch.randint_like(template, 5, 15) print(res)

Результат выполнения кода:

tensor([ [13, 11, 6], [12, 8, 8], ])

Пример

Создадим тензор со случайными числами, но с явным указанием типа данных torch.int16:

import torch torch.manual_seed(7) template = torch.tensor([0.1, 0.2, 0.3]) res = torch.randint_like(template, -5, 5, dtype=torch.int16) print(res)

Результат выполнения кода:

tensor([-1, -4, -1], dtype=torch.int16)

Пример

Если не указывать dtype, то тип данных нового тензора будет таким же, как у тензора-образца:

import torch torch.manual_seed(123) template = torch.tensor([1.0, 2.0, 3.0]) res = torch.randint_like(template, 0, 100) print(res)

Результат выполнения кода:

tensor([58, 38, 48])

Смотрите также

  • функцию randint,
    которая создает тензор со случайными целыми числами по заданной форме
  • функцию rand_like,
    которая создает тензор со случайными числами из равномерного распределения на основе формы другого тензора
  • функцию randn_like,
    которая создает тензор со случайными числами из нормального распределения на основе формы другого тензора
  • функцию randperm,
    которая создает случайную перестановку чисел от 0 до n-1
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить