PyTorch術語


在本章中,我們將了解PyTorch中一些最常用的術語。

PyTorch NumPy

PyTorch張量與NumPy陣列相同。張量(tensor)是一個n維陣列,就PyTorch而言,它提供了許多在張量上運算的函式。

PyTorch張量通常利用GPU來加速其數值計算。在PyTorch中建立的這些張量可用於將雙層網路適合亂數據。使用者可以手動實現通過網路的前向和後向傳遞。

變數和Autograd

使用自動程式設計時,網路的正向傳遞將定義計算圖形 - 圖形中的節點將是張量,邊緣將是從輸入張量產生輸出張量的函式。

PyTorch張量可以建立為變數物件,其中變數表示計算圖中的節點。

動態圖

靜態圖很好,因為使用者可以預先優化圖形。如果程式員一遍又一遍地重複使用相同的圖形,則可以保持這種可能代價高昂的前期優化,因為相同的圖形會一遍又一遍地重新執行。

它們之間的主要區別在於Tensor Flow的計算圖是靜態的,PyTorch使用動態計算圖。

optim包

PyTorch中的optim包提取了一種優化演算法的思想,該演算法以多種方式實現,並提供了常用優化演算法的說明。它可以在import語句中呼叫。

多處理

多處理支援相同的操作,因此所有張量都可以在多個處理器上執行。佇列將其資料移動到共用記憶體中,並僅向另一個進程傳送控制代碼。