Spec-Zone.ru › PyTorch 1

torch.Tensor.to

Tensor.to(*args, **kwargs) → Tensor

Выполняет преобразование типа и/или устройства тензора. Тип torch.dtype и устройство torch.device выводятся из аргументов self.to(*args, **kwargs).

Примечание

Если тензор self уже имеет нужный тип torch.dtype и устройство torch.device, то self возвращается. В противном случае возвращаемый тензор является копией self с нужным типом torch.dtype и устройством torch.device.

Вот способы вызова to:

to(dtype, non_blocking=False, copy=False, memory_format=torch.preserve_format) → Tensor

Возвращает тензор с указанным типом dtype

Args:

memory_format (torch.memory_format, optional): желаемый формат памяти возвращаемого тензора. По умолчанию: torch.preserve_format.

torch.to(device=None, dtype=None, non_blocking=False, copy=False, memory_format=torch.preserve_format) → Tensor

Возвращает тензор с указанным устройством device и (необязательным) типом dtype. Если dtype — None, он выводится как self.dtype. Когда non_blocking, попытка асинхронного преобразования относительно хоста, если возможно, например, преобразование тензора CPU с закрепленной памятью в тензор CUDA. Если copy установлено, новый тензор создается даже если тензор уже соответствует желаемому преобразованию.

Args:

memory_format (torch.memory_format, optional): желаемый формат памяти возвращаемого тензора. По умолчанию: torch.preserve_format.

torch.to(other, non_blocking=False, copy=False) → Tensor

Возвращает тензор с тем же типом torch.dtype и устройством torch.device, что и тензор other. Когда non_blocking, попытка асинхронного преобразования относительно хоста, если возможно, например, преобразование тензора CPU с закрепленной памятью в тензор CUDA. Если copy установлено, новый тензор создается даже если тензор уже соответствует желаемому преобразованию.

Пример:

>>> tensor = torch.randn(2, 2)  # Initially dtype=float32, device=cpu
>>> tensor.to(torch.float64)
tensor([[-0.5044,  0.0005],
        [ 0.3310, -0.0584]], dtype=torch.float64)

>>> cuda0 = torch.device('cuda:0')
>>> tensor.to(cuda0)
tensor([[-0.5044,  0.0005],
        [ 0.3310, -0.0584]], device='cuda:0')

>>> tensor.to(cuda0, dtype=torch.float64)
tensor([[-0.5044,  0.0005],
        [ 0.3310, -0.0584]], dtype=torch.float64, device='cuda:0')

>>> other = torch.randn((), dtype=torch.float64, device=cuda0)
>>> tensor.to(other, non_blocking=True)
tensor([[-0.5044,  0.0005],
        [ 0.3310, -0.0584]], dtype=torch.float64, device='cuda:0')

© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/1.13/generated/torch.Tensor.to.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API