pyTorch学习基础(二)选择稀疏与稠密张量

import torch

from matplotlib import pyplot as plt

dev_cpu=torch.device("cpu") #指定CPU计算

# 定义一个稀疏的张量,绘制对角线
i=torch.tensor([[0,1,2],[0,1,2]]) #定义一个x,y轴的坐标系
v=torch.tensor([1,2,3]) #定义坐标系上的点值
c=torch.sparse_coo_tensor(i,v,(4,4),dtype=torch.float32,device=dev_cpu) #稀疏张量;去0的张量,假设:一个二维100*100,包含10000个值,9999个值是0,1个值是1,那么极大浪费内存,因为0值是没有计算意义的;因此去0得到的叫稀疏张量;
c1=torch.sparse_coo_tensor(i,v,(4,4),dtype=torch.float32,device=dev_cpu).to_dense() #to_dense() 转为稠密张量,如结果:4*4的矩阵,
print(c)
print(c1)
plt.imshow(c1); #图形看一下是不是对角线

输出结果: 

输出图形:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值