Udostępnij za pośrednictwem


Aktualizowanie modeli usługi Machine Learning Studio (klasycznej) przy użyciu działania Aktualizuj zasób

DOTYCZY: Azure Data Factory Azure Synapse Analytics

Napiwek

Wypróbuj usługę Data Factory w usłudze Microsoft Fabric — rozwiązanie analityczne typu all-in-one dla przedsiębiorstw. Usługa Microsoft Fabric obejmuje wszystko, od przenoszenia danych do nauki o danych, analizy w czasie rzeczywistym, analizy biznesowej i raportowania. Dowiedz się, jak bezpłatnie rozpocząć nową wersję próbną !

Ważne

Obsługa usługi Azure Machine Learning Studio (wersja klasyczna) zakończy się 31 sierpnia 2024 r. Zalecamy przejście do usługi Azure Machine Learning do tej daty.

Od 1 grudnia 2021 r. nie można utworzyć nowych zasobów usługi Machine Learning Studio (klasycznego) (obszaru roboczego i planu usługi internetowej). Do 31 sierpnia 2024 r. możesz nadal korzystać z istniejących eksperymentów i usług internetowych usługi Machine Learning Studio (klasycznych). Aby uzyskać więcej informacji, zobacz:

Dokumentacja usługi Machine Learning Studio (klasyczna) jest wycofywana i może nie zostać zaktualizowana w przyszłości.

Uwaga

Ponieważ zasoby usługi Machine Learning Studio (klasyczne) nie mogą być już tworzone po 1 grudnia 2021 r., użytkownicy są zachęcani do korzystania z usługi Azure Machine Learning z działaniem Wykonywanie potoku usługi Machine Learning zamiast aktualizowania modeli usługi Machine Learning Studio (klasycznych).

Ten artykuł stanowi uzupełnienie głównego artykułu integracji usługi Machine Learning Studio (klasycznego): Tworzenie potoków predykcyjnych przy użyciu usługi Machine Learning Studio (wersja klasyczna). Jeśli jeszcze tego nie zrobiono, zapoznaj się z głównym artykułem przed przeczytaniem tego artykułu.

Omówienie

W ramach procesu operacjonalizacji modeli usługi Machine Learning Studio (klasycznej) model jest trenowany i zapisywany. Następnie użyjesz jej do utworzenia predykcyjnej usługi sieci Web. Następnie usługę internetową można używać w witrynach internetowych, pulpitach nawigacyjnych i aplikacjach mobilnych.

Modele tworzone przy użyciu usługi Machine Learning Studio (klasycznej) zwykle nie są statyczne. Gdy nowe dane staną się dostępne lub gdy użytkownik interfejsu API ma własne dane, model musi zostać ponownie wytrenowany.

Ponowne trenowanie może wystąpić często. Za pomocą działania Wykonywania wsadowego i Działania aktualizacji zasobów można operacjonalizować model Machine Learning Studio (wersja klasyczna) ponownego trenowania i aktualizowania predykcyjnej usługi sieci Web.

Na poniższej ilustracji przedstawiono relację między trenowania i predykcyjnymi usługami sieci Web.

Usługi sieci Web

Działanie aktualizacji zasobów usługi Machine Learning Studio (wersja klasyczna)

Poniższy fragment kodu JSON definiuje działanie Wykonywania wsadowe usługi Machine Learning Studio (klasyczne).

{
    "name": "amlUpdateResource",
    "type": "AzureMLUpdateResource",
    "description": "description",
    "linkedServiceName": {
        "type": "LinkedServiceReference",
        "referenceName": "updatableScoringEndpoint2"
    },
    "typeProperties": {
        "trainedModelName": "ModelName",
        "trainedModelLinkedServiceName": {
                    "type": "LinkedServiceReference",
                    "referenceName": "StorageLinkedService"
                },
        "trainedModelFilePath": "ilearner file path"
    }
}
Właściwości Opis Wymagania
name Nazwa działania w potoku Tak
opis Tekst opisujący działanie. Nie.
type W przypadku działania aktualizacji zasobu usługi Machine Learning Studio (wersja klasyczna) typ działania to AzureMLUpdateResource. Tak
linkedServiceName Połączona usługa Machine Learning Studio (klasyczna) zawierająca właściwość updateResourceEndpoint. Tak
trainedModelName Nazwa modułu Wytrenowany model w eksperymencie usługi sieci Web, który ma zostać zaktualizowany Tak
trainedModelLinkedServiceName Nazwa połączonej usługi Azure Storage zawierającej plik ilearner przekazany przez operację aktualizacji Tak
trainedModelFilePath Ścieżka pliku względnego w wytrenowanymModelLinkedService reprezentująca plik ilearner przekazany przez operację aktualizacji Tak

Kompletny przepływ pracy

Cały proces operacjonalizacji ponownego trenowania modelu i aktualizowania predykcyjnych usług sieci Web obejmuje następujące kroki:

  • Wywołaj trenowaną usługę sieci Web przy użyciu działania Wykonywanie wsadowe. Wywoływanie trenowanej usługi sieci Web jest takie samo jak wywoływanie predykcyjnej usługi sieci Web opisanej w temacie Tworzenie potoków predykcyjnych przy użyciu usługi Machine Learning Studio (klasycznej) i działania Wykonywania wsadowego. Dane wyjściowe trenowania usługi internetowej to plik iLearner, którego można użyć do zaktualizowania predykcyjnej usługi sieci Web.
  • Wywołaj punkt końcowy zasobu aktualizacji predykcyjnej usługi sieci Web przy użyciu działania Aktualizuj zasób, aby zaktualizować usługę internetową przy użyciu nowo wytrenowanego modelu.

Połączona usługa Machine Learning Studio (klasyczna)

Aby powyższy przepływ pracy działał kompleksowo, należy utworzyć dwie połączone usługi Machine Learning Studio (klasyczne):

  1. Połączona usługa Machine Learning Studio (klasyczna) z usługą internetową trenowania, ta połączona usługa jest używana przez działanie wykonywania wsadowego w taki sam sposób, jak w artykule Tworzenie potoków predykcyjnych przy użyciu usługi Machine Learning Studio (klasycznej) i działania wykonywania usługi Batch. Różnica polega na tym, że dane wyjściowe usługi internetowej trenowania to plik iLearner, który jest następnie używany przez działanie Aktualizuj zasób w celu zaktualizowania predykcyjnej usługi internetowej.
  2. Połączona usługa Machine Learning Studio (klasyczna) z punktem końcowym zasobu aktualizacji usługi internetowej predykcyjnej. Ta połączona usługa jest używana przez działanie Aktualizuj zasób w celu zaktualizowania predykcyjnej usługi internetowej przy użyciu pliku iLearner zwróconego z powyższego kroku.

W przypadku drugiej połączonej usługi Machine Learning Studio (klasycznej) konfiguracja różni się, gdy usługa sieci Web Machine Learning Studio (klasyczna) jest klasyczną usługą sieci Web lub nową usługą sieci Web. Różnice zostały omówione oddzielnie w poniższych sekcjach.

Usługa internetowa to nowa usługa internetowa usługi Azure Resource Manager

Jeśli usługa internetowa jest nowym typem usługi internetowej, która uwidacznia punkt końcowy usługi Azure Resource Manager, nie musisz dodawać drugiego punktu końcowego innego niż domyślny . Element updateResourceEndpoint w połączonej usłudze ma format:

https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resource-group-name}/providers/Microsoft.MachineLearning/webServices/{web-service-name}?api-version=2016-05-01-preview

Możesz uzyskać wartości dla posiadaczy miejsc w adresie URL podczas wykonywania zapytań dotyczących usługi internetowej w usłudze Azure Machine Learning Studio.

Nowy typ punktu końcowego zasobu aktualizacji wymaga uwierzytelniania jednostki usługi. Aby użyć uwierzytelniania jednostki usługi, zarejestruj jednostkę aplikacji w identyfikatorze Entra firmy Microsoft i przyznaj jej rolę Współautor lub Właściciel subskrypcji lub grupy zasobów, do której należy usługa internetowa. Zobacz, jak utworzyć jednostkę usługi i przypisać uprawnienia do zarządzania zasobem platformy Azure. Zanotuj następujące wartości, których użyjesz do zdefiniowania połączonej usługi:

  • Application ID
  • Klucz aplikacji
  • Identyfikator dzierżawy

Oto przykładowa definicja połączonej usługi:

{
    "name": "AzureMLLinkedService",
    "properties": {
        "type": "AzureML",
        "description": "The linked service for AML web service.",
        "typeProperties": {
            "mlEndpoint": "https://ussouthcentral.services.azureml.net/workspaces/0000000000000000	000000000000000000000/services/0000000000000000000000000000000000000/jobs?api-version=2.0",
            "apiKey": {
                "type": "SecureString",
                "value": "APIKeyOfEndpoint1"
            },
            "updateResourceEndpoint": "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resource-group-name}/providers/Microsoft.MachineLearning/webServices/{web-service-name}?api-version=2016-05-01-preview",
            "servicePrincipalId": "000000000-0000-0000-0000-0000000000000",
            "servicePrincipalKey": {
                "type": "SecureString",
                "value": "servicePrincipalKey"
            },
            "tenant": "mycompany.com"
        }
    }
}

Poniższy scenariusz zawiera więcej szczegółów. Zawiera przykład ponownego trenowania i aktualizowania modeli usługi Machine Learning Studio (klasycznego) z potoku.

Przykład: ponowne trenowanie i aktualizowanie modelu usługi Machine Learning Studio (wersja klasyczna)

Ta sekcja zawiera przykładowy potok, który używa działania azure Machine Learning Studio (klasycznego) wykonywania wsadowego do ponownego trenowania modelu. Potok używa również działania aktualizacji zasobu usługi Azure Machine Learning Studio (klasycznej) w celu zaktualizowania modelu w usłudze internetowej oceniania. Sekcja zawiera również fragmenty kodu JSON dla wszystkich połączonych usług, zestawów danych i potoku w przykładzie.

Połączona usługa Azure Blob Storage:

Usługa Azure Storage przechowuje następujące dane:

  • dane szkoleniowe. Dane wejściowe usługi internetowej trenowania usługi Machine Learning Studio (klasycznej).
  • Plik iLearner. Dane wyjściowe z usługi internetowej trenowania usługi Machine Learning Studio (klasycznej). Ten plik jest również danymi wejściowymi działania Aktualizuj zasób.

Oto przykładowa definicja JSON połączonej usługi:

{
    "name": "StorageLinkedService",
    "properties": {
        "type": "AzureStorage",
        "typeProperties": {
            "connectionString": "DefaultEndpointsProtocol=https;AccountName=name;AccountKey=key"
        }
    }
}

Połączona usługa dla punktu końcowego trenowania usługi Machine Learning Studio (wersja klasyczna)

Poniższy fragment kodu JSON definiuje połączoną usługę Machine Learning Studio (klasyczną), która wskazuje domyślny punkt końcowy usługi internetowej trenowania.

{
    "name": "trainingEndpoint",
    "properties": {
        "type": "AzureML",
        "typeProperties": {
            "mlEndpoint": "https://ussouthcentral.services.azureml.net/workspaces/xxx/services/--training experiment--/jobs",
            "apiKey": "myKey"
        }
    }
}

W usłudze Azure Machine Learning Studio (wersja klasyczna) wykonaj następujące czynności, aby uzyskać wartości dla metody mlEndpoint i apiKey:

  1. Kliknij pozycję USŁUGI SIECI WEB w menu po lewej stronie.
  2. Kliknij usługę internetową szkoleniową na liście usług sieci Web.
  3. Kliknij pozycję Kopiuj obok pola tekstowego klucza interfejsu API. Wklej klucz w schowku do edytora JSON usługi Data Factory.
  4. W usłudze Azure Machine Learning Studio (wersja klasyczna) kliknij link WYKONYWANIE USŁUGI BATCH.
  5. Skopiuj identyfikator URI żądania z sekcji Żądanie i wklej go do edytora JSON.

Połączona usługa dla punktu końcowego oceniania w usłudze Azure Machine Learning Studio (wersja klasyczna):

Poniższy fragment kodu JSON definiuje połączoną usługę Azure Machine Learning Studio (klasyczną), która wskazuje możliwy do zaktualizowania punkt końcowy usługi internetowej oceniania.

{
    "name": "updatableScoringEndpoint2",
    "properties": {
        "type": "AzureML",
        "typeProperties": {
            "mlEndpoint": "https://ussouthcentral.services.azureml.net/workspaces/00000000eb0abe4d6bbb1d7886062747d7/services/00000000026734a5889e02fbb1f65cefd/jobs?api-version=2.0",
            "apiKey": "sooooooooooh3WvG1hBfKS2BNNcfwSO7hhY6dY98noLfOdqQydYDIXyf2KoIaN3JpALu/AKtflHWMOCuicm/Q==",
            "updateResourceEndpoint": "https://management.azure.com/subscriptions/ffffffff-eeee-dddd-cccc-bbbbbbbbbbb0/resourceGroups/Default-MachineLearning-SouthCentralUS/providers/Microsoft.MachineLearning/webServices/myWebService?api-version=2016-05-01-preview",
            "servicePrincipalId": "fe200044-c008-4008-a005-94000000731",
            "servicePrincipalKey": "zWa0000000000Tp6FjtZOspK/WMA2tQ08c8U+gZRBlw=",
            "tenant": "mycompany.com"
        }
    }
}

Potok

Potok ma dwie działania: AzureMLBatchExecution i AzureMLUpdateResource. Działanie Wykonywanie usługi Batch pobiera dane szkoleniowe jako dane wejściowe i tworzy plik iLearner jako dane wyjściowe. Działanie Aktualizuj zasób pobiera ten plik iLearner i użyj go do zaktualizowania predykcyjnej usługi internetowej.

{
    "name": "LookupPipelineDemo",
    "properties": {
        "activities": [
            {
                "name": "amlBEGetilearner",
                "description": "Use AML BES to get the ileaner file from training web service",
                "type": "AzureMLBatchExecution",
                "linkedServiceName": {
                    "referenceName": "trainingEndpoint",
                    "type": "LinkedServiceReference"
                },
                "typeProperties": {
                    "webServiceInputs": {
                        "input1": {
                            "LinkedServiceName":{
                                "referenceName": "StorageLinkedService",
                                "type": "LinkedServiceReference"
                            },
                            "FilePath":"azuremltesting/input"
                        },
                        "input2": {
                            "LinkedServiceName":{
                                "referenceName": "StorageLinkedService",
                                "type": "LinkedServiceReference"
                            },
                            "FilePath":"azuremltesting/input"
                        }
                    },
                    "webServiceOutputs": {
                        "output1": {
                            "LinkedServiceName":{
                                "referenceName": "StorageLinkedService",
                                "type": "LinkedServiceReference"
                            },
                            "FilePath":"azuremltesting/output"
                        }
                    }
                }
            },
            {
                "name": "amlUpdateResource",
                "type": "AzureMLUpdateResource",
                "description": "Use AML Update Resource to update the predict web service",
                "linkedServiceName": {
                    "type": "LinkedServiceReference",
                    "referenceName": "updatableScoringEndpoint2"
                },
                "typeProperties": {
                    "trainedModelName": "ADFV2Sample Model [trained model]",
                    "trainedModelLinkedServiceName": {
                        "type": "LinkedServiceReference",
                        "referenceName": "StorageLinkedService"
                    },
                    "trainedModelFilePath": "azuremltesting/output/newModelForArm.ilearner"
                },
                "dependsOn": [
                    {
                        "activity": "amlbeGetilearner",
                        "dependencyConditions": [ "Succeeded" ]
                    }
                ]
            }
        ]
    }
}

Zapoznaj się z następującymi artykułami, które wyjaśniają sposób przekształcania danych na inne sposoby: