目录
1 Tensor与Numpy
1.1 张量转Numpy
1.2 Numpy转张量
1 Tensor与Numpy
1.1 张量转Numpy
调用numpy()方法可以把Tensor转换为Numpy,此时内存是共享的。
使用copy()方法可以避免内存共享
import torch
import numpy as np# tensor转numpy:numpy()
def test01():t1=torch.tensor([[1,2,3],[4,5,6]])print(t1)# 浅拷贝 数据内存共享n1=t1.numpy()print(n1)# 深拷贝 创建新的副本n2=t1.numpy().copy()print(n2)
1.2 Numpy转张量
使用copy()方法可以避免内存共享
使用传统的torch.tensor()则内存是不共享的~
# numpy转tensor
# 浅拷贝:torch.from_numpy(),数据内存共享
# 深拷贝:torch.tensor() 参数为numpy数组 创建新的副本
def test02():n1=np.array([1,2,3,4,5])t1=torch.from_numpy(n1)print(t1)t2=torch.tensor(n1)print(t2)