Durchführen von Machine Learning-Inferenzen - AWS IoT Greengrass

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.

Durchführen von Machine Learning-Inferenzen

Mit können Sie mithilfe von Cloud-trainierten AWS IoT GreengrassModellen Machine Learning (ML)-Inferenzen auf Ihren Edge-Geräten für lokal generierte Daten durchführen. Sie können von der niedrigen Latenz und Kosteneinsparungen der Ausführung von lokaler Inferenz profitieren und trotzdem die Cloud-Rechenleistung für Schulungsmodelle und komplexe Verarbeitung nutzen.

AWS IoT Greengrass macht die erforderlichen Schritte zur Durchführung von Inferenzen effizienter. Sie können Ihre Inferenzmodelle überall trainieren und lokal als Machine-Learning-Komponenten bereitstellen. Sie können beispielsweise Deep-Learning-Modelle in Amazon SageMaker- oder Computer-Vision-Modellen in Amazon Lookout for Vision erstellen und trainieren. Anschließend können Sie diese Modelle in einem Amazon S3-Bucket speichern, sodass Sie diese Modelle als Artefakte in Ihren Komponenten verwenden können, um Inferenzen auf Ihren Core-Geräten durchzuführen.

Funktionsweise der AWS IoT Greengrass-ML-Inferenz

AWS bietet Machine-Learning-Komponenten, mit denen Sie in einem Schritt Bereitstellungen erstellen können, um Machine-Learning-Inferenzen auf Ihrem Gerät durchzuführen. Sie können diese Komponenten auch als Vorlagen verwenden, um benutzerdefinierte Komponenten zu erstellen, die Ihren spezifischen Anforderungen entsprechen.

AWS bietet die folgenden Kategorien von Machine Learning-Komponenten:

  • Modellkomponente – Enthält Machine-Learning-Modelle als Greengrass-Artefakte.

  • Laufzeitkomponente – Enthält das Skript, das das Machine Learning-Framework installiert, und seine Abhängigkeiten auf dem Greengrass-Kerngerät.

  • Inferenzkomponente – Enthält den Inferenzcode und enthält Komponentenabhängigkeiten, um das Machine-Learning-Framework zu installieren und vortrainierte Machine-Learning-Modelle herunterzuladen.

Jede Bereitstellung, die Sie erstellen, um Machine Learning-Inferenzen durchzuführen, besteht aus mindestens einer Komponente, die Ihre Inferenzanwendung ausführt, das Machine Learning-Framework installiert und Ihre Machine Learning-Modelle herunterlädt. Um eine Beispielinferenz mit von bereitgestellten Komponenten durchzuführen, stellen Sie eine Inferenzkomponente auf Ihrem CoreAWS-Gerät bereit, die automatisch die entsprechenden Modell- und Laufzeitkomponenten als Abhängigkeiten enthält. Um Ihre Bereitstellungen anzupassen, können Sie die Beispielmodellkomponenten mit benutzerdefinierten Modellkomponenten verbinden oder austauschen, oder Sie können die Komponentenrezepte für die von bereitgestellten Komponenten als Vorlagen verwenden, um Ihre eigenen benutzerdefinierten InferenzAWS-, Modell- und Laufzeitkomponenten zu erstellen.

So führen Sie Machine Learning-Inferenzen mithilfe benutzerdefinierter Komponenten durch:

  1. Erstellen Sie eine Modellkomponente. Diese Komponente enthält die Machine-Learning-Modelle, die Sie für die Inferenz verwenden möchten. AWS bietet Beispiele für vortrainierte DLR- und TensorFlow Lite-Modelle. Um ein benutzerdefiniertes Modell zu verwenden, erstellen Sie Ihre eigene Modellkomponente.

  2. Erstellen Sie eine Laufzeitkomponente. Diese Komponente enthält die Skripts, die für die Installation der Machine-Learning-Laufzeit für Ihre Modelle erforderlich sind. AWS bietet Beispiellaufzeitkomponenten für Deep Learning Runtime (DLR) und TensorFlow Lite . Um andere Laufzeiten mit Ihren benutzerdefinierten Modellen und Ihrem Inferenzcode zu verwenden, erstellen Sie Ihre eigenen Laufzeitkomponenten.

  3. Erstellen Sie eine Inferenzkomponente. Diese Komponente enthält Ihren Inferenzcode und enthält Ihre Modell- und Laufzeitkomponenten als Abhängigkeiten. AWS bietet Beispielinferenzkomponenten für die Bildklassifizierung und Objekterkennung mit DLR und TensorFlow Lite. Um andere Arten von Inferenzen durchzuführen oder benutzerdefinierte Modelle und Laufzeiten zu verwenden, erstellen Sie Ihre eigene Inferenzkomponente.

  4. Stellen Sie die Inferenzkomponente bereit. Wenn Sie diese Komponente bereitstellen, stellt AWS IoT Greengrass auch automatisch die Abhängigkeiten der Modell- und Laufzeitkomponenten bereit.

Informationen zu den ersten Schritten mit AWSvon bereitgestellten Komponenten finden Sie unter Tutorial: Durchführen einer Inferenz bei der Bildklassifizierung mit TensorFlow Lite.

Informationen zum Erstellen von benutzerdefinierten Machine-Learning-Komponenten finden Sie unter Anpassen Ihrer Machine-Learning-Komponenten.

Was ist in AWS IoT Greengrass Version 2 anders?

AWS IoT Greengrass fasst Funktionseinheiten für Machine Learning – wie Modelle, Laufzeiten und Inferenzcode – in Komponenten zusammen, mit denen Sie die Machine-Learning-Laufzeit in einem Schritt installieren, Ihre trainierten Modelle herunterladen und Inferenzen auf Ihrem Gerät durchführen können.

Durch die Verwendung der von bereitgestellten Machine-LearningAWS-Komponenten haben Sie die Flexibilität, mit der Durchführung von Machine-Learning-Inferenzen mit Beispiel-Inferenzcode und vortrainierten Modellen zu beginnen. Sie können benutzerdefinierte Modellkomponenten einbinden, um Ihre eigenen benutzerdefinierten trainierten Modelle mit den von AWSbereitgestellten Inferenz- und Laufzeitkomponenten zu verwenden. Für eine vollständig angepasste Machine-Learning-Lösung können Sie die öffentlichen Komponenten als Vorlagen verwenden, um benutzerdefinierte Komponenten zu erstellen und beliebige Laufzeiten, Modelle oder Inferenztypen zu verwenden.

Voraussetzungen

Um Machine-Learning-Komponenten zu erstellen und zu verwenden, benötigen Sie Folgendes:

  • Ein Greengrass-Core-Gerät. Falls Sie noch keines haben, beachten Sie die Informationen unter Tutorial: Erste Schritte mit AWS IoT Greengrass V2.

  • Mindestens 500 MB lokaler Speicherplatz für die Verwendung von von bereitgestellten Machine-LearningAWS-Beispielkomponenten.

Unterstützte Modellquellen

AWS IoT Greengrass unterstützt die Verwendung von benutzerdefinierten Machine-Learning-Modellen, die in Amazon S3 gespeichert sind. Sie können auch Amazon SageMaker -Edge-Paketerstellungsaufträge verwenden, um direkt Modellkomponenten für Ihre SageMaker Neo-kompilierten Modelle zu erstellen. Informationen zur Verwendung von SageMaker Edge Manager mit AWS IoT Greengrassfinden Sie unter Verwenden von Amazon SageMaker Edge Manager auf Greengrass-Core-Geräten. Sie können auch Amazon Lookout for Vision-Modellpaketierungsaufträge verwenden, um Modellkomponenten für Ihre Lookout for Vision-Modelle zu erstellen. Weitere Informationen zur Verwendung von Lookout for Vision mit finden Sie AWS IoT Greengrassunter Amazon Lookout for Vision.

Die S3-Buckets, die Ihre Modelle enthalten, müssen die folgenden Anforderungen erfüllen:

  • Sie dürfen nicht mit SSE-C verschlüsselt werden. Für Buckets, die serverseitige Verschlüsselung verwenden, unterstützt die Inferenz für AWS IoT Greengrass Machine Learning derzeit nur die Verschlüsselungsoptionen SSE-S3 oder SSE-KMS. Weitere Informationen zu serverseitigen Verschlüsselungsoptionen finden Sie unter Schutz von Daten durch serverseitige Verschlüsselung im Benutzerhandbuch für Amazon Simple Storage Service.

  • Ihre Namen dürfen keine Punkte () enthalten.. Weitere Informationen finden Sie in der Regel zur Verwendung von Buckets im virtuellen Hosting-Stil mit SSL unter Regeln für die Bucket-Benennung im Benutzerhandbuch für Amazon Simple Storage Service.

  • Die S3-Buckets, die Ihre Modellquellen speichern, müssen sich in derselben AWS-Konto und in derselben AWS-Region wie Ihre Machine-Learning-Komponenten befinden.

  • AWS IoT Greengrass muss über die read Berechtigung für die Modellquelle verfügen. Damit AWS IoT Greengrass auf die S3-Buckets zugreifen kann, muss die Greengrass-Geräterolle die s3:GetObject Aktion zulassen. Weitere Informationen zur Geräterolle finden Sie unter Autorisieren Sie Kerngeräte zur Interaktion mitAWSDienstleistungen.

Unterstützte Machine-Learning-Laufzeiten

AWS IoT Greengrass Mit können Sie benutzerdefinierte Komponenten erstellen, um eine beliebige Machine-Learning-Laufzeitumgebung Ihrer Wahl zu verwenden, um Machine-Learning-Inferenzen mit Ihren benutzerdefinierten trainierten Modellen durchzuführen. Informationen zum Erstellen von benutzerdefinierten Machine-Learning-Komponenten finden Sie unter Anpassen Ihrer Machine-Learning-Komponenten.

Um die ersten Schritte mit Machine Learning effizienter zu gestalten, AWS IoT Greengrass bietet Beispielkomponenten für Inferenz, Modell und Laufzeit, die die folgenden Machine-Learning-Laufzeiten verwenden:

AWSVon bereitgestellte Machine-Learning-Komponenten

In der folgenden Tabelle sind die AWSvon bereitgestellten Komponenten aufgeführt, die für Machine Learning verwendet werden.

Anmerkung

Mehrere AWSvon bereitgestellte Komponenten hängen von bestimmten Nebenversionen des Greengrass-Kerns ab. Aufgrund dieser Abhängigkeit müssen Sie diese Komponenten aktualisieren, wenn Sie den Greengrass-Kern auf eine neue Nebenversion aktualisieren. Informationen zu den spezifischen Versionen des Kerns, von denen jede Komponente abhängt, finden Sie im entsprechenden Komponententhema. Weitere Informationen zum Aktualisieren des Kerns finden Sie unter Aktualisieren der AWS IoT Greengrass Core-Software (OTA).

Komponente Beschreibung Komponententyp Unterstützes Betriebssystem Open-Source
Lookout für Vision Edge Agent Stellt die Laufzeit von Amazon Lookout for Vision auf dem Greengrass-Kerngerät bereit, sodass Sie Computer Vision verwenden können, um Fehler in Industrieprodukten zu finden. Generisch Linux Nein
SageMaker Edge Manager Stellt den Amazon SageMaker Edge Manager-Agenten auf dem Greengrass-Kerngerät bereit. Generisch Linux, Windows Nein
DLR-Bildklassifizierung Inferenzkomponente, die den DLR-Bildklassifizierungsmodellspeicher und die DLR-Laufzeitkomponente als Abhängigkeiten verwendet, um DLR zu installieren, Beispiel-Bildklassifizierungsmodelle herunterzuladen und Bildklassifizierungsinferenzen auf unterstützten Geräten durchzuführen. Generisch Linux, Windows Nein
DLR-Objekterkennung Inferenzkomponente, die den DLR-Objekterkennungsmodellspeicher und die DLR-Laufzeitkomponente als Abhängigkeiten verwendet, um DLR zu installieren, Beispiel-Objekterkennungsmodelle herunterzuladen und Objekterkennungs-Inferenzen auf unterstützten Geräten durchzuführen. Generisch Linux, Windows Nein
DLR-Bildklassifizierungsmodellspeicher Modellkomponente, die Beispielmodelle zur Bildklassifizierung von ResNet-50 als Greengrass-Artefakte enthält. Generisch Linux, Windows Nein
Modellspeicher für die DLR-Objekterkennung Modellkomponente, die YOLOv3-Beispielobjekterkennungsmodelle als Greengrass-Artefakte enthält. Generisch Linux, Windows Nein
DLR-Laufzeit Laufzeitkomponente, die ein Installationsskript enthält, das zur Installation von DLR und seinen Abhängigkeiten auf dem Greengrass-Kerngerät verwendet wird. Generisch Linux, Windows Nein
TensorFlow Lite-Bildklassifizierung Inferenzkomponente, die den TensorFlow Lite-Bildklassifizierungsmodellspeicher und die TensorFlow Lite-Laufzeitkomponente als Abhängigkeiten verwendet, um TensorFlow Lite zu installieren, Beispielmodelle zur Bildklassifizierung herunterzuladen und Bildklassifizierungsinferenzen auf unterstützten Geräten durchzuführen. Generisch Linux, Windows Nein
TensorFlow Erkennung von Lite-Objekten Inferenzkomponente, die den TensorFlow Lite-Objekterkennungsmodellspeicher und die TensorFlow Lite-Laufzeitkomponente als Abhängigkeiten verwendet, um TensorFlow Lite zu installieren, Beispiel-Objekterkennungsmodelle herunterzuladen und Objekterkennungs-Inferenzen auf unterstützten Geräten durchzuführen. Generisch Linux, Windows Nein
TensorFlow Modellspeicher für die Lite-Bildklassifizierung Modellkomponente, die ein Beispiel MobileNet -v1-Modell als Greengrass-Artefakt enthält. Generisch Linux, Windows Nein
TensorFlow Modellspeicher für die Lite-Objekterkennung Modellkomponente, die ein Single Shot Detection (SSD)- MobileNet Beispielmodell als Greengrass-Artefakt enthält. Generisch Linux, Windows Nein
TensorFlow Lite-Laufzeit Laufzeitkomponente, die ein Installationsskript enthält, das zur Installation von TensorFlow Lite und seinen Abhängigkeiten auf dem Greengrass-Kerngerät verwendet wird. Generisch Linux, Windows Nein