Dela via


Självstudie: Träna en bildklassificeringsmodell med hjälp av Tillägget Azure Machine Learning Visual Studio Code (förhandsversion)

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

Den här artikeln beskriver hur du tränar en bildklassificeringsmodell för att identifiera handskrivna tal med tensorFlow och Azure Machine Learning Visual Studio Code-tillägget.

Viktigt!

Den här funktionen är för närvarande i allmänt tillgänglig förhandsversion. Den här förhandsversionen tillhandahålls utan ett serviceavtal och vi rekommenderar det inte för produktionsarbetsbelastningar. Vissa funktioner kanske inte stöds eller kan vara begränsade.

Mer information finns i Kompletterande villkor för användning av Microsoft Azure-förhandsversioner.

I den här självstudien kommer du att lära dig följande:

  • Förstå koden
  • Skapa en arbetsyta
  • Träna en modell

Förutsättningar

Förstå koden

Koden för den här självstudien använder TensorFlow för att träna en maskininlärningsmodell för bildklassificering som kategoriserar handskrivna siffror från 0–9. Det gör det genom att skapa ett neuralt nätverk som tar pixelvärdena för 28x28-pixelbilder som indata och sedan matar ut en lista med 10 sannolikheter, en för var och en av de siffror som klassificeras. Följande exempel visar hur data ser ut.

Skärmbild som visar ett exempel på MNIST-siffror.

Skapa en arbetsyta

Om du vill skapa ett program i Azure Machine Learning måste du först skapa en arbetsyta. En arbetsyta innehåller resurser för att träna modeller och även de tränade modellerna själva. Mer information finns i Vad är en Azure Machine Learning-arbetsyta?

  1. I Visual Studio Code öppnar du katalogen azureml-examples/cli/jobs/single-step/tensorflow/mnist från exempellagringsplatsen.

  2. I aktivitetsfältet i Visual Studio Code väljer du Azure-ikonen för att öppna Azure Machine Learning-vyn.

  3. Under Machine Learning högerklickar du på din prenumerationsnod och väljer Skapa arbetsyta.

    Skärmbild som visar alternativet att skapa en arbetsyta.

  4. En specifikationsfil visas. Konfigurera specifikationsfilen med följande alternativ och spara den sedan.

    $schema: https://azuremlschemas.azureedge.net/latest/workspace.schema.json
    name: TeamWorkspace
    location: WestUS2
    display_name: team-ml-workspace
    description: A workspace for training machine learning models
    tags:
      purpose: training
      team: ml-team
    

    Specifikationsfilen skapar en arbetsyta som heter TeamWorkspace i WestUS2 regionen. Resten av alternativen som definierats i specifikationsfilen ger användarvänlig namngivning, beskrivningar och taggar för arbetsytan.

  5. Högerklicka på specifikationsfilen och välj AzureML: Kör YAML. När du skapar en resurs används de konfigurationsalternativ som definierats i YAML-specifikationsfilen och ett jobb skickas med HJÄLP av CLI (v2). Nu görs en begäran till Azure om att skapa en ny arbetsyta och beroende resurser i ditt konto. Efter några minuter visas den nya arbetsytan i din prenumerationsnod.

  6. Ange TeamWorkspace som standardarbetsyta. På så sätt placeras resurser och jobb som du skapar på arbetsytan som standard. Välj knappen Ange Azure Machine Learning-arbetsyta i statusfältet i Visual Studio Code och följ anvisningarna för att ange TeamWorkspace som standardarbetsyta.

Mer information om arbetsytor finns i Hantera Azure Machine Learning-resurser med VS Code-tillägget.

Träna modellen

Under träningsprocessen tränas en TensorFlow-modell genom att bearbeta träningsdata och inlärningsmönster som är inbäddade i dem för var och en av de respektive siffror som klassificeras.

Precis som arbetsytor och beräkningsmål definieras träningsjobb med hjälp av resursmallar. För det här exemplet definieras specifikationen i filen job.yml , som finns i mappen azureml-examples/cli/jobs/single-step/tensorflow/mnist i exempellagringsplatsen.

$schema: https://azuremlschemas.azureedge.net/latest/commandJob.schema.json
code: src
command: >
    python train.py
environment: azureml:AzureML-tensorflow-2.4-ubuntu18.04-py37-cuda11-gpu:48
resources:
   instance_type: Standard_NC12
   instance_count: 3
experiment_name: tensorflow-mnist-example
description: Train a basic neural network with TensorFlow on the MNIST dataset.

Den här specifikationsfilen skickar ett träningsjobb som anropas tensorflow-mnist-example till det nyligen skapade gpu-cluster datormålet som kör koden i train.py Python-skriptet. Den miljö som används är en av de utvalda miljöer som tillhandahålls av Azure Machine Learning, som innehåller TensorFlow och andra programvaruberoenden som krävs för att köra träningsskriptet. Mer information om utvalda miljöer finns i Azure Machine Learning-kurerade miljöer.

Så här skickar du träningsjobbet:

  1. Öppna filen job.yml .
  2. Högerklicka på filen i textredigeraren och välj AzureML: Kör YAML.

Nu skickas en begäran till Azure för att köra experimentet på det valda beräkningsmålet på arbetsytan. Den här processen tar flera minuter. Hur lång tid det tar att köra träningsjobbet påverkas av flera faktorer som beräkningstypen och träningsdatastorleken. Om du vill spåra förloppet för experimentet högerklickar du på den aktuella körningsnoden och väljer Visa jobb i Azure Portal.

När dialogrutan som begär att öppna en extern webbplats visas väljer du Öppna.

Skärmbild som visar jobbets förlopp.

När modellen är klar med träningen uppdateras statusetiketten bredvid körningsnoden till Slutförd.