Träna modeller med Azure Machine Learning (v1)

GÄLLER FÖR:Python SDK azureml v1

Azure Machine Learning erbjuder flera sätt att träna dina modeller, från kodinlärningslösningar med hjälp av SDK till lågkodslösningar som automatiserad maskininlärning och visuell designer. Använd följande lista för att avgöra vilken träningsmetod som passar dig bäst:

  • Azure Machine Learning SDK för Python: Python SDK innehåller flera sätt att träna modeller, var och en med olika funktioner.

    Träningsmetod beskrivning
    Kör konfiguration Ett vanligt sätt att träna modeller är att använda ett träningsskript och jobbkonfiguration. Jobbkonfigurationen innehåller den information som behövs för att konfigurera träningsmiljön som används för att träna din modell. Du kan ange träningsskript, beräkningsmål och Azure Machine Learning-miljö i jobbkonfigurationen och köra ett träningsjobb.
    Automatiserad maskininlärning Med automatiserad maskininlärning kan du träna modeller utan omfattande datavetenskap eller programmeringskunskaper. För personer med datavetenskap och programmeringsbakgrund är det ett sätt att spara tid och resurser genom att automatisera algoritmval och hyperparameterjustering. Du behöver inte bekymra dig om att definiera en jobbkonfiguration när du använder automatiserad maskininlärning.
    Maskininlärningspipeline Pipelines är inte en annan träningsmetod, utan ett sätt att definiera ett arbetsflöde med hjälp av modulära, återanvändbara steg som kan inkludera träning som en del av arbetsflödet. Maskininlärningspipelines stöder användning av automatiserad maskininlärning och kör konfiguration för att träna modeller. Eftersom pipelines inte fokuserar specifikt på träning är orsakerna till att använda en pipeline mer varierande än de andra träningsmetoderna. Vanligtvis kan du använda en pipeline när:
    * Du vill schemalägga obevakade processer, till exempel långvariga träningsjobb eller dataförberedelser.
    * Använd flera steg som samordnas mellan heterogena beräkningsresurser och lagringsplatser.
    * Använd pipelinen som en återanvändbar mall för specifika scenarier, till exempel omträning eller batchbedömning.
    * Spåra och versionsdatakällor, indata och utdata för arbetsflödet.
    * Arbetsflödet implementeras av olika team som arbetar med specifika steg oberoende av varandra. Steg kan sedan kopplas samman i en pipeline för att implementera arbetsflödet.
  • Designer: Azure Machine Learning-designern ger en enkel startpunkt i maskininlärning för att skapa konceptbevis eller för användare med liten kodningsupplevelse. Det gör att du kan träna modeller med hjälp av ett webbbaserat användargränssnitt för dra och släpp. Du kan använda Python-kod som en del av designen eller träna modeller utan att skriva någon kod.

  • Azure CLI: Machine Learning CLI tillhandahåller kommandon för vanliga uppgifter med Azure Machine Learning och används ofta för att skripta och automatisera uppgifter. När du till exempel har skapat ett träningsskript eller en pipeline kan du använda Azure CLI för att starta ett träningsjobb enligt ett schema eller när de datafiler som används för träning uppdateras. För träningsmodeller innehåller den kommandon som skickar träningsjobb. Den kan skicka jobb med hjälp av körningskonfigurationer eller pipelines.

Var och en av dessa träningsmetoder kan använda olika typer av beräkningsresurser för träning. Tillsammans kallas dessa resurser för beräkningsmål. Ett beräkningsmål kan vara en lokal dator eller en molnresurs, till exempel en Azure Machine Learning Compute, Azure HDInsight eller en fjärransluten virtuell dator.

Python SDK

Med Azure Machine Learning SDK för Python kan du skapa och köra maskininlärningsarbetsflöden med Azure Machine Learning. Du kan interagera med tjänsten från en interaktiv Python-session, Jupyter Notebooks, Visual Studio Code eller annan IDE.

Kör konfiguration

Ett allmänt träningsjobb med Azure Machine Learning kan definieras med hjälp av ScriptRunConfig. Skriptkörningskonfigurationen används sedan tillsammans med dina träningsskript för att träna en modell på ett beräkningsmål.

Du kan börja med en körningskonfiguration för den lokala datorn och sedan växla till en för ett molnbaserat beräkningsmål efter behov. När du ändrar beräkningsmålet ändrar du bara den körningskonfiguration som du använder. En körning loggar också information om träningsjobbet, till exempel indata, utdata och loggar.

Automatiserad maskininlärning

Definiera iterationer, inställningar för hyperparameter, funktionalisering och andra inställningar. Under träningen provar Azure Machine Learning olika algoritmer och parametrar parallellt. Träningen stoppas när den når det avslutsvillkor som du har definierat.

Dricks

Förutom Python SDK kan du även använda automatiserad ML via Azure Machine Learning-studio.

Maskininlärningspipeline

Maskininlärningspipelines kan använda de tidigare nämnda träningsmetoderna. Pipelines handlar mer om att skapa ett arbetsflöde, så de omfattar mer än bara träning av modeller. I en pipeline kan du träna en modell med hjälp av automatiserad maskininlärning eller köra konfigurationer.

Förstå vad som händer när du skickar ett träningsjobb

Azure-utbildningslivscykeln består av:

  1. Zippa filerna i projektmappen och ignorera de som anges i .amlignore eller .gitignore
  2. Skala upp beräkningsklustret
  3. Skapa eller ladda ned dockerfile till beräkningsnoden
    1. Systemet beräknar en hash av:
    2. Systemet använder den här hashen som nyckel i en sökning på arbetsytans Azure Container Registry (ACR)
    3. Om den inte hittas letar den efter en matchning i den globala ACR
    4. Om det inte hittas skapar systemet en ny avbildning (som cachelagras och registreras med arbetsytans ACR)
  4. Ladda ned den zippade projektfilen till tillfällig lagring på beräkningsnoden
  5. Packa upp projektfilen
  6. Körningen av beräkningsnoden python <entry script> <arguments>
  7. Spara loggar, modellfiler och andra filer som skrivits till ./outputs lagringskontot som är associerat med arbetsytan
  8. Skala ned beräkning, inklusive att ta bort tillfällig lagring

Om du väljer att träna på den lokala datorn ("konfigurera som lokal körning") behöver du inte använda Docker. Du kan använda Docker lokalt om du väljer (se avsnittet Konfigurera ML-pipeline för ett exempel).

Azure Machine Learning Designer

Med designern kan du träna modeller med hjälp av ett dra och släpp-gränssnitt i webbläsaren.

Azure CLI

Machine Learning CLI är ett tillägg för Azure CLI. Den innehåller cli-kommandon mellan plattformar för att arbeta med Azure Machine Learning. Vanligtvis använder du CLI för att automatisera uppgifter, till exempel att träna en maskininlärningsmodell.

Nästa steg

Lär dig hur du konfigurerar en träningskörning.