Optimieren Sie die Modellleistung mit Neo - Amazon SageMaker

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Optimieren Sie die Modellleistung mit Neo

Neo ist eine Funktion von Amazon SageMaker, die es ermöglicht, dass Modelle für maschinelles Lernen (N) einmal trainiert und dann überall in der Cloud und am Edge ausgeführt werden können.

Wenn Sie zum ersten Mal nutzen von SageMaker Neo sind, empfehlen wir Ihnen, sich dieErste Schritte mit Edge-Geräten-Abschnitt finden Sie Schritt-für-Schritt-Anleitungen zum Kompilieren und Bereitstellen auf einem Edge-Gerät.

Was ist SageMaker Neo?

Im Allgemeinen ist es schwierig, Modelle für die Inferenz auf mehreren Plattformen zu optimieren, da Sie die Modelle für die jeweilige Hardware- und Softwarekonfiguration jeder Plattform manuell anpassen müssen. Um optimale Leistung für eine bestimme Workload zu erreichen, müssen Sie verschiedene Faktoren kennen, beispielsweise die Hardwarearchitektur, den Befehlssatz, die Speicherzugriffsmuster und die Formen von Eingabedaten. Bei der herkömmlichen Softwareentwicklung vereinfachen Tools wie Compiler und Profiler den Prozess. Im maschinellen Lernen sind die meisten Tools aber speziell auf das Framework oder die Hardware ausgerichtet. Das zwingt Sie dazu, Verschiedenes manuell nacheinander auszuprobieren, was unzuverlässig und unproduktiv ist.

Neo optimiert Gluon-, Keras-, MXNet-, PyTorch-, TensorFlow-, TensorFlow-Lite- und ONNX-Modelle automatisch für die Inferenz auf Android-, Linux- und Windows-Computern, die mit Prozessoren von Ambarella, ARM, Intel, Nvidia, NXP, Qualcomm, Texas Instruments und Xilinx arbeiten. Neo wird mit Computervisionsmodellen getestet, die in den Modellzoos in den verschiedenen Frameworks verfügbar sind. SageMaker Neo unterstützt die Kompilierung und Bereitstellung für zwei Hauptplattformen: Cloud-Instanzen (einschließlich Inferentia) und Edge-Geräte.

Weitere Informationen zu unterstützten Frameworks und Cloud-Instance-Typen, auf denen Sie bereitstellen können, finden Sie unterUnterstützte Instance-Typen und -Frameworksfür Cloud-Instanzen.

Weitere Informationen zu unterstützten Frameworks, Edge-Geräten, Betriebssystemen, Chikarchitekturen und gängigen Machine Learning-Modellen, die von SageMaker Neo für Edge-Geräte getestet wurden, finden Sie unterUnterstützte Frameworks, Geräte, Systeme und Architekturenfür Edge-Geräte.

Funktionsweise

Neo besteht aus einem Compiler und einer Laufzeit. Zuerst liest die Neo-Kompilierungs-API Modelle, die von unterschiedlichen Frameworks exportiert wurden. Anschließend wandelt sie die Framework-spezifischen Funktionen und Operationen in eine Framework-unabhängige Zwischenrepräsentation um. Danach führt sie eine Reihe von Optimierungen aus. Daraufhin generiert sie den Binärcode für die optimierten Operationen, schreibt sie in eine gemeinsame Objektbibliothek und speichert die Modelldefinition und die Parameter in separaten Dateien. Neo bietet außerdem eine Laufzeit für jede Zielplattform, die das kompilierte Modell lädt und ausführt.

Sie können einen Neo-Kompilierungsauftrag über die SageMaker-Konsole erstellen, dieAWS Command Line Interface(AWS CLI), ein Python-Notizbuch oder das SageMaker SDK.Informationen zum Kompilieren eines Modells finden Sie unterVerwendung von Neo zum Kompilieren eines Modellsaus. Sie können mit nur wenigen CLI-Befehlen, einem API-Aufruf oder einigen Klicks ein Modell für die gewünschte Plattform konvertieren. Sie können das Modell auf einem SageMaker-Endpunkt oder auf einemAWS IoT Greengrass-Gerät schnell.

Neo kann Modelle mit Parametern entweder in FP32 oder quantifiziert nach INT8- oder FP16-Bitbreite optimieren.

Neo-Beispielnotebooks

Informationen zu Beispielnotebooks, die SageMaker Neo zum Trainieren, Kompilieren, Optimieren und Deploying Machine Learning-Modelle verwenden, um Schlussfolgerungen zu ziehen, finden Sie unter:

Anleitungen für das Ausführen dieser Beispiel-Notebooks in SageMaker finden Sie unterBeispiel-Notebooksaus. Wenn Sie Anleitungen zum Erstellen einer Notebook-Instance benötigen, um diese Beispiele auszuführen, lesen Sie bitte unterVerwenden von Amazon SageMaker Notebook-Instancesaus. Um zu dem entsprechenden Beispiel in Ihrer Notebook-Instance zu gelangen, wählen Sie dieBeispiele für Amazon SageMaker-Tab, um eine Liste aller SageMaker-Beispiele anzuzeigen. Zum Öffnen eines Notebooks wählen Sie die Registerkarte Use (Verwenden) und dann Create copy (Kopie erstellen).