Upgrade von AutoML auf SDK v2
Im SDK v2 sind „Experimente“ und „Ausführungen“ in Aufträgen zusammengefasst.
Im SDK v1 wurde AutoML (automatisiertes maschinelles Lernen) in erster Linie mit der AutoMLConfig
-Klasse konfiguriert und ausgeführt. Im SDK v2 wurde diese Klasse in einen AutoML
-Auftrag konvertiert. Obwohl es einige Unterschiede bei den Konfigurationsoptionen gibt, wurde die Benennung und Funktionalität in V2 groß und groß beibehalten.
Dieser Artikel enthält einen Vergleich der Szenarien in SDK v1 und SDK v2.
Übermitteln einer AutoML-Ausführung
SDK v1: Nachstehend finden Sie ein Beispiel einer AutoML-Klassifizierungsaufgabe. Den gesamten Code finden Sie in unserem Repository mit Beispielen.
# Imports import azureml.core from azureml.core.experiment import Experiment from azureml.core.workspace import Workspace from azureml.core.dataset import Dataset from azureml.train.automl import AutoMLConfig from azureml.train.automl.run import AutoMLRun # Load tabular dataset data = "<url_to_data>" dataset = Dataset.Tabular.from_delimited_files(data) training_data, validation_data = dataset.random_split(percentage=0.8, seed=223) label_column_name = "Class" # Configure Auto ML settings automl_settings = { "n_cross_validations": 3, "primary_metric": "average_precision_score_weighted", "enable_early_stopping": True, "max_concurrent_iterations": 2, "experiment_timeout_hours": 0.25, "verbosity": logging.INFO, } # Put together an AutoML job constructor automl_config = AutoMLConfig( task="classification", debug_log="automl_errors.log", compute_target=compute_target, training_data=training_data, label_column_name=label_column_name, **automl_settings, ) # Submit run remote_run = experiment.submit(automl_config, show_output=False) azureml_url = remote_run.get_portal_url() print(azureml_url)
SDK v2: Nachstehend finden Sie ein Beispiel einer AutoML-Klassifizierungsaufgabe. Den gesamten Code finden Sie in unserem Repository mit Beispielen.
# Imports from azure.ai.ml import automl, Input, MLClient from azure.ai.ml.constants import AssetTypes from azure.ai.ml.automl import ( classification, ClassificationPrimaryMetrics, ClassificationModels, ) # Create MLTables for training dataset # Note that AutoML Job can also take in tabular data my_training_data_input = Input( type=AssetTypes.MLTABLE, path="./data/training-mltable-folder" ) # Create the AutoML classification job with the related factory-function. classification_job = automl.classification( compute="<compute_name>", experiment_name="<exp_name?", training_data=my_training_data_input, target_column_name="<name_of_target_column>", primary_metric="accuracy", n_cross_validations=5, enable_model_explainability=True, tags={"my_custom_tag": "My custom value"}, ) # Limits are all optional classification_job.set_limits( timeout_minutes=600, trial_timeout_minutes=20, max_trials=5, max_concurrent_trials = 4, max_cores_per_trial= 1, enable_early_termination=True, ) # Training properties are optional classification_job.set_training( blocked_training_algorithms=["LogisticRegression"], enable_onnx_compatible_models=True, ) # Submit the AutoML job returned_job = ml_client.jobs.create_or_update(classification_job) returned_job
Zuordnung der wichtigsten Funktionen in SDK v1 und SDK v2
Funktionalität im SDK v1 | Grobe Zuordnung in SDK v2 |
---|---|
Methode/API im SDK v1 (mit Links zur Referenzdokumentation) | Methode/API im SDK v2 (mit Links zur Referenzdokumentation) |
Nächste Schritte
Weitere Informationen finden Sie unter