详解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实现批量将word转html并将html内容发布至网站的方法
Jul 14 Python
python 根据正则表达式提取指定的内容实例详解
Dec 04 Python
Python编写Windows Service服务程序
Jan 04 Python
python实现朴素贝叶斯分类器
Mar 28 Python
python实现连续图文识别
Dec 18 Python
浅谈Python 列表字典赋值的陷阱
Jan 20 Python
详解用python实现基本的学生管理系统(文件存储版)(python3)
Apr 25 Python
基于python plotly交互式图表大全
Dec 07 Python
翻转数列python实现,求前n项和,并能输出整个数列的案例
May 03 Python
Python requests模块安装及使用教程图解
Jun 30 Python
python中把元组转换为namedtuple方法
Dec 09 Python
python如何查找列表中元素的位置
May 30 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+mysql写的简单留言本实例代码
2008/07/25 PHP
php $_SERVER windows系统与linux系统下的区别说明
2014/02/14 PHP
PHP延迟静态绑定示例分享
2014/06/22 PHP
Zend Framework入门教程之Zend_Registry组件用法详解
2016/12/09 PHP
php实现通过soap调用.Net的WebService asmx文件
2017/02/27 PHP
php微信开发之谷歌测距
2018/06/14 PHP
laravel中的一些简单实用功能
2018/11/03 PHP
Add a Picture to a Microsoft Word Document
2007/06/15 Javascript
ajax 文件上传应用简单实现
2009/03/03 Javascript
使用命令对象代替switch语句的写法示例
2015/02/28 Javascript
jQuery-1.9.1源码分析系列(十一)DOM操作续之克隆节点
2015/12/01 Javascript
Omi v1.0.2发布正式支持传递javascript表达式
2017/03/21 Javascript
VueJs使用Amaze ui调整列表和内容页面
2017/11/30 Javascript
基于Vue制作组织架构树组件
2017/12/06 Javascript
vue-cli的build的文件夹下没有dev-server.js文件配置mock数据的方法
2019/04/17 Javascript
微信小程序合法域名配置方法
2019/05/06 Javascript
微信小程序页面间传递数组对象方法解析
2019/11/06 Javascript
前端 javascript 实现文件下载的示例
2020/11/24 Javascript
[47:22]Mineski vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python+pandas分析nginx日志的实例
2018/04/28 Python
在CMD命令行中运行python脚本的方法
2018/05/12 Python
使用Flask集成bootstrap的方法
2018/07/24 Python
Python 获取主机ip与hostname的方法
2018/12/17 Python
python读取txt文件,去掉空格计算每行长度的方法
2018/12/20 Python
Python一个简单的通信程序(客户端 服务器)
2019/03/06 Python
Python 仅获取响应头, 不获取实体的实例
2019/08/21 Python
浅析Python3 pip换源问题
2020/01/06 Python
Python3读写ini配置文件的示例
2020/11/06 Python
英国儿童图书网站:Scholastic
2017/03/26 全球购物
Sneaker Studio捷克:购买运动鞋
2018/07/08 全球购物
大宝sod蜜广告词
2014/03/21 职场文书
党的群众路线对照检查材料思想汇报(学校)
2014/10/04 职场文书
python urllib库的使用详解
2021/04/13 Python
Python Django 后台管理之后台模型属性详解
2021/04/25 Python
php+laravel 扫码二维码签到功能
2021/05/15 PHP
SQL使用复合索引实现数据库查询的优化
2022/05/25 SQL Server