详解pytorch tensor和ndarray转换相关总结


Posted in Python onSeptember 03, 2020

在使用pytorch的时候,经常会涉及到两种数据格式tensor和ndarray之间的转换,这里总结一下两种格式的转换:

1. tensor cpu 和tensor gpu之间的转化:

tensor cpu 转为tensor gpu:
tensor_gpu = tensor_cpu.cuda()

>>> tensor_cpu = torch.ones((2,2))
tensor([[1., 1.],
    [1., 1.]])
>>> tensor_gpu = tensor_cpu.cuda()
tensor([[1., 1.],
    [1., 1.]], device='cuda:0')

tensor gpu 转为tensor cpu:
tensor_cpu = tensor_gpu.cuda()

>>> tensor_gpu.cpu()
tensor([[1., 1.],
    [1., 1.]])

2. tensor cpu 和 ndarray 之间的转化:

tensor cpu 转为 ndarray:

>>> np_array= tensor_cpu.numpy()
array([[1., 1.],
    [1., 1.]], dtype=float32)

ndarray 转为 tensor cpu:
注:ndarray的默认精度为64位,Tensor的默认精度位32位,所以通过Tensor直接转换的话,精度会转换到32位,若通过from_numpy的方式,则会保留原来64位精度

>>> torch.from_numpy(np.ones((2,2)))
tensor([[1., 1.],
    [1., 1.]], dtype=torch.float64)
>>> torch.Tensor(np.ones((2,2)))
tensor([[1., 1.],
    [1., 1.]])

3. tensor cpu 和 scalar 之间的转化:

如果只是训练了一个简单的分类网络,对单个样本的输出会是一个标量(scalar)

>>>torch.ones((1,1)).item()
1.0

通过一张图说明三者的转化方式:

详解pytorch tensor和ndarray转换相关总结

到此这篇关于详解pytorch tensor和ndarray转换相关总结的文章就介绍到这了,更多相关pytorch tensor和ndarray转换内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中的ctime()方法使用教程
May 22 Python
python实现给数组按片赋值的方法
Jul 28 Python
Python使用matplotlib绘制正弦和余弦曲线的方法示例
Jan 06 Python
Python简单计算文件MD5值的方法示例
Apr 11 Python
python dataframe常见操作方法:实现取行、列、切片、统计特征值
Jun 09 Python
Python 调用 zabbix api的方法示例
Jan 06 Python
opencv python统计及绘制直方图的方法
Jan 21 Python
python实现批量注册网站用户的示例
Feb 22 Python
Python: 传递列表副本方式
Dec 19 Python
python函数中将变量名转换成字符串实例
May 11 Python
python 模拟登陆github的示例
Dec 04 Python
python APScheduler执行定时任务介绍
Apr 19 Python
python开发入门——列表生成式
Sep 03 #Python
Pytorch之Tensor和Numpy之间的转换的实现方法
Sep 03 #Python
Python 多线程C段扫描、检测 Ping扫描脚本的实现
Sep 03 #Python
Python开发入门——迭代的基本使用
Sep 03 #Python
Python 整行读取文本方法并去掉readlines换行\n操作
Sep 03 #Python
Python多分支if语句的使用
Sep 03 #Python
Python判断字符串是否为合法标示符操作
Sep 03 #Python
You might like
apache rewrite_module模块使用教程
2008/01/10 PHP
PHP通过iconv将字符串从GBK转换为UTF8字符集
2011/07/18 PHP
php中替换字符串中的空格为逗号','的方法
2014/06/09 PHP
PHP实现的DES加密解密封装类完整实例
2017/04/29 PHP
老生常谈PHP面向对象之标识映射
2017/06/21 PHP
PHP实现模拟http请求的方法分析
2017/12/20 PHP
PHP中引用类型和值类型功能与用法示例
2019/02/26 PHP
javascript 读取图片文件的大小
2009/06/25 Javascript
验证javascript中Object和Function的关系的三段简单代码
2010/06/27 Javascript
jquery validate添加自定义验证规则(验证邮箱 邮政编码)
2013/12/04 Javascript
JS事件添加和移出的兼容写法示例
2016/06/20 Javascript
用jQuery实现优酷首页轮播图
2017/01/09 Javascript
js实现数组去重方法及效率?Ρ? target=
2017/02/14 Javascript
jQuery实现单击按钮遮罩弹出对话框效果(2)
2017/02/20 Javascript
实例讲解JavaScript预编译流程
2019/01/24 Javascript
JavaScript使用localStorage存储数据
2019/09/25 Javascript
详解JavaScript 事件流
2020/09/02 Javascript
解决vant中 tab栏遇到的坑 van-tabs
2020/11/04 Javascript
vue.js实现点击图标放大离开时缩小的代码
2021/01/27 Vue.js
[02:27]《DAC最前线》之附加赛征程
2015/01/29 DOTA
Python中字符串的修改及传参详解
2016/11/30 Python
简单谈谈Python中的几种常见的数据类型
2017/02/10 Python
python计算auc指标实例
2017/07/13 Python
python 反向输出字符串的方法
2018/07/16 Python
Djang的model创建的字段和参数详解
2019/07/27 Python
用 Django 开发一个 Python Web API的方法步骤
2020/12/03 Python
selenium如何定位span元素的实现
2021/01/13 Python
意大利男装网店:Vrients
2019/05/02 全球购物
年会主持词结束语
2014/03/27 职场文书
化妆品活动策划方案
2014/05/23 职场文书
2014年药品销售工作总结
2014/12/16 职场文书
党员争先创优承诺书
2015/01/20 职场文书
第28个世界无烟日活动总结
2015/02/10 职场文书
2019个人工作计划书的格式及范文!
2019/07/04 职场文书
解决vue中provide inject的响应式监听
2022/04/19 Vue.js
JS函数式编程实现XDM一
2022/06/16 Javascript