Dela via


Uppdatera Mašinsko učenje Studio-modeller (klassisk) med hjälp av aktiviteten Uppdatera resurs

GÄLLER FÖR: Azure Data Factory Azure Synapse Analytics

Dricks

Prova Data Factory i Microsoft Fabric, en allt-i-ett-analyslösning för företag. Microsoft Fabric omfattar allt från dataflytt till datavetenskap, realtidsanalys, business intelligence och rapportering. Lär dig hur du startar en ny utvärderingsversion kostnadsfritt!

Viktigt!

Stödet för Azure Mašinsko učenje Studio (klassisk) upphör den 31 augusti 2024. Vi rekommenderar att du övergår till Azure Mašinsko učenje vid det datumet.

Från och med den 1 december 2021 kan du inte skapa nya Mašinsko učenje Studio-resurser (klassiska) (arbetsyta och webbtjänstplan). Till och med den 31 augusti 2024 kan du fortsätta att använda de befintliga experimenten Mašinsko učenje Studio (klassisk) och webbtjänster. Mer information finns i:

Mašinsko učenje Studio-dokumentationen (klassisk) dras tillbaka och kanske inte uppdateras i framtiden.

Kommentar

Eftersom Mašinsko učenje Studio-resurser (klassiska) inte längre kan skapas efter den 1 december 2021 uppmanas användarna att använda Azure Mašinsko učenje med aktiviteten Mašinsko učenje Kör pipeline i stället för att använda aktiviteten Uppdatera resurs för att uppdatera Mašinsko učenje Studio-modeller (klassiska).

Den här artikeln kompletterar huvudartikeln Mašinsko učenje Studio(klassisk) integration: Skapa förutsägelsepipelines med hjälp av Mašinsko učenje Studio (klassisk). Om du inte redan har gjort det kan du läsa huvudartikeln innan du läser igenom den här artikeln.

Översikt

Som en del av processen med att operationalisera Mašinsko učenje Studio-modeller (klassiska) tränas och sparas din modell. Sedan använder du den för att skapa en förutsägelsewebbtjänst. Webbtjänsten kan sedan användas på webbplatser, instrumentpaneler och mobilappar.

Modeller som du skapar med Mašinsko učenje Studio (klassisk) är vanligtvis inte statiska. När nya data blir tillgängliga eller när api-konsumenten har sina egna data måste modellen tränas om.

Omträning kan förekomma ofta. Med batchkörningsaktivitet och uppdateringsresursaktivitet kan du operationalisera omträningen av Mašinsko učenje Studio-modellen (klassisk) och uppdatera den förutsägande webbtjänsten.

Följande bild visar relationen mellan träning och prediktiva webbtjänster.

Webbtjänster

Mašinsko učenje Studio (klassisk) uppdatera resursaktivitet

Följande JSON-kodfragment definierar en Mašinsko učenje Studio(klassisk) batchkörningsaktivitet.

{
    "name": "amlUpdateResource",
    "type": "AzureMLUpdateResource",
    "description": "description",
    "linkedServiceName": {
        "type": "LinkedServiceReference",
        "referenceName": "updatableScoringEndpoint2"
    },
    "typeProperties": {
        "trainedModelName": "ModelName",
        "trainedModelLinkedServiceName": {
                    "type": "LinkedServiceReference",
                    "referenceName": "StorageLinkedService"
                },
        "trainedModelFilePath": "ilearner file path"
    }
}
Property Beskrivning Obligatoriskt
name Namnet på aktiviteten i pipelinen Ja
description Text som beskriver vad aktiviteten gör. Nej
type För Mašinsko učenje Studio -uppdateringsresursaktivitet (klassisk) är aktivitetstypen AzureMLUpdateResource. Ja
linkedServiceName Mašinsko učenje Studio (klassisk) länkad tjänst som innehåller egenskapen updateResourceEndpoint. Ja
trainedModelName Namnet på modulen Tränad modell i webbtjänstexperimentet som ska uppdateras Ja
trainedModelLinkedServiceName Namnet på den länkade Azure Storage-tjänsten som innehåller ilearner-filen som laddas upp av uppdateringsåtgärden Ja
trainedModelFilePath Den relativa filsökvägen i trainedModelLinkedService för att representera ilearner-filen som laddas upp av uppdateringsåtgärden Ja

Arbetsflödet slutpunkt till slutpunkt

Hela processen med att operationalisera omträning av en modell och uppdatera de prediktiva webbtjänsterna omfattar följande steg:

  • Anropa träningswebbtjänsten med hjälp av batchkörningsaktiviteten. Att anropa en träningswebbtjänst är detsamma som att anropa en förutsägelsewebbtjänst som beskrivs i Skapa förutsägelsepipelines med hjälp av Mašinsko učenje Studio (klassisk) och batchkörningsaktiviteten. Utdata från träningswebbtjänsten är en iLearner-fil som du kan använda för att uppdatera den prediktiva webbtjänsten.
  • Anropa uppdateringsresursslutpunkten för den förutsägande webbtjänsten med hjälp av aktiviteten Uppdatera resurs för att uppdatera webbtjänsten med den nyligen tränade modellen.

Mašinsko učenje Studio (klassisk) länkad tjänst

För att det ovan nämnda arbetsflödet från slutpunkt till slutpunkt ska fungera måste du skapa två länkade Mašinsko učenje Studio-tjänster (klassiska):

  1. En Mašinsko učenje Studio(klassisk) länkad tjänst till utbildningswebbtjänsten, den här länkade tjänsten används av batchkörningsaktiviteten på samma sätt som det som nämns i Skapa förutsägelsepipelines med Mašinsko učenje Studio (klassisk) och batchkörningsaktiviteten. Skillnaden är att utdata från träningswebbtjänsten är en iLearner-fil som sedan används av aktiviteten Uppdatera resurs för att uppdatera den förutsägande webbtjänsten.
  2. En Mašinsko učenje Studio-länkad tjänst (klassisk) till slutpunkten för uppdateringsresursen för den förutsägande webbtjänsten. Den här länkade tjänsten används av aktiviteten Uppdatera resurs för att uppdatera den förutsägande webbtjänsten med hjälp av iLearner-filen som returneras från ovanstående steg.

För den andra Mašinsko učenje Studio-länkade tjänsten (klassisk) skiljer sig konfigurationen när din Mašinsko učenje Studio-webbtjänst (klassisk) är en klassisk webbtjänst eller en ny webbtjänst. Skillnaderna beskrivs separat i följande avsnitt.

Webbtjänsten är ny Azure Resource Manager-webbtjänst

Om webbtjänsten är den nya typen av webbtjänst som exponerar en Azure Resource Manager-slutpunkt behöver du inte lägga till den andra slutpunkten som inte är standard . UpdateResourceEndpoint i den länkade tjänsten har formatet:

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

Du kan hämta värden för platsinnehavare i URL:en när du frågar webbtjänsten på Mašinsko učenje Studio-webbtjänstportalen (klassisk).

Den nya typen av uppdateringsresursslutpunkt kräver autentisering med tjänstens huvudnamn. Om du vill använda autentisering med tjänstens huvudnamn registrerar du en programentitet i Microsoft Entra-ID och ger den rollen Deltagare eller Ägare för prenumerationen eller resursgruppen där webbtjänsten tillhör. Se Hur du skapar tjänstens huvudnamn och tilldelar behörigheter för att hantera Azure-resurser. Anteckna följande värden som du använder för att definiera den länkade tjänsten:

  • Program-ID:t
  • Programnyckel
  • Klientorganisations-ID

Här är ett exempel på en länkad tjänstdefinition:

{
    "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"
        }
    }
}

Följande scenario innehåller mer information. Den har ett exempel för omträning och uppdatering av Mašinsko učenje Studio-modeller (klassiska) från en pipeline.

Exempel: Träna om och uppdatera en Mašinsko učenje Studio-modell (klassisk)

Det här avsnittet innehåller en exempelpipeline som använder batchkörningsaktiviteten Azure Mašinsko učenje Studio (klassisk) för att träna om en modell. Pipelinen använder också aktiviteten Azure Mašinsko učenje Studio (klassisk) Uppdateringsresurs för att uppdatera modellen i bedömningswebbtjänsten. Avsnittet innehåller även JSON-kodfragment för alla länkade tjänster, datauppsättningar och pipeline i exemplet.

Länkad Azure Blob Storage-tjänst:

Azure Storage innehåller följande data:

  • träningsdata. Indata för utbildningswebbtjänsten Mašinsko učenje Studio (klassisk).
  • iLearner-fil. Utdata från utbildningswebbtjänsten Mašinsko učenje Studio (klassisk). Den här filen är också indata för aktiviteten Uppdatera resurs.

Här är JSON-exempeldefinitionen för den länkade tjänsten:

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

Länkad tjänst för utbildningsslutpunkten Mašinsko učenje Studio (klassisk)

Följande JSON-kodfragment definierar en länkad tjänst Mašinsko učenje Studio (klassisk) som pekar på standardslutpunkten för träningswebbtjänsten.

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

I Azure Mašinsko učenje Studio (klassisk) gör du följande för att hämta värden för mlEndpoint och apiKey:

  1. Klicka på WEBBTJÄNSTER på den vänstra menyn.
  2. Klicka på utbildningswebbtjänsten i listan över webbtjänster.
  3. Klicka på kopiera bredvid textrutan API-nyckel . Klistra in nyckeln i Urklipp i Data Factory JSON-redigeraren.
  4. I Azure Mašinsko učenje Studio (klassisk) klickar du på länken BATCH EXECUTION (BATCH EXECUTION).
  5. Kopiera URI för begäran från avsnittet Begäran och klistra in den i JSON-redigeraren.

Länkad tjänst för Azure Mašinsko učenje Studio (klassisk) slutpunkt för uppdateringsbar bedömning:

Följande JSON-kodfragment definierar en länkad Azure Mašinsko učenje Studio-tjänst (klassisk) som pekar på en uppdaterad slutpunkt för bedömningswebbtjänsten.

{
    "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/00000000-0000-0000-0000-000000000000/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"
        }
    }
}

Pipeline

Pipelinen har två aktiviteter: AzureMLBatchExecution och AzureMLUpdateResource. Batch-körningsaktiviteten tar träningsdata som indata och skapar en iLearner-fil som utdata. Aktiviteten Uppdatera resurs tar sedan den här iLearner-filen och använder den för att uppdatera den förutsägande webbtjänsten.

{
    "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" ]
                    }
                ]
            }
        ]
    }
}

Se följande artiklar som förklarar hur du transformerar data på andra sätt: