Ultralytics YOLO27: Trag dich in die Warteliste ein.
YOLO lizenzieren
Zurück zum Ultralytics-Glossar

PyTorch

PyTorch ist ein Open-Source-Framework für Python, mit dem sich neuronale Netze mithilfe von GPU-Tensoren und Autograd erstellen und trainieren lassen. Die wichtigsten Konzepte und der Weg zur Bereitstellung.

PyTorch ist ein Open-Source-Framework zum Erstellen, Trainieren und Bereitstellen von neuronalen Netzen in Python. Es bietet GPU-beschleunigte Tensoren, automatische Differentiation sowie eine Bibliothek mit Layern, Optimierern und Verlustfunktionen. Der Code wird unmittelbar Zeile für Zeile ausgeführt, sodass sich Modelle wie gewöhnliche Python-Programme schreiben und debuggen lassen. PyTorch wurde bei Facebook AI Research entwickelt, heute Meta AI, und wird seit 2022 von der herstellerneutralen PyTorch Foundation unter der Linux Foundation verwaltet. Das Framework wird breit für Deep-Learning-Forschung und Produktionsmodelle in den Bereichen Computer Vision und Sprachverarbeitung eingesetzt.

Grundlegende Konzepte#

  • Tensoren: mehrdimensionale Arrays wie NumPy-Arrays, die auf einer CPU oder einem Beschleuniger liegen können. PyTorch unterstützt NVIDIA-GPUs über CUDA, AMD-GPUs über ROCm und Apple-Chips über Metal (MPS). Um Daten zwischen ihnen zu verschieben, genügt ein Aufruf von .to(device).
  • Autograd: Während Tensoroperationen ausgeführt werden, zeichnet PyTorch sie in einem Berechnungsgraphen auf. Der Aufruf von .backward() durchläuft diesen Graphen rückwärts und berechnet den Gradienten der Ausgabe in Bezug auf jeden Tensor, für den ein Gradient benötigt wird. Das ist der Rückpropagierungsschritt beim Training.
  • Direkte Ausführung: Der Graph wird bei jedem Vorwärtsdurchlauf neu erstellt. Dadurch können Modelle Python-Schleifen, Bedingungen und print-Anweisungen verwenden, und Fehlermeldungen verweisen auf die genaue Zeile, in der der Fehler aufgetreten ist.
  • Module und Optimierer: torch.nn stellt Layer wie Faltungen, Attention und Normalisierung bereit. torch.optim stellt Optimierer wie SGD und Adam bereit, die Gewichte anhand der berechneten Gradienten aktualisieren.
  • torch.compile: Diese Funktion wurde mit PyTorch 2.0 eingeführt. Sie erfasst das direkt ausgeführte Programm als Graphen und erzeugt fusionierte Kernel. Dadurch lassen sich Training und Inferenz oft beschleunigen, ohne den Modellcode zu ändern.

Das folgende Beispiel führt eine kleine Berechnung auf einer GPU aus, sofern eine verfügbar ist, und lässt Autograd den Gradienten berechnen:

import torch

# Use a GPU when PyTorch can see one, otherwise fall back to the CPU
device = "cuda" if torch.cuda.is_available() else "cpu"

# Tensors record the operations applied to them when requires_grad=True
w = torch.tensor([2.0, -1.0], device=device, requires_grad=True)
x = torch.tensor([3.0, 4.0], device=device)

# Ordinary Python runs eagerly: each line executes immediately
loss = (w * x).sum() ** 2

# Autograd walks the recorded graph backward to get d(loss)/dw
loss.backward()
print(f"device={device}, loss={loss.item()}, grad={w.grad.tolist()}")

Auf einem Rechner ohne GPU gibt das Skript device=cpu, loss=4.0, grad=[12.0, 16.0] aus. Der Verlust beträgt (2·3 − 1·4)² = 4, und Autograd berechnet die Ableitung 2·(w·x)·x = [12, 16], ohne dass dafür von Hand gerechnet werden muss. Derselbe Mechanismus trainiert Netzwerke mit Milliarden von Gewichten.

PyTorch im Vergleich zu anderen Tools#

  • TensorFlow: Das Framework von Google verwendete statische Graphen, bevor es sie ausführte, bis TensorFlow 2 die direkte Ausführung zum Standard machte. TensorFlow wird weiterhin häufig in Produktionssystemen eingesetzt, die auf Keras und Googles Bereitstellungstools basieren.
  • JAX: Googles numerische Bibliothek transformiert reine Python-Funktionen mit kombinierbaren Operationen wie grad, jit und vmap, die über XLA kompiliert werden. Sie ist für groß angelegte Forschung auf TPUs beliebt.
  • OpenCV: Eine Bibliothek für Computer Vision zum Einlesen, Transformieren und Analysieren von Bildern mit klassischen Algorithmen. In Verarbeitungspipelines wird OpenCV häufig zum Laden und Vorverarbeiten von Einzelbildern verwendet, bevor ein PyTorch-Modell sie verarbeitet.
  • Hugging Face: Eine Hub-Plattform und eine Reihe von Bibliotheken, die größtenteils auf PyTorch basieren. Die Transformers-Bibliothek stellt vortrainierte Sprach- und Bildverarbeitungsmodelle als PyTorch-Module bereit.

Von der Forschung zur Bereitstellung#

Ein trainiertes PyTorch-Modell wird als Checkpoint gespeichert, meist als Datei .pt oder .pth, die die Gewichte enthält. Es kann unverändert in einem Python-Dienst ausgeführt werden. Edge-Geräte und optimierte Server benötigen jedoch meist eine Konvertierung in eine für ihre Hardware ausgelegte Laufzeitumgebung:

Ultralytics YOLO26 ist in PyTorch geschrieben: yolo26n.pt ist ein PyTorch-Checkpoint, das Training verwendet PyTorchs Autograd und Optimierer, und model.export() konvertiert das Modell in diese Bereitstellungsformate, darunter ONNX, TensorRT, OpenVINO, Core ML und LiteRT.

Lösungen entdecken

Computer Vision im Sport

Computer Vision im Sport

Entdecke, wie Ultralytics YOLO die Sportbildanalyse voranbringt – mit Spieler- und Ballverfolgung, Leistungsanalysen, Erkenntnissen für das Coaching und der Rehabilitation von Athleten.
Mehr erfahren
Computer Vision für Luftbilder

Computer Vision für Luftbilder

Verwandle Drohnen- und Luftbilder mit Ultralytics YOLO in Echtzeit-Erkenntnisse für Landwirtschaft, Aquakultur, Naturschutz und Geodatenanalyse.
Mehr erfahren
Computer Vision in der Luft- und Raumfahrt

Computer Vision in der Luft- und Raumfahrt

Setze Computer Vision in der Luft- und Raumfahrt mit Ultralytics YOLO ein – für Flugzeuginspektionen, die Erkennung von Fremdkörpern auf Start- und Landebahnen, den Bodenbetrieb am Flughafen und die Erkennung von Verbundwerkstofffehlern.
Mehr erfahren
Computer Vision im Sicherheitsbereich

Computer Vision im Sicherheitsbereich

Schütze jeden Standort mit Ultralytics YOLO-Modellen. Vision-KI ermöglicht die Überwachung von Grundstücksgrenzen, die Erkennung von Bedrohungen, die Kennzeichenerkennung und die Sicherheit am Arbeitsplatz.
Mehr erfahren
Computer Vision in der Robotik

Computer Vision in der Robotik

Mach Maschinen mit Ultralytics YOLO-Modellen leistungsfähiger. Vision-KI in der Robotik ermöglicht autonome Navigation, Wahrnehmung, Objektverfolgung und Steuerung in Echtzeit.
Mehr erfahren
Bildverarbeitung in der Logistik

Bildverarbeitung in der Logistik

Optimiere die Logistik mit Ultralytics YOLO-Modellen. Vision AI ermöglicht die Paketprüfung, Sortierung und Fahrzeugverfolgung sowie die Sicherheitsüberwachung von Lagerhäusern in Echtzeit.
Mehr erfahren
Bildverarbeitung im Einzelhandel

Bildverarbeitung im Einzelhandel

Gestalte den Einzelhandel mit Ultralytics YOLO-Modellen neu. Vision AI ermöglicht Bestandsverfolgung, Regalüberwachung und Warteschlangenmanagement und liefert bessere Einblicke in das Kundenverhalten.
Mehr erfahren
Bildverarbeitung im Gesundheitswesen

Bildverarbeitung im Gesundheitswesen

Entwickle Lösungen für das Gesundheitswesen mit Ultralytics YOLO-Modellen. Vision AI ermöglicht im Gesundheitswesen schnellere medizinische Bildgebung, bessere Diagnostik und die Überwachung von Patienten.
Mehr erfahren
Computer Vision in der Fertigung

Computer Vision in der Fertigung

Optimiere die Fertigung mit Ultralytics-YOLO-Modellen. Vision AI ermöglicht Qualitätskontrolle, Fehlererkennung, die Überprüfung der Einhaltung von Vorgaben zu persönlicher Schutzausrüstung und die Automatisierung von Montagelinien.
Mehr erfahren
Computer Vision in der Automobilbranche

Computer Vision in der Automobilbranche

Setze Computer Vision in der Automobilbranche mit Ultralytics-YOLO-Modellen ein. Vision AI verbessert die Verkehrssicherheit, Fahrerassistenz und Fahrzeugautomatisierung – für intelligentere Straßen.
Mehr erfahren
Computer Vision in der Landwirtschaft

Computer Vision in der Landwirtschaft

Setze mit Ultralytics YOLO-Modellen KI für Bildverarbeitung in der intelligenten Landwirtschaft ein. Ermögliche die Überwachung von Nutzpflanzen, die Verfolgung von Nutztieren und Präzisionslandwirtschaft für höhere und nachhaltigere Erträge.
Mehr erfahren

Lass uns gemeinsam die Zukunft der KI gestalten!

Starte deine Reise in die Zukunft des maschinellen Lernens