pytorch使用 to 进行类型转换方式
2020-03-20 12:04
821 查看
在程序中,有多种方法进行强制类型转换。
本博文将介绍一个非常常用的方法: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 进行类型转换方式就是小编分享给大家的全部内容了,希望能给大家一个参考
您可能感兴趣的文章:
相关文章推荐
- C++使用构造函数进行类型转换
- 如何使用常用的6种方式对数据进行转换(一)
- 如何使用常用的6种方式对数据进行转换(二)
- C++使用stringstream进行数据类型转换
- 类型转换 -- 使用Unicode下的cannot convert parameter 1 from 'CString' to 'const char *' 解决办法
- 使用iconv批量转换文件编码方式和dos2unix转换文件换行类型
- 使用模板进行类型转换
- 使用PyCharm进行正则替换,将request headers转换为字典类型
- 使用stringstream进行类型转换与字符串分割
- 尝试向 URI“ ”发出请求时出错。这可能是由于试图以跨域方式访问服务而又没有正确的跨域策略,或策略不适用于 SOAP 服务...。出现此错误也可能是由于使用的是 Web 服务代理中的内部类型而没有使用 InternalsVisibleToAttribute 属性。
- 报错:对象必须实现 IConvertible;以分隔符进行分割链接concat_ws的使用方法;mysql数据类型转换cast,convert
- 解决spring使用动态代理类型转换失败的问题--java.lang.ClassCastException: com.sun.proxy.$Proxy$ cannot be cast to ...
- 使用BigDecimal进行科学计算表示方式的转换
- laravel使用JSON 类型方式进行存储
- pytorch中如何使用DataLoader对数据集进行批处理的方法
- Android解决使用findViewById时需要对返回值进行类型转换问题的辅助类
- 使用pytorch完成kaggle猫狗图像识别方式
- 使用ASP.NET AJAX异步调用Web Service和页面中的类方法(10):服务器端和客户端数据类型的自动转换:以XML方式序列化数据、小结
- 使用BitConverter对int与byte[]类型进行互相转换
- Item 3: 使用 is 或 as 去做类型转换(Prefer the is or as Operators to Casts)