基础知识:
ndarray:numpy中的ndarray为多维数组,是numpy中最为重要也是python进行科学计算非常重要和基本的数据类型。
tensor:pytorch中的tensor为数据基本存储类型,中文叫张量,可以表示标量、向量、矩阵。
1.1 创建tensor从numpy到tensor,用torch.tensor(arr)
arr = np.ones((3, 3)) t = torch.tensor(arr) #创建张量1
结果:
1.2 创建tensor从numpy到tensor,用torch.from_numpy(arr)
arr = np.array([[1, 2, 3], [4, 5, 6]]) t = torch.from_numpy(arr) print('\n修改tensor') t[0, 0] = 10 # tensor中数据的引用
2.1 torch.zeros创建全零张量
out_t = torch.tensor([1]) t = torch.zeros((3, 3), out=out_t)
结果:
2.2 torch.full创建全零张量
t = torch.full((3, 3), 1, dtype=torch.int)
3 创建等差数列张量
t=torch.arange(2, 10, 2)
结果:
4 创建单位对角矩阵
t=torch.eye(5) print(t)
结果:
5. 创建正态分布向量
ean = torch.arange(1, 5, dtype=torch.float) std = torch.arange(1, 5, dtype=torch.float) t_normal = torch.normal(mean, std) print(t_normal) t_normal2 = torch.normal(0, 1, size=(4,)) print(t_normal2)