Функция PyTorch torch.from_numpy


Pytorch torch 参考手册Справочное руководство Pytorch torch

torch.from_numpy— это функция в PyTorch, используемая для создания тензора из массива NumPy. Созданный тензор разделяет память с исходным массивом NumPy.

Это очень полезно в сценариях, где PyTorch и NumPy требуются одновременно для обработки данных.

Определение функции

torch.from_numpy(ndarray)

Parameters:

  • ndarray(numpy.ndarray): входной массив NumPy.

Возвращаемое значение:

  • torch.Tensor: Возвращает тензор, который разделяет память с массивом NumPy.

Примеры использования

Пример 1: Создание тензора из массива NumPy

Пример

import torch
import numpy as np

# Создайте массив NumPy
numpy_array = np.array([[1, 2, 3], [4, 5, 6]])

# Преобразуйте в тензор PyTorch
tensor = torch.from_numpy(numpy_array)

print("Массив NumPy:")
print(numpy_array)
print("Тензор PyTorch:")
print(tensor)

Вывод:

NumPy 数组:
[[1 2 3]
 [4 5 6]]
PyTorch 张量:
tensor([[1, 2, 3],
        [4, 5, 6]])

Пример 2: Совместное использование памяти

Пример

import torch
import numpy as np

# Создайте массив NumPy
numpy_array = np.array([1, 2, 3])

# Преобразуйте в тензор PyTorch
tensor = torch.from_numpy(numpy_array)

# Измените тензор
tensor[0] = 100

# Массив NumPy также изменится
print("Массив NumPy:", numpy_array)
print("Тензор PyTorch:", tensor)

Вывод:

NumPy 数组: [100   2   3]
PyTorch 张量: tensor([100,   2,   3])

Из-за общей памяти изменение одного повлияет на другой.

Пример 3: Преобразование типов данных

Пример

import torch
import numpy as np

# NumPy по умолчанию создает int64
numpy_array = np.array([1, 2, 3])

tensor = torch.from_numpy(numpy_array)
print("dtype:", tensor.dtype)  # torch.int64

Pytorch torch 参考手册Справочное руководство Pytorch torch

Другие расширения