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网络编程之TCP通信实例和socketserver框架使用例子
Apr 25 Python
寻找网站后台地址的python脚本
Sep 01 Python
python爱心表白 每天都是浪漫七夕!
Aug 18 Python
Python3爬虫使用Fidder实现APP爬取示例
Nov 27 Python
numpy.where() 用法详解
May 27 Python
python抓取多种类型的页面方法实例
Nov 20 Python
python实现画循环圆
Nov 23 Python
python实现视频读取和转化图片
Dec 10 Python
python 操作hive pyhs2方式
Dec 21 Python
Python json模块与jsonpath模块区别详解
Mar 05 Python
python 数据分析实现长宽格式的转换
May 18 Python
Python中常见的反爬机制及其破解方法总结
Jun 10 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
安装ImageMagick出现error while loading shared libraries的解决方法
2014/09/23 PHP
Laravel框架实现model层的增删改查(CURD)操作示例
2018/05/12 PHP
Laravel5.7 数据库操作迁移的实现方法
2019/04/12 PHP
枚举JavaScript对象的函数
2006/12/22 Javascript
JS实现切换标签页效果实例代码
2013/11/01 Javascript
JS记录用户登录次数实现代码
2014/01/15 Javascript
20条学习javascript的编程规范的建议
2014/11/28 Javascript
vue多级多选菜单组件开发
2020/09/08 Javascript
原生JS轮播图插件
2017/02/09 Javascript
微信小程序中使用javascript 回调函数
2017/05/11 Javascript
vue页面切换到滚动页面显示顶部的实例
2018/03/13 Javascript
Vue组件教程之Toast(Vue.extend 方式)详解
2019/01/27 Javascript
详解关闭令人抓狂的ESlint 语法检测配置方法
2019/10/28 Javascript
js仿淘宝放大镜效果
2020/12/28 Javascript
python3简单实现微信爬虫
2015/04/09 Python
RC4文件加密的python实现方法
2015/06/30 Python
Python的CGIHTTPServer交互实现详解
2018/02/08 Python
python selenium自动上传有赞单号的操作方法
2018/07/05 Python
Python基于sklearn库的分类算法简单应用示例
2018/07/09 Python
python正则表达式之对号入座篇
2018/07/24 Python
Django restframework 框架认证、权限、限流用法示例
2019/12/21 Python
python适合做数据挖掘吗
2020/06/16 Python
Java如何基于wsimport调用wcf接口
2020/06/17 Python
python使用自定义钉钉机器人的示例代码
2020/06/24 Python
竞争上岗演讲稿
2014/01/05 职场文书
劳动工资科岗位职责范本
2014/03/02 职场文书
交通事故协议书范文
2014/04/16 职场文书
妇女干部培训方案
2014/05/12 职场文书
生日庆典策划方案
2014/06/02 职场文书
党员目标管理责任书
2014/07/25 职场文书
法人授权委托书公证范本
2014/09/14 职场文书
2015年挂职锻炼工作总结
2014/12/12 职场文书
企业党员岗位承诺书
2015/04/27 职场文书
Python中使用subprocess库创建附加进程
2021/05/11 Python
十大最帅动漫男主 碓冰拓海上榜,第一是《灌篮高手》男主角
2022/03/18 日漫
解决IIS7下无法绑定https主机的问题
2022/04/29 Servers