AutoMLConfig Klasse

Stellt die Konfiguration zum Übermitteln eines Experiments für automatisiertes maschinelles Lernen in Azure Machine Learning dar.

Dieses Configuration-Objekt enthält und speichert die Parameter zum Konfigurieren der Experimentausführung sowie die Trainingsdaten, die zur Laufzeit verwendet werden sollen. Einen Leitfaden zum Auswählen der Einstellungen finden Sie unter https://aka.ms/AutoMLConfig.

Erstellen Sie eine AutoMLConfig.

Vererbung
builtins.object
AutoMLConfig

Konstruktor

AutoMLConfig(task: str, path: str | None = None, iterations: int | None = None, primary_metric: str | None = None, positive_label: Any | None = None, compute_target: Any | None = None, spark_context: Any | None = None, X: Any | None = None, y: Any | None = None, sample_weight: Any | None = None, X_valid: Any | None = None, y_valid: Any | None = None, sample_weight_valid: Any | None = None, cv_splits_indices: List[List[Any]] | None = None, validation_size: float | None = None, n_cross_validations: int | str | None = None, y_min: float | None = None, y_max: float | None = None, num_classes: int | None = None, featurization: str | FeaturizationConfig = 'auto', max_cores_per_iteration: int = 1, max_concurrent_iterations: int = 1, iteration_timeout_minutes: int | None = None, mem_in_mb: int | None = None, enforce_time_on_windows: bool = True, experiment_timeout_hours: float | None = None, experiment_exit_score: float | None = None, enable_early_stopping: bool = True, blocked_models: List[str] | None = None, blacklist_models: List[str] | None = None, exclude_nan_labels: bool = True, verbosity: int = 20, enable_tf: bool = False, model_explainability: bool = True, allowed_models: List[str] | None = None, whitelist_models: List[str] | None = None, enable_onnx_compatible_models: bool = False, enable_voting_ensemble: bool = True, enable_stack_ensemble: bool | None = None, debug_log: str = 'automl.log', training_data: Any | None = None, validation_data: Any | None = None, test_data: Any | None = None, test_size: float | None = None, label_column_name: str | None = None, weight_column_name: str | None = None, cv_split_column_names: List[str] | None = None, enable_local_managed: bool = False, enable_dnn: bool | None = None, forecasting_parameters: ForecastingParameters | None = None, **kwargs: Any)

Parameter

Name Beschreibung
task
Erforderlich
str oder Tasks

Der Typ der auszuführenden Aufgabe. Mögliche Werte sind „Klassifizierung“, „Regression“ oder „Vorhersage“, abhängig vom Typ des zu lösenden Problems des automatisierten maschinellen Lernens.

path
Erforderlich
str

Der vollständige Pfad zum Azure Machine Learning-Projektordner. Wenn keine Angabe erfolgt ist, wird standardmäßig das aktuelle Verzeichnis oder „.“ verwendet.

iterations
Erforderlich
int

Die Gesamtzahl der verschiedenen Algorithmus- und Parameterkombinationen, die während eines automatisierten ML-Experiments getestet werden sollen. Wenn keine Angabe erfolgt ist, lautet der Standardwert 1000 Iterationen.

primary_metric
Erforderlich
str oder Metric

Die Metrik, die vom automatisierten maschinellen Lernen für die Modellauswahl optimiert wird. Beim automatisierten maschinellen Lernen werden mehr Metriken erfasst als optimiert werden können. Sie können mit get_primary_metrics eine Liste gültiger Metriken für eine bestimmte Aufgabe abrufen. Weitere Informationen zur Berechnung von Metriken finden Sie unter https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#primary-metric.

Wenn keine Angabe erfolgt ist, wird „Genauigkeit“ für Klassifizierungsaufgaben, „Wurzel der mittleren Fehlerquadratsumme, normalisiert,“ für Vorhersage- und Regressionsaufgaben, „Genauigkeit“ für die Bildklassifizierung und die mehrfach beschriftete Bildklassifizierung und „mittlere durchschnittliche Genauigkeit“ für die Bildobjekterkennung verwendet.

positive_label
Erforderlich
Any

Die positive Klassenbezeichnung, die vom automatisierten maschinellen Lernen zum Berechnen von binären Metriken verwendet wird. Binäre Metriken werden in zwei Bedingungen für Klassifizierungsaufgaben berechnet:

  1. Die Bezeichnungsspalte besteht aus zwei Klassen, die binäre Klassifizierungsaufgaben angeben. Automatisiertes ML verwendet die angegebene positive Klasse, wenn positive_label übergeben wird, andernfalls wird eine positive Klasse basierend auf einem bezeichnungscodierten Wert ausgewählt.
  2. Mehrklassige Klassifizierungsaufgabe mit der Angabe von positive_label

Weitere Informationen zur Klassifizierung finden Sie unter Metriken für Klassifizierungsszenarios.

compute_target
Erforderlich

Das Azure Machine Learning-Computeziel, auf dem das Experiment für automatisiertes maschinelles Lernen ausgeführt werden soll. Weitere Informationen zu Computezielen finden Sie unter https://docs.microsoft.com/en-us/azure/machine-learning/concept-automated-ml#local-remote.

spark_context
Erforderlich
<xref:SparkContext>

Der Spark-Kontext. Nur anwendbar bei Verwendung in einer Azure Databricks-/Spark-Umgebung.

X
Erforderlich

Die Trainingsfeatures, die beim Anpassen von Pipelines während eines Experiments verwendet werden sollen. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen training_data und label_column_name.

y
Erforderlich

Die Trainingsbezeichnungen, die beim Anpassen von Pipelines während eines Experiments verwendet werden sollen. Dies ist der Wert, den Ihr Modell vorhersagt. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen training_data und label_column_name.

sample_weight
Erforderlich

Die Gewichtung, die jedes Trainingsbeispiel erhalten soll, wenn entsprechende Pipelines ausgeführt werden; jede Zeile sollte einer Zeile in X- und Y-Daten entsprechen.

Geben Sie diesen Parameter bei der Angabe von X an. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen training_data und weight_column_name.

X_valid
Erforderlich

Validierungsfeatures, die beim Anpassen von Pipelines während eines Experiments verwendet werden sollen.

Wenn eine Angabe erfolgt, muss y_valid oder sample_weight_valid ebenfalls angegeben werden. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen validation_data und label_column_name.

y_valid
Erforderlich

Validierungsbezeichnungen, die beim Anpassen von Pipelines während eines Experiments verwendet werden sollen.

Sowohl X_valid als auch y_valid müssen zusammen angegeben werden. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen validation_data und label_column_name.

sample_weight_valid
Erforderlich

Die Gewichtung, die jedes Validierungsbeispiel erhalten soll, wenn die Bewertungspipelines ausgeführt werden; jede Zeile sollte einer Zeile in X- und Y-Daten entsprechen.

Geben Sie diesen Parameter bei der Angabe von X_valid an. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen validation_data und weight_column_name.

cv_splits_indices
Erforderlich

Indizes, die angeben, wo Trainingsdaten für die Kreuzvalidierung aufgeteilt werden sollen. Jede Zeile ist ein separater Kreuzfold. Stellen Sie innerhalb jedes Kreuzfolds zwei NumPy-Arrays bereit: das erste mit den Indizes für Stichproben, die für Trainingsdaten verwendet werden sollen, und das zweite mit den Indizes, die für Validierungsdaten verwendet werden sollen. Also [[t1, v1], [t2, v2], ...], wobei „t1“ die Trainingsindizes für den ersten Kreuzfold und „v1“ die Validierungsindizes für den ersten Kreuzfold sind.

Um vorhandene Daten als Validierungsdaten anzugeben, verwenden Sie validation_data. Damit automatisiertes ML Validierungsdaten stattdessen aus Trainingsdaten extrahieren kann, geben Sie entweder n_cross_validations oder validation_size an. Verwenden Sie cv_split_column_names, wenn Sie in training_data über Kreuzvalidierungsspalten verfügen.

validation_size
Erforderlich

Der Teil der Daten, der für die Validierung zurückbehalten werden soll, wenn keine Benutzervalidierungsdaten angegeben werden. Dieser Wert sollte zwischen 0,0 und 1,0 (nicht inklusiv) liegen.

Geben Sie validation_data an, um Validierungsdaten anzugeben, andernfalls legen Sie n_cross_validations oder validation_size fest, um Validierungsdaten aus den angegebenen Trainingsdaten zu extrahieren. Verwenden Sie für einen benutzerdefinierten Kreuzvalidierungsfold cv_split_column_names.

Weitere Informationen finden Sie unter Konfigurieren von Datenaufteilung und Kreuzvalidierung im automatisierten maschinellen Lernen.

n_cross_validations
Erforderlich
int

Gibt an, wie viele Kreuzvalidierungen durchzuführen sind, wenn keine Benutzervalidierungsdaten angegeben sind.

Geben Sie validation_data an, um Validierungsdaten anzugeben, andernfalls legen Sie n_cross_validations oder validation_size fest, um Validierungsdaten aus den angegebenen Trainingsdaten zu extrahieren. Verwenden Sie für einen benutzerdefinierten Kreuzvalidierungsfold cv_split_column_names.

Weitere Informationen finden Sie unter Konfigurieren von Datenaufteilung und Kreuzvalidierung im automatisierten maschinellen Lernen.

y_min
Erforderlich

Mindestwert für „y“ für ein Regressionsexperiment. Die Kombination von y_min und y_max wird verwendet, um Testsatzmetriken basierend auf dem Eingabedatenbereich zu normalisieren. Diese Einstellung wird als veraltet eingestuft. Stattdessen wird dieser Wert anhand der Daten berechnet.

y_max
Erforderlich

Maximalwert für „y“ für ein Regressionsexperiment. Die Kombination von y_min und y_max wird verwendet, um Testsatzmetriken basierend auf dem Eingabedatenbereich zu normalisieren. Diese Einstellung wird als veraltet eingestuft. Stattdessen wird dieser Wert anhand der Daten berechnet.

num_classes
Erforderlich
int

Die Anzahl der Klassen in den Bezeichnungsdaten für ein Klassifizierungsexperiment. Diese Einstellung wird als veraltet eingestuft. Stattdessen wird dieser Wert anhand der Daten berechnet.

featurization
Erforderlich

„auto“, „off“ oder „FeaturizationConfig“: Indikator, ob der Featurisierungsschritt automatisch ausgeführt werden soll oder ob eine angepasste Featurisierung verwendet werden soll. Hinweis: Wenn die Eingabedaten nur eine geringe Dichte besitzen, kann die Featurisierung nicht aktiviert werden.

Der Spaltentyp wird automatisch erkannt. Basierend auf dem erkannten Spaltentyp erfolgt die Vorverarbeitung/Featurisierung wie folgt:

  • Kategorisch: Zielcodierung, One-Hot-Codierung, Verwerfen von Kategorien mit hoher Kardinalität, Imputieren von fehlenden Werten.

  • Numerisch: Imputieren von fehlenden Werten, Clusterabstand, Gewichtung von Beweisen.

  • DateTime: Mehrere Features wie Tag, Sekunden, Minuten, Stunden usw.

  • Text: Bag-of-Words, vortrainierte Worteinbettung, Textzielcodierung.

Weitere Informationen finden Sie im Artikel Einrichten von AutoML-Training mit Python.

Geben Sie zum Anpassen des Featurisierungsschritts ein FeaturizationConfig-Objekt an. Die benutzerdefinierte Featurisierung unterstützt derzeit das Blockieren eines Satzes von Transformatoren, das Aktualisieren des Spaltenzwecks, das Bearbeiten von Transformatorparametern und das Verwerfen von Spalten. Weitere Informationen finden Sie unter Anpassen von Featureentwicklung.

Hinweis: Timeseries-Features werden separat behandelt, wenn der Aufgabentyp unabhängig von diesem Parameter auf Vorhersagen festgelegt ist.

max_cores_per_iteration
Erforderlich
int

Die maximale Anzahl von Threads, die für eine bestimmte Trainingsiteration verwendet werden sollen. Gültige Werte:

  • Größer als 1 und kleiner oder gleich der maximalen Anzahl von Kernen auf dem Computeziel.

  • Gleich -1, was bedeutet, dass alle möglichen Kerne pro Iteration pro untergeordneter Ausführung verwendet werden.

  • Gleich 1, der Standardwert.

max_concurrent_iterations
Erforderlich
int

Steht für die maximale Anzahl von Iterationen, die parallel ausgeführt werden. Der Standardwert ist 1.

  • AmlCompute-Cluster unterstützen eine Iteration, die pro Knoten ausgeführt wird. Für mehrere übergeordnete Ausführungen von AutoML-Experimenten, die auf einem einzelnen AmlCompute-Cluster parallel ausgeführt werden, sollte die Summe der max_concurrent_iterations-Werte für alle Experimente kleiner oder gleich der maximalen Anzahl an Knoten sein. Andernfalls werden Ausführungen in die Warteschlange gestellt, bis Knoten verfügbar sind.

  • DSVM unterstützt mehrere Iterationen pro Knoten. max_concurrent_iterations sollte kleiner oder gleich der Anzahl der Kerne auf der DSVM sein. Für mehrere Experimente, die auf einer einzelnen DSVM parallel ausgeführt werden, sollte die Summe der max_concurrent_iterations-Werte für alle Experimente kleiner oder gleich der maximalen Anzahl an Knoten sein.

  • Databricks: max_concurrent_iterations sollte kleiner oder gleich der Anzahl der Workerknoten in Databricks sein.

max_concurrent_iterations gilt nicht für lokale Ausführungen. Der Name dieses Parameters lautete früher concurrent_iterations.

iteration_timeout_minutes
Erforderlich
int

Maximale Dauer in Minuten für jede Ausführung einer Iteration, bevor sie beendet wird. Wenn keine Angabe erfolgt ist, wird als Wert „1 Monat“ oder „43.200 Minuten“ verwendet.

mem_in_mb
Erforderlich
int

Maximale Speicherauslastung für jede Ausführung einer Iteration, bevor sie beendet wird. Wenn keine Angabe erfolgt ist, wird als Wert „1 PB“ oder „1073741824 MB“ verwendet.

enforce_time_on_windows
Erforderlich

Gibt an, ob ein Zeitlimit für das Modelltraining bei jeder Iteration unter Windows erzwungen werden soll. Der Standardwert ist True. Wenn die Ausführung über eine Python-Skriptdatei (.py) erfolgt, lesen Sie in der Dokumentation nach, wie Sie Ressourceneinschränkungen unter Windows zulassen.

experiment_timeout_hours
Erforderlich

Maximal zulässige Dauer für alle Iterationen (in Stunden). Danach wird das Experiment beendet. Kann ein Dezimalwert wie 0,25 sein, der 15 Minuten darstellt. Wenn keine Angabe erfolgt, beträgt das Standardtimeout für Experimente 6 Tage. Wenn Sie ein Timeout angeben möchten, das kleiner als oder gleich 1 Stunde ist, stellen Sie sicher, dass die Größe Ihres Datasets nicht größer als 10.000.000 (Zeilen mal Spalte) ist, andernfalls tritt ein Fehler auf.

experiment_exit_score
Erforderlich

Der Zielscore für das Experiment. Das Experiment wird beendet, nachdem dieser Score erreicht wurde. Wenn keine Angabe erfolgt (keine Kriterien), wird das Experiment ausgeführt, bis kein weiterer Fortschritt bei der primären Metrik erzielt wird. Weitere Informationen zu Beendigungskriterien finden Sie in diesem Artikel.

enable_early_stopping
Erforderlich

Gibt an, ob die vorzeitige Beendigung aktiviert wird, wenn sich der Score auf kurze Sicht nicht verbessert. Der Standardwert ist True.

Logik zum frühzeitigen Beenden:

  • Kein frühzeitiges Beenden für die ersten 20 Iterationen (Orientierungspunkte).

  • Das Fenster für das frühzeitige Beenden startet bei der 21. Iteration und sucht nach early_stopping_n_iters-Iterationen

    (derzeit auf 10 festgelegt). Dies bedeutet, dass die erste Iteration, bei der das Beenden erfolgen kann, die 31. ist.

  • Automatisiertes ML plant noch 2 Ensemble-Iterationen NACH dem frühzeitigen Beenden, was möglicherweise zu

    höheren Scores führt.

  • Frühzeitiges Beenden wird ausgelöst, wenn der berechnete absolute Wert des besten Scores mit dem für vergangene

    early_stopping_n_iters-Iterationen identisch ist, das heißt, wenn es keine Verbesserung beim Score für early_stopping_n_iters-Iterationen gibt.

blocked_models
Erforderlich
list(str) oder list(Classification) <xref:for classification task> oder list(Regression) <xref:for regression task> oder list(Forecasting) <xref:for forecasting task>

Eine Liste von Algorithmen, die für ein Experiment ignoriert werden können. Wenn enable_tf „False“ ist, sind TensorFlow-Modelle in blocked_models enthalten.

blacklist_models
Erforderlich
list(str) oder list(Classification) <xref:for classification task> oder list(Regression) <xref:for regression task> oder list(Forecasting) <xref:for forecasting task>

Als veraltet eingestufter Parameter, verwenden Sie stattdessen blocked_models.

exclude_nan_labels
Erforderlich

Gibt an, ob Zeilen mit NaN-Werten in der Bezeichnung ausgeschlossen werden sollen. Der Standardwert ist True.

verbosity
Erforderlich
int

Der Ausführlichkeitsgrad für das Schreiben in die Protokolldatei. Der Standardwert lautet „INFO“ oder „20“. Zulässige Werte werden in der Python-Protokollierungsbibliothek definiert.

enable_tf
Erforderlich

Als veraltet eingestufter Parameter zum Aktivieren/Deaktivieren von Tensorflow-Algorithmen. Die Standardeinstellung lautet „false“.

model_explainability
Erforderlich

Gibt an, ob die Erläuterung des besten AutoML-Modells am Ende aller AutoML-Trainingsiterationen aktiviert werden soll. Der Standardwert ist True. Weitere Informationen finden Sie unter Interpretierbarkeit: Modellerklärungen beim automatisierten maschinellen Lernen.

allowed_models
Erforderlich
list(str) oder list(Classification) <xref:for classification task> oder list(Regression) <xref:for regression task> oder list(Forecasting) <xref:for forecasting task>

Eine Liste der Modellnamen, in denen nach einem Experiment gesucht werden soll. Wenn keine Angabe erfolgt, werden alle für die Aufgabe unterstützten Modelle verwendet, mit Ausnahme aller in blocked_models angegebenen Modelle oder der als veraltet eingestuften TensorFlow-Modelle. Die unterstützten Modelle für jeden Aufgabentyp werden in der SupportedModels-Klasse beschrieben.

whitelist_models
Erforderlich
list(str) oder list(Classification) <xref:for classification task> oder list(Regression) <xref:for regression task> oder list(Forecasting) <xref:for forecasting task>

Als veraltet eingestufter Parameter, verwenden Sie stattdessen allowed_models.

enable_onnx_compatible_models
Erforderlich

Gibt an, ob das Erzwingen der ONNX-kompatiblen Modelle aktiviert oder deaktiviert werden soll. Die Standardeinstellung lautet „false“. Weitere Informationen zu Open Neural Network Exchange (ONNX) und Azure Machine Learning finden Sie in diesem Artikel.

forecasting_parameters
Erforderlich

Ein ForecastingParameters-Objekt, das alle vorhersagespezifischen Parameter enthält.

time_column_name
Erforderlich
str

Der Name der Zeitspalte. Dieser Parameter ist bei Vorhersage erforderlich, um die datetime-Spalte in den Eingabedaten anzugeben, die zum Erstellen der Zeitreihe sowie zum Ableiten des Intervalls verwendet wird. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

max_horizon
Erforderlich
int

Der gewünschte maximale Prognosehorizont in Einheiten der Zeitreihenhäufigkeit. Der Standardwert ist 1.

Die Einheiten basieren auf dem Zeitintervall Ihrer Trainingsdaten (z. B. monatlich oder wöchentlich), die vorhergesagt werden sollen. Bei Vorhersageaufgaben ist dieser Parameter erforderlich. Weitere Informationen zum Festlegen von Vorhersageparametern finden Sie unter Automatisches Trainieren eines Modells für die Zeitreihenprognose. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

grain_column_names
Erforderlich
str oder list(str)

Die Namen von Spalten, die zum Gruppieren einer Zeitreihe verwendet werden. Dieser Parameter kann zum Erstellen mehrerer Reihen verwendet werden. Ohne definierte Granularität wird bei dem Dataset von einer einzelnen Zeitreihe ausgegangen. Dieser Parameter wird bei der Aufgabentypvorhersage verwendet. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

target_lags
Erforderlich
int oder list(int)

Die Anzahl vergangener Zeiträume, um die die Zielspalte verzögert werden soll. Der Standardwert ist 1. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

Bei Vorhersagen stellt dieser Parameter die Anzahl von Zeilen dar, um die die Zielwerte basierend auf der Häufigkeit der Daten verzögert werden sollen. Dies wird als eine Liste oder als einzelner Integer dargestellt. Die Verzögerung sollte verwendet werden, wenn die Beziehung zwischen den unabhängigen Variablen und der abhängigen Variable standardmäßig nicht übereinstimmt oder korreliert. Wenn Sie beispielsweise versuchen, die Nachfrage nach einem Produkt vorherzusagen, hängt die Nachfrage in einem Monat möglicherweise vom Preis für bestimmte Produkte vor 3 Monaten ab. In diesem Beispiel möchten Sie möglicherweise den Zielwert (Nachfrage) um 3 Monate negativ verzögern, sodass das Modell mit der richtigen Beziehung trainiert wird. Weitere Informationen finden Sie unter Automatisches Trainieren eines Modells für die Zeitreihenprognose.

feature_lags
Erforderlich
str

Flag zum Generieren von Verzögerungen für numerische Funktionen. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

target_rolling_window_size
Erforderlich
int

Die Anzahl vergangener Zeiträume, die zum Erstellen eines Durchschnittswerts für das rollierende Fenster der Zielspalte verwendet werden. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

Bei Vorhersagen stellt dieser Parameter n historische Zeiträume zum Generieren von vorhergesagten Werten dar, <= Größe des Trainingssatzes. Wenn nicht angegeben, ist n die vollständige Trainingsmenge. Geben Sie diesen Parameter an, wenn Sie beim Trainieren des Modells nur eine bestimmte Menge des Verlaufs beachten möchten.

country_or_region
Erforderlich
str

Das Land/die Region, das bzw. die zum Generieren von Feiertagsfunktionen verwendet wird. Dabei sollte es sich um den aus zwei Buchstaben bestehenden Länder-/Regionscode nach ISO 3166 handeln (z. B. „US“ oder „GB“). Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

use_stl
Erforderlich
str

Konfigurieren Sie die STL-Aufschlüsselung der Zeitreihen-Zielspalte. Für „use_stl“ sind drei Werte möglich: „None“ (Standardwert, keine STL-Aufschlüsselung), „season“ (nur die Saisonkomponente generieren) und „season_trend“ (sowohl Saison- als auch Trendkomponenten generieren). Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

seasonality
Erforderlich
int oder str

Legt die Saisonalität von Zeitreihen fest. Wenn „auto“ festgelegt ist, wird die Saisonalität abgeleitet. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

short_series_handling_configuration
Erforderlich
str

Der Parameter definiert, wie kurze Zeitreihen beim automatisierten maschinellen Lernen verarbeitet werden.

Mögliche Werte: „auto“ (Standardwert), „pad“, „drop“ und „None“.

  • auto: kurze Zeitreihen werden aufgefüllt, wenn keine langen Zeitreihen vorhanden sind, andernfalls werden sie abgelegt.
  • pad: alle kurzen Zeitreihen werden aufgefüllt.
  • drop: alle kurzen Zeitreihen werden abgelegt.
  • None: kurze Zeitreihen werden nicht geändert. Wenn „pad“ festgelegt ist, wird die Tabelle mit den Nullen und leeren Werten für die Regressoren und Zufallswerten für das Ziel aufgefüllt, wobei der Mittelwert dem Median des Zielwerts für die angegebene Zeitreihen-ID entspricht. Wenn der Median größer oder gleich null (0) ist, wird der minimale aufgefüllte Wert durch null abgeschnitten. Eingabe:

Datum

numeric_value

string

Ziel

2020-01-01

23

green

55

Ausgabe, wenn die Mindestanzahl von Werten 4 ist:

Datum

numeric_value

string

Ziel

2019-12-29

0

Nicht verfügbar

55.1

2019-12-30

0

Nicht verfügbar

55.6

2019-12-31

0

Nicht verfügbar

54.5

2020-01-01

23

green

55

Hinweis: Wir haben zwei Parameter, short_series_handling_configuration und Legacy-short_series_handling. Wenn beide Parameter festgelegt sind, werden sie wie in der folgenden Tabelle dargestellt synchronisiert (short_series_handling_configuration und short_series_handling sind aus Gründen der Einfachheit als handling_configuration bzw. handling angegeben).

Handhabung

handling_configuration

resultierende Handhabung

sich ergebende handling_configuration

True

auto

True

auto

True

Pad

True

auto

True

drop

True

auto

True

Keine

False

Keine

False

auto

False

Keine

False

Pad

False

Keine

False

drop

False

Keine

False

Keine

False

Keine

freq
Erforderlich
str oder None

Die Vorhersagehäufigkeit.

Bei Vorhersagen stellt dieser Parameter den Zeitraum dar, für den die Vorhersage erfolgen soll, z. B. täglich, wöchentlich, jährlich usw. Die Vorhersagehäufigkeit ist standardmäßig auf die Dataset-Häufigkeit festgelegt. Sie können sie optional auf einen größeren (aber nicht auf einen kleineren) Wert als die Dataset-Häufigkeit festlegen. Wir aggregieren die Daten und generieren die Ergebnisse mit der Vorhersagehäufigkeit. Für tägliche Daten können Sie die Häufigkeit beispielsweise auf täglich, wöchentlich oder monatlich festlegen, aber nicht auf stündlich. Die Häufigkeit muss ein Pandas-Offset-Alias sein. Weitere Informationen finden Sie in der Pandas-Dokumentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects

target_aggregation_function
Erforderlich
str oder None

Die Funktion zum Aggregieren der Zeitreihen-Zielspalte, um sie an eine benutzerdefinierte Häufigkeit anzupassen. Wenn die target_aggregation_function festgelegt ist, aber nicht der freq-Parameter, wird ein Fehler ausgelöst. Die möglichen Zielaggregationsfunktionen sind „sum“, „max“, „min“ und „mean“.

Freq

target_aggregation_function

Mechanismus zur Korrektur der Datenermäßigkeit

Keine (Standard)

Keine (Standard)

Die Aggregation wird nicht angewendet. Wenn die gültige Häufigkeit nicht bestimmt werden kann, wird der Fehler ausgelöst.

Einige Werte

Keine (Standard)

Die Aggregation wird nicht angewendet. Wenn die Anzahl der Datenpunkte, die mit dem angegebenen Frequenzraster kompatibel sind, kleiner ist, werden diese Punkte um 90 % entfernt, andernfalls wird der Fehler ausgelöst.

Keine (Standard)

Aggregationsfunktion

Der Fehler über fehlende Häufigkeitsparameter wird ausgelöst.

Einige Werte

Aggregationsfunktion

Aggregieren sie mit der bereitgestellten Aggregationsfunktion zur Häufigkeit.

enable_voting_ensemble
Erforderlich

Gibt an, ob die VotingEnsemble-Iteration aktiviert/deaktiviert werden soll. Der Standardwert ist True. Weitere Informationen zu Ensembles finden Sie unter Ensemble-Konfiguration.

enable_stack_ensemble
Erforderlich

Gibt an, ob die StackEnsemble-Iteration aktiviert/deaktiviert werden soll. Der Standardwert ist „None“. Wenn das Flag enable_onnx_compatible_models festgelegt wird, ist die StackEnsemble-Iteration deaktiviert. Analog dazu wird die StackEnsemble-Iteration für Timeseries-Aufgaben standardmäßig deaktiviert, um das Risiko einer Überanpassung aufgrund eines kleinen Trainingssatzes zu vermeiden, der für die Anpassung des Meta-Learners verwendet wird. Weitere Informationen zu Ensembles finden Sie unter Ensemble-Konfiguration.

debug_log
Erforderlich
str

Die Protokolldatei, in die Debuginformationen geschrieben werden sollen. Wenn keine Angabe erfolgt, wird „automl.log“ verwendet.

training_data
Erforderlich

Die Trainingsdaten, die im Experiment verwendet werden sollen. Sie sollte sowohl Trainingsfeatures als auch eine Bezeichnungsspalte (optional eine Spalte mit Stichprobengewichtungen) enthalten. Wenn training_data angegeben wird, muss der Parameter label_column_name ebenfalls angegeben werden.

training_data wurde in Version 1.0.81 eingeführt.

validation_data
Erforderlich

Die Validierungsdaten, die im Experiment verwendet werden sollen. Sie sollte sowohl Trainingsfeatures als auch eine Bezeichnungsspalte (optional eine Spalte mit Stichprobengewichtungen) enthalten. Wenn validation_data angegeben wird, müssen die Parameter training_data und label_column_name angegeben werden.

validation_data wurde in Version 1.0.81 eingeführt. Weitere Informationen finden Sie unter Konfigurieren von Datenaufteilung und Kreuzvalidierung im automatisierten maschinellen Lernen.

test_data
Erforderlich

Das Modelltestfeature, das Testdatasets oder Testdatenaufteilungen verwendet, befindet sich in der Vorschau und kann sich jederzeit ändern. Die Testdaten, die für einen Testlauf verwendet werden sollen, der nach Abschluss des Modelltrainings automatisch gestartet wird. Der Testlauf erhält Vorhersagen mithilfe des besten Modells und berechnet anhand dieser Vorhersagen entsprechende Metriken.

Wenn dieser Parameter oder der Parameter test_size nicht angegeben ist, wird nach Abschluss des Modelltrainings kein Testlauf automatisch ausgeführt. Testdaten sollten sowohl Features als auch Bezeichnungsspalten enthalten. Wenn test_data angegeben wird, muss der Parameter label_column_name angegeben werden.

test_size
Erforderlich

Die Modelltestfunktion, die Testdatasets oder Testdatenaufteilungen verwendet, befindet sich in der Vorschau und kann sich jederzeit ändern. Der Teil der Trainingsdaten, der für Testdaten für einen Testlauf zurückbehalten werden soll, der nach Abschluss des Modelltrainings automatisch gestartet wird. Der Testlauf erhält Vorhersagen mithilfe des besten Modelle und berechnet anhand dieser Vorhersagen entsprechende Metriken.

Dieser Wert sollte zwischen 0,0 und 1,0 (nicht inklusiv) liegen. Wenn test_size zur gleichen Zeit wie validation_sizeangegeben wird, werden die Testdaten von training_data getrennt, bevor die Validierungsdaten getrennt werden. Wenn beispielsweise validation_size=0.1 und test_size=0.1 angegeben werden und die ursprünglichen Trainingsdaten 1000 Zeilen enthalten, enthalten die Testdaten 100 Zeilen, die Validierungsdaten 90 Zeilen und die Trainingsdaten 810 Zeilen.

Für regressionsbasierte Aufgaben werden zufällige Stichproben genommen. Für Klassifizierungsaufgaben werden geschichtete Stichproben genommen. Die Vorhersage unterstützt derzeit nicht die Angabe eines Testdatensatzes mit einer Aufteilung in Training und Test.

Wenn dieser Parameter oder der Parameter test_data nicht angegeben ist, wird nach Abschluss des Modelltrainings kein Testlauf automatisch ausgeführt.

label_column_name
Erforderlich

Der Name der Bezeichnungsspalte. Wenn die Eingabedaten aus einem pandas.DataFrame stammen, der über keine Spaltennamen verfügt, können stattdessen als ganze Zahlen ausgedrückte Spaltenindizes verwendet werden.

Dieser Parameter gilt für die Parameter training_data, validation_data und test_data. label_column_name wurde in Version 1.0.81 eingeführt.

weight_column_name
Erforderlich

Der Name der Spalte mit Stichprobengewichtungen. Das automatisierte maschinelle Lernen unterstützt eine gewichtete Spalte als Eingabe, wodurch Zeilen in den Daten eine höhere oder niedrigere Gewichtung erhalten. Wenn die Eingabedaten aus einem pandas.DataFrame stammen, der über keine Spaltennamen verfügt, können stattdessen als ganze Zahlen ausgedrückte Spaltenindizes verwendet werden.

Dieser Parameter gilt für die Parameter training_data und validation_data. weight_column_names wurde in Version 1.0.81 eingeführt.

cv_split_column_names
Erforderlich

Liste der Namen der Spalten mit benutzerdefinierter Kreuzvalidierungsaufteilung. Jede der CV-Aufteilungsspalten stellt eine CV-Aufteilung dar, wobei jede Zeile mit 1 für Training oder 0 für Validierung markiert ist.

Dieser Parameter gilt für den Parameter training_data für benutzerdefinierte Kreuzvalidierungszwecke. cv_split_column_names wurde in Version 1.6.0 eingeführt.

Verwenden Sie entweder cv_split_column_names oder cv_splits_indices.

Weitere Informationen finden Sie unter Konfigurieren von Datenaufteilung und Kreuzvalidierung im automatisierten maschinellen Lernen.

enable_local_managed
Erforderlich

Deaktivierter Parameter. Lokale verwaltete Ausführungen können derzeit nicht aktiviert werden.

enable_dnn
Erforderlich

Gibt an, ob DNN-basierte Modelle bei der Modellauswahl eingeschlossen werden sollen. Der Standardwert in Init ist „None“. Für DNN-NLP-Aufgaben ist der Standardwert jedoch „True“ und für alle anderen Aufgaben des automatisierten maschinellen Lernens „False“.

task
Erforderlich
str oder Tasks

Der Typ der auszuführenden Aufgabe. Mögliche Werte sind „Klassifizierung“, „Regression“ oder „Vorhersage“, abhängig vom Typ des zu lösenden Problems des automatisierten maschinellen Lernens.

path
Erforderlich
str

Der vollständige Pfad zum Azure Machine Learning-Projektordner. Wenn keine Angabe erfolgt ist, wird standardmäßig das aktuelle Verzeichnis oder „.“ verwendet.

iterations
Erforderlich
int

Die Gesamtzahl der verschiedenen Algorithmus- und Parameterkombinationen, die während eines automatisierten ML-Experiments getestet werden sollen. Wenn keine Angabe erfolgt ist, lautet der Standardwert 1000 Iterationen.

primary_metric
Erforderlich
str oder Metric

Die Metrik, die vom automatisierten maschinellen Lernen für die Modellauswahl optimiert wird. Beim automatisierten maschinellen Lernen werden mehr Metriken erfasst als optimiert werden können. Sie können mit get_primary_metrics eine Liste gültiger Metriken für eine bestimmte Aufgabe abrufen. Weitere Informationen zur Berechnung von Metriken finden Sie unter https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#primary-metric.

Wenn keine Angabe erfolgt ist, wird „Genauigkeit“ für Klassifizierungsaufgaben, „Wurzel der mittleren Fehlerquadratsumme, normalisiert,“ für Vorhersage- und Regressionsaufgaben, „Genauigkeit“ für die Bildklassifizierung und die mehrfach beschriftete Bildklassifizierung und „mittlere durchschnittliche Genauigkeit“ für die Bildobjekterkennung verwendet.

positive_label
Erforderlich
Any

Die positive Klassenbezeichnung, die vom automatisierten maschinellen Lernen zum Berechnen von binären Metriken verwendet wird. Binäre Metriken werden in zwei Bedingungen für Klassifizierungsaufgaben berechnet:

  1. Die Bezeichnungsspalte besteht aus zwei Klassen, die binäre Klassifizierungsaufgaben angeben. Automatisiertes ML verwendet die angegebene positive Klasse, wenn positive_label übergeben wird, andernfalls wird eine positive Klasse basierend auf einem bezeichnungscodierten Wert ausgewählt.
  2. Mehrklassige Klassifizierungsaufgabe mit der Angabe von positive_label

Weitere Informationen zur Klassifizierung finden Sie unter Metriken für Klassifizierungsszenarios.

compute_target
Erforderlich

Das Azure Machine Learning-Computeziel, auf dem das Experiment für automatisiertes maschinelles Lernen ausgeführt werden soll. Weitere Informationen zu Computezielen finden Sie unter https://docs.microsoft.com/azure/machine-learning/how-to-auto-train-remote.

spark_context
Erforderlich
<xref:SparkContext>

Der Spark-Kontext. Nur anwendbar bei Verwendung in einer Azure Databricks-/Spark-Umgebung.

X
Erforderlich

Die Trainingsfeatures, die beim Anpassen von Pipelines während eines Experiments verwendet werden sollen. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen training_data und label_column_name.

y
Erforderlich

Die Trainingsbezeichnungen, die beim Anpassen von Pipelines während eines Experiments verwendet werden sollen. Dies ist der Wert, den Ihr Modell vorhersagt. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen training_data und label_column_name.

sample_weight
Erforderlich

Die Gewichtung, die jedes Trainingsbeispiel erhalten soll, wenn entsprechende Pipelines ausgeführt werden; jede Zeile sollte einer Zeile in X- und Y-Daten entsprechen.

Geben Sie diesen Parameter bei der Angabe von X an. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen training_data und weight_column_name.

X_valid
Erforderlich

Validierungsfeatures, die beim Anpassen von Pipelines während eines Experiments verwendet werden sollen.

Wenn eine Angabe erfolgt, muss y_valid oder sample_weight_valid ebenfalls angegeben werden. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen validation_data und label_column_name.

y_valid
Erforderlich

Validierungsbezeichnungen, die beim Anpassen von Pipelines während eines Experiments verwendet werden sollen.

Sowohl X_valid als auch y_valid müssen zusammen angegeben werden. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen validation_data und label_column_name.

sample_weight_valid
Erforderlich

Die Gewichtung, die jedes Validierungsbeispiel erhalten soll, wenn die Bewertungspipelines ausgeführt werden; jede Zeile sollte einer Zeile in X- und Y-Daten entsprechen.

Geben Sie diesen Parameter bei der Angabe von X_valid an. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen validation_data und weight_column_name.

cv_splits_indices
Erforderlich

Indizes, die angeben, wo Trainingsdaten für die Kreuzvalidierung aufgeteilt werden sollen. Jede Zeile ist ein separater Kreuzfold. Stellen Sie innerhalb jedes Kreuzfolds zwei NumPy-Arrays bereit: das erste mit den Indizes für Stichproben, die für Trainingsdaten verwendet werden sollen, und das zweite mit den Indizes, die für Validierungsdaten verwendet werden sollen. Also [[t1, v1], [t2, v2], ...], wobei „t1“ die Trainingsindizes für den ersten Kreuzfold und „v1“ die Validierungsindizes für den ersten Kreuzfold sind. Diese Option wird unterstützt, wenn Daten als separates Featuredataset und Label-Spalte übergeben werden.

Um vorhandene Daten als Validierungsdaten anzugeben, verwenden Sie validation_data. Damit automatisiertes ML Validierungsdaten stattdessen aus Trainingsdaten extrahieren kann, geben Sie entweder n_cross_validations oder validation_size an. Verwenden Sie cv_split_column_names, wenn Sie in training_data über Kreuzvalidierungsspalten verfügen.

validation_size
Erforderlich

Der Teil der Daten, der für die Validierung zurückbehalten werden soll, wenn keine Benutzervalidierungsdaten angegeben werden. Dieser Wert sollte zwischen 0,0 und 1,0 (nicht inklusiv) liegen.

Geben Sie validation_data an, um Validierungsdaten anzugeben, andernfalls legen Sie n_cross_validations oder validation_size fest, um Validierungsdaten aus den angegebenen Trainingsdaten zu extrahieren. Verwenden Sie für einen benutzerdefinierten Kreuzvalidierungsfold cv_split_column_names.

Weitere Informationen finden Sie unter Konfigurieren von Datenaufteilung und Kreuzvalidierung im automatisierten maschinellen Lernen.

n_cross_validations
Erforderlich
int oder str

Gibt an, wie viele Kreuzvalidierungen durchzuführen sind, wenn keine Benutzervalidierungsdaten angegeben sind.

Geben Sie validation_data an, um Validierungsdaten anzugeben, andernfalls legen Sie n_cross_validations oder validation_size fest, um Validierungsdaten aus den angegebenen Trainingsdaten zu extrahieren. Verwenden Sie für einen benutzerdefinierten Kreuzvalidierungsfold cv_split_column_names.

Weitere Informationen finden Sie unter Konfigurieren von Datenaufteilung und Kreuzvalidierung im automatisierten maschinellen Lernen.

y_min
Erforderlich

Mindestwert für „y“ für ein Regressionsexperiment. Die Kombination von y_min und y_max wird verwendet, um Testsatzmetriken basierend auf dem Eingabedatenbereich zu normalisieren. Diese Einstellung wird als veraltet eingestuft. Stattdessen wird dieser Wert anhand der Daten berechnet.

y_max
Erforderlich

Maximalwert für „y“ für ein Regressionsexperiment. Die Kombination von y_min und y_max wird verwendet, um Testsatzmetriken basierend auf dem Eingabedatenbereich zu normalisieren. Diese Einstellung wird als veraltet eingestuft. Stattdessen wird dieser Wert anhand der Daten berechnet.

num_classes
Erforderlich
int

Die Anzahl der Klassen in den Bezeichnungsdaten für ein Klassifizierungsexperiment. Diese Einstellung wird als veraltet eingestuft. Stattdessen wird dieser Wert anhand der Daten berechnet.

featurization
Erforderlich

„auto“, „off“ oder „FeaturizationConfig“: Indikator, ob der Featurisierungsschritt automatisch ausgeführt werden soll oder ob eine angepasste Featurisierung verwendet werden soll. Hinweis: Wenn die Eingabedaten nur eine geringe Dichte besitzen, kann die Featurisierung nicht aktiviert werden.

Der Spaltentyp wird automatisch erkannt. Basierend auf dem erkannten Spaltentyp erfolgt die Vorverarbeitung/Featurisierung wie folgt:

  • Kategorisch: Zielcodierung, One-Hot-Codierung, Verwerfen von Kategorien mit hoher Kardinalität, Imputieren von fehlenden Werten.

  • Numerisch: Imputieren von fehlenden Werten, Clusterabstand, Gewichtung von Beweisen.

  • DateTime: Mehrere Features wie Tag, Sekunden, Minuten, Stunden usw.

  • Text: Bag-of-Words, vortrainierte Worteinbettung, Textzielcodierung.

Weitere Informationen finden Sie im Artikel Einrichten von AutoML-Training mit Python.

Geben Sie zum Anpassen des Featurisierungsschritts ein FeaturizationConfig-Objekt an. Die benutzerdefinierte Featurisierung unterstützt derzeit das Blockieren eines Satzes von Transformatoren, das Aktualisieren des Spaltenzwecks, das Bearbeiten von Transformatorparametern und das Verwerfen von Spalten. Weitere Informationen finden Sie unter Anpassen von Featureentwicklung.

Hinweis: Timeseries-Features werden separat behandelt, wenn der Aufgabentyp unabhängig von diesem Parameter auf Vorhersagen festgelegt ist.

max_cores_per_iteration
Erforderlich
int

Die maximale Anzahl von Threads, die für eine bestimmte Trainingsiteration verwendet werden sollen. Gültige Werte:

  • Größer als 1 und kleiner oder gleich der maximalen Anzahl von Kernen auf dem Computeziel.

  • Gleich -1, was bedeutet, dass alle möglichen Kerne pro Iteration pro untergeordneter Ausführung verwendet werden.

  • Gleich 1, der Standardwert.

max_concurrent_iterations
Erforderlich
int

Steht für die maximale Anzahl von Iterationen, die parallel ausgeführt werden. Der Standardwert ist 1.

  • AmlCompute-Cluster unterstützen eine Iteration, die pro Knoten ausgeführt wird. Wenn mehrere Experimente parallel auf einem einzelnen AmlCompute-Cluster ausgeführt werden, sollte die Summe der max_concurrent_iterations Werte für alle Experimente kleiner oder gleich der maximalen Anzahl von Knoten sein.

  • DSVM unterstützt mehrere Iterationen pro Knoten. max_concurrent_iterations sollte kleiner oder gleich der Anzahl der Kerne auf der DSVM sein. Für mehrere Experimente, die auf einer einzelnen DSVM parallel ausgeführt werden, sollte die Summe der max_concurrent_iterations-Werte für alle Experimente kleiner oder gleich der maximalen Anzahl an Knoten sein.

  • Databricks: max_concurrent_iterations sollte kleiner oder gleich der Anzahl der Workerknoten in Databricks sein.

max_concurrent_iterations gilt nicht für lokale Ausführungen. Der Name dieses Parameters lautete früher concurrent_iterations.

iteration_timeout_minutes
Erforderlich
int

Maximale Dauer in Minuten für jede Ausführung einer Iteration, bevor sie beendet wird. Wenn keine Angabe erfolgt ist, wird als Wert „1 Monat“ oder „43.200 Minuten“ verwendet.

mem_in_mb
Erforderlich
int

Maximale Speicherauslastung für jede Ausführung einer Iteration, bevor sie beendet wird. Wenn keine Angabe erfolgt ist, wird als Wert „1 PB“ oder „1073741824 MB“ verwendet.

enforce_time_on_windows
Erforderlich

Gibt an, ob ein Zeitlimit für das Modelltraining bei jeder Iteration unter Windows erzwungen werden soll. Der Standardwert ist True. Wenn die Ausführung über eine Python-Skriptdatei (.py) erfolgt, lesen Sie in der Dokumentation nach, wie Sie Ressourceneinschränkungen unter Windows zulassen.

experiment_timeout_hours
Erforderlich

Maximal zulässige Dauer für alle Iterationen (in Stunden). Danach wird das Experiment beendet. Kann ein Dezimalwert wie 0,25 sein, der 15 Minuten darstellt. Wenn keine Angabe erfolgt, beträgt das Standardtimeout für Experimente 6 Tage. Wenn Sie ein Timeout angeben möchten, das kleiner als oder gleich 1 Stunde ist, stellen Sie sicher, dass die Größe Ihres Datasets nicht größer als 10.000.000 (Zeilen mal Spalte) ist, andernfalls tritt ein Fehler auf.

experiment_exit_score
Erforderlich

Der Zielscore für das Experiment. Das Experiment wird beendet, nachdem dieser Score erreicht wurde. Wenn keine Angabe erfolgt (keine Kriterien), wird das Experiment ausgeführt, bis kein weiterer Fortschritt bei der primären Metrik erzielt wird. Weitere Informationen zu Exitkriterien finden Sie unter >>article https://docs.microsoft.com/azure/machine-learning/how-to-configure-auto-train#exit-criteria'_.<<

enable_early_stopping
Erforderlich

Gibt an, ob die vorzeitige Beendigung aktiviert wird, wenn sich der Score auf kurze Sicht nicht verbessert. Der Standardwert ist True.

Logik zum frühzeitigen Beenden:

  • Kein frühzeitiges Beenden für die ersten 20 Iterationen (Orientierungspunkte).

  • Das Fenster zum vorzeitigen Beenden beginnt mit der 21. Iteration und sucht nach early_stopping_n_iters Iterationen (derzeit auf 10 festgelegt). Dies bedeutet, dass die erste Iteration, bei der das Beenden erfolgen kann, die 31. ist.

  • AutoML plant nach dem frühen Beenden weiterhin zwei Ensembleiterationen, was zu höheren Bewertungen führen kann.

  • Ein frühzeitiges Beenden wird ausgelöst, wenn der absolute Wert der berechneten besten Bewertung für vergangene early_stopping_n_iters Iterationen identisch ist, d. h. wenn es keine Verbesserung der Bewertung für early_stopping_n_iters Iterationen gibt.

blocked_models
Erforderlich
list(str) oder list(Classification) <xref:for classification task> oder list(Regression) <xref:for regression task> oder list(Forecasting) <xref:for forecasting task>

Eine Liste von Algorithmen, die für ein Experiment ignoriert werden können. Wenn enable_tf „False“ ist, sind TensorFlow-Modelle in blocked_models enthalten.

blacklist_models
Erforderlich
list(str) oder list(Classification) <xref:for classification task> oder list(Regression) <xref:for regression task> oder list(Forecasting) <xref:for forecasting task>

Als veraltet eingestufter Parameter, verwenden Sie stattdessen blocked_models.

exclude_nan_labels
Erforderlich

Gibt an, ob Zeilen mit NaN-Werten in der Bezeichnung ausgeschlossen werden sollen. Der Standardwert ist True.

verbosity
Erforderlich
int

Der Ausführlichkeitsgrad für das Schreiben in die Protokolldatei. Der Standardwert lautet „INFO“ oder „20“. Zulässige Werte werden in der Python-Protokollierungsbibliothek definiert.

enable_tf
Erforderlich

Gibt an, ob TensorFlow-Algorithmen aktiviert/deaktiviert werden sollen. Die Standardeinstellung lautet „false“.

model_explainability
Erforderlich

Gibt an, ob die Erläuterung des besten AutoML-Modells am Ende aller AutoML-Trainingsiterationen aktiviert werden soll. Der Standardwert ist True. Weitere Informationen finden Sie unter Interpretierbarkeit: Modellerklärungen beim automatisierten maschinellen Lernen.

allowed_models
Erforderlich
list(str) oder list(Classification) <xref:for classification task> oder list(Regression) <xref:for regression task> oder list(Forecasting) <xref:for forecasting task>

Eine Liste der Modellnamen, in denen nach einem Experiment gesucht werden soll. Wenn keine Angabe erfolgt, werden alle für die Aufgabe unterstützten Modelle verwendet, mit Ausnahme aller in blocked_models angegebenen Modelle oder der als veraltet eingestuften TensorFlow-Modelle. Die unterstützten Modelle für jeden Aufgabentyp werden in der SupportedModels-Klasse beschrieben.

allowed_models
Erforderlich

Eine Liste der Modellnamen, in denen nach einem Experiment gesucht werden soll. Wenn keine Angabe erfolgt, werden alle für die Aufgabe unterstützten Modelle verwendet, mit Ausnahme aller in blocked_models angegebenen Modelle oder der als veraltet eingestuften TensorFlow-Modelle. Die unterstützten Modelle für jeden Aufgabentyp werden in der SupportedModels-Klasse beschrieben.

whitelist_models
Erforderlich

Als veraltet eingestufter Parameter, verwenden Sie stattdessen allowed_models.

enable_onnx_compatible_models
Erforderlich

Gibt an, ob das Erzwingen der ONNX-kompatiblen Modelle aktiviert oder deaktiviert werden soll. Die Standardeinstellung lautet „false“. Weitere Informationen zu Open Neural Network Exchange (ONNX) und Azure Machine Learning finden Sie in diesem Artikel.

forecasting_parameters
Erforderlich

Ein Objekt, das alle vorhersagenspezifischen Parameter enthält.

time_column_name
Erforderlich
str

Der Name der Zeitspalte. Dieser Parameter ist bei Vorhersage erforderlich, um die datetime-Spalte in den Eingabedaten anzugeben, die zum Erstellen der Zeitreihe sowie zum Ableiten des Intervalls verwendet wird. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

max_horizon
Erforderlich
int

Der gewünschte maximale Prognosehorizont in Einheiten der Zeitreihenhäufigkeit. Der Standardwert ist 1. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

Die Einheiten basieren auf dem Zeitintervall Ihrer Trainingsdaten (z. B. monatlich oder wöchentlich), die vorhergesagt werden sollen. Bei Vorhersageaufgaben ist dieser Parameter erforderlich. Weitere Informationen zum Festlegen von Vorhersageparametern finden Sie unter Automatisches Trainieren eines Modells für die Zeitreihenprognose.

grain_column_names
Erforderlich
str oder list(str)

Die Namen von Spalten, die zum Gruppieren einer Zeitreihe verwendet werden. Dieser Parameter kann zum Erstellen mehrerer Reihen verwendet werden. Ohne definierte Granularität wird bei dem Dataset von einer einzelnen Zeitreihe ausgegangen. Dieser Parameter wird bei der Aufgabentypvorhersage verwendet. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

target_lags
Erforderlich
int oder list(int)

Die Anzahl vergangener Zeiträume, um die die Zielspalte verzögert werden soll. Der Standardwert ist 1. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

Bei Vorhersagen stellt dieser Parameter die Anzahl von Zeilen dar, um die die Zielwerte basierend auf der Häufigkeit der Daten verzögert werden sollen. Dies wird als eine Liste oder als einzelner Integer dargestellt. Die Verzögerung sollte verwendet werden, wenn die Beziehung zwischen den unabhängigen Variablen und der abhängigen Variable standardmäßig nicht übereinstimmt oder korreliert. Wenn Sie beispielsweise versuchen, die Nachfrage nach einem Produkt vorherzusagen, hängt die Nachfrage in einem Monat möglicherweise vom Preis für bestimmte Produkte vor 3 Monaten ab. In diesem Beispiel möchten Sie möglicherweise den Zielwert (Nachfrage) um 3 Monate negativ verzögern, sodass das Modell mit der richtigen Beziehung trainiert wird. Weitere Informationen finden Sie unter Automatisches Trainieren eines Modells für die Zeitreihenprognose.

feature_lags
Erforderlich
str

Flag zum Generieren von Verzögerungen für numerische Funktionen. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

target_rolling_window_size
Erforderlich
int

Die Anzahl vergangener Zeiträume, die zum Erstellen eines Durchschnittswerts für das rollierende Fenster der Zielspalte verwendet werden. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

Bei Vorhersagen stellt dieser Parameter n historische Zeiträume zum Generieren von vorhergesagten Werten dar, <= Größe des Trainingssatzes. Wenn nicht angegeben, ist n die vollständige Trainingsmenge. Geben Sie diesen Parameter an, wenn Sie beim Trainieren des Modells nur eine bestimmte Menge des Verlaufs beachten möchten.

country_or_region
Erforderlich
str

Das Land/die Region, das bzw. die zum Generieren von Feiertagfeatures verwendet wird. Dabei sollte es sich um den aus zwei Buchstaben bestehenden Länder-/Regionscode nach ISO 3166 handeln (z. B. „US“ oder „GB“). Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

use_stl
Erforderlich
str

Konfigurieren Sie die STL-Aufschlüsselung der Zeitreihen-Zielspalte. Für „use_stl“ sind drei Werte möglich: „None“ (Standardwert, keine STL-Aufschlüsselung), „season“ (nur die Saisonkomponente generieren) und „season_trend“ (sowohl Saison- als auch Trendkomponenten generieren). Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

seasonality
Erforderlich
int

Legt die Saisonalität von Zeitreihen fest. Wenn die Saisonalität auf ‚-1‘ festgelegt ist, wird sie abgeleitet. Wenn use_stl nicht festgelegt ist, wird dieser Parameter nicht verwendet. Diese Einstellung wird als veraltet eingestuft. Verwenden Sie stattdessen forecasting_parameters.

short_series_handling_configuration
Erforderlich
str

Der Parameter definiert, wie kurze Zeitreihen beim automatisierten maschinellen Lernen verarbeitet werden.

Mögliche Werte: „auto“ (Standardwert), „pad“, „drop“ und „None“.

  • auto: kurze Zeitreihen werden aufgefüllt, wenn keine langen Zeitreihen vorhanden sind, andernfalls werden sie abgelegt.
  • pad: alle kurzen Zeitreihen werden aufgefüllt.
  • drop: alle kurzen Zeitreihen werden abgelegt.
  • None: kurze Zeitreihen werden nicht geändert. Wenn „pad“ festgelegt ist, wird die Tabelle mit den Nullen und leeren Werten für die Regressoren und Zufallswerten für das Ziel aufgefüllt, wobei der Mittelwert dem Median des Zielwerts für die angegebene Zeitreihen-ID entspricht. Wenn der Median größer oder gleich null (0) ist, wird der minimale aufgefüllte Wert durch null abgeschnitten. Eingabe:

Datum

numeric_value

string

Ziel

2020-01-01

23

green

55

Ausgabe unter der Annahme, dass die minimale Anzahl von Werten vier ist: +————+—————+———-+——-+| Datum | numeric_value | Zeichenfolge | target | +============+===============+==========+========+ | 29.12.2019 | 0 | NA | 55.1 | +————+—————+———-+——–+ | 30.12.2019 | 0 | NA | 55,6 | +————+—————+———-+——–+ | 31.12.2019 | 0 | NA | 54,5 | +————+—————+———-+——–+ | 01.01.2020 | 23 | grün | 55 | +————+—————+———-+——–+

Hinweis: Wir haben zwei Parameter, short_series_handling_configuration und Legacy-short_series_handling. Wenn beide Parameter festgelegt sind, werden sie wie in der folgenden Tabelle dargestellt synchronisiert (short_series_handling_configuration und short_series_handling sind aus Gründen der Einfachheit als handling_configuration bzw. handling angegeben).

Handhabung

handling_configuration

resultierende Handhabung

sich ergebende handling_configuration

True

auto

True

auto

True

Pad

True

auto

True

drop

True

auto

True

Keine

False

Keine

False

auto

False

Keine

False

Pad

False

Keine

False

drop

False

Keine

False

Keine

False

Keine

freq
Erforderlich
str oder None

Die Vorhersagehäufigkeit.

Bei Vorhersagen stellt dieser Parameter den Zeitraum dar, für den die Vorhersage erfolgen soll, z. B. täglich, wöchentlich, jährlich usw. Die Vorhersagehäufigkeit ist standardmäßig auf die Dataset-Häufigkeit festgelegt. Sie können sie optional auf einen größeren (aber nicht auf einen kleineren) Wert als die Dataset-Häufigkeit festlegen. Wir aggregieren die Daten und generieren die Ergebnisse mit der Vorhersagehäufigkeit. Für tägliche Daten können Sie die Häufigkeit beispielsweise auf täglich, wöchentlich oder monatlich festlegen, aber nicht auf stündlich. Die Häufigkeit muss ein Pandas-Offset-Alias sein. Weitere Informationen finden Sie in der Pandas-Dokumentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/timeseries.html#dateoffset-objects

target_aggregation_function
Erforderlich
str oder None

Die Funktion zum Aggregieren der Zeitreihen-Zielspalte, um sie an eine benutzerdefinierte Häufigkeit anzupassen. Wenn die target_aggregation_function festgelegt ist, aber nicht der freq-Parameter, wird ein Fehler ausgelöst. Die möglichen Zielaggregationsfunktionen sind „sum“, „max“, „min“ und „mean“.

Freq

target_aggregation_function

Mechanismus zur Behebung der Datenermäßigkeit

Keine (Standard)

Keine (Standard)

Die Aggregation wird nicht angewendet. Wenn die gültige Häufigkeit nicht festgelegt werden kann, wird der Fehler ausgelöst.

Einige Werte

Keine (Standard)

Die Aggregation wird nicht angewendet. Wenn die Anzahl der Datenpunkte, die dem angegebenen Frequenzraster entsprechen, kleiner ist, werden diese Punkte um 90 % entfernt, andernfalls wird der Fehler ausgelöst.

Keine (Standard)

Aggregationsfunktion

Der Fehler über fehlende Häufigkeitsparameter wird ausgelöst.

Einige Werte

Aggregationsfunktion

Aggregieren zur Häufigkeit mithilfe der bereitgestellten Aggregationsfunktion.

enable_voting_ensemble
Erforderlich

Gibt an, ob die VotingEnsemble-Iteration aktiviert/deaktiviert werden soll. Der Standardwert ist True. Weitere Informationen zu Ensembles finden Sie unter Ensemble-Konfiguration.

enable_stack_ensemble
Erforderlich

Gibt an, ob die StackEnsemble-Iteration aktiviert/deaktiviert werden soll. Der Standardwert ist „None“. Wenn das Flag enable_onnx_compatible_models festgelegt wird, ist die StackEnsemble-Iteration deaktiviert. Analog dazu wird die StackEnsemble-Iteration für Timeseries-Aufgaben standardmäßig deaktiviert, um das Risiko einer Überanpassung aufgrund eines kleinen Trainingssatzes zu vermeiden, der für die Anpassung des Meta-Learners verwendet wird. Weitere Informationen zu Ensembles finden Sie unter Ensemble-Konfiguration.

debug_log
Erforderlich
str

Die Protokolldatei, in die Debuginformationen geschrieben werden sollen. Wenn keine Angabe erfolgt, wird „automl.log“ verwendet.

training_data
Erforderlich

Die Trainingsdaten, die im Experiment verwendet werden sollen. Sie sollte sowohl Trainingsfeatures als auch eine Bezeichnungsspalte (optional eine Spalte mit Stichprobengewichtungen) enthalten. Wenn training_data angegeben wird, muss der Parameter label_column_name ebenfalls angegeben werden.

training_data wurde in Version 1.0.81 eingeführt.

validation_data
Erforderlich

Die Validierungsdaten, die im Experiment verwendet werden sollen. Sie sollte sowohl Trainingsfeatures als auch eine Bezeichnungsspalte (optional eine Spalte mit Stichprobengewichtungen) enthalten. Wenn validation_data angegeben wird, müssen die Parameter training_data und label_column_name angegeben werden.

validation_data wurde in Version 1.0.81 eingeführt. Weitere Informationen finden Sie unter Konfigurieren von Datenaufteilung und Kreuzvalidierung im automatisierten maschinellen Lernen.

test_data
Erforderlich

Das Modelltestfeature, das Testdatasets oder Testdatenaufteilungen verwendet, befindet sich in der Vorschau und kann sich jederzeit ändern. Die Testdaten, die für einen Testlauf verwendet werden sollen, der nach Abschluss des Modelltrainings automatisch gestartet wird. Der Testlauf erhält Vorhersagen mithilfe des besten Modells und berechnet anhand dieser Vorhersagen entsprechende Metriken.

Wenn dieser Parameter oder der Parameter test_size nicht angegeben ist, wird nach Abschluss des Modelltrainings kein Testlauf automatisch ausgeführt. Testdaten sollten sowohl Features als auch Bezeichnungsspalten enthalten. Wenn test_data angegeben wird, muss der Parameter label_column_name angegeben werden.

test_size
Erforderlich

Die Modelltestfunktion, die Testdatasets oder Testdatenaufteilungen verwendet, befindet sich in der Vorschau und kann sich jederzeit ändern. Der Teil der Trainingsdaten, der für Testdaten für einen Testlauf zurückbehalten werden soll, der nach Abschluss des Modelltrainings automatisch gestartet wird. Der Testlauf erhält Vorhersagen mithilfe des besten Modells und berechnet anhand dieser Vorhersagen entsprechende Metriken.

Dieser Wert sollte zwischen 0,0 und 1,0 (nicht inklusiv) liegen. Wenn test_size zur gleichen Zeit wie validation_sizeangegeben wird, werden die Testdaten von training_data getrennt, bevor die Validierungsdaten getrennt werden. Wenn beispielsweise validation_size=0.1 und test_size=0.1 angegeben werden und die ursprünglichen Trainingsdaten 1000 Zeilen enthalten, enthalten die Testdaten 100 Zeilen, die Validierungsdaten 90 Zeilen und die Trainingsdaten 810 Zeilen.

Für regressionsbasierte Aufgaben werden zufällige Stichproben genommen. Für Klassifizierungsaufgaben werden geschichtete Stichproben genommen. Die Vorhersage unterstützt derzeit nicht die Angabe eines Testdatensatzes mit einer Aufteilung in Training und Test.

Wenn dieser Parameter oder der Parameter test_data nicht angegeben ist, wird nach Abschluss des Modelltrainings kein Testlauf automatisch ausgeführt.

label_column_name
Erforderlich

Der Name der Bezeichnungsspalte. Wenn die Eingabedaten aus einem pandas.DataFrame stammen, der über keine Spaltennamen verfügt, können stattdessen als ganze Zahlen ausgedrückte Spaltenindizes verwendet werden.

Dieser Parameter gilt für die Parameter training_data, validation_data und test_data. label_column_name wurde in Version 1.0.81 eingeführt.

weight_column_name
Erforderlich

Der Name der Spalte mit Stichprobengewichtungen. Das automatisierte maschinelle Lernen unterstützt eine gewichtete Spalte als Eingabe, wodurch Zeilen in den Daten eine höhere oder niedrigere Gewichtung erhalten. Wenn die Eingabedaten aus einem pandas.DataFrame stammen, der über keine Spaltennamen verfügt, können stattdessen als ganze Zahlen ausgedrückte Spaltenindizes verwendet werden.

Dieser Parameter gilt für die Parameter training_data und validation_data. weight_column_names wurde in Version 1.0.81 eingeführt.

cv_split_column_names
Erforderlich

Liste der Namen der Spalten mit benutzerdefinierter Kreuzvalidierungsaufteilung. Jede der CV-Aufteilungsspalten stellt eine CV-Aufteilung dar, wobei jede Zeile mit 1 für Training oder 0 für Validierung markiert ist.

Dieser Parameter gilt für den Parameter training_data für benutzerdefinierte Kreuzvalidierungszwecke. cv_split_column_names wurde in Version 1.6.0 eingeführt.

Verwenden Sie entweder cv_split_column_names oder cv_splits_indices.

Weitere Informationen finden Sie unter Konfigurieren von Datenaufteilung und Kreuzvalidierung im automatisierten maschinellen Lernen.

enable_local_managed
Erforderlich

Deaktivierter Parameter. Lokale verwaltete Ausführungen können derzeit nicht aktiviert werden.

enable_dnn
Erforderlich

Gibt an, ob DNN-basierte Modelle bei der Modellauswahl eingeschlossen werden sollen. Der Standardwert in Init ist „None“. Für DNN-NLP-Aufgaben ist der Standardwert jedoch „True“ und für alle anderen Aufgaben des automatisierten maschinellen Lernens „False“.

Hinweise

Der folgende Code zeigt ein grundlegendes Beispiel für das Erstellen eines AutoMLConfig-Objekts und das Übermitteln eines Experiments für die Regression:


   automl_settings = {
       "n_cross_validations": 3,
       "primary_metric": 'r2_score',
       "enable_early_stopping": True,
       "experiment_timeout_hours": 1.0,
       "max_concurrent_iterations": 4,
       "max_cores_per_iteration": -1,
       "verbosity": logging.INFO,
   }

   automl_config = AutoMLConfig(task = 'regression',
                               compute_target = compute_target,
                               training_data = train_data,
                               label_column_name = label,
                               **automl_settings
                               )

   ws = Workspace.from_config()
   experiment = Experiment(ws, "your-experiment-name")
   run = experiment.submit(automl_config, show_output=True)

Ein vollständiges Beispiel finden Sie unter Regression.

Beispiele für die Verwendung von AutoMLConfig für Vorhersagen finden Sie in den folgenden Notebooks:

Beispiele für die Verwendung von AutoMLConfig für alle Aufgabentypen finden Sie in diesen Notebooks zum automatisierten maschinellen Lernen.

Hintergrundinformationen zum automatisierten maschinellen Lernen finden Sie in den folgenden Artikeln:

Weitere Informationen zu den verschiedenen Optionen zum Konfigurieren der Aufteilung von Trainings- und Validierungsdaten und der Kreuzvalidierung für Ihre automatisierten Experimente mit maschinellem Lernen, AutoML, finden Sie unter Konfigurieren von Datenaufteilung und Kreuzvalidierung im automatisierten maschinellen Lernen.

Methoden

as_serializable_dict

Konvertieren Sie das Objekt in ein Wörterbuch.

get_supported_dataset_languages

Ruft unterstützte Sprachen und ihre entsprechenden Sprachcodes in ISO 639-3 ab.

as_serializable_dict

Konvertieren Sie das Objekt in ein Wörterbuch.

as_serializable_dict() -> Dict[str, Any]

get_supported_dataset_languages

Ruft unterstützte Sprachen und ihre entsprechenden Sprachcodes in ISO 639-3 ab.

get_supported_dataset_languages(use_gpu: bool) -> Dict[Any, Any]

Parameter

Name Beschreibung
cls
Erforderlich

Klassenobjekt von AutoMLConfig.

use_gpu
Erforderlich

Boolescher Wert, der angibt, ob GPU-Compute verwendet wird oder nicht.

Gibt zurück

Typ Beschreibung

Wörterbuch im Format {: }. Der Sprachcode entspricht dem ISO 639-3-Standard. Weitere Informationen finden Sie unter https://en.wikipedia.org/wiki/List_of_ISO_639-3_codes.