YDOOK AI : Pytorch : tensor 与 numpy 的 ndarray 相互转化 pytorch 张量与 numpy 数组之间转化
1. 转换方法:
1. tensor => ndarray : tensor.numpy()
2. ndarray => tensor : tensor = torch.from_numpy(ndarray)
2. 源代码展示:
import torch
import numpy as np
print('torch.__version__ = ', torch.__version__)
np_a = np.array([1, 2, 3])
print('np_a = ', np_a)
print('type(np_a) = ', type(np_a))
print()
tensor_a = torch.from_numpy(np_a)
print('tensor_a = ', tensor_a)
print('type(tensor_a) = ', type(tensor_a))
print()
t = torch.tensor([4, 5, 6])
print('t = ', t)
print('type(t) = ', type(t))
np_t = t.numpy()
print('np_t = ', np_t)
print('type(np_t) = ', type(np_t))
3. 输出:
torch.__version__ = 1.7.1
np_a = [1 2 3]
type(np_a) = <class 'numpy.ndarray'>
tensor_a = tensor([1, 2, 3], dtype=torch.int32)
type(tensor_a) = <class 'torch.Tensor'>
t = tensor([4, 5, 6])
type(t) = <class 'torch.Tensor'>
np_t = [4 5 6]
type(np_t) = <class 'numpy.ndarray'>