torch.Tensor()与torch.tensor()
今天在练习手写softmax系列函数的时候遇到了报错:
出错原因我的target不是index tensor。我是按照一个博客进行实践的,自己一个个代码打过来的怎么会有错呢?仔细一检查发现确实一个小地方跟人家不一样,人家的target = torch.tensor([0, 2, 4, 1, 3])这里的tensor是小写,其实这还是我第一次看到torch.tensor()这样构造一个tensor,于是下定决定好好把他们两个搞清楚。
torch.Tensor()
我们首先明确这一点,这是python类,是默认张量类型torch.FloatTensor()的别名,我们每次调用torch.Tensor([1,2, 3, 4, 5])来构造一个tensor的时候,会调用Tensor类的构造函数,生成一个单精度浮点类型的张量。
它不能指定数据类型,除非转成一个已知数据类型的张量,使用type_as(tesnor)将张量转换为给定类型的张量
torch.Tensor()
但是torch.tensor(注意这里是小写)仅仅是python的函数,函数原型是
torch.tensor(data, dtype=None, device=None, requires_grad=False)
其中data可以是:list,tuple,NumPy,ndarray等其他类型,torch.tensor会从data中的数据部分做拷贝(而不是直接引用),根据原始数据类型生成相应的torch.LongTensor torch.FloatTensor和torch.DoubleTensor
我们可以看到data变成了浮点型,tensor1.type()随之也变成相应的torch.FloatTensor, 此外我们看到函数定义,可以生成指定dtype的tensor。
torch.Tensor()与torch.tensor()相关推荐
- PyTorch 笔记(08)— Tensor 比较运算(torch.gt、lt、ge、le、eq、ne、torch.topk、torch.sort、torch.max、torch.min)
1. 常用函数 比较函数中有一些是逐元素比较,操作类似逐元素操作,还有一些类似归并操作,常用的比较函数如下表所示. 表中第一行的比较操作已经实现了运算符重载,因此可以使用 a>=b,a>b ...
- torch.Tensor和torch.tensor的区别
torch.Tensor和torch.tensor的区别 2019-06-10 16:34:48 Vic_Hao 阅读数 4058更多 分类专栏: Pytorch 在Pytorch中,Tensor和t ...
- pytorch torch.Tensor.new_ones()(返回一个与size大小相同的用1填充的张量。 默认返回的Tensor具有与此张量相同的torch.dtype和torch.device)
from https://pytorch.org/docs/1.1.0/tensors.html?highlight=new_ones#torch.Tensor.new_ones new_ones(s ...
- Pytorch中的 torch.Tensor() 和 torch.tensor() 的区别
直接在搜索引擎里进行搜索,可以看到官方文档中两者对应的页面: 分别点击进去,第一个链接解释了什么是 torch.Tensor: torch.Tensor 是一个包含单一数据类型元素的多维矩阵(数组). ...
- torch.cuda.FloatTensor 与 torch.FloatTensor(torch.Tensor)--CPU和GPU上的数据类型
1.torch.cuda.FloatTensor 与 torch.FloatTensor Pytorch中的tensor又包括CPU上的数据类型和GPU上的数据类型,一般GPU上的Tensor是CPU ...
- torch.Tensor和torch.tensor有什么区别?
介绍 在PyTorch 中,torch.Tensor是主要的tensor类,所有的tensor都是torch.Tensor的实例.torch.Tensor是torch.FloatTensor的别名. ...
- [PyTorch] 拼接多个tensor:torch.cat((A,B),axis)
注:参考博客Pytorch中的torch.cat()函数.本人在其基础上增加了更为详细的解释. torch.cat((A,B),axis)是对A, B两个tensor进行拼接. 参数axis指定拼接的 ...
- torch.Tensor(dim)与torch.Tensor((dim)), torch.Tensor(dim1,dim2)与torch.Tensor((dim1,dim2))的区别
1 torch.Tensor(dim)与torch.Tensor((dim))的区别 从三张截图可以看出这两者其实是完全一样的,都表示的是这个张量的维度而不是这个张量的数据,其中第一处之所以不同是因为 ...
- pytorch每日一学22(torch.empty()、torch.empty_like()、torch.empty_strided())创建未初始化数据的tensor
第22个方法 由于下面这三个方法比较相似,都是创建未初始化的tensor(第三个是创建一个tensor的视图),所以就放到一起来讲: torch.empty(*size, *, out=None, d ...
- pytorch(2)Tensor创建和获取tensor的size信息、torch.dtype、torch.device、torch.layout
获取tensor的size信息 >>> import torch >>> from torch.autograd import Variable >>& ...
最新文章
- Field types
- python代码规范 自动优化工具Black
- lucene,基于QueryParser的搜索
- *62.分页和分段的区别
- Ibatis 升级 Mybatis
- 7-1 图形卡片排序游戏 (40 分)
- hadoop3.1.1 HA高可用分布式集群安装部署
- Codeforces Round #629 (Div. 3) A~C
- 在Android中使用自带API操作Json
- 飞机大战(微信小游戏)
- dedecms如何做中英文网站?
- linux查看磁带大小命令,16条实用的Linux/Unix 磁带管理命令
- 项目管理之项目风险应对
- android进入recovery模式,Android关机重启至recovery安卓进入Recovery模式模式
- 下列属于计算机应用,计算机的应用领域可大致分为6个方面,下列选项中属于计算机应用领域的是...
- groupby.nth_熊猫groupby first vs groupby nth vs groupby head
- 教你一键开发桌面应用程序
- HTML5--CSS3在线编辑工具 超酷!!!(24款非常实用的CSS3工具终极收藏)
- 短信接口抓包_[实战] 实现抢票小工具amp;短信通知提醒
- 2012-2013年世界大学计算机专业排名