PyTorch簡介

PyTorch是一個Python的開源機器學習庫。它用於自然語言處理等應用程式。它最初由Facebook人工智慧研究小組開發,而優步的Pyro軟體則用於概率編程。

最初,PyTorch由Hugh Perkins開發,作為基於Torch框架的LusJIT的Python包裝器。有兩種PyTorch變種。

PyTorch在Python中重新設計和實現Torch,同時為後端代碼共用相同的核心C庫。PyTorch開發人員調整了這個後端代碼,以便有效地運行Python。他們還保留了基於GPU的硬體加速以及基於Lua的Torch的可擴展性功能。

PyTorch功能特徵

PyTorch的主要功能如下所述 -

簡單的介面 - PyTorch提供易於使用的API; 因此,它在Python上運行,操作非常簡單。這個框架中的代碼執行非常簡單。

Python用法 - PyTorch庫認為是Pythonic,可以與Python數據科學堆疊平滑地集成。因此,它可以利用Python環境提供的所有服務和功能。

計算圖 - PyTorch提供了一個提供動態計算圖的出色平臺。因此,用戶可以在運行時更改它們。當開發人員不知道創建神經網路模型需要多少記憶體時,這時非常有用。

PyTorch以三個抽象級別而聞名,如下所示 -

  • Tensor - 在GPU上運行命令式n維數組。
  • 變數 - 計算圖中的節點,它存儲數據和梯度。
  • 模組 - 存儲狀態或可學習權重的神經網路層。

PyTorch的優點

以下是PyTorch的優點 -

  • 它易於調試和理解代碼。
  • 它包括許多層作為Torch。
  • 它包括許多損失函數。
  • 它可以視為對GPU的NumPy擴展。
  • 它允許構建其結構依賴於計算本身的網路。

TensorFlow與PyTorch比較

下麵是TensorFlow和PyTorch之間的主要區別 -

PyTorch TensorFlow
PyTorch與基於lua的Torch框架密切相關,該框架在Facebook中廣泛使用。 TensorFlow由Google Brain開發,並在Google上積極使用。
與其他競爭技術相比,PyTorch相對較新。 TensorFlow並不是新的,但許多研究人員和行業專業人士視為一種前沿工具。
PyTorch以強制性和動態的方式包含所有內容。 TensorFlow包含靜態和動態圖形作為組合。
PyTorch中的計算圖是在運行時定義的。 TensorFlow不包含任何運行時選項。
PyTorch包括針對移動和嵌入式框架的部署。 TensorFlow更適用於嵌入式框架。

上一篇: 下一篇: PyTorch安裝