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

yipeiwu_com5年前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的条件语句与运算符优先级详解

Python 条件语句 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。 可以通过下图来简单了解条件语句的执行过程: Python程序...

对Python 检查文件名是否规范的实例详解

如下所示: # coding=utf-8 import os import os.path import re import array import cmd import pdb...

python datetime中strptime用法详解

python 中datetime中strptime用法,具体代码如下所示: import datetime day20 = datetime.datetime.strptime('2...

python实现自动化报表功能(Oracle/plsql/Excel/多线程)

python实现自动化报表功能(Oracle/plsql/Excel/多线程)

日常会有很多固定报表需要手动更新,本文将利用python实现多线程运行oracle代码,并利用xlwings包和numpy包将结果写入到指定excel模版(不改变模版内容),并自动生成带...

详解PANDAS 数据合并与重塑(join/merge篇)

详解PANDAS 数据合并与重塑(join/merge篇)

在上一篇文章中,我整理了pandas在数据合并和重塑中常用到的concat方法的使用说明。在这里,将接着介绍pandas中也常常用到的join 和merge方法 merge pandas...