莫煩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)  # 報錯

)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM