pytorch 实现tensor与numpy数组转换

yipeiwu_com6年前Python基础

看代码,tensor转numpy:

a = torch.ones(2,2)
b = a.numpy()
c=np.array(a) #也可以转numpy数组
print(type(a))
print(type(b))
print(a)
print(b)

输出为:

<class ‘torch.Tensor'>
<class ‘numpy.ndarray'>
tensor([[1., 1.],
[1., 1.]])
[[1. 1.]
[1. 1.]]

numpy转tensor:

import torch
import numpy as np

a = np.ones(5)
b = torch.from_numpy(a)
c=torch.Tensor(a) #也可以转pytorch Tensor
print(type(a))
print(type(b))
print(a)
print(b)

输出为:

<class ‘numpy.ndarray'>
<class ‘torch.Tensor'>
[1. 1. 1. 1. 1.]
tensor([1., 1., 1., 1., 1.], dtype=torch.float64)

可见pytorch的tensor对象与numpy数组是可以相互转换的,且numpy数组的默认类型是double

以上这篇pytorch 实现tensor与numpy数组转换就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python中在for循环中嵌套使用if和else语句的技巧

for...[if]...构建List (List comprehension) 1.简单的for...[if]...语句 Python中,for...[if]...语句一种简洁的构建L...

python多线程用法实例详解

本文实例分析了python多线程用法。分享给大家供大家参考。具体如下: 今天在学习尝试学习python多线程的时候,突然发现自己一直对super的用法不是很清楚,所以先总结一些遇到的问题...

wxPython多个窗口的基本结构

如何在一个wxpython APP里面创建两个框架呢?供大家参考,具体内容如下 代码: import ... import ... class MyFrame(wx.Frame):...

Python函数中*args和**kwargs来传递变长参数的用法

单星号形式(*args)用来传递非命名键可变参数列表。双星号形式(**kwargs)用来传递键值可变参数列表。 下面的例子,传递了一个固定位置参数和两个变长参数。 def test_...

基于Python socket的端口扫描程序实例代码

本文研究的主要是Python的端口扫描程序,具体实例代码如下。 先来看看第一个端口扫描程序代码,获取本机的IP和端口号: import socket def get_my_ip...