pytorch常见的Tensor类型详解


Posted in Python onJanuary 15, 2020

Tensor有不同的数据类型,每种类型分别有对应CPU和GPU版本(HalfTensor除外)。默认的Tensor是FloatTensor,可通过torch.set_default_tensor_type修改默认tensor类型(如果默认类型为GPU tensor,则所有操作都将在GPU上进行)。

Tensor的类型对分析内存占用很有帮助,例如,一个size为(1000,1000,1000)的FloatTensor,它有1000*1000*1000=10^9个元素,每一个元素占用32bit/8=4Byte内存,所以共占用大约4GB内存/显存。HalfTensor是专为GPU版本设计的,同样的元素个数,显存占用只有HalfTensor的一半,所以可以极大缓解GPU显存不足的问题,但是由于HalfTensor所能表示的数值大小和精度有限,所以可能出现溢出等问题。

数据类型 CPU Tensor GPU Tensor
32 bit 浮点 torch.FloatTensor torch.cuda.FloatTensor
64 bit 浮点 torch.DoubleTensor torch.cuda.DoubleTensor
16 bit 半精度浮点 N/A torch.cuda.HalfTensor
8 bit 无符号整形(0~255) torch.ByteTensor torch.cuda.ByteTensor
8 bit 有符号整形(-128~127) torch.CharTensor torch.cuda.CharTensor
16 bit 有符号整形 torch.ShortTensor torch.cuda.ShortTensor
32 bit 有符号整形 torch.IntTensor torch.cuda.IntTensor
64 bit 有符号整形 torch.LongTensor torch.cuda LongTensor

各数据类型之间可以互相转换,type(new_type)是通用的做法,同时还有float、long、half等快捷方法。CPU tensor和GPU tensor之间的互换是通过tensor.cudatensor.cpu的方法实现。

如:

#设置默认tensor,注意参数是字符串
torch.set_default_tensor_type('torch.IntTensor')
 
a=torch.Tensor(2,3)
print(a)  #a现在是IntTensor

以上这篇pytorch常见的Tensor类型详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
利用python实现数据分析
Jan 11 Python
Python双精度浮点数运算并分行显示操作示例
Jul 21 Python
python深度优先搜索和广度优先搜索
Feb 07 Python
python调用系统ffmpeg实现视频截图、http发送
Mar 06 Python
python opencv 读取图片 返回图片某像素点的b,g,r值的实现方法
Jul 03 Python
python GUI库图形界面开发之PyQt5树形结构控件QTreeWidget详细使用方法与实例
Mar 02 Python
jupyter notebook tensorflow打印device信息实例
Apr 20 Python
tensorflow dataset.shuffle、dataset.batch、dataset.repeat顺序区别详解
Jun 03 Python
Python turtle库的画笔控制说明
Jun 28 Python
python文件操作seek()偏移量,读取指正到指定位置操作
Jul 05 Python
python3从网络摄像机解析mjpeg http流的示例
Nov 13 Python
使用numpngw和matplotlib生成png动画的示例代码
Jan 24 Python
pytorch 常用线性函数详解
Jan 15 #Python
python3.8下载及安装步骤详解
Jan 15 #Python
浅谈pytorch、cuda、python的版本对齐问题
Jan 15 #Python
pytorch模型预测结果与ndarray互转方式
Jan 15 #Python
pytorch实现对输入超过三通道的数据进行训练
Jan 15 #Python
Pytorch 定义MyDatasets实现多通道分别输入不同数据方式
Jan 15 #Python
pytorch构建多模型实例
Jan 15 #Python
You might like
使用字符串函数输出整数化的PHP版本号
2006/10/09 PHP
php文件上传表单摘自drupal的代码
2011/02/15 PHP
php常用Stream函数集介绍
2013/06/24 PHP
Thinkphp使用mongodb数据库实现多条件查询方法
2014/06/26 PHP
PHP Try-catch 语句使用技巧
2016/02/28 PHP
PHP设计模式之模板方法模式实例浅析
2018/12/20 PHP
javascript设计模式之工厂模式示例讲解
2014/03/04 Javascript
JavaScript常用脚本汇总(三)
2015/03/04 Javascript
jquery仿百度经验滑动切换浏览效果
2015/04/14 Javascript
js生成验证码并直接在前端判断
2015/05/15 Javascript
javascript简单进制转换实现方法
2016/11/24 Javascript
JavaScript校验Number(4,1)格式的数字实例代码
2017/03/13 Javascript
Angularjs2不同组件间的通信实例代码
2017/05/06 Javascript
JS实现模糊查询带下拉匹配效果
2018/06/21 Javascript
Vue中使用sass实现换肤功能
2018/09/07 Javascript
javascript json字符串到json对象转义问题
2019/01/22 Javascript
vue用BMap百度地图实现即时搜索功能
2019/09/26 Javascript
Javascript实现鼠标移入方向感知
2020/06/24 Javascript
[38:39]KG vs Mineski 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
Python入门篇之正则表达式
2014/10/20 Python
Python中使用PIPE操作Linux管道
2015/02/04 Python
python 通过SSHTunnelForwarder隧道连接redis的方法
2019/02/19 Python
python单线程下实现多个socket并发过程详解
2019/07/27 Python
Python计算机视觉里的IOU计算实例
2020/01/17 Python
python 发送邮件的四种方法汇总
2020/12/02 Python
Python排序函数的使用方法详解
2020/12/11 Python
一家专门做特卖的网站:唯品会
2016/10/09 全球购物
英国珠宝钟表和家居礼品精品店:David Shuttle
2018/02/24 全球购物
豪华床上用品、床单和浴室必需品:Peacock Alley
2019/09/04 全球购物
员工拓展培训方案
2014/02/15 职场文书
小学感恩节活动策划方案
2014/10/06 职场文书
个人存款证明书
2014/10/18 职场文书
2015年售票员工作总结
2015/04/29 职场文书
毕业设计致谢词
2015/05/14 职场文书
基于Python的EasyGUI学习实践
2021/05/07 Python
方法汇总:Python 安装第三方库常用
2022/04/26 Python