当前位置:   article > 正文

Numpy & PyTorch知识点总结_numpy和pytorch中各个函数对比

numpy和pytorch中各个函数对比

前言

最近在学习PyTorch,发现PyTorchtensorNumpy有不少的相似点,于是重新系统的复习了一下Numpy,并在记录想两者的一些知识点,以备不时之需。

Numpy

1.np.random模块常用函数

np.random模块常用函数

np.random.random([3, 3]) #生成3行3列0到1之间随机数
np.random.randn(2, 3)    #生成2行3列标准正态分布随机数
  • 1
  • 2

2.Numpy数组创建函数

Numpy数组创建函数

#补充
np.arrange([start,] stop[,step],dtype=None) 
np.linspace(start, stop, num=50,endpoint=True, retstep=False, dtype=None) #自动生成线性等分向量
  • 1
  • 2
  • 3

3.Numpy算术运算

1.np.multiplay:数组或矩阵对应元素相乘,输出与相乘数组或矩阵大小一致。
在这里插入图片描述
2.np.dot():內积
在这里插入图片描述

4.Numpy中改变向量形状的函数

在这里插入图片描述
补充:transpose在深度学习中常用将图片中表示颜色顺序的RGB改为GBR

5.合并数组

在这里插入图片描述

6.Numpy中的几个常用通用函数

Numpy中的几个常用通用函数
(PS:numpy函数比math函数速度更快)

7.Numpy广播机制

当数组的shape不相等时,Numpy会使用广播机制。广播规则:

1)让所有输入数组都向其中shape最长的数组看齐,不足的部分则通过在前面加1补齐,如:
a:2×3×2
b:3×2
则b向a看齐,在b的前面加1,变为:1×3×2
2)输出数组的shape是输入数组shape的各个轴上的最大值;
3)如果输入数组的某个轴和输出数组的对应轴的长度相同或者某个轴的长度为1时,这个数组能被用来计算,否则出错;
4)当输入数组的某个轴的长度为1时,沿着此轴运算时都用(或复制)此轴上的第一组值。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

Numpy广播机制

PyTorch

概述

1.Pytorch主要包组成:

a)torch:类似于Numpy的通用数组库,可将张量类型转换为torch.cuda.TensorFloat,并在GPU上进行计算;
b)torch.autograd:用于构建计算图形并自动获取梯度的包;
c)torch.nn:具有共享层和损失函数的神经网络库;
d)torch.optim:具有通用优化计算法(SGD、Adam等)的优化包。

2.PyTorch与Numpy区别

PyTorchTensor与Numpy相似,最大的区别为Numpy会把ndarray放在CPU中进行加速运算,而由Torch产生的Tensor会放在GPU中进行加速运算(假设当前环境有GPU)。
另外torch修改自身数据时,会在运算符带下划线后缀,如x.add_(y)。

1.创建Tensor

在这里插入图片描述
(torch.Tensor与torch.tensor区别:
1.当传入数据时,torch.Tensor使用全局默认dtype(FloatTensor),而torch.tensor是从数据中推断数据类型;
2.torch.tensor(1)返回一个固定值1,而torch.Tensor(1)返回一个大小为1的张量,它是随机初始化的值)

2.修改Tensor的形状

在这里插入图片描述

3.常用选择操作函数

在这里插入图片描述

4.常见逐元素操作

在这里插入图片描述

5.常见归并操作

在这里插入图片描述

6.常见比较操作

在这里插入图片描述

7.常用矩阵函数

在这里插入图片描述

8.PyTorch与Numpy函数对照表

在这里插入图片描述
注:本文根据微信读书《Python深度学习:基于PyTorch》整理。
链接: Python深度学习:基于PyTorch.

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/747334
推荐阅读
相关标签
  

闽ICP备14008679号