Sie brauchen einen Amazon SageMaker Berater und/oder möchten, dass wir Ihnen unser Angebot in diesem Umfeld vorstellen?
Bitte hinterlassen Sie uns Ihren Namen und die Kontaktdaten. Dann melden wir uns bei Ihnen.
Der Amazon SageMaker ist ein von Amazon Web Services (AWS) bereitgestellter Service zur Erstellung von Machine-Learning-Modellen (ML-Modelle), die sich für Predicitive Analytics und weitere Analysen in der Cloud der Amazon Web Services eignen.
Interessant ist der Service für Developer, die Machine-Learning-Modelle erstellen (Entwicklung), in ihren Fähigkeiten individualisieren (Schulung) und dann zur Verfügung stellen (Bereitstellung). Dadurch, dass der Amazon SageMaker allgemein gebräuchliche Machine-Learning-Algorithmen anbietet, können auch Entwickler ohne entsprechende Fachkenntnisse solche Modelle entwickeln.
Als Teilbereich der Künstlichen Intelligenz (KI) soll ML Maschinen in die Lage versetzen, vorgegebene Aufgaben umzusetzen und eigenständig aus Erfahrungen zu lernen. Solche Aufgaben können beispielsweise die Optimierung von Prozessen aufgrund erkannter Muster, die Vorhersage bestimmter Ereignisse oder die Berechnung von deren Eintrittswahrscheinlichkeiten sein. Maschinelles Lernen basiert hierbei auf dem Ansatz, Wissen aus Erfahrungswerten zu generieren. Dafür werden Lernalgorithmen eingesetzt, die mithilfe von Beispielen entsprechende Modelle zur Umsetzung von Aufgaben entwerfen. Diese Modelle können anschließend auf neue Fälle angewendet werden, die die gleiche Struktur haben. Ein typisches Beispiel vom Einsatz solcher Modelle sind Chatbots – also Roboter, die auf Basis von natürlicher Sprache textuell oder auditiv mit Kunden oder Anwendern kommunizieren können.
Der Amazon SageMaker unterstützt die Client-Server-Anwendung Jupyter Notebook, dessen Name auf die drei Programmiersprachen Julia, Python und R zurückgeht. Jupyter Notebook ist eine Open-Source-Webanwendung, mit der Dokumente erstellt und geteilt werden können. Diese können Code, Gleichungen, bildliche Darstellungen oder Text enthalten.
Amazon SageMaker nutzt die Anwendung beispielsweise für verschiedene Datenverarbeitungsschritte und das Schulen von Modellen. Mithilfe der Notebook-Web-Applikation kann Code geschrieben und anschließend ausgeführt werden. Die Ergebnisse können dann entweder als Live-Berechnungen in der Cloud oder in festem Format (z. B. PDF) weitergegeben werden. Des Weiteren ist es in Jupyter mehreren Nutzern gleichzeitig möglich, Berechnungen durchzuführen und einen Code zu modifizieren.
Die Erstellung von Machine-Learning-Modellen mit dem Amazon SageMaker läuft immer nach dem gleichen Schema in 3 Schritten ab.
Im ersten Schritt erzeugen Entwickler mit dem Amazon SageMaker Beispiel-Daten, die das Modell nutzen kann, um Fähigkeiten zu trainieren. Die Art der Daten hängt dabei davon ab, welches Ziel mithilfe des SageMakers erreicht werden soll. Wenn das Modell beispielsweise handschriftliche Zahlen erkennen soll, werden entsprechende Proben eingelesen. Die Erstellung von Beispiel-Daten läuft in 3 Schritten ab: Zunächst werden passende Daten identifiziert, dann aufbereitet und schließlich vorbereitet, bzw. gegebenenfalls transformiert. Die Verarbeitung der Daten geschieht mit Jupyter Notebook, gespeichert werden sie in einem Amazon S3-Bucket (Simple Storage Service).
Im zweiten Schritt wird das Modell mit einem passenden Algorithmus trainiert. Hier können Entwickler aus einer Vielzahl von Algorithmen auswählen, die SageMaker teilweise selbst zur Verfügung stellt. Wie die Einspeisung passender Beispiel-Daten hängt auch die Auswahl des Algorithmus vom angestrebten Verwendungszweck des Modells ab. Wenn es handschriftliche Zahlen erkennen soll, muss ein Algorithmus ausgewählt werden, der hierzu in der Lage ist.
Folgende Optionen stehen bei der Auswahl des Algorithmus zur Verfügung:
Um das Modell mit Jupyter Notebook schulen zu können, erstellen Entwickler einen Schulungsauftrag. Dieser muss unter anderem Datenverarbeitungsressourcen enthalten, also Machine-Learning-Compute-Instances. Je nach Größe des Schulungsdatasets reicht hier eine kleine Instance, bei größeren Projekten kann aber auch ein Cluster von GPU-Instances (Graphic Processing Unit) verwendet werden.
Nach der Schulung des Modells erfolgt die Auswertung. Dafür werden zuvor Inferenzanforderungen zuvor mithilfe des AWS Software Development Kit für Python (auch Boto genannt) oder der Python Library an das ML-Modell gesendet. Auf Grundlage dieser Anforderungen kann dann mit Jupyter Notebook ausgewertet werden, ob die Inferenzgenauigkeit des Modells den Ziel-Anforderungen genügt.
Der dritte und letzte Schritt umfasst die Bereitstellung des Modells, wofür SageMaker Hosting Services zur Verfügung stellt. Die Bereitstellung verfolgt das Ziel, Prognosen zu generieren, die sich auf das zuvor festgelegte Ziel beziehen.
Um das Modell bereitzustellen, müssen Entwickler einen HTTPS-Endpunkt erstellen und konfigurieren. Hierbei handelt es sich um eine Instanz, die Daten empfangen kann. Amazon SageMaker verwendet diese Endpunkte, um Ressourcen vorzubereiten und Modelle einzusetzen.
Nach der Bereitstellung folgt der Schritt der Validierung, mit dem festgestellt werden soll, ob das Modell die ihm gesetzten Ziele bezüglich Leistung und Genauigkeiten erreichen kann. Die Auswertung kann durch Offline-Tests mit historischen oder durch Online-Tests mit Live-Daten erfolgen.
In unserem E-Book erfahren Sie die wichtigsten Inhalte rund um das Thema künstliche Intelligenz & wie Sie davon profitieren können!
Innerhalb des Amazon SageMakers gibt es die Möglichkeit, das Konzept des verstärkenden Lernens (Reinforcement Learning) anzuwenden. Diese Methode ist Teil des maschinellen Lernens und zeichnet sich dadurch aus, dass im Voraus keine Daten in das Modell eingegeben werden müssen. Stattdessen werden diese Daten in einer simulierten Umgebung in einem Verfahren erzeugt, bei dem der Agent (z. B. ein Roboter) sein Entscheidungsschema in vielen Probedurchläufen anhand des Feedbacks seiner Umgebung anpasst. Das Konzept basiert auf Modellen, die Markow-Entscheidungsprozesse (MEP) genannt werden. Jedes MEP besteht aus mehreren Zeitschritten, die sich jeweils aus den folgenden Komponenten zusammensetzen:
Reinforcement Learning wird zum Beispiel im Supply Chain Management, der industriellen Robotik oder der Steuerung von Fahrzeugen eingesetzt – also immer dann, wenn mit Machine Learning besonders komplexe Probleme gelöst werden sollen.
Programmierschnittstellen (APIs) direkt aus dem Code abzurufen, ist umständlich, denn um die individuellen Anforderungen zu authentifizieren, muss zusätzlicher Code geschrieben werden.
Aus diesem Grund stellt das Amazon SageMaker-Programmiermodell Alternativen zur Verfügung, die das Schreiben von Code teilweise hinfällig machen.
Über die Benutzeroberfläche der SageMaker-Konsole lässt sich die Modellschulung und -bereitstellung durchführen. Es empfiehlt sich hier, Aufträge auszuführen, bei denen die Schulungsdaten nicht vorverarbeitet werden müssen, sodass ein integrierter Schulungsalgorithmus verwendet werden kann.
Auch mit JupyterNotebook ist es möglich, Modelle zu schulen und bereitzustellen. Dafür verwendet der Entwickler ein Notebook, das einen für seine Zwecke relevanten Algorithmus nutzt, und passen es an Ihre Datenquelle und Anforderungen an.
Mithilfe des AWS Software Development Kits und der High-Level-Python-Bibliothek, die eine Vielzahl an Hilfestellungen bietet, ist es möglich, neuen Code zu schreiben, um Schulungsaufträge zu erstellen und Modelle bereitzustellen.
Mithilfe der SageMaker-Spark-Bibliothek ist es Entwicklern möglich, das Apache-Spark-Framework zum Schulen und Hosten der Modelle einzusetzen.
Die Kosten von SageMaker richten sich nach der individuellen Nutzung. Amazon berechnet den Nutzern die Ressourcen bzw. Instanzen für die Rechen-, Speicher- und Datenverarbeitungsleistungen, die sie für das Erstellen, Schulen und Bereitstellen der Modelle benötigen. Die Preise gestalten sich je nach Instanz unterschiedlich. Es handelt sich aber immer um einen Stundensatz.
Sie möchten ML-Modelle bereitstellen oder haben generell Fragen zum Thema Amazon SageMaker? Vereinbaren Sie eine kostenlose Websession mit uns und stellen Sie uns Ihre Fragen.
Bitte hinterlassen Sie uns Ihren Namen und die Kontaktdaten. Dann melden wir uns bei Ihnen.
Der Amazon SageMaker begleitet Entwickler in 3 Schritten bei der Entwicklung, dem Training und der Bereitstellung von ML-Modellen. Die Umsetzung dieser Schritte wird durch Komponenten wie Jupyter Notebook erleichtert. Um ein Modell schulen zu können, ist die Auswahl eines geeigneten Algorithmus notwendig. Dieser hängt stark von dem Ziel, das der Entwickler mit der Erstellung des Modells erreichen möchte, ab.
Als Teilbereich des Machine Learnings gibt es noch das verstärkende Lernen, bei dem der Agent nicht aus im Vorhinein eingespeisten Daten, sondern aus dem Feedback seiner Umgebung lernt. Diese Methode eignet sich vor allem für die Lösung besonders komplexer Problemstellungen. Amazon SageMaker bietet außerdem Möglichkeiten an, die das Abrufen von Programmierschnittstellen erleichtert.
Kontaktieren Sie uns gerne, wenn Sie weitere Fragen zum Thema Amazon SageMaker haben.
Vollumfängliche Implementierungs- und Betriebsunterstützung für führende Softwareprodukte unserer Partnerunternehmen:
Vollumfängliche Implementierungs- und Betriebsunterstützung für führende Softwareprodukte unserer Partnerunternehmen:
Vollumfängliche Implementierungs- und Betriebsunterstützung für führende Softwareprodukte unserer Partnerunternehmen:
Vollumfängliche Implementierungs- und Betriebsunterstützung für führende Softwareprodukte unserer Partnerunternehmen: