转自:https://blog.csdn.net/weixin_40446557/article/details/88221851

1.Pytorch上的数据类型

Pytorch的类型可以分为CPU和GPU上的Tensor, 它们拥有的数据类型是基本上是一样的:
tensor.FloatTensor
tensor.LongTensor
tensor.ByteTensor
tensor.CharTensor
tensor.ShortTensor
tensor.IntTensor
torch.LongTensor

其中torch.Tensor是默认的tensor.FloatTensor的简称。

2.数据类型之间的转换

tensor = torch.Tensor(3, 5)
torch.long() 将tensor投射为long类型:
newtensor = torch.long()
torch.int()将该tensor投射为int类型:
newtensor = torch.int()
torch.double()将该tensor投射为double类型:
newtensor = torch.double()

一般,只要在Tensor后加long(), int(), double(), float(), byte()等函数就能将Tensor的类型进行转换
除此之外,可以使用type()函数,data为Tensor数据类型,data.type()给出data的类型,如果使用data.type(torch.FloatTensor)则强制转换为torch.FloatTensor类型的张量, 如果不知道什么类型,可以使用tensor_1.type_as(tensor_2), 将tensor_1转换成tensor_2。

  1. self = torch.LongTensor(3, 5)
  2. # 转换为其他类型
  3. print self.type(torch.FloatTensor)

3.cuda数据类型,cpu类型和一般的数据类型

如果没有特别说明:tensor是cpu上的变量
使用gpu张量:tensor.cuda()
使用cpu张量:tensor.cpu()
Variable转换成普通的Tensor: variable.data()
Tesnor转换成numpy array的格式:tensor.numpy()

numpy数据转换成Tensor: torch.from_numpy(np_data)
Tensor转换成Variable: Variable(tensor)

Pytorch数据类似pytorch中的tensor, 更重要的是tensor可以使用GPU来加速,并且变成Variable可以实现自动求导的功能Variable是对Tensor对象的封装。

转载链接:https://www.jianshu.com/p/eb7c6af28922

  1. 逻辑值TrueFalse转成0和1. +0
print(y)
print(y+0)

输出结果

tensor([ True, False, False,  True,  True, False, False,  True,  True, False])
tensor([1, 0, 0, 1, 1, 0, 0, 1, 1, 0])

Pytorch数据类型转换相关推荐

  1. 数据类型转换pytorch

    du = torch.ones([2,2]) a = np.array([[1,2],[3,4]],dtype=np.float32) b = torch.from_numpy(a)#数据类型是不变的 ...

  2. 06_2_Pytorch的基础数据类型、CPU tensor类型和GPU tensor类型、判断数据类型、CPU或GPU张量之间的转换、数据类型转换、1-4维向量、Tensor张量、Variable等

    1.6.2.Pytorch的基础数据类型 1.6.2.1.Torch定义了的七种CPU tensor类型和八种GPU tensor类型 1.6.2.2.基础数据类型 1.6.2.3.Pytorch数据 ...

  3. tf.cast()数据类型转换

    tf.cast()函数的作用是执行 tensorflow 中张量数据类型转换,比如读入的图片如果是int8类型的,一般在要在训练前把图像的数据格式转换为float32. cast定义: cast(x, ...

  4. Java中如何实现Date与String之间的数据类型转换

    String 数据类型转换成 Date String inputDate = "2021-04-11";Date outputDate = null;SimpleDateForma ...

  5. PyTorch数据加载处理

    PyTorch数据加载处理 PyTorch提供了许多工具来简化和希望数据加载,使代码更具可读性. 1.下载安装包 • scikit-image:用于图像的IO和变换 • pandas:用于更容易地进行 ...

  6. PyTorch 数据并行处理

    PyTorch 数据并行处理 可选择:数据并行处理(文末有完整代码下载) 本文将学习如何用 DataParallel 来使用多 GPU. 通过 PyTorch 使用多个 GPU 非常简单.可以将模型放 ...

  7. Java 数据类型转换

    学而时习之,温故而知新. 数据类型转换,先放一张图,了解数据类型 简单数据类型之间的转换又可以分为: 1 低级到高级的自动类型转换 2 级到低级的强制类型转换 3 包装类过渡类型转换. (有时候我们有 ...

  8. Java基础语法(一)注释,关键字,常量,变量,数据类型,标识符,数据类型转换...

    从今天开始,记录学习Java的过程.要学习Java首先得有环境,至于环境的安装我就不说了,百度有很多教程,比如:http://jingyan.baidu.com/article/20095761904 ...

  9. C/C++各种数据类型转换汇总

    以下是Windows/Linux系统中常用的C/C++各种数据类型转换汇总: #ifndef FBC_MESSY_TEST_DATA_TYPE_CONVERT_HPP_ #define FBC_MES ...

最新文章

  1. plantuml 依赖_使用PlantUML绘制类图
  2. ECshop安装及报错解决方案总结
  3. ff14拆区后哪个服务器人最多,FF14拆区可以转服吗 拆区期间转服教程
  4. 提取voc数据集中特定的类
  5. PipeCAD之管道标准库PipeStd(3)
  6. 有望年前发布?魅族16s Pro Plus曝光:下半年旗舰担当
  7. 欺诈与反欺诈的旷世攻防之战
  8. 一级计算机新增题库2上网题图解,计算机一级《MS Office》上机操作题题库(2)
  9. 小D课堂 - 零基础入门SpringBoot2.X到实战_第2节 SpringBoot接口Http协议开发实战_8、SpringBoot基础HTTP接口GET请求实战...
  10. 教程入门:建立一个完全自动化的交易系统
  11. PyCharm中配置模板
  12. SVN安装不成功卸载不干净后如何重装SVN和右键显示SVN
  13. 服务器v1v2v3v4性能区别,昂达平板电脑V1V2V3V4V5版本之间的区别
  14. 计算机工业设计id,我所认识的工业设计(ID)
  15. 美国人口统计数据MATLAB,根据表的数据,完成下列数据拟合问题:美国人口统计数据 年份 1790 1800 1810 1820 1830 1840...
  16. cadence软件安装教程
  17. ilight app android,iLight pro
  18. 清除input numer 点击样式
  19. MT4自定义指标导入方法
  20. 实用办公必学技巧:Excel打印标题设置方法

热门文章

  1. 码这么多字只为搞懂如何在Python和Java中使用JSON
  2. 用C语言写一个球的程序,12个球的程序.....
  3. bytebuf池_Netty默认的Bytebuf是堆内还是堆外?池化or非池化?
  4. 微服务架构(一):什么是微服务
  5. python验证码_Python验证码登录(Tesseract安装配置)
  6. android studio clone 方法不能先用,Android Studio中使用git功能无法clone原因分析
  7. vb.net2019-多线程并行计算(2)
  8. 【学术相关】研究生如何与导师沟通?来自青年教师的视角
  9. 【Python】Python一行代码能做什么,30个实用案例代码详解
  10. 【Python基础】这个Pandas函数可以自动爬取Web图表