莫烦pytorch学习笔记(一)——torch or numpy

Q1:什么是神经网络?

Q2:torch vs numpy

Numpy:NumPy系统是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高 效的多(该结构也可以用来表示矩阵(matrix))。专为进行严格的数字处理而产生。
 

Q3:numpy和Torch的转换

Q3 torch中的数学运算

torch中的tensor运算和numpy的array运算很相似,具体参看下面的代码

 1 import torch
 2 import numpy as np
 3 
 4 data=[-1,-2,1,2]
 5 tensor=torch.FloatTensor(data)# 转换成32位浮点 tensor
 6 print(
 7     '\nabs',
 8     '\nnumpy',np.abs(data),# [1 2 1 2]
 9     '\ntorch',torch.abs(tensor) # torch tensor([1., 2., 1., 2.])
10 )
11 print(
12     '\nsin',
13     '\nnumpy:',np.sin(data), # [-0.84147098 -0.90929743  0.84147098  0.90929743]
14     '\ntorch:',torch.sin(tensor)# [-0.8415 -0.9093  0.8415  0.9093]
15 )
16 print(
17     '\nmean',
18     '\nnumpy',np.mean(data),
19     '\ntorch',torch.mean(tensor)
20 )

当然还有其他各种运算,自己去尝试吧。

 Q4:2.2 numpy和torch的矩阵乘法还是有点不同的,下面将对其区别进行展示:

import torch
import numpy as np
data=[[1,2],[3,4]]
tensor=torch.FloatTensor(data)
print(
    '\nnumpy',np.matmul(data,data), # [[7, 10], [15, 22]]
    '\ntorch',torch.mm(tensor,tensor)# [[7, 10], [15, 22]]
)
data=np.array(data)
print(
    '\nnumpy',data.dot(data),  # [[7, 10], [15, 22]] 在numpy 中可行,进行的是叉乘
    #'\ntorch: ', tensor.dot(tensor)  # 报错

)

 

posted @ 2019-08-16 11:19  你的雷哥  阅读(1221)  评论(0编辑  收藏  举报