pytorch以及其在DNN、CNN里的基本应用(代码均有含个人理解的较详尽注释)


之前的一些pytorch使用的word文档笔记,今天复习看了一下顺便整理到markdown里啦,庆祝一哈

参考:

莫烦python:https://www.bilibili.com/video/BV1Vx411j7kT

tensor和Variable

库的导入:

import torch
from torch.autograd import Variable

前言:

torch和numpy

tensor是torch里的一种很重要的数据结构,你可以将他和numpy里的ndarray进行类比,因为他们有很多相似之处。

torch一定程度上可以看作是深度学习中的numpy,为什么这么说呢?

很多人都知道,pytorch是支持GPU加速的,即把张量tensor放在GPU上加速

而很多人(包括几天前的我哈哈哈)都不知道

numpy支持CPU加速,可以将ndarray放在CPU上加速

这样看,numpy和torch是不是很像呢?

事实上,他们的用法也极为相似,且tensor和numpy可以互相转化。

构造tensor<——————>构造ndarray

torch.tensor(iterable可迭代序列)<——————>np.array(iterable)

torch.zeros((Channels,Height,Width))<——————>np.zeros((Channels,Height,Width))

torch.ones((Channels,Height,Width))<——————>np.ones((Channels,Height,Width))

torch.linspace(start,end,numbers)<——————>np.linspace(start,end,numbers))

###tensor和ndarray互相转化
tensor_data = torch.from_numpy(ndarray) #ndarray————>tensor
ndarray = tensor_data.numpy() #tensor————>ndarray

tensor的一些基本计算<——————>ndarray的一些基本计算

①torch.abs()<——————>np.abs()

torch.add()<——————>np.add()

torch.mean()<——————>np.mean()

torch.sin()<——————>np.sin()

②矩阵:

torch.mm(A,B)<——————>np.matmul(A,B)或者np.dot(A,B)或者A @ B #矩阵乘法

注意:torch.dot(A,B)是计算点乘(只能输入一维tensor)

如:A=B=[1,2,3,4]

torch.dot(A,B)=1x1+2x2+3x3+4x4=30

如:A=B=[[1,2],[3,4]]

torch.dot(A,B):RuntimeError: 1D tensors expected, but got 2D and 2D tensors

Variable:变量

需要提前说的是:神经网络中的参数都是Variable变量的形式

变量是什么意思呢?

A:可以更改参数信息

<
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值