Python深度学习之Pytorch初步使用


Posted in Python onMay 20, 2021

一、Tensor

Tensor(张量是一个统称,其中包括很多类型):

0阶张量:标量、常数、0-D Tensor;1阶张量:向量、1-D Tensor;2阶张量:矩阵、2-D Tensor;……

二、Pytorch如何创建张量

2.1 创建张量

import torch
	
	t = torch.Tensor([1, 2, 3])
	print(t)

Python深度学习之Pytorch初步使用

2.2 tensor与ndarray的关系

两者之间可以相互转化

import torch
import numpy as np

t1 = np.array(torch.Tensor([[1, 2, 3],
        [1, 2, 3]]))
t2 = torch.Tensor(np.array([[1, 2, 3],
        [1, 2, 3]]))

运行结果:

Python深度学习之Pytorch初步使用

2.3 常用api

torch.empty(x,y)

创建x行y列为空的tensor。

Python深度学习之Pytorch初步使用

torch.ones([x, y])

创建x行y列全为1的tensor。

Python深度学习之Pytorch初步使用

torch.zeros([x,y])

创建x行y列全为0的temsor。

Python深度学习之Pytorch初步使用

zeros与empty的区别

后者的数据类型是不固定的。

torch.rand(x, y)

创建3行4列的随机数,随机数是0-1。

Python深度学习之Pytorch初步使用

torch.randint(low, high, size)

创建一个size的tensor,随机数为low到high之间。

Python深度学习之Pytorch初步使用

torch.randn([x, y])

创建一个x行y列的tensor,随机数的分布式均值为0,方差1。

2.4 常用方法

item()

获取tensor中的元素,注意只有一个元素的时候才可以用。

Python深度学习之Pytorch初步使用

numpy()

转化成ndarray类型。

Python深度学习之Pytorch初步使用

size()

获取tensor的形状

Python深度学习之Pytorch初步使用

view()

浅拷贝,tensor的形状改变

可以传参,表示获取第几个。若参数为-1,表示不确定,与另一个参数的乘积等于原始形状的乘积。 例如:原始形状为8,则view(-1,2)view(4, 2); 参数只有-1,表示一维。

Python深度学习之Pytorch初步使用

dim()

获取维度。

Python深度学习之Pytorch初步使用

max()

获取最大值。

Python深度学习之Pytorch初步使用

t()

转置。

Python深度学习之Pytorch初步使用

transpose(x,y)

x,y是size里面返回的形状相换。

Python深度学习之Pytorch初步使用

permute()

传入size()返回的形状的顺序。

Python深度学习之Pytorch初步使用

transpose与permute的区别

前者传入列即可相互交换;后者传入列会根据传入的顺序来进行转化,且需要传入所有列数的索引。

取值[第一阶, 第二阶,……]

一个逗号隔开代表一个阶乘冒号代表全取

Python深度学习之Pytorch初步使用

赋值[第一阶, 第二阶,……]

直接赋值即可

Python深度学习之Pytorch初步使用

三、数据类型

Python深度学习之Pytorch初步使用

3.1 获取数据类型

tensor.dtype

获取数据类型

Python深度学习之Pytorch初步使用

设置数据类型

注意使用Tensor()不能指定数据类型。

Python深度学习之Pytorch初步使用

type()

修改数据类型。

Python深度学习之Pytorch初步使用

四、tensor的其他操作

4.1 相加

torch.add(x, y)

将x和y相加

Python深度学习之Pytorch初步使用

直接相加

Python深度学习之Pytorch初步使用

tensor.add()

使用add_() 可相加后直接保存在tensor中

Python深度学习之Pytorch初步使用

4.2 tensor与数字的操作

tensor + 数值

Python深度学习之Pytorch初步使用

五、CUDA中的tensor

CUDA (Compute Unified Device Architecture),是NVIDIA推出的运算平台。CUDATM是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。
torch.cuda这个模块增加了对CUDA tensor的支持,能够在cpu和gpu上使用相同的方法操作tensor通过.to方法能够把一个tensor转移到另外一个设备(比如从CPU转到GPU)

可以使用torch.cuda.is_available()判断电脑是否支持GPU

到此这篇关于Python深度学习之Pytorch初步使用的文章就介绍到这了,更多相关Pytorch初步使用内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python提取内容关键词的方法
Mar 16 Python
Python内置模块logging用法实例分析
Feb 12 Python
浅谈Python中的zip()与*zip()函数详解
Feb 24 Python
详解Django之admin组件的使用和源码剖析
May 04 Python
python字符串中匹配数字的正则表达式
Jul 03 Python
pow在python中的含义及用法
Jul 11 Python
ORM Django 终端打印 SQL 语句实现解析
Aug 09 Python
在win64上使用bypy进行百度网盘文件上传功能
Jan 02 Python
python 在右键菜单中加入复制目标文件的有效存放路径(单斜杠或者双反斜杠)
Apr 08 Python
Python 存取npy格式数据实例
Jul 01 Python
Python通过yagmail实现发送邮件代码解析
Oct 27 Python
Pytorch之扩充tensor的操作
Mar 04 Python
我对PyTorch dataloader里的shuffle=True的理解
Python快速优雅的批量修改Word文档样式
Django migrate报错的解决方案
Django使用channels + websocket打造在线聊天室
教你怎么用python爬取爱奇艺热门电影
Pytorch使用shuffle打乱数据的操作
May 20 #Python
教你利用Selenium+python自动化来解决pip使用异常
You might like
解决GD中文乱码问题
2007/02/14 PHP
PHP版自动生成文章摘要
2008/07/23 PHP
php通过ajax实现双击table修改内容
2014/04/28 PHP
JQuery 选择器 xpath 语法应用
2010/05/13 Javascript
映彩衣的js随笔(js图片切换效果)
2011/07/31 Javascript
jquery异步跨域访问代码
2013/06/28 Javascript
js获取checkbox复选框选中的选项实例
2014/08/24 Javascript
Jquery树插件zTree用法入门教程
2015/02/17 Javascript
AngularJS基础 ng-non-bindable 指令详细介绍
2016/08/02 Javascript
Google 地图API Map()构造器详解
2016/08/06 Javascript
微信小程序 wxapp视图容器 view详解
2016/10/31 Javascript
jquery实现多次上传同一张图片
2017/01/09 Javascript
详解Vue 全局引入bass.scss 处理方案
2018/03/26 Javascript
element实现合并单元格通用方法
2019/11/13 Javascript
vue 使用 canvas 实现手写电子签名
2020/03/06 Javascript
详解微信小程序动画Animation执行过程
2020/09/23 Javascript
编写Python CGI脚本的教程
2015/06/29 Python
Python中在for循环中嵌套使用if和else语句的技巧
2016/06/20 Python
numpy 对矩阵中Nan的处理:采用平均值的方法
2018/10/30 Python
python实现一行输入多个值和一行输出多个值的例子
2019/07/16 Python
python将邻接矩阵输出成图的实现
2019/11/21 Python
python tkinter之顶层菜单、弹出菜单实例
2020/03/04 Python
python读取excel进行遍历/xlrd模块操作
2020/07/12 Python
用canvas显示验证码的实现
2020/04/10 HTML / CSS
美国波西米亚风格服装品牌:Show Me Your Mumu
2018/01/05 全球购物
销售主管岗位职责
2014/02/08 职场文书
2014年元旦活动方案
2014/02/15 职场文书
擅自离岗检讨书
2014/09/12 职场文书
巾帼标兵事迹材料
2014/12/26 职场文书
酒店辞职信怎么写
2015/02/27 职场文书
小升初自荐信范文
2015/03/05 职场文书
总经理司机岗位职责
2015/04/10 职场文书
2015国庆节感想
2015/08/04 职场文书
Python一些基本的图像操作和处理总结
2021/06/23 Python
python自动化测试之Selenium详解
2022/03/13 Python
什么是css原子化,有什么用?
2022/04/24 HTML / CSS