Schritt 6: Erweitern Sie die Pipeline - AWS Präskriptive Leitlinien

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.

Schritt 6: Erweitern Sie die Pipeline

In diesem Leitfaden wird erklärt, wie Sie AWS schnell mit dem Aufbau von ML-Pipelines beginnen können, und zwar mit konkreter Architektur. Für die Weiterentwicklung der Pipeline sind weitere Überlegungen erforderlich, wie z. B. die Verwaltung von Metadaten, die Nachverfolgung von Experimenten und die Überwachung. Dies sind wichtige Themen, die nicht in den Geltungsbereich dieses Leitfadens fallen. In den folgenden Abschnitten wird ein weiterer Aspekt des Pipeline-Managements behandelt, nämlich die Pipeline-Automatisierung.

Verschiedene Automatisierungsstufen

Sie können eine Trainingspipeline zwar manuell in der SageMaker KI-Konsole einrichten, in der Praxis empfehlen wir jedoch, manuelle Berührungspunkte bei der Bereitstellung von ML-Trainingspipelines zu minimieren, um sicherzustellen, dass ML-Modelle konsistent und wiederholt eingesetzt werden. Abhängig von Ihren Anforderungen und den Geschäftsproblemen, mit denen Sie sich befassen, können Sie eine Implementierungsstrategie auf drei Ebenen festlegen und umsetzen: halbautomatisiert, vollautomatisch und vollständig verwaltet.

  • Halbautomatisiert — Die im vorherigen Abschnitt erläuterten Schritte folgen standardmäßig einem halbautomatischen Ansatz, da sie die Trainings- und Inferenz-Pipeline mithilfe von Vorlagen bereitstellen. AWS CloudFormation Dadurch wird die Reproduzierbarkeit der Pipeline gewährleistet und Sie können sie problemlos ändern und aktualisieren.

  • Vollständig automatisiert — Eine fortgeschrittenere Option ist die Verwendung von kontinuierlicher Integration und kontinuierlicher Bereitstellung (durch CI/CD) to the development, staging, and production environments. Incorporating CI/CD Methoden zur Bereitstellung der Schulungspipeline kann sichergestellt werden, dass die Automatisierung sowohl Rückverfolgbarkeit als auch Qualitätskontrollen umfasst).

  • Vollständig verwaltet — Letztlich können Sie ein vollständig verwaltetes System entwickeln, sodass Sie eine ML-Trainingspipeline mit einer Reihe einfacher Manifeste bereitstellen können und das System die erforderlichen AWS Dienste selbst konfigurieren und koordinieren kann.

In diesem Leitfaden haben wir uns entschieden, eine konkrete Architektur vorzustellen. Es gibt jedoch alternative Technologien, die Sie in Betracht ziehen können. In den nächsten beiden Abschnitten werden einige alternative Optionen für die Plattform und die Orchestrierungs-Engine erörtert.

Verschiedene Plattformen für ML-Workloads

Amazon SageMaker AI ist der AWS verwaltete Service für das Training und die Bereitstellung von ML-Modellen. Viele Benutzer schätzen die Vielzahl der integrierten Funktionen und die vielen Optionen, die es für die Ausführung von ML-Workloads bietet. SageMaker KI ist besonders nützlich, wenn Sie gerade erst mit der Implementierung von ML in der Cloud beginnen. Zu den wichtigsten Funktionen von SageMaker KI gehören:

  • Integrierte Rückverfolgbarkeit (einschließlich Kennzeichnung, Schulung, Modellverfolgung, Optimierung und Inferenz).

  • Integrierte Ein-Klick-Optionen für Training und Inferenz mit minimaler Python- und ML-Erfahrung.

  • Erweitertes Hyperparameter-Tuning.

  • Support für alle wichtigen Frameworks für künstliche Intelligenz und maschinelles Lernen (ML/KI) sowie für benutzerdefinierte Docker-Container.

  • Integrierte Überwachungsfunktionen.

  • Integrierte Nachverfolgung von Historien, einschließlich Trainingsaufträgen, Verarbeitungsaufträgen, Batch-Transformationsaufträgen, Modellen, Endpunkten und Durchsuchbarkeit. Einige Historien, wie z. B. Training, Verarbeitung und Batch-Transformation, sind unveränderlich und können nur angehängt werden.

Eine der Alternativen zur Verwendung von KI ist. SageMaker AWS Batch AWS Batch bietet ein geringeres Maß an Kontrolle über die Berechnung und Orchestrierung für Ihre Umgebung, ist aber nicht speziell für maschinelles Lernen konzipiert. Zu seinen wichtigsten Funktionen gehören:

  • Out-of-the-box automatische Skalierung der Rechenressourcen auf der Grundlage der Arbeitslast.

  • Out-of-the-box Unterstützung für Auftragspriorität, Wiederholungsversuche und Aufgabenabhängigkeiten.

  • Warteschlangenbasierter Ansatz, der die Erstellung von wiederkehrenden Aufträgen und Aufträgen auf Abruf unterstützt.

  • Support für CPU- und GPU-Workloads. Die Fähigkeit, GPU für die Erstellung von ML-Modellen zu verwenden, ist von entscheidender Bedeutung, da die GPU den Trainingsprozess erheblich beschleunigen kann, insbesondere bei Deep-Learning-Modellen.

  • Möglichkeit, ein benutzerdefiniertes Amazon Machine Image (AMI) für die Rechenumgebung zu definieren.

Verschiedene Engines für die Pipeline-Orchestrierung

Die zweite Hauptkomponente ist die Pipeline-Orchestrierungsschicht. AWS bietet Step Functions für eine vollständig verwaltete Orchestrierungserfahrung. Eine beliebte Alternative zu Step Functions ist Apache Airflow. Wenn Sie eine Entscheidung zwischen den beiden treffen, sollten Sie Folgendes berücksichtigen:

  • Erforderliche Infrastruktur — AWS Step Functions ist ein vollständig verwalteter Service, der serverlos ist, wohingegen Airflow die Verwaltung Ihrer eigenen Infrastruktur erfordert und auf Open-Source-Software basiert. Dadurch bietet Step Functions sofort eine hohe Verfügbarkeit, wohingegen die Verwaltung von Apache Airflow zusätzliche Schritte erfordert.

  • Planungsfunktionen — Sowohl Step Functions als auch Airflow bieten vergleichbare Funktionen.

  • Visualisierungsmöglichkeiten und Benutzeroberfläche — Sowohl Step Functions als auch Airflow bieten vergleichbare Funktionen.

  • Übergabe von Variablen innerhalb des Berechnungsdiagramms — Step Functions bietet eingeschränkte Funktionen für die Verwendung von AWS Lambda Funktionen, wohingegen Airflow Schnittstellen bereitstellt XCom .

  • Verwendung — Step Functions ist bei AWS Kunden sehr beliebt, und Airflow wurde von der Datentechnik-Community weitgehend übernommen.