详解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笔记(2)
Oct 24 Python
python实现简单温度转换的方法
Mar 13 Python
python利用rsa库做公钥解密的方法教程
Dec 10 Python
Python中XlsxWriter模块简介与用法分析
Apr 24 Python
python判断输入日期为第几天的实例
Nov 13 Python
python代码实现逻辑回归logistic原理
Aug 07 Python
Pytorch Tensor的索引与切片例子
Aug 18 Python
在Tensorflow中实现梯度下降法更新参数值
Jan 23 Python
Jupyter notebook运行Spark+Scala教程
Apr 10 Python
Keras中 ImageDataGenerator函数的参数用法
Jul 03 Python
python gui开发——制作抖音无水印视频下载工具(附源码)
Feb 07 Python
教你用Python matplotlib库制作简单的动画
Jun 11 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
生成php程序的php代码
2008/04/07 PHP
PHP取整函数:ceil,floor,round,intval的区别详细解析
2013/08/31 PHP
php上传图片类及用法示例
2016/05/11 PHP
js实现一个省市区三级联动选择框代码分享
2013/03/06 Javascript
jQuery处理xml格式的返回数据(实例解析)
2013/11/28 Javascript
js调试工具console.log()方法查看js代码的执行情况
2014/08/08 Javascript
JS实现先显示大图后自动收起显示小图的广告代码
2015/09/04 Javascript
详解jQuery移动页面开发中的ui-grid网格布局使用
2015/12/03 Javascript
javascript 将共享属性迁移到原型中去的实现方法
2016/08/31 Javascript
JS获取鼠标位置距浏览器窗口距离的方法示例
2017/04/11 Javascript
vue.js 初体验之Chrome 插件开发实录
2017/05/13 Javascript
vue Render中slots的使用的实例代码
2017/07/19 Javascript
JS库之Waypoints的用法详解
2017/09/13 Javascript
浅谈React中的元素、组件、实例和节点
2018/02/27 Javascript
如何去除富文本中的html标签及vue、react、微信小程序中的过滤器
2018/11/21 Javascript
微信小程序模板template简单用法示例
2018/12/04 Javascript
Fetch超时设置与终止请求详解
2019/05/18 Javascript
layer设置maxWidth及maxHeight解决方案
2019/07/26 Javascript
Vue中使用Echarts仪表盘展示实时数据的实现
2020/11/01 Javascript
[52:20]DOTA2-DPC中国联赛正赛 SAG vs XGBO3 第一场 3月5日
2021/03/11 DOTA
Python数据预处理之数据规范化(归一化)示例
2019/01/08 Python
详解python做UI界面的方法
2019/02/27 Python
python循环定时中断执行某一段程序的实例
2019/06/29 Python
python--shutil移动文件到另一个路径的操作
2020/07/13 Python
python如何实现DES加密
2020/09/21 Python
html5如何及时更新缓存文件(js、css或图片)
2013/06/24 HTML / CSS
银行自荐信范文
2013/10/07 职场文书
十佳青年个人事迹材料
2014/01/28 职场文书
户外宣传策划方案
2014/05/25 职场文书
原料仓管员岗位职责
2015/04/01 职场文书
现场施工员岗位职责
2015/04/11 职场文书
医药公司开票员岗位职责
2015/04/15 职场文书
2015年远程教育工作总结
2015/05/20 职场文书
运输公司工作总结
2015/08/11 职场文书
调解协议书范本
2016/03/21 职场文书
Golang并发工具Singleflight
2022/05/06 Golang