📅  最后修改于: 2023-12-03 15:38:44.343000             🧑  作者: Mango
在 Pytorch 中,张量是一种常用数据类型,其类似于 Numpy 中的数组。有时候我们需要将 Pytorch 张量转换为 Numpy 数组,以便于在其他库中使用,如 Matplotlib、Scikit-learn 等。
Pytorch 提供了一个简单的方法进行张量与 Numpy 数组的转换,下面是具体实现方式:
import torch
import numpy as np
# 定义一个 Pytorch 张量
x = torch.randn((2,3))
# 将 Pytorch 张量转换为 Numpy 数组
y = x.numpy()
# 打印 Numpy 数组
print(y)
输出结果如下:
[[-0.4525144 -2.0698307 0.8875261 ]
[-1.2858311 0.8177249 0.05733321]]
此外,如果需要将 Numpy 数组转换为 Pytorch 张量,也可以使用类似的方法进行转换:
import torch
import numpy as np
# 定义一个 Numpy 数组
x = np.array([[1,2,3],[4,5,6]])
# 将 Numpy 数组转换为 Pytorch 张量
y = torch.from_numpy(x)
# 打印 Pytorch 张量
print(y)
输出结果如下:
tensor([[1, 2, 3],
[4, 5, 6]], dtype=torch.int32)
上述方法中,torch.from_numpy()
方法用于将 Numpy 数组转换为 Pytorch 张量,其返回的是一个新的张量,而不是共享数据的视图。
以上是关于如何将 Pytorch 张量转换为 Numpy 数组的介绍,希望能帮助到各位程序员。