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

Метод contiguous

Метод contiguous преобразует тензор к непрерывному формату хранения в памяти. В PyTorch тензоры могут храниться в виде, где элементы не следуют друг за другом в порядке их индексов из-за операций перестановки осей или транспонирования. Метод contiguous возвращает новый тензор с тем же содержимым, но с гарантированно непрерывным расположением элементов. Если тензор уже непрерывен, метод возвращает сам тензор без копирования.

Синтаксис

t.contiguous([memory_format])

Метод contiguous не принимает обязательных параметров. Необязательный параметр memory_format позволяет указать желаемый формат хранения: torch.contiguous_format (по умолчанию), torch.channels_last или torch.channels_last_3d.

Пример

Проверим, является ли тензор непрерывным после создания:

import torch t = torch.tensor([[1, 2, 3], [4, 5, 6]]) print(t.is_contiguous())

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

True

Пример

После транспонирования тензор часто становится не непрерывным:

import torch t = torch.tensor([[1, 2, 3], [4, 5, 6]]) t_transposed = t.t() print(t_transposed.is_contiguous())

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

False

Метод contiguous создаёт непрерывную копию:

import torch t = torch.tensor([[1, 2, 3], [4, 5, 6]]) t_transposed = t.t() t_contiguous = t_transposed.contiguous() print(t_contiguous.is_contiguous())

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

True

Пример

Преобразование тензора с использованием параметра memory_format:

import torch t = torch.tensor([[[1, 2], [3, 4]], [[5, 6], [7, 8]]]) t_contiguous = t.contiguous(memory_format=torch.channels_last) print(t_contiguous.is_contiguous())

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

True

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

  • метод is_contiguous,
    который проверяет, является ли тензор непрерывным
  • метод transpose,
    который меняет порядок осей тензора
  • метод permute,
    который переставляет оси тензора в указанном порядке
  • метод clone,
    который создаёт копию тензора с сохранением истории градиентов
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить