pytorch: tensor类型的构建与相互转换实例


Posted in Python onJuly 26, 2018

Summary

主要包括以下三种途径:

使用独立的函数;

使用torch.type()函数;

使用type_as(tesnor)将张量转换为给定类型的张量。

使用独立函数

import torch

tensor = torch.randn(3, 5)
print(tensor)

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

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

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

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

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

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

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

# torch.short()将该tensor投射为short类型
short_tensor = tensor.short()
print(short_tensor)
-0.5841 -1.6370 0.1353 0.6334 -3.0761
-0.2628 0.1245 0.8626 0.4095 -0.3633
 1.3605 0.5055 -2.0090 0.8933 -0.6267
[torch.FloatTensor of size 3x5]


 0 -1 0 0 -3
 0 0 0 0 0
 1 0 -2 0 0
[torch.LongTensor of size 3x5]


-0.5840 -1.6367 0.1353 0.6333 -3.0762
-0.2627 0.1245 0.8628 0.4094 -0.3633
 1.3604 0.5054 -2.0098 0.8936 -0.6265
[torch.HalfTensor of size 3x5]


 0 -1 0 0 -3
 0 0 0 0 0
 1 0 -2 0 0
[torch.IntTensor of size 3x5]


-0.5841 -1.6370 0.1353 0.6334 -3.0761
-0.2628 0.1245 0.8626 0.4095 -0.3633
 1.3605 0.5055 -2.0090 0.8933 -0.6267
[torch.DoubleTensor of size 3x5]


-0.5841 -1.6370 0.1353 0.6334 -3.0761
-0.2628 0.1245 0.8626 0.4095 -0.3633
 1.3605 0.5055 -2.0090 0.8933 -0.6267
[torch.FloatTensor of size 3x5]


 0 -1 0 0 -3
 0 0 0 0 0
 1 0 -2 0 0
[torch.CharTensor of size 3x5]


 0 255 0 0 253
 0 0 0 0 0
 1 0 254 0 0
[torch.ByteTensor of size 3x5]


 0 -1 0 0 -3
 0 0 0 0 0
 1 0 -2 0 0
[torch.ShortTensor of size 3x5]

其中,torch.Tensor、torch.rand、torch.randn 均默认生成 torch.FloatTensor型 :

import torch

tensor = torch.Tensor(3, 5)
assert isinstance(tensor, torch.FloatTensor)

tensor = torch.rand(3, 5)
assert isinstance(tensor, torch.FloatTensor)

tensor = torch.randn(3, 5)
assert isinstance(tensor, torch.FloatTensor)

使用torch.type()函数

type(new_type=None, async=False)
import torch

tensor = torch.randn(3, 5)
print(tensor)

int_tensor = tensor.type(torch.IntTensor)
print(int_tensor)
-0.4449 0.0332 0.5187 0.1271 2.2303
 1.3961 -0.1542 0.8498 -0.3438 -0.2834
-0.5554 0.1684 1.5216 2.4527 0.0379
[torch.FloatTensor of size 3x5]


 0 0 0 0 2
 1 0 0 0 0
 0 0 1 2 0
[torch.IntTensor of size 3x5]

使用type_as(tesnor)将张量转换为给定类型的张量

import torch

tensor_1 = torch.FloatTensor(5)

tensor_2 = torch.IntTensor([10, 20])
tensor_1 = tensor_1.type_as(tensor_2)
assert isinstance(tensor_1, torch.IntTensor)

以上这篇pytorch: tensor类型的构建与相互转换实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python基本数据类型详细介绍
Mar 11 Python
web.py获取上传文件名的正确方法
Aug 26 Python
介绍Python的Django框架中的QuerySets
Apr 20 Python
浅谈Python中copy()方法的使用
May 21 Python
Python中的下划线详解
Jun 24 Python
python实现汉诺塔方法汇总
Jul 25 Python
Python实现求笛卡尔乘积的方法
Sep 16 Python
python 自动批量打开网页的示例
Feb 21 Python
python实现随机漫步方法和原理
Jun 10 Python
基于Python解密仿射密码
Oct 21 Python
Python 将json序列化后的字符串转换成字典(推荐)
Jan 06 Python
python pyqtgraph 保存图片到本地的实例
Mar 14 Python
pytorch中tensor的合并与截取方法
Jul 26 #Python
Python爬虫框架Scrapy常用命令总结
Jul 26 #Python
Python退火算法在高次方程的应用
Jul 26 #Python
Python爬虫框架Scrapy基本用法入门教程
Jul 26 #Python
Tensorflow 合并通道及加载子模型的方法
Jul 26 #Python
解决tensorflow测试模型时NotFoundError错误的问题
Jul 26 #Python
tensorflow 恢复指定层与不同层指定不同学习率的方法
Jul 26 #Python
You might like
php 读取shell管道传输过来的内容
2010/03/01 PHP
PHP zip扩展Linux下安装过程分享
2014/05/05 PHP
一个严格的PHP Session会话超时时间设置方法
2014/06/10 PHP
PHP中上传多个文件的表单设计例子
2014/11/19 PHP
laravel Task Scheduling(任务调度)在windows下的使用详解
2019/10/22 PHP
JavaScript中的几个关键概念的理解-原型链的构建
2011/05/12 Javascript
JavaScript高级程序设计 阅读笔记(十八) js跨平台的事件
2012/08/14 Javascript
在javascript中实现函数数组的方法
2013/12/25 Javascript
JavaScript实现点击单元格改变背景色的方法
2016/02/12 Javascript
JS使用JSON作为参数实例分析
2016/06/23 Javascript
jQuery实现每隔几条元素增加1条线的方法
2016/06/27 Javascript
简单好用的nodejs 爬虫框架分享
2017/03/26 NodeJs
vue实现简单表格组件实例详解
2017/04/16 Javascript
利用JS如何计算字符串所占字节数示例代码
2017/09/13 Javascript
vue删除html内容的标签样式实例
2018/09/13 Javascript
vue-cli项目修改文件热重载失效的解决方法
2018/09/19 Javascript
微信小程序 高德地图路线规划实现过程详解
2019/08/05 Javascript
微信小程序点击view动态添加样式过程解析
2020/01/21 Javascript
小程序实现简单语音聊天的示例代码
2020/07/24 Javascript
python类的继承实例详解
2017/03/30 Python
python中nan与inf转为特定数字方法示例
2017/05/11 Python
Windows下PyCharm安装图文教程
2018/08/27 Python
解决python 自动安装缺少模块的问题
2018/10/22 Python
对Python中list的倒序索引和切片实例讲解
2018/11/15 Python
pandas 数据索引与选取的实现方法
2019/06/21 Python
iphoneX 适配客户端H5页面的方法教程
2017/12/08 HTML / CSS
HTML5 WebSocket实现点对点聊天的示例代码
2018/01/31 HTML / CSS
英国舒适型鞋履品牌:FitFlop
2017/05/17 全球购物
自动化专业个人求职信范文
2013/12/30 职场文书
优秀员工评语
2014/02/10 职场文书
文秘档案管理岗位职责
2014/03/06 职场文书
学生个人自我鉴定
2014/03/26 职场文书
产品设计开发计划书
2014/05/07 职场文书
模特大赛策划方案
2014/05/28 职场文书
2016教师政治学习心得体会
2016/01/23 职场文书
解决sql server 数据库,sa用户被锁定的问题
2021/06/11 SQL Server