Dela via


Skapa och köra maskininlärningspipelines med hjälp av komponenter med Azure Machine Learning-studio

GÄLLER FÖR: Azure CLI ml-tillägget v2 (aktuellt)

I den här artikeln får du lära dig hur du skapar och kör maskininlärningspipelines med hjälp av Azure Machine Learning-studio och komponenter. Du kan skapa pipelines utan att använda komponenter, men komponenter ger bättre flexibilitet och återanvändning. Azure Machine Learning-pipelines kan definieras i YAML och köras från CLI, redigeras i Python eller skapas i Azure Machine Learning-studio Designer med ett dra och släpp-användargränssnitt. Det här dokumentet fokuserar på användargränssnittet för Azure Machine Learning-studio designer.

Förutsättningar

Kommentar

Designer stöder två typer av komponenter, klassiska fördefinierade komponenter(v1) och anpassade komponenter(v2). Dessa två typer av komponenter är INTE kompatibla.

Klassiska fördefinierade komponenter ger fördefinierade komponenter huvudsakligen för databearbetning och traditionella maskininlärningsuppgifter som regression och klassificering. Klassiska fördefinierade komponenter fortsätter att stödjas men kommer inte att ha några nya komponenter tillagda. Distributionen av klassiska fördefinierade (v1) komponenter stöder inte hanterade onlineslutpunkter (v2).

Med anpassade komponenter kan du omsluta din egen kod som en komponent. Den stöder delning av komponenter mellan arbetsytor och sömlös redigering i studio-, CLI v2- och SDK v2-gränssnitt.

För nya projekt rekommenderar vi starkt att du använder anpassad komponent, som är kompatibel med AzureML V2 och fortsätter att ta emot nya uppdateringar.

Den här artikeln gäller för anpassade komponenter.

Registrera komponenten på din arbetsyta

Om du vill skapa en pipeline med hjälp av komponenter i användargränssnittet måste du först registrera komponenter till din arbetsyta. Du kan använda användargränssnitt, CLI eller SDK för att registrera komponenter till din arbetsyta, så att du kan dela och återanvända komponenten på arbetsytan. Registrerade komponenter stöder automatisk versionshantering så att du kan uppdatera komponenten, men se till att pipelines som kräver en äldre version fortsätter att fungera.

I följande exempel används användargränssnittet för att registrera komponenter, och komponentkällfilerna finns i cli/jobs/pipelines-with-components/basics/1b_e2e_registered_components katalogen på lagringsplatsenazureml-examples. Du måste klona lagringsplatsen till lokal först.

  1. På din Azure Machine Learning-arbetsyta går du till sidan Komponenter och väljer Ny komponent (en av de två formatsidorna visas).

Skärmbild som visar knappen Registrera post på komponentsidan.

Skärmbild som visar knappen Registrera post på komponentsidan med kan innehålla arkiv.

Det här exemplet används train.yml i katalogen. YAML-filen definierar namn, typ, gränssnitt inklusive indata och utdata, kod, miljö och kommando för den här komponenten. Koden för den här komponenten train.py finns under ./train_src mappen, som beskriver körningslogik för den här komponenten. Mer information om komponentschemat finns i yaml-schemareferensen för kommandokomponenten.

Kommentar

När du registrerar komponenter i användargränssnittet code kan det som definieras i yaml-komponentfilen bara peka på den aktuella mappen där YAML-filen hittar eller undermapparna, vilket innebär att du inte kan ange ../ för code eftersom användargränssnittet inte kan identifiera den överordnade katalogen. additional_includes kan bara peka på den aktuella mappen eller undermappen. För närvarande stöder användargränssnittet endast registrering av komponenter med command typ.

  1. Välj Ladda upp från mapp och välj den mapp som 1b_e2e_registered_components ska laddas upp. Välj train.yml i listrutan.

Skärmbild som visar uppladdning från lokal mapp.

  1. Välj Nästa längst ned och du kan bekräfta informationen om den här komponenten. När du har bekräftat väljer du Skapa för att slutföra registreringsprocessen.

  2. Upprepa föregående steg för att registrera score- och Eval-komponenten med och score.yml eval.yml också.

  3. När du har registrerat de tre komponenterna kan du se dina komponenter i studiogränssnittet.

Skärmbild som visar den registrerade komponenten på komponentsidan.

Skapa pipeline med hjälp av en registrerad komponent

  1. Skapa en ny pipeline i designern. Kom ihåg att välja alternativet Anpassad .

    Skärmbild som visar hur du skapar en ny pipeline på designersidan.

  2. Ge pipelinen ett beskrivande namn genom att välja pennikonen förutom det automatiskt genererade namnet.

    Skärmbild som visar hur du byter namn på pipelinen.

  3. I designertillgångsbiblioteket kan du se flikarna Data, Modell och Komponenter . Växla till fliken Komponenter . Du kan se de komponenter som registrerats från föregående avsnitt. Om det finns för många komponenter kan du söka med komponentnamnet.

    Skärmbild som visar den registrerade komponenten i tillgångsbiblioteket.

    Leta reda på komponenterna train, score och eval som registrerades i föregående avsnitt och dra och släpp dem på arbetsytan. Som standard använder den standardversionen av komponenten och du kan ändra till en viss version i den högra komponentfönstret. Komponentens högra fönster anropas genom att dubbelklicka på komponenten.

    Skärmbild som visar ändrad version av komponenten.

    I det här exemplet använder vi exempeldata under den här sökvägen. Registrera data i arbetsytan genom att välja ikonen Lägg till i designertillgångsbiblioteket –> datafliken, ange Typ = Mapp(uri_folder) och följ sedan guiden för att registrera data. Datatypen måste vara uri_folder för att överensstämma med definitionen för träningskomponenten.

    Skärmbild som visar lägg till data.

    Dra och släpp sedan data till arbetsytan. Pipeline-utseendet bör se ut som på följande skärmbild nu.

    Skärmbild som visar pipelineutkastet.

  4. Anslut data och komponenter genom att dra anslutningar på arbetsytan.

    Gif som visar hur du ansluter pipelinen.

  5. Dubbelklicka på en komponent. Du ser ett högerfönster där du kan konfigurera komponenten.

    Skärmbild som visar inställningarna för komponentparametern.

    För komponenter med primitiva typindata som tal, heltal, sträng och booleskt värde kan du ändra värdena för sådana indata i den detaljerade komponentfönstret under avsnittet Indata .

    Du kan också ändra utdatainställningarna (var komponentens utdata ska lagras) och körningsinställningarna (beräkningsmålet för att köra den här komponenten) i den högra rutan.

    Nu ska vi höja upp max_epocs indata för träningskomponenten till indata på pipelinenivå. På så sätt kan du tilldela ett annat värde till den här indatan varje gång innan du skickar pipelinen.

    Skärmbild som visar hur du höjer upp komponentindata till pipelineindata.

Kommentar

Anpassade komponenter och de klassiska designkomponenterna kan inte användas tillsammans.

Skicka pipeline

  1. Välj Konfigurera och skicka i det högra övre hörnet för att skicka pipelinen.

    Skärmbild som visar knappen Konfigurera och skicka.

  2. Sedan visas en steg-för-steg-guide, följ guiden för att skicka pipelinejobbet.

Skärmbild som visar överföringsguiden.

I steget Grundläggande kan du konfigurera experimentet, jobbets visningsnamn, jobbbeskrivning osv.

I steget Indata och utdata kan du konfigurera indata/utdata som höjs upp till pipelinenivå. I föregående steg höjde vi max_epocs för träningskomponenten till pipelineindata, så du bör kunna se och tilldela värde till max_epocs här.

I Körningsinställningar kan du konfigurera standarddatalager och standardberäkning av pipelinen. Det är standarddatalager/beräkning för alla komponenter i pipelinen. Observera dock att om du anger en annan beräkning eller ett annat datalager för en komponent uttryckligen respekterar systemet inställningen för komponentnivå. Annars används standardvärdet för pipelinen.

Steget Granska + skicka är det sista steget för att granska alla konfigurationer innan du skickar. Guiden kommer ihåg konfigurationen för senaste gången om du skickar pipelinen.

När du har skickat pipelinejobbet visas ett meddelande längst upp med en länk till jobbinformationen. Du kan välja den här länken för att granska jobbinformationen.

Skärmbild som visar sändningsmeddelande.

Ange identitet i pipelinejobb

När du skickar pipelinejobbet kan du ange identiteten för att komma åt data under Run settings. Standardidentiteten är AMLToken den som inte använde någon identitet under tiden som vi stöder både UserIdentity och Managed. För UserIdentityanvänds identiteten för jobbinskickare för att komma åt indata och skriva resultatet till utdatamappen. Om du anger Managedanvänder systemet den hanterade identiteten för att komma åt indata och skriva resultatet till utdatamappen.

Skärmbild som visar hur du anger identitet i pipelinejobbet.

Nästa steg