
Getty Images/iStockphoto
Wie Sie eine AWS EC2-Instanz für Machine Learning auswählen
Bestimmte Workloads erfordern spezielle EC2-Instanzen. Für KI- und Machine-Learning-Workloads müssen Teams Instanzen finden, die Anforderungen und Kosten in Einklang bringen.
Unternehmen aus zahlreichen Branchen erkennen weiterhin den Wert von künstlicher Intelligenz (KI). Ob es darum geht, Aufgaben zu automatisieren, Geschäftsprozesse zu optimieren, Betrugsfälle aufzudecken oder fundiertere Entscheidungen auf der Grundlage von Prognosen zu treffen – Unternehmen suchen nach Möglichkeiten, von KI und maschinellem Lernen zu profitieren. Um die Leistungsfähigkeit von KI optimal zu nutzen, müssen Unternehmen die richtigen EC2-Instanzen einsetzen.
Eine der Hauptfunktionen von Amazon SageMaker ist die Bereitstellung und Verwaltung von Rechenkapazität für die verschiedenen Phasen von Machine-Learning-Anwendungen. Obwohl einige serverlose Optionen angeboten werden, erfordern viele Szenarien die Verwendung von EC2-Instanzen, die vom SageMaker-Service verwaltet werden.
Bei der Auswahl eines Instanztyps müssen Benutzer ihren Workload genau kennen und die Rechen- und Anwendungsanforderungen der Aufgabe bewerten. Für ML- oder KI-Workloads benötigen Benutzer Instanzen, die optimale Leistung für Deep Learning und Computing bieten. Die Familie der beschleunigten Computing-Instanzen, zu der die Instanzen p5, g5, trn1 und inf2 gehören, bietet Teams diese Funktionalität.
Erfahren Sie, warum Instanztypen wichtig sind, welche EC2-Instanzoptionen für ML-Workloads zur Verfügung stehen und wie Teams die beste Instanz für ihre Workloads ermitteln können.
Warum ist der Instanztyp wichtig?
Die verfügbaren EC2-Instanzen in SageMaker variieren je nach der auszuführenden Aufgabe, zum Beispiel Entwicklung, Training und Inferenz. Nicht alle Instanztypen sind für jede Art von Aufgabe geeignet. Beispielsweise sind die für das Training verfügbaren Typen nicht unbedingt für Notebooks oder die Verarbeitung verfügbar. Außerdem gibt es Aufgaben, die rechen- oder Memory-intensiver sind oder einen bestimmten Storage - oder Netzwerkdurchsatz erfordern.
SageMaker bietet mehrere universelle EC2-Instanzfamilien sowie optimierte Instanzfamilien, wie in dieser Tabelle dargestellt. Diese Instanzfamilien enthalten spezielle Instanztypen, die für eine Vielzahl von Aufgaben erstellt wurden.

Einige Instanzen bieten eine Kombination aus Optimierungen, beispielsweise Rechenleistung und Netzwerk (c5n) oder Memory und Storage (r5d).
Die Menge der verarbeiteten Daten hat ebenfalls einen erheblichen Einfluss auf den für eine bestimmte Aufgabe optimalen Instanztyp. Wenn Daten in EC2-Instanzen gespeichert werden, ist ein Storage-optimierter Instanztyp gut geeignet. Wenn große Datenmengen aus externen Speichern abgerufen werden, könnten netzwerkoptimierte Instanzen eine gute Wahl sein. Für Deep Learning und Large Language Models (LLMs) werden beschleunigte Recheninstanztypen empfohlen.
EC2-Instanzen für maschinelles Lernen
SageMaker bietet Instanzen mit beschleunigten Recheninstanzen wie p5, g5, trn1 und inf2. Diese sind optimal für mehrere ML-Aufgaben geeignet. Weitere von SageMaker unterstützte Instanztypen sind m6i, m6id, m71, c6i, c6id, c7i, r6i, r6id und r7i.
P5
P5-Instanzen werden von Nvidia-H100-GPUs angetrieben und bieten hohe Leistung für Deep Learning und Computing an. Derzeit bietet SageMaker nur ml.p5.48xlarge und die Preise unterscheiden sich je nach Komponententyp.
Diese Instanzen eignen sich gut für extrem anspruchsvolle Workloads, wie generative KI-Anwendungen, LLMs, Grafik- und Videogenerierung in der Entwicklung, Schulung und Inferenz.
G5
G5-Instanzen werden mit Nvidia-A10G-Tensor-Core-GPUs betrieben und eignen sich ebenfalls gut für intensive Trainings- und Inferenz-Workloads. SageMaker bietet mehr Größenoptionen für G5-Instanzen und damit mehr Flexibilität für Anwendungsbesitzer hinsichtlich Rechenkapazität und Kostenmanagement im Vergleich zu P5-Instanzen. Die folgenden Größen sind verfügbar:
- ml.g5.xlarge
- ml.g5.2xlarge
- ml.g5.4xlarge
- ml.g5.8xlarge
- ml.g5.12xlarge
- ml.g5.48xlarge
Trn1
Trn1-Instanzen verwenden den AWS-Trainium-Chip, der speziell für Deep-Learning-Trainingsaufgaben entwickelt wurde und gleichzeitig die Kosten niedrig hält. Laut AWS bietet er gegenüber ähnlichen EC2-Instanzen bis zu 50 Prozent Einsparungen bei den Trainingskosten. Dadurch ist er für Unternehmen jeder Größe leichter zugänglich. Für nachhaltigskeitsbewusste Unternehmen sollen sie im Vergleich zu anderen beschleunigten EC2-Instanzen für Deep-Learning-Trainings 25 Prozent energieeffizienter sein.
Derzeit sind zwei Größen verfügbar: ml.trn1.2xlarge und ml.trn1.32xlarge.
Häufige Anwendungsfälle sind Verarbeitung natürlicher Sprache (NLP), maschinelles Sehen (Computer Vision) und Suche sowie Empfehlungen und Rankings.
Inf2
Inf2-Instanzen verwenden AWS-Inferentia2-Chips und sind für Deep-Learning-Inferenzaufgaben vorgesehen. Wie trn1-Instanzen bieten auch inf2-Instanzen Nachhaltigkeitsvorteile und liefern bis zu 50 Prozent bessere Leistung als vergleichbare Amazon EC2-Instanzen.
Die folgenden Instanzgrößen sind verfügbar:
- ml.inf2.xlarge
- ml.inf2.8xlarge
- ml.inf2.24xlarge
- ml.inf2.48xlarge
Sie werden häufig für die Bild- und Textgenerierung und -zusammenfassung sowie für die Spracherkennung verwendet.
Sowohl inf2 als auch trn1 sind zusätzlich für Anwendungsfälle wie Generierung von Code und Video, das Zusammenfassen von Texten, die Erkennung von Betrug sowie Frage-und-Antwort-Szenarien geeignet.
Welche beschleunigte Instanz ist die richtige für Sie?
Da die Bereitstellung von ML-Anwendungen mehrere Schritte umfasst, sind während des gesamten Lebenszyklus unterschiedliche Arten von Rechenkapazitäten erforderlich. Die Kapazität hängt von den auszuführenden Aufgaben ab. Beispiele für Aufgaben im Zusammenhang mit der Bereitstellung von ML-Modellen sind:
- Entwicklung
- Vor- und Nachbearbeitung
- Bewertung
- Training
- Datenaufbereitung
- Inferenz
In den meisten Fällen hat jede Art von Aufgabe ihre eigenen Anforderungen an Rechenleistung und Anwendungen sowie ihre eigenen Herausforderungen. Es ist wichtig, die geeigneten EC2-Instanzen entsprechend der jeweils auszuführenden Aufgabe auszuwählen.
Prüfen Sie die Leistungsanforderungen und -bedürfnisse
Bevor Sie sich für einen bestimmten Instanztyp und eine bestimmte Größe entscheiden, müssen Sie die Leistungsanforderungen für jede Aufgabe ermitteln. In vielen Fällen können optimierte Instanzen 30 Prozent bis 75 Prozent höhere Kosten verursachen als generische Instanzen mit ähnlicher Kapazität. Es gibt Geschäftsziele, die die zusätzlichen Kosten rechtfertigen können, zum Beispiel maximale Latenz oder das Volumen der zu verarbeitenden, zu trainierenden oder zu inferierenden Daten.
In einigen Fällen kann ein generischer Instanztyp die Anwendungsanforderungen erfüllen. Es gibt jedoch auch Situationen, in denen eine höhere Leistung zu geringeren Kosten führen kann. Führen Sie für jede Aufgabe mehrere Tests durch, um die Leistungsanforderungen zu ermitteln. Jeder Test muss mit den erwarteten Daten und dem erwarteten Transaktionsvolumen durchgeführt werden. Berechnen Sie die Kosten unter Verwendung mehrerer Instanztypen und messen Sie relevante Metriken,die sich auf die Benutzererfahrung und die Anwendungsleistung auswirken.
Sehen Sie sich die Metriken an
CloudWatch bietet relevante Metriken in Bereichen wie Aufrufe, Latenz, Fehler sowie CPU- und Memory-Auslastung. Da Machine-Learning-Aufgaben schnell mehrere Tausend Euro kosten können, sollten Sie sich auf optimale Infrastrukturkosten für spezifische Anforderungen konzentrieren. CloudWatch-Metriken sind ein unverzichtbares Tool, um zu beurteilen, ob ein bestimmter Instanztyp für die Ziele eines bestimmten Workloads geeignet ist.
Kosten senken
Mit Amazon SageMaker Savings Plans können Sie Kosten senken, indem Sie sich für einen Zeitraum von einem oder drei Jahren zu einem stündlichen Betrag verpflichten. Je nach Instanztyp und Verpflichtungszeitraum können die Einsparungen zwischen etwa 20 Prozent und sogar 64 Prozent liegen. Beachten Sie, dass nicht alle Instanztypen für einen bestimmten Komponententyp, wie zum Beispiel Verarbeitung, Inferenz, Training und Notebooks, unterstützt werden. SageMaker unterstützt beispielsweise keine Reserved Instances.