Pytorch教程入门系列2 ----基本操作

系列文章目录

第一章 pytorch的基本介绍
第二章 pytorch的基本操作



前言

pytorch的基本介绍清晰之后,接下来我们一起探索pytorch的基本操作。


一、Tensor

Tensor 又名张量是torch操作的基础单位,可以理解为就是多维数组,比数组更能被硬件运算(数组在cpu中)tensor在Gpu中加速运算。Tensor 自称为神经网络界的 Numpy,它与 Numpy 相似,二者可以共享内存,且之间的转换非常方便和高效。

1.接口类型:

torch.function
tensor.function

二、tensor创建、查看、修改

1.创建

一般新建与常用新建:

torch.ones() #全1
torch.zero() #全0
torch.eye() #对角张量
ones_like(a) #a形状相同的1张量
#常用新建为
torch.randn() **随机生成生成[0,1)标准正太分布数据**
Tensor(*size) **直接从参数构造一个的张量**
from_Numpy(ndarray) **从numpy转为 建一个 Tensor**

2.查看

主要是在编程过程中查看tensor的维度是否和预期一致:

a.shape() 
a.size() #这两者等价

3.修改

主要用于将tensor变形,与前后网络匹配:

view(*shape) #重构tensor张量为shape,与tensor共享内存,一改都改
a.Reshape()  #生成新的 Tensor,而且不要求源 Tensor 是连续的
View(x,-1) #生成x行,第二维度自动算,的tensor

三、tensor索引与转置等

1.下标索引就代表维度

2.转置

torch.transpose(Tensor,dim0,dim1)

注意:transpose()一次只能在两个维度间进行转置(也可以理解为维度转换)

3.增减维度

主要用于数据处理中维度的变化:

torch.squeeze() #去除size为1的维度
torch.unsqueeze()  #制定维度的size变为1
torch.expand() #将某一维扩展为制定维度

四、组合、分块

拼接在一起或者在增加维度:

torch.cat() #按行或列或某一维度拼接
torch.stack() #叠加
torch.chunk() #分块数
torch.split() #分块大小

五、其它操作:

1.返回沿某一维操作后的tensor及对应索引位置

torch.sort() #排序
torch.max() #取最大
torch.min() #取最小

2.返回操作后的tensor

torch.abs() #绝对值
torch.sqrt()#开方
torch.log()#取对数
torch.powl()#幂指

3.按某一维进行

torch.sum() #求和
torch.mean() #均值

总结

以上就是今天要讲的内容,本文简单介绍了tensor的基本操作,希望大家在操作过程中学会使用,同时看懂别人代码的意义。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CV_Today

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值