Einleitung
Bei maschinellem Lernen werden Modelle trainiert, unbekannte Bezeichnungen für neue Daten basierend auf Korrelationen zwischen bekannten Bezeichnungen und Features, die in den Schulungsdaten zu finden sind, vorherzusagen. Je nach verwendeter Algorithmus müssen Sie möglicherweise Hyperparameter angeben, um zu konfigurieren, wie das Modell trainiert wird.
Beispielsweise verwendet der logistischen Regressionsalgorithmus einen Regularisierungsrate-Hyperparameter, um dem Überfitting entgegenzuwirken; und Deep Learning-Techniken für konvolutionale neuronale Netzwerke (CNNs) verwenden Hyperparameter wie die Lernrate, um zu steuern, wie Gewichte während des Trainings angepasst werden, und die Batchgröße, um zu bestimmen, wie viele Datenelemente in jedem Trainingsbatch enthalten sind.
Hinweis
Machine Learning ist ein akademisches Feld mit eigener Terminologie. Data Scientists beziehen sich auf die Werte, die von den Schulungsfeatures als Parameter bestimmt werden, daher ist ein anderer Begriff für Werte erforderlich, die zum Konfigurieren des Trainingsverhaltens verwendet werden, die jedoch nicht von den Schulungsdaten abgeleitet werden – also dem Begriff Hyperparameter.
Die Auswahl von Hyperparameterwerten kann sich erheblich auf das resultierende Modell auswirken, wodurch es wichtig ist, die bestmöglichen Werte für Ihre jeweiligen Daten und Vorhersageleistungsziele auszuwählen.
Optimieren von Hyperparametern
Die Hyperparameteroptimierung wird durch Trainieren der mehreren Modelle erreicht, wobei derselbe Algorithmus und die gleichen Schulungsdaten, aber unterschiedliche Hyperparameterwerte verwendet werden. Das resultierende Modell aus jeder Schulungsausführung wird dann ausgewertet, um die Leistungsmetrik zu bestimmen, für die Sie optimieren möchten (z. B. Genauigkeit), und das leistungsstärkste Modell wird ausgewählt.
In Azure Machine Learning können Sie Hyperparameter optimieren, indem Sie ein Skript als Sweep-Job übermitteln. Ein Sweep-Auftrag führt einen Versuch für jede zu testende Hyperparameterkombination aus. Jede Testversion verwendet ein Schulungsskript mit parametrisierten Hyperparameterwerten, um ein Modell zu trainieren, und protokolliert die vom trainierten Modell erzielte Zielleistungsmetrik.
Lernziele
In diesem Modul lernen Sie, wie man:
- Definieren Sie einen Hyperparameter-Suchbereich.
- Konfigurieren von Hyperparameter-Sampling.
- Auswählen einer Richtlinie für vorzeitige Beendigung.
- Führen Sie einen Sweepauftrag aus.