pytorch中tensor张量数据类型的转化方式


Posted in Python onDecember 31, 2019

1.tensor张量与numpy相互转换

tensor ----->numpy

import torch
a=torch.ones([2,5])

tensor([[1., 1., 1., 1., 1.],
    [1., 1., 1., 1., 1.]])
# **********************************    
b=a.numpy()

array([[1., 1., 1., 1., 1.],
    [1., 1., 1., 1., 1.]], dtype=float32)
numpy ----->tensor

import numpy as np
a=np.ones([2,5])

array([[1., 1., 1., 1., 1.],
    [1., 1., 1., 1., 1.]])
# **********************************    
b=torch.from_numpy(a)

tensor([[1., 1., 1., 1., 1.],
    [1., 1., 1., 1., 1.]], dtype=torch.float64)

2.tensor张量与list相互转换

tensor—>list

a=torch.ones([1,5])

tensor([[1., 1., 1., 1., 1.]])
# ***********************************
b=a.tolist()

[[1.0, 1.0, 1.0, 1.0, 1.0]]



list—>tensor

a=list(range(1,6))

[1, 2, 3, 4, 5]
# **********************************
b=torch.tensor(a)

tensor([1, 2, 3, 4, 5])

3.tensor张量见类型转换

构建一个新的张量,你要转变成不同的类型只需要根据自己的需求选择即可

tensor = torch.Tensor(3, 5)

# torch.long() 将tensor投射为long类型
newtensor = tensor.long()

# torch.half()将tensor投射为半精度浮点类型
newtensor = tensor.half()

# torch.int()将该tensor投射为int类型
newtensor = tensor.int()

# torch.double()将该tensor投射为double类型
newtensor = tensor.double()

# torch.float()将该tensor投射为float类型
newtensor = tensor.float()

# torch.char()将该tensor投射为char类型
newtensor = tensor.char()

# torch.byte()将该tensor投射为byte类型
newtensor = tensor.byte()

# torch.short()将该tensor投射为short类型
newtensor = tensor.short()

4.type_as() 将张量转换成指定类型张量

>>> a=torch.Tensor(2,5)
>>> a
tensor([[1.9431e-19, 4.8613e+30, 1.4603e-19, 2.0704e-19, 4.7429e+30],
    [1.6530e+19, 1.8254e+31, 1.4607e-19, 6.8801e+16, 1.8370e+25]])
>>> b=torch.IntTensor(1,2)
>>> b
tensor([[16843009,    1]], dtype=torch.int32)
>>> a.type_as(b)
tensor([[     0, -2147483648,      0,      0, -2147483648],
    [-2147483648, -2147483648,      0, -2147483648, -2147483648]],
    dtype=torch.int32)
>>> a
tensor([[1.9431e-19, 4.8613e+30, 1.4603e-19, 2.0704e-19, 4.7429e+30],
    [1.6530e+19, 1.8254e+31, 1.4607e-19, 6.8801e+16, 1.8370e+25]])

以上这篇pytorch中tensor张量数据类型的转化方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python连接mysql数据库示例(做增删改操作)
Dec 31 Python
python获得两个数组交集、并集、差集的方法
Mar 27 Python
使用PDB模式调试Python程序介绍
Apr 05 Python
Python实现更改图片尺寸大小的方法(基于Pillow包)
Sep 19 Python
python如何通过twisted实现数据库异步插入
Mar 20 Python
python3调用windows dos命令的例子
Aug 14 Python
python多线程实现TCP服务端
Sep 03 Python
细数nn.BCELoss与nn.CrossEntropyLoss的区别
Feb 29 Python
pycharm 关掉syntax检查操作
Jun 09 Python
Python pip使用超时问题解决方案
Aug 03 Python
详解pytorch中squeeze()和unsqueeze()函数介绍
Sep 03 Python
如何利用python生成MD5并去重
Dec 07 Python
Pytorch之parameters的使用
Dec 31 #Python
使用TensorFlow-Slim进行图像分类的实现
Dec 31 #Python
Pytorch之view及view_as使用详解
Dec 31 #Python
window环境pip切换国内源(pip安装异常缓慢的问题)
Dec 31 #Python
如何基于Python创建目录文件夹
Dec 31 #Python
Pytorch之contiguous的用法
Dec 31 #Python
python实现将json多行数据传入到mysql中使用
Dec 31 #Python
You might like
smarty+adodb+部分自定义类的php开发模式
2006/12/31 PHP
无需重新编译php加入ftp扩展的解决方法
2013/02/07 PHP
php读取csv文件后,uft8 bom导致在页面上显示出现问题的解决方法
2013/08/10 PHP
PHP变量内存分配问题记录整理
2013/11/27 PHP
php 删除一维数组中某一个值元素的操作方法
2018/02/01 PHP
一段实时更新的时间代码
2006/07/07 Javascript
延时重复执行函数 lLoopRun.js
2007/05/08 Javascript
Jquery Change与bind事件代码
2011/09/29 Javascript
ToolTips JQEURY插件之简洁小提示框效果
2011/11/19 Javascript
js点击事件链接的问题解决
2014/04/25 Javascript
简介JavaScript中的push()方法的使用
2015/06/09 Javascript
又一枚精彩的弹幕效果jQuery实现
2016/07/25 Javascript
js 调用百度分享功能
2017/02/27 Javascript
JS实现快速比较两个字符串中包含有相同数字的方法
2017/09/11 Javascript
JS数组求和的常用方法实例小结
2019/01/07 Javascript
简单了解Javscript中兄弟ifream的方法调用
2019/06/17 Javascript
NodeJS http模块用法示例【创建web服务器/客户端】
2019/11/05 NodeJs
jQuery实现手风琴效果(蒙版)
2020/01/11 jQuery
vue或react项目生产环境去掉console.log的操作
2020/09/02 Javascript
[02:24]DOTA2痛苦女王 英雄基础教程
2013/11/26 DOTA
轻松实现TensorFlow微信跳一跳的AI
2018/01/05 Python
Python创建普通菜单示例【基于win32ui模块】
2018/05/09 Python
Python3.4解释器用法简单示例
2019/03/22 Python
python粘包问题及socket套接字编程详解
2019/06/29 Python
Apache,wsgi,django 程序部署配置方法详解
2019/07/01 Python
django-初始配置(纯手写)详解
2019/07/30 Python
利用Pytorch实现简单的线性回归算法
2020/01/15 Python
个人自我鉴定范文
2013/10/04 职场文书
小学生手册家长评语
2014/04/16 职场文书
茶花女读书笔记
2015/06/29 职场文书
《黄山奇石》教学反思
2016/02/18 职场文书
申论不会写怎么办?教您掌握这6点思维和原则
2019/07/17 职场文书
python基于tkinter实现gif录屏功能
2021/05/19 Python
嵌入式Redis服务器在Spring Boot测试中的使用教程
2021/07/21 Redis
Html5同时支持多端sdk的小技巧
2021/11/17 HTML / CSS
Python中的socket网络模块介绍
2022/07/23 Python