Как использовать параметры конвейера в AzureML

#azure #azure-machine-learning-studio #azureml #azureml-python-sdk

#azure #azure-machine-learning-studio #azure-служба машинного обучения #azureml-python-sdk

Вопрос:

Я построил конвейер в AzureML Designer и пытаюсь использовать параметры конвейера, но я не могу получить значения этих параметров в модуле скрипта python.

https://docs.microsoft.com/en-us/azure/machine-learning/how-to-create-your-first-pipeline Эта документация содержит раздел под названием «Использовать параметры конвейера для аргументов, которые изменяются во время вывода», но, к сожалению, он пуст.

Я определяю параметры в настройке конвейера, см. Скриншот внизу. Кто-нибудь знает, как использовать параметры при использовании конструктора для построения конвейера?

определение параметров конвейера

Ответ №1:

Вы можете сопоставить выходные данные каждого этапа конвейера с его входными данными. например, учитывая результаты оценки модели, мы должны иметь возможность легко идентифицировать все артефакты (конфигурация оценки модели, спецификация модели, параметры модели, сценарий обучения, данные обучения и т.д.), Относящиеся к указанной оценке.

Конвейеры машинного обучения Azure Ссылка на статью: https://github.com/Azure/MachineLearningNotebooks/blob/4a3f8e7025334ea8c0de0bada69b031ce54c24a0/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-databricks-as-compute-target.ipynb

У нас есть конвейер AMLS, пытающийся параметризовать строку даты, чтобы обработать наш конвейер в контексте старых исторических дат.

Вот код, который мы используем для отправки конвейера

 from azureml.core.authentication import InteractiveLoginAuthentication
import requests
 
auth = InteractiveLoginAuthentication()
aad_token = auth.get_authentication_header()
 
rest_endpoint = published_pipeline.endpoint
 
print("You can perform HTTP POST on URL {} to trigger this pipeline".format(rest_endpoint))
 
# specify the param when running the pipeline
response = requests.post(rest_endpoint, 
                         headers=aad_token, 
                         json={"ExperimentName": "dtpred-Dock2RTEG-EX-param",
                               "RunSource": "SDK",
                               "DataPathAssignments": {"input_datapath": {"DataStoreName": "erpgen2datastore","RelativePath": "teams/PredictiveInsights/DatePrediction/2019/10/10"}},
                               "ParameterAssignments": {"param_inputDate": "2019/10/10"}})
run_id = response.json()["Id"]
print('Submitted pipeline run: ', run_id)
 

Комментарии:

1. Спасибо за ответ Ram-msft. Я знаю, как отправлять параметры в запросе, однако чего я не знаю, так это как использовать их во время выполнения (например, в скрипте python, содержащемся в конвейере).

2. Спасибо, пожалуйста, поделитесь скриптом python, который вы пытаетесь.