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.
SageMaker Compiler für Schulungen FAQ
Wichtig
Amazon Web Services (AWS) gibt bekannt, dass es keine neuen Releases oder Versionen von SageMaker Training Compiler geben wird. Sie können SageMaker Training Compiler weiterhin über die vorhandenen AWS Deep Learning Containers (DLCs) für SageMaker Schulungen verwenden. Es ist wichtig zu beachten, dass auf die vorhandenen DLCs Dateien zwar weiterhin zugegriffen werden kann, sie jedoch gemäß der Support-Richtlinie für AWS Deep Learning Containers Framework keine Patches oder Updates mehr erhalten. AWS
Verwenden Sie die folgenden FAQ Elemente, um Antworten auf häufig gestellte Fragen zu SageMaker Training Compiler zu finden.
F: Woher weiß ich, dass SageMaker Training Compiler funktioniert?
Wenn Sie Ihren Trainingsjob mit SageMaker Training Compiler erfolgreich gestartet haben, erhalten Sie die folgenden Protokollmeldungen:
-
Mit
TrainingCompilerConfig(debug=False)
Found configuration for Training Compiler Configuring SM Training Compiler...
-
Mit
TrainingCompilerConfig(debug=True)
Found configuration for Training Compiler Configuring SM Training Compiler... Training Compiler set to debug mode
F: Welche Modelle beschleunigt SageMaker Training Compiler?
SageMaker Training Compiler unterstützt die beliebtesten Deep-Learning-Modelle aus der Hugging Face Transformers-Bibliothek. Bei den meisten Operatoren, die der Compiler unterstützt, können diese Modelle mit Training Compiler schneller trainiert werden. SageMaker Kompilierbar sind u.a. die folgenden Modelle: bert-base-cased
, bert-base-chinese
, bert-base-uncased
, distilbert-base-uncased
, distilbert-base-uncased-finetuned-sst-2-english
, gpt2
, roberta-base
, roberta-large
, t5-base
und xlm-roberta-base
. Der Compiler funktioniert mit den meisten DL-Operatoren und Datenstrukturen und kann über die getesteten hinaus noch viele weitere DL-Modelle beschleunigen.
F: Was passiert, wenn ich SageMaker Training Compiler mit einem Modell aktiviere, das nicht getestet wurde?
Bei einem ungetesteten Modell müssen Sie möglicherweise zuerst das Trainingsskript ändern, damit es mit SageMaker dem Training Compiler kompatibel ist. Weitere Informationen finden Sie unter Bringen Sie Ihr eigenes Deep-Learning-Modell mit. Folgen Sie dabei den Anweisungen zur Vorbereitung Ihres Trainingsskripts.
Sobald Sie Ihr Trainingsskript aktualisiert haben, können Sie mit dem Trainingsauftrag beginnen. Der Compiler kompiliert dann zunächst das Modell. Bei einem nicht getesteten Modell nimmt das Trainingsgeschwindigkeit jedoch ggf. nicht zu und kann sogar im Vergleich zum Ausgangswert sinken. Sie müssen die Trainingsparameter (z. B. batch_size
und learning_rate
) ggf. erneut anpassen, um in den Genuss der Vorteile einer Beschleunigung zu kommen.
Schlägt die Kompilierung des nicht getesteten Modells fehl, gibt der Compiler einen Fehler zurück. Ausführliche Informationen zu den Fehlertypen und Fehlermeldungen finden Sie unter SageMaker Fehlerbehebung beim Training Compiler.
F: Bekomme ich mit Training Compiler immer einen schnelleren Schulungsjob? SageMaker
Nein, nicht unbedingt. Zunächst fügt SageMaker Training Compiler einen gewissen Kompilierungsaufwand hinzu, bevor der laufende Trainingsprozess beschleunigt werden kann. Der optimierte Trainingsauftrag muss ausreichend lange laufen, damit er sich amortisiert und diesen zusätzlichen Kompilierungsaufwand zu Beginn des Trainingsauftrags wieder wettmacht.
Darüber hinaus kann, wie bei jedem Modelltrainingsprozess, das Training mit suboptimalen Parametern die Trainingszeit verlängern. SageMaker Der Training Compiler kann die Eigenschaften des Trainingsjobs ändern, indem er beispielsweise den Speicherbedarf des Jobs ändert. Aufgrund dieser Unterschiede müssen Sie Ihre Trainingsparameter ggf. erneut anpassen, um das Training zu beschleunigen. Eine Referenztabelle mit den leistungsstärksten Parametern für Trainingsaufträge mit unterschiedlichen Instance-Typen und Modellen finden Sie unter Getestete Modelle.
Schließlich kann ein Teil des Codes in einem Trainingsskript zusätzlichen Aufwand verursachen oder das kompilierte Berechnungsdiagramm stören und so das Training verlangsamen. Wenn Sie mit einem benutzerdefinierten oder nicht getesteten Modell arbeiten, lesen Sie die Anweisungen unter Bewährte Methoden für die Verwendung SageMaker des Training Compilers mit /XLA PyTorch.
F: Kann ich mit SageMaker Training Compiler immer eine größere Batchgröße verwenden?
Die Batch-Größe nimmt in den meisten Fällen zu, jedoch nicht in allen. Die vom SageMaker Training Compiler vorgenommenen Optimierungen können die Merkmale Ihres Trainingsjobs, wie z. B. den Speicherbedarf, verändern. In der Regel belegt ein Trainingskompilierungsauftrag weniger Speicher als ein unkompilierter Trainingsauftrag mit dem nativen Framework. Das erlaubt während des Trainings eine höhere Batch-Größe. Eine höhere Batch-Größe und eine entsprechende Anpassung der Lernrate erhöht den Trainingsdurchsatz und kann die gesamte Trainingsdauer verringern.
Es kann jedoch Fälle geben, in denen SageMaker Training Compiler aufgrund seines Optimierungsschemas den Speicherbedarf tatsächlich erhöht. Der Compiler verwendet ein analytisches Kostenmodell, um den Ausführungsplan mit den niedrigsten Ausführungskosten für jeden rechenintensiven Operator vorauszusagen. Dieses Modell kann einen optimalen Zeitplan finden, der den Speicherverbrauch erhöht. In diesem Fall können Sie die Batch-Größe nicht erhöhen. Ihr Probendurchsatz ist jedoch trotzdem höher.
F: Funktioniert SageMaker Training Compiler mit anderen SageMaker Trainingsfunktionen wie den SageMaker verteilten Trainingsbibliotheken und dem Debugger? SageMaker
SageMaker Training Compiler ist derzeit nicht mit den verteilten Trainingsbibliotheken SageMaker kompatibel.
SageMaker Der Training Compiler ist mit dem SageMaker Debugger kompatibel, aber der Debugger kann die Rechenleistung durch zusätzlichen Overhead beeinträchtigen.
F: Unterstützt SageMaker Training Compiler benutzerdefinierte Container (bringen Sie Ihren eigenen Container mit)?
SageMaker Training Compiler wird über AWS Deep Learning Containers bereitgestellt, und Sie können eine Teilmenge der Container erweitern, um sie an Ihren Anwendungsfall anzupassen. Container, die von erweitert werden, AWS DLCs werden vom Training Compiler unterstützt. SageMaker Weitere Informationen finden Sie unter Unterstützte Frameworks und Verwenden des SageMaker Python SDK und Erweitern von SageMaker Framework Deep Learning Containers. Wenn Sie weitere Unterstützung benötigen, wenden Sie sich über den AWS Support