

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.

# Verstehen Sie die in Amazon SageMaker AI verfügbaren Hyperparameter-Tuning-Strategien
<a name="automatic-model-tuning-how-it-works"></a>

Beim Erstellen komplexer Machine-Learning-Systeme wie neuronaler Deep-Learning-Netzwerke ist es unmöglich, alle möglichen Kombinationen zu untersuchen. Hyperparameter-Tuning kann Ihre Produktivität steigern, indem Sie viele Varianten eines Modells ausprobieren. Es sucht automatisch nach dem besten Modell, indem es sich auf die vielversprechendsten Kombinationen von Hyperparameterwerten innerhalb der von Ihnen angegebenen Bereiche konzentriert. Um gute Ergebnisse zu erzielen, müssen Sie die richtigen Bereiche für die Untersuchung auswählen. Diese Seite enthält eine kurze Erläuterung der verschiedenen Hyperparameter-Tuning-Strategien, die Sie mit Amazon SageMaker AI verwenden können.

Verwenden Sie das [API-Referenzhandbuch](https://docs.aws.amazon.com/sagemaker/latest/APIReference/Welcome.html?icmpid=docs_sagemaker_lp), um zu erfahren, wie Sie mit der Hyperparameteroptimierung interagieren. Sie können die auf dieser Seite beschriebenen Optimierungsstrategien mit dem [HyperParameterTuningJobConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HyperParameterTuningJobConfig.html)und [HyperbandStrategyConfig](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_HyperbandStrategyConfig.html) APIsverwenden.

**Anmerkung**  
Da der Algorithmus selbst stochastisch ist, konvergiert das Modell zur Abstimmung der Hyperparameter möglicherweise nicht auf die beste Antwort. Dies kann auch dann der Fall sein, wenn die bestmögliche Kombination von Werten innerhalb der von Ihnen ausgewählten Bereiche liegt.

## Rastersuche
<a name="automatic-tuning-grid-search"></a>

 Wenn Sie die Rastersuche verwenden, wählt die Hyperparameteroptimierung Kombinationen von Werten aus dem Bereich der kategorialen Werte aus, den Sie bei der Erstellung des Jobs angeben. Bei Verwendung der Grid-Suchstrategie werden nur kategoriale Parameter unterstützt. Sie müssen den `MaxNumberOfTrainingJobs`-Parameter nicht angeben. Die Anzahl der durch den Optimierungsjob erstellten Trainingsjobs wird automatisch als Gesamtzahl der möglichen unterschiedlichen kategorialen Kombinationen berechnet. Falls angegeben, `MaxNumberOfTrainingJobs` sollte der Wert von der Gesamtzahl der möglichen unterschiedlichen kategorialen Kombinationen entsprechen.

## Zufallssuche
<a name="automatic-tuning-random-search"></a>

Bei der Verwendung der Zufallssuche wählt die Hyperparameter-Abstimmung eine zufällige Kombination von Hyperparametern aus den Bereichen, die Sie angegeben haben, für jeden gestarteten Trainingsjob aus. Die Wahl der Hyperparameterwerte hängt nicht von den Ergebnissen früherer Trainingsjobs ab. Sie können somit die maximale Anzahl gleichzeitiger Trainingsjobs ausführen, ohne die Leistung der Optimierung zu beeinträchtigen.

Ein Beispiel für ein Notizbuch, das die Zufallssuche verwendet, finden Sie im Notizbuch [Zufallssuche und Hyperparameterskalierung mit SageMaker XGBoost automatischem Modeltuning](https://github.com/aws/amazon-sagemaker-examples-community/blob/215215eb25b40eadaf126d055dbb718a245d7603/training/sagemaker-automatic-model-tuning/hpo_xgboost_random_log.ipynb).

## Bayes'sche Optimierung
<a name="automatic-tuning-bayesian-optimization"></a>

Die Bayes'sche Optimierung behandelt die Abstimmung der Hyperparameter wie ein *[Regressionsproblem](https://docs.aws.amazon.com/glossary/latest/reference/glos-chap.html#[regression])* . Mit einer vorgegebenen Reihe von Eingabefunktionen (den Hyperparametern) optimiert die Hyperparameter-Optimierung ein Modell für die Metrik, die Sie auswählen. Um das Problem einer Regression zu lösen, werden bei der Hyperparameter-Optimierung Vermutungen angestellt, welche Hyperparameter-Kombinationen wahrscheinlich die besten Ergebnisse erzielen. Anschließend werden Trainingsjobs ausgeführt, um diese Werte zu testen. Nach dem Testen eines Satzes von Hyperparametern wird beim Hyperparameter-Tuning mittels Regression der nächste Satz von Hyperparametern zum Testen ausgewählt.

Das Hyperparameter-Tuning verwendet eine Amazon SageMaker AI-Implementierung der Bayesschen Optimierung.

Bei der Auswahl der besten Hyperparameter für den nächsten Trainingsauftrag durch die Hyperparameter-Optimierung werden alle bisher bekannten Fakten zum Problem in Betracht gezogen. Manchmal wird eine Kombination aus Hyperparameter-Werten ausgewählt, die eng an die Kombination angelehnt ist, die den bisher besten Trainingsauftrag geliefert hat, um die Leistung inkrementell zu verbessern. Auf diese Weise können bei der Hyperparameter-Optimierung die besten bisher bekannten Ergebnisse genutzt werden. In anderen Fällen wird eine Reihe von Hyperparameter-Werten mit großem Abstand zu den bisher getesteten Werten ausgewählt. Auf diese Weise kann es den Bereich der Hyperparameterwerte erkunden und versuchen, neue Bereiche zu finden, die noch nicht gut verstanden sind. Diese Abwägung von Erkunden und Nutzen ist bei vielen Machine-Learning-Problemen gängige Praxis.

Weitere Informationen zur Bayes-Optimierung finden Sie hier:

**Grundlegende Informationen zur Bayes-Optimierung**
+ [A Tutorial on Bayesian Optimization of Expensive Cost Functions, with Application to Active User Modeling and Hierarchical Reinforcement Learning (Ein Tutorial zur Bayes-Optimierung teurer Funktionen unter Anwendung von aktiver Benutzermodellierung und hierarchischem Reinforcement Learning)](https://arxiv.org/abs/1012.2599)
+ [Practical Bayesian Optimization of Machine Learning Algorithms (Praktische Bayes-Optimierung von Machine-Learning-Algorithmen)](https://arxiv.org/abs/1206.2944)
+ [Taking the Human Out of the Loop: A Review of Bayesian Optimization (Kein menschliches Eingreifen nötig: Eine Prüfung der Bayes-Optimierung)](https://ieeexplore.ieee.org/document/7352306?reload=true)

**Beschleunigen der Bayes-Optimierung**
+ [Google Vizier: A Service for Black-Box Optimization](https://dl.acm.org/doi/10.1145/3097983.3098043)
+ [Learning Curve Prediction with Bayesian Neural Networks](https://openreview.net/forum?id=S11KBYclx)
+ [Speeding up automatic hyperparameter optimization of deep neural networks by extrapolation of learning curves](https://dl.acm.org/doi/10.5555/2832581.2832731)

**Erweiterte Modellierung und Transferlernen**
+ [Scalable Hyperparameter Transfer Learning](https://papers.nips.cc/paper_files/paper/2018/hash/14c879f3f5d8ed93a09f6090d77c2cc3-Abstract.html)
+ [Bayesian Optimization with Tree-structured Dependencies](http://proceedings.mlr.press/v70/jenatton17a.html)
+ [Bayesian Optimization with Robust Bayesian Neural Networks](https://papers.nips.cc/paper_files/paper/2016/hash/291597a100aadd814d197af4f4bab3a7-Abstract.html)
+ [Scalable Bayesian Optimization Using Deep Neural Networks](http://proceedings.mlr.press/v37/snoek15.pdf)
+ [Input Warping for Bayesian Optimization of Non-stationary Functions](https://arxiv.org/abs/1402.0929)

## Hyperband
<a name="automatic-tuning-hyperband"></a>

Hyperband ist eine auf Multi-Fidelity basierende Optimierungsstrategie, bei der Ressourcen dynamisch neu zugewiesen werden. Hyperband verwendet sowohl Zwischen- als auch Endergebnisse von Trainingsaufgaben, um Epochen gut genutzten Hyperparameterkonfigurationen neu zuzuweisen, und stoppt automatisch diejenigen, die unterdurchschnittlich abschneiden. Es lässt sich auch problemlos skalieren, um viele parallel Trainingsjobs nutzen zu können. Diese Funktionen können die Abstimmung von Hyperparametern im Vergleich zu Strategien zur zufälligen Suche und Bayes-Optimierung erheblich beschleunigen.

Hyperband sollte nur zur Optimierung iterativer Algorithmen verwendet werden, die Ergebnisse auf unterschiedlichen Ressourcenebenen veröffentlichen. Hyperband kann beispielsweise verwendet werden, um ein neuronales Netzwerk für die Bildklassifizierung zu optimieren, das nach jeder Epoche Genauigkeitsmetriken veröffentlicht.

Weitere Informationen über Hyperband finden Sie unter den folgenden Links:
+ [Hyperband: A Novel Bandit-Based Approach to Hyperparameter Optimization ](http://arxiv.org/pdf/1603.06560)
+ [Massiv paralleles Hyperparameter-Tuning](https://liamcli.com/assets/pdf/asha_arxiv.pdf)
+ [BOHB: Robuste und effiziente Hyperparameter-Optimierung im großen Maßstab](http://proceedings.mlr.press/v80/falkner18a/falkner18a.pdf)
+ [Modellgestützte Suche nach asynchronen Hyperparametern und neuronaler Architektur](https://openreview.net/pdf?id=a2rFihIU7i)

### Hyperband mit vorzeitigem Stopp
<a name="automatic-tuning-hyperband-early-stopping"></a>

Trainingsaufträge können vorzeitig abgebrochen werden, wenn es unwahrscheinlich ist, dass sie die objektive Metrik des Hyperparameter-Tuning-Auftrags verbessern. Dies kann dazu beitragen, die Rechenzeit zu reduzieren und eine Überanpassung Ihres Modells zu vermeiden. Hyperband verwendet einen fortschrittlichen internen Mechanismus, um vorzeitiges Stoppen anzuwenden. Der Parameter `TrainingJobEarlyStoppingType` in der `HyperParameterTuningJobConfig` API muss auf `OFF` eingestellt sein, wenn Sie die interne Hyperband-Funktion für frühes Stoppen verwenden.

**Anmerkung**  
Die Hyperparameter-Optimierung verbessert Ihr Modell möglicherweise nicht. Es ist ein fortschrittliches Tool für die Entwicklung von Maschinenlösungen. Es sollte daher als Teil des wissenschaftlichen Entwicklungsprozesses betrachtet werden. 