pytorch使用 to 进行类型转换方式

yipeiwu_com6年前Python基础

在程序中,有多种方法进行强制类型转换。

本博文将介绍一个非常常用的方法:to()方法。

我们通常使用它来进行GPU和CPU的类型转换,但其实也可以用来进行torch的dtype转换。

常见方法:tensor.to(‘cuda:0')

先看官网介绍:

**Performs Tensor dtype and/or device conversion. A torch.dtype and torch.device are inferred from the arguments of self.to(*args, kwargs).

本文举一个例子,将一个tensor转化成与另一个tensor相同的数据类型和相同GPU或CPU类型

import torch

device = 'cuda:0'

a = torch.zeros(2, 3)
print(type(a))

b = torch.ones(3, 4).to(device)
print(type(b))

c = torch.matmul(a, b)
print(type(c))

我们看到这个代码会出错的。因为a和b是不同的device,一个是CPU,一个是GPU,不能运行。

修改如下:

a = a.to(b)
d = torch.matmul(a, b)
print(type(d))

可以看到to还是很好用的,尤其是不确定我们的数据类型和device时。

其实pytorch中还有很多其他方法可以这么做,以后会继续介绍。

以上这篇pytorch使用 to 进行类型转换方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

微信跳一跳辅助python代码实现

微信跳一跳辅助的python具体实现代码,供大家参考,具体内容如下 这是一个 2.5D 插画风格的益智游戏,玩家可以通过按压屏幕时间的长短来控制这个「小人」跳跃的距离。可能刚开始上手的时...

通过实例了解python property属性

这篇文章主要介绍了通过实例了解python property属性,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1. 什么是prope...

pytorch 在网络中添加可训练参数,修改预训练权重文件的方法

实践中,针对不同的任务需求,我们经常会在现成的网络结构上做一定的修改来实现特定的目的。 假如我们现在有一个简单的两层感知机网络: # -*- coding: utf-8 -*- im...

Python + selenium + requests实现12306全自动抢票及验证码破解加自动点击功能

Python + selenium + requests实现12306全自动抢票及验证码破解加自动点击功能

测试结果:  整个买票流程可以再快一点,不过为了稳定起见,有些地方等待了一些时间 完整程序,拿去可用 整个程序分了三个模块:购票模块(主体)、验证码识别模块、余票查询模块...

Python随手笔记之标准类型内建函数

Python提供了一些内建函数用于基本对象类型:cmp(),repr(),str(),type()和等同于repr()的(' ')操作符 (1)type()    t...