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

Функция range

Функция range создаёт тензор, заполненный числами арифметической прогрессии. Первым параметром передаётся начальное значение, вторым - конечное значение (не включается), третьим - шаг прогрессии. Функция возвращает одномерный тензор с элементами типа float по умолчанию. В отличие от arange, функция range создаёт тензор только с типом данных float и не поддерживает параметр dtype.

Синтаксис

torch.range(start, end, step=1)

Где:

  • ⁅i⁆start⁅/i⁆ - начальное значение последовательности
  • ⁅i⁆end⁅/i⁆ - конечное значение (не включается в результат)
  • ⁅i⁆step⁅/i⁆ - шаг между элементами (по умолчанию 1)

Пример

Давайте создадим тензор с числами от 1 до 5 с шагом 1:

import torch t = torch.range(1, 5) print(t)

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

tensor([1., 2., 3., 4., 5.])

Обратите внимание, что последнее значение не включается в последовательность, поэтому при вызове torch.range(1, 5) мы получаем числа от 1 до 4, а не до 5.

Пример

Теперь создадим тензор с нецелым шагом 0.5:

import torch t = torch.range(1, 3, 0.5) print(t)

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

tensor([1.0000, 1.5000, 2.0000, 2.5000])

Как видите, шаг может быть дробным числом.

Пример

Создадим последовательность с отрицательным шагом:

import torch t = torch.range(5, 1, -1) print(t)

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

tensor([5., 4., 3., 2.])

В этом случае последовательность убывает от 5 до 1 (не включая 1).

Пример

Используем range для индексации элементов тензора:

import torch t = torch.tensor([10, 20, 30, 40, 50, 60]) indices = torch.range(1, 4).long() res = t[indices] print(res)

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

tensor([20, 30, 40])

В этом примере мы создаём индексы от 1 до 3 (не включая 4), преобразуем их в целочисленный тип и используем для выборки элементов из тензора.

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

  • функцию arange,
    которая создаёт тензор с арифметической прогрессией с возможностью указания типа данных
  • функцию linspace,
    которая создаёт тензор с равномерно распределёнными значениями между началом и концом
  • функцию logspace,
    которая создаёт тензор с логарифмической шкалой
  • функцию tensor,
    которая создаёт тензор из списка или массива
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить