Zum Inhalt springen

PyTorch

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 15. Februar 2019 um 00:37 Uhr durch Aka (Diskussion | Beiträge) (Link korrigiert). Sie kann sich erheblich von der aktuellen Version unterscheiden.
PyTorch

Basisdaten

Entwickler Adam Paszke, Sam Gross, Soumith Chintala, Gregory Chanan
Erscheinungsjahr 2016
Aktuelle Version 2.7.0[1]
(23. April 2025)
Betriebssystem Linux, MacOS, Windows
Programmier­sprache Python, C, CUDA
Lizenz Open Source
pytorch.org

PyTorch ist eine auf Maschinelles Lernen ausgerichtete Open-Source-Programmbibliothek für die Programmiersprache Python, basierend auf der in Lua geschriebenen Bibliothek Torch.[2][3][4] Entwickelt wurde PyTorch von dem Facebook-Forschungsteam für künstliche Intelligenz.[5][6][7]

Funktionen

Mit der Programmbibliothek lassen sich zum einen mit GPUs beschleunigte Tensor-Analysen erstellen und zum anderen Neuronale Netze auf Basis eines bandbasierten Autograd-Systems erstellen. Dabei lassen sich bewährte Python-Bibliotheken wie NumPy, SciPy und Cython nutzen. Beim Deep Learning zeichnet sich die Programmbibliothek durch viel Flexibilität und eine hohe Geschwindigkeit aus.[8] ONNX zum Austausch von Modellen mit anderen Programmbibliotheken wird unterstützt.

Beispiel

Im folgende Beispiel soll die Funktionsweise der Bibliothek an einem einfachen Beispiel gezeigt werden

import torch
dtype = torch.float
device = torch.device("cpu") # Hiermit werden alle Berechnungen auf der CPU ausgeführt
# device = torch.device("cuda:0") # Hiermit werden alle Berechnungen auf der GPU ausgeführt

# Erstellung eines Tensors und Befüllung des Tensors mit Zufallszahlen
a = torch.randn(2,3,device=device,dtype=dtype)
a # Ausgabe des Tensors A
tensor([[-1.1884,  0.8498, -1.7129],
        [-0.8816,  0.1944,  0.5847]]))

# Erstellung eines Tensors und Befüllung des Tensors mit Zufallszahlen
b = torch.randn(2,3,device=device,dtype=dtype)
b # Ausgabe des Tensors B
tensor([[ 0.7178, -0.8453, -1.3403],
        [ 1.3262,  1.1512, -1.7070]])

a*b # Ausgabe einer Multiplikation der beiden Tensoren
tensor([[-0.8530, -0.7183,  2)58],
        [-1.1692,  0.2238, -0.9981]])

a.sum() # Ausgabe der Summe aller Elemente im Tensor A
tensor(-2.1540)

a[1,2] # Ausgabe des Elements in der dritten Spalte der zweiten Zeile
tensor(0.5847)

a.min() # Ausgabe des Minimumwertes im Tensor A
tensor(-1.7129)

Einzelnachweise

  1. Release 2.7.0. 23. April 2025 (abgerufen am 27. April 2025).
  2. Serdar Yegulalp: Facebook brings GPU-powered machine learning to Python. In: InfoWorld. (infoworld.com [abgerufen am 26. Januar 2018]).
  3. Ben Lorica: Why AI and machine learning researchers are beginning to embrace PyTorch. In: O'Reilly Media. 3. August 2017 (oreilly.com [abgerufen am 26. Januar 2018]).
  4. Nikhil Ketkar: Introduction to PyTorch. In: Deep Learning with Python. Apress, Berkeley, CA, 2017, ISBN 978-1-4842-2765-7, S. 195–208, doi:10.1007/978-1-4842-2766-4_12 (springer.com [abgerufen am 26. Januar 2018]).
  5. Mo Patel: When two trends fuse: PyTorch and recommender systems. In: O'Reilly Media. 7. Dezember 2017 (oreilly.com [abgerufen am 26. Januar 2018]).
  6. John Mannes: Facebook and Microsoft collaborate to simplify conversions from PyTorch to Caffe2. In: TechCrunch. (techcrunch.com [abgerufen am 26. Januar 2018]).
  7. Tech giants are using open source frameworks to dominate the AI community | VentureBeat. Abgerufen am 26. Januar 2018 (amerikanisches Englisch).
  8. Alexander Neumann: PyTorch: Ein Deep-Learning-Framework von Facebook. Abgerufen am 26. Januar 2018 (deutsch).