首页 > 其他分享 >numpy和tensor

numpy和tensor

时间:2024-07-26 10:40:15浏览次数:12  
标签:arr tensor dtype torch print numpy

通过list生成

tensor生成及存储方式
# 张量生成从pyhton中的list生成
x = torch.tensor([1, 2, 3])
print(x)
print(x.dtype)
# 半精度
x = torch.tensor([1, 2, 3]).to(torch.float16)
print(x.dtype)
# 全精度
x = torch.tensor([1, 2, 3]).to(torch.float32)
print(x.dtype)

x = torch.tensor([[1, 2, 3], [4, 5, 6]])
print(x)
# 底层存储方式
print(x.untyped_storage())

CPU与GPU

硬件存储
# 两种储存方式 gpu和cpu
# 张量相加需要在同一个硬件上
x = torch.tensor([1, 2, 3])
y = torch.tensor([3, 4, 6])
# print(x)
# x = x.to('cuda')
# x = x.to('cpu')
# z = y + x
# print(z)
# 即使有多块GPU,要进行相加,也要在同一块GPU上运行
x = x.to('cuda:0')
y = y.to('cuda:0')
z = x + y
print(z)
numpy只有数值运算(比较丰富)

tensor有梯度求导(机器学习)

numpy与tensor
# 和numpy数组进行转换
arr = np.zeros(3)
tensor = torch.from_numpy(arr)
# print(arr)
# print(tensor)
np.add(arr,1,out=arr)#给arr加1,tensor也会改变
#因为他们指向的是同一个内存
print(arr)
print(tensor)
#使用拷贝,中断关联
tensor = torch.zeros(3)
#拷贝只后内存独立
arr = tensor.clone().numpy()
print("before adding 1")
print(arr)
print(tensor)
#进行+1操作
tensor.add_(1)
print("after adding 1")
print(arr)
print(tensor)
#numpy只有数值运算(比较丰富)
#tensor有梯度求导(机器学习)

标签:arr,tensor,dtype,torch,print,numpy
From: https://www.cnblogs.com/qian-li-xju/p/18324816

相关文章

  • Numpythonic 方式从所需的时间步长和窗口大小构造窗口向量
    给定参数timestep=2window_size=3我已经展平了大小为9的时间序列向量。内容是:arr=np.array([1,2,3,4,5,6,7,8,9])如何使用这些参数重塑/构造窗口时间序列?我希望输出具有形状unknown,window_size)所以,它的输出将是这样的矩阵:windowed_arr=np......
  • numpy 已安装,但出现错误“导入 _multiarray_umath 时 DLL 加载失败:找不到指定的模块。
    我使用的是带有Python3.9的Anaconda发行版。在安装的软件包中,我有numpy、pandas等。在PyCharmIDE中,我将ProjectInterpreter设置为与Anaconda一起安装的python.exe的路径:C:\Users\[user]\anaconda3\envs[Tensorflow]\pythonw.exeP.S:我已经尝试了各种方法来解决堆栈溢......
  • 如何在 Numpy Python 中将 4 维数组的下三角形复制到上三角形?
    目标是将下三角形复制到上三角形。根据OP中提出的建议,起草了以下代码。importnumpyasnplw_up_pair=np.tril_indices(4,-1)arr=np.zeros((4,4,1,1))arr[1,:1,:,0]=1arr[2,:2,0,0]=2arr[3,:3,0,0]=3arr=arr+arr.T-np.diag(np.diag(arr))但是,它......
  • 如何使用 NumPy 根据值在矩阵中的出现情况来组织值?
    我正在做一个练习,需要根据3x3矩阵中的出现情况将0到5之间的值组织到一个数组中。我正在使用NumPy来完成此任务。给定以下3x3矩阵:[[113][452][300]]我想输出一个数组,其中每个元素代表从0到5的每个值出现的次数。对于上述矩阵,所需的输出是:[2,2......
  • 仅将 sympy Matrix 的上三角值从 numpy.triu() 复制到数组中?
    我有一个方阵A(可以是任何大小),我想获取上三角部分并将这些值放入一个数组中,而没有中心对角线下方的值(k=0)。A=sympy.Matrix([[4,0,3],[2,4,-2],[-2,-3,7]])使用A_upper=numpy.triu(A)让我A_Upper=sympy.M......
  • 使用 Tensorflow 运行 hello world 程序会出现此错误
    我使用PycharmIDE来运行Python程序。我已经成功安装了TensorFlow包,没有任何问题,但是当我尝试运行该程序(一个简单的helloworld程序)时,它给了我这个很长的错误!路径和环境似乎都很好,我尝试遵循不同的教程,但没有一个出现此错误,我看到一个它有类似的错......
  • python—NumPy基础(3)
    文章目录算术函数算术函数的使用算术函数中out参数的使用mod()函数的使用统计函数power()函数的使用median()函数的使用mean()函数的使用函数的使用其他常用函数tile()和repeat()函数的使用roll()函数的使用resize()函数的使用replace()和put()函数的使savetxt()和lo......
  • 警告:tensorflow:模型是用形状构建的(无、66、200、3)
    我有以下代码生成有关形状的错误:fromkeras.layersimportDense,ActivationfromkerasimportSequentialfromkeras.modelsimportload_modelfromtensorflow.keras.optimizersimportAdamimporttensorflowimportkerasfromtensorflow.python.keras.layersimpor......
  • 将 PyTorch ONNX 模型转换为 TensorRT 引擎 - Jetson Orin Nano
    我正在尝试从JetsonOrinNano上的ViT-B/32UNICOM存储库转换VisionTransformer模型。该模型的VisionTransformer类和源代码在此处我使用以下代码将模型转换为ONNX:importtorchimportonnximportonnxruntimefromunicom.vision_trans......