Обновление AutoML до пакета SDK версии 2
В пакете SDK версии 2 "эксперименты" и "запуски" объединяются в задания.
В пакете SDK версии 1 autoML была в основном настроена и запущена AutoMLConfig
с помощью класса. В пакете SDK версии 2 этот класс был преобразован в AutoML
задание. Хотя существуют некоторые различия в параметрах конфигурации, по большому счету, именование и функциональные возможности сохранены в версии 2.
В этой статье приводится сравнение сценариев в пакете SDK версии 1 и пакете SDK версии 2.
Отправка запуска AutoML
Пакет SDK версии 1. Ниже приведен пример задачи классификации AutoML. Для всего кода ознакомьтесь с нашими примерами репозитория.
# 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 версии 2. Ниже приведен пример задачи классификации AutoML. Для всего кода ознакомьтесь с нашими примерами репозитория.
# 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
Сопоставление ключевых функций в пакете SDK версии 1 и пакете SDK версии 2
Функции пакета SDK версии 1 | Грубое сопоставление в пакете SDK версии 2 |
---|---|
Метод или API в пакете SDK версии 1 (используйте ссылки на документы ref) | Метод или API в пакете SDK версии 2 (используйте ссылки на документы ref) |
Дальнейшие действия
Дополнительные сведения см. в разделе: