Создание прогнозных конвейеров с помощью Студии машинного обучения Azure (классической) и Фабрики данных Azure или Synapse Analytics.

Область применения:Фабрика данных Azure Azure Synapse Analytics

Совет

Попробуйте использовать фабрику данных в Microsoft Fabric, решение для аналитики с одним интерфейсом для предприятий. Microsoft Fabric охватывает все, от перемещения данных до обработки и анализа данных в режиме реального времени, бизнес-аналитики и отчетности. Узнайте, как бесплатно запустить новую пробную версию !

Внимание

Поддержка Машинное обучение Azure Studio (классическая) завершится 31 августа 2024 г. Мы рекомендуем перейти на Машинное обучение Azure по этой дате.

По состоянию на 1 декабря 2021 г. нельзя создавать новые ресурсы Машинное обучение Studio (классический) (рабочая область и план веб-службы). До 31 августа 2024 г. вы можете продолжать использовать существующие эксперименты Машинное обучение Studio (классические) и веб-службы. Дополнительные сведения см. в разделе:

Машинное обучение Studio (классическая) документация не обновляется и может не обновляться в будущем.

Примечание.

Так как создавать ресурсы Студии машинного обучения (классической) после 1 декабря 2021 года невозможно, для выполнения пакетов операций Студии машинного обучения (классической) пользователям рекомендуется использовать Машинное обучение Azure с действием Execute Pipeline Машинного обучения, а не использовать действие Batch Execution.

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

  1. Создание обучающего эксперимента. Это можно сделать с помощью Студии машинного обучения Azure (классическая версия). Студия машинного обучения представляет собой среду совместной визуальной разработки, используемую для обучения и проверки модели прогнозной аналитики с использованием данных для обучения.
  2. Преобразование обучающего эксперимента в прогнозный. Когда модель будет обучена с помощью существующих данных и готова для оценки новых данных, следует подготовить и оптимизировать эксперимент для оценки.
  3. Развертывание эксперимента в виде веб-службы. Оценивающий эксперимент можно опубликовать в виде веб-службы Azure. С помощью конечной точки этой веб-службы вы можете отправлять данные в свою модель и получать из нее результаты прогнозов.

Использование Студии машинного обучения (классической) с Фабрикой данных Azure или Synapse Analytics

Фабрика данных Azure и Synapse Analytics позволяют легко создавать конвейеры, в которых для прогнозной аналитики используется опубликованная веб-служба Студии машинного обучения Azure (классической). С помощью действия Batch Execution в конвейере можно вызывать веб-службу Студии машинного обучения (классической) для создания прогнозов по данным в пакете.

Со временем для прогнозных моделей в оценивающих экспериментах Студии машинного обучения(классической) потребуется переобучение по новым входным наборам данных. Чтобы переобучить модель из конвейера, выполните следующие действия:

  1. Опубликуйте обучающий (не прогнозный) эксперимент в виде веб-службы. Как и в предыдущем сценарии при публикации прогнозного эксперимента в качестве веб-службы, это можно сделать в Студии машинного обучения Azure (классическая версия).
  2. Чтобы обратиться к веб-службе для получения обучающего эксперимента, воспользуйтесь действием "Выполнение пакета" в Студии машинного обучения Azure. По сути, действие "Выполнение пакета" в Студии машинного обучения Azure можно использовать для обращения как к веб-службе обучения, так и к веб-службе оценки.

Когда повторное обучение будет завершено, обновите веб-службу оценки (прогнозный эксперимент, опубликованный в виде веб-службы) на основании обученной заново модели, используя действие "Обновить ресурс" в Студии машинного обучения Azure (классическая версия). Дополнительные сведения см. в статье Updating Azure Machine Learning models using Update Resource Activity (Обновление моделей машинного обучения Azure с помощью действия "Обновить ресурс").

Связанная служба "Студия машинного обучения (классическая версия)"

Создайте связанную службу Студии машинного обучения (классической), чтобы привязать веб-службу Студии машинного обучения (классической). Связанная служба используется действием Batch Execution и действием Update Resource Студии машинного обучения.

{
    "type" : "linkedServices",
    "name": "AzureMLLinkedService",
    "properties": {
        "type": "AzureML",
        "typeProperties": {
            "mlEndpoint": "URL to Azure ML Predictive Web Service",
            "apiKey": {
                "type": "SecureString",
                "value": "api key"
            }
        },
        "connectVia": {
            "referenceName": "<name of Integration Runtime>",
            "type": "IntegrationRuntimeReference"
        }
    }
}

В статье Вычисление поддерживаемых сред с помощью фабрики данных Azure описаны свойства в определении JSON.

Студия машинного обучения поддерживает как классические, так и новые веб-службы для прогнозного эксперимента. В фабрике данных или рабочей области Synapse можно выбрать соответствующую службу. Чтобы получить сведения, необходимые для создания связанной службы Студии машинного обучения, перейдите на сайт https://services.azureml.net, где перечислены все (новые и классические) веб-службы. Щелкните веб-службу, к которой требуется получить доступ, а затем щелкните страницу Использование. Скопируйте первичный ключ для свойства apiKey и запросы пакетной службы для свойства mlEndpoint.

ML Studio (classic) Web Services

Действие Batch Execution Студии машинного обучения (классическая модель)

В приведенном ниже фрагменте кода JSON показано действие "Выполнение пакета" в Студии машинного обучения Azure (классическая версия). Определение действия содержит ссылку на созданную ранее службу, связанную со Студией машинного обучения Azure (классическая версия).

{
    "name": "AzureMLExecutionActivityTemplate",
    "description": "description",
    "type": "AzureMLBatchExecution",
    "linkedServiceName": {
        "referenceName": "AzureMLLinkedService",
        "type": "LinkedServiceReference"
    },
    "typeProperties": {
        "webServiceInputs": {
            "<web service input name 1>": {
                "LinkedServiceName":{
                    "referenceName": "AzureStorageLinkedService1",
                    "type": "LinkedServiceReference"
                },
                "FilePath":"path1"
            },
            "<web service input name 2>": {
                "LinkedServiceName":{
                    "referenceName": "AzureStorageLinkedService1",
                    "type": "LinkedServiceReference"
                },
                "FilePath":"path2"
            }
        },
        "webServiceOutputs": {
            "<web service output name 1>": {
                "LinkedServiceName":{
                    "referenceName": "AzureStorageLinkedService2",
                    "type": "LinkedServiceReference"
                },
                "FilePath":"path3"
            },
            "<web service output name 2>": {
                "LinkedServiceName":{
                    "referenceName": "AzureStorageLinkedService2",
                    "type": "LinkedServiceReference"
                },
                "FilePath":"path4"
            }
        },
        "globalParameters": {
            "<Parameter 1 Name>": "<parameter value>",
            "<parameter 2 name>": "<parameter 2 value>"
        }
    }
}
Свойство Описание: Обязательное поле
name Имя действия в конвейере. Да
описание Описание действия. No
type Для действия U-SQL Data Lake Analytics в качестве типа действия используется AzureMLBatchExecution. Да
linkedServiceName Связанные службы для службы, связанной со Студией машинного обучения Azure (классическая версия). Дополнительные сведения об этой связанной службе см. в статье Вычислительные среды, поддерживаемые фабрикой данных Azure. Да
webServiceInputs Пары "ключ-значение", сопоставляющие имена входных данных веб-службы Студии машинного обучения Azure (классическая версия). Ключ должен соответствовать входным параметрам, определенным в опубликованной веб-службе Студии машинного обучения Azure (классическая версия). Значение — это пара свойств связанных служб хранилища Azure и FilePath, указывающих на расположения входных больших двоичных объектов. No
webServiceOutputs Пары "ключ-значение", сопоставляющие имена выходных данных веб-службы Студии машинного обучения Azure (классическая версия). Ключ должен соответствовать параметрам вывода, определенным в опубликованной веб-службе Студии машинного обучения Azure (классическая версия). Значением является пара свойств связанных служб хранилища Azure и FilePath, указывающих на расположения выходных больших двоичных объектов. No
globalParameters Пары "ключ-значение", которые необходимо передать в конечную точку службы пакетного выполнения Студии машинного обучения Azure (классическая версия). Ключ должен соответствовать именам параметров веб-службы, определенным в опубликованной веб-службе Студии машинного обучения Azure (классическая версия). Значения передаются в свойстве GlobalParameters запроса пакетного выполнения Студии машинного обучения Azure (классическая версия). No

Сценарий 1. Эксперименты с вводом-выводом веб-службы, ссылающейся на данные в хранилище BLOB-объектов

В этом сценарии веб-служба Студии машинного обучения делает прогнозы с использованием данных из файла в Хранилище BLOB-объектов Azure и сохраняет результаты прогнозирования в Хранилище BLOB-объектов. Следующий код JSON определяет конвейер действием AzureMLBatchExecution. Входные и выходные данные в хранилище BLOB-объектов Azure указываются с помощью пары LinkedName и FilePath. В примере связанной службы входные и выходные данные не совпадают. Чтобы служба могла извлечь нужные файлы и отправить их в веб-службу Студии машинного обучения, можно использовать разные связанные службы для входных и выходных данных.

Внимание

В эксперименте Студии машинного обучения Azure (классическая версия) порты ввода и вывода веб-службы и глобальные параметры имеют имена по умолчанию ("input1", "input2"), которые можно настроить. Имена, используемые для параметров webServiceInputs, webServiceOutputs и globalParameters, должны точно совпадать с именами в экспериментах. Пример полезных данных запроса можно просмотреть на странице справки по действию "Выполнение пакета" для конечной точки Студии машинного обучения Azure (классическая версия), чтобы проверить ожидаемое сопоставление.

{
    "name": "AzureMLExecutionActivityTemplate",
    "description": "description",
    "type": "AzureMLBatchExecution",
    "linkedServiceName": {
        "referenceName": "AzureMLLinkedService",
        "type": "LinkedServiceReference"
    },
    "typeProperties": {
        "webServiceInputs": {
            "input1": {
                "LinkedServiceName":{
                    "referenceName": "AzureStorageLinkedService1",
                    "type": "LinkedServiceReference"
                },
                "FilePath":"amltest/input/in1.csv"
            },
            "input2": {
                "LinkedServiceName":{
                    "referenceName": "AzureStorageLinkedService1",
                    "type": "LinkedServiceReference"
                },
                "FilePath":"amltest/input/in2.csv"
            }
        },
        "webServiceOutputs": {
            "outputName1": {
                "LinkedServiceName":{
                    "referenceName": "AzureStorageLinkedService2",
                    "type": "LinkedServiceReference"
                },
                "FilePath":"amltest2/output/out1.csv"
            },
            "outputName2": {
                "LinkedServiceName":{
                    "referenceName": "AzureStorageLinkedService2",
                    "type": "LinkedServiceReference"
                },
                "FilePath":"amltest2/output/out2.csv"
            }
        }
    }
}

Сценарий 2. Эксперименты с использованием модулей чтения и записи для обращения к данным в различных хранилищах

Другим распространенным сценарием при создании экспериментов Студии машинного обучения Azure (классическая версия) является использование модулей импорта и вывода данных. Модуль импорта используется для загрузки данных в эксперимент, а модуль вывода — для сохранения данных экспериментов. Дополнительные сведения о модулях импорта и вывода данных см. в этом и в этом разделах библиотеки MSDN.

При использовании модулей импорта и вывода данных рекомендуется указывать параметр веб-службы для каждого их свойства. Эти параметры веб-службы позволяют настроить значения во время выполнения. Например, можно создать эксперимент с модулем импорта, который использует базу данных SQL Azure: XXX.database.windows.net. После развертывания веб-службы вам необходимо включить объекты-получатели веб-службы, чтобы указать другой логический сервер SQL YYY.database.windows.net. Вы можете использовать параметр веб-службы, чтобы разрешить настройку этого значения.

Примечание.

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

Рассмотрим сценарий использования параметров веб-службы. Вы развернули веб-службу Студии машинного обучения Azure (классическая версия), которая использует модуль чтения для чтения данных из одного из поддерживаемых источников данных Студии машинного обучения Azure (например, Базы данных SQL Azure). После пакетного выполнения результаты записываются с помощью модуля записи (база данных SQL Azure). В экспериментах не определены входные и выходные данные веб-службы. В этом случае мы советуем настроить соответствующие параметры веб-службы для модулей чтения и записи. Это позволит настроить их при использовании действия AzureMLBatchExecution. Параметры веб-службы указываются в разделе globalParameters действия JSON, как показано ниже.

"typeProperties": {
    "globalParameters": {
        "Database server name": "<myserver>.database.windows.net",
        "Database name": "<database>",
        "Server user account name": "<user name>",
        "Server user account password": "<password>"
    }
}

Примечание.

В параметрах веб-службы учитывается регистр, поэтому убедитесь, что имена, которые указываются в действии JSON, соответствуют именам, предоставляемым веб-службой.

Когда повторное обучение будет завершено, обновите веб-службу оценки (прогнозный эксперимент, опубликованный в виде веб-службы) на основании обученной заново модели, используя действие "Обновить ресурс" в Студии машинного обучения Azure (классическая версия). Дополнительные сведения см. в статье Updating Azure Machine Learning models using Update Resource Activity (Обновление моделей машинного обучения Azure с помощью действия "Обновить ресурс").

Ознакомьтесь со следующими ссылками, в которых описаны способы преобразования данных другими способами: