Självstudie: Träna en TensorFlow-modell för bildklassificering med hjälp av Azure Machine Learning Visual Studio Code-tillägget (förhandsversion)

GÄLLER FÖR:Azure CLI ml extension v2 (aktuell)

Lär dig 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 på 28 px x 28 px bild som indata och matar ut en lista med 10 sannolikheter, en för var och en av de siffror som klassificeras. Det här är ett exempel på hur data ser ut.

MNIST Digits

Skapa en arbetsyta

Det första du måste göra för att skapa ett program i Azure Machine Learning är att skapa en arbetsyta. En arbetsyta innehåller resurser för att träna modeller och de tränade modellerna själva. Mer information finns i vad som är en arbetsyta.

  1. Öppna katalogen azureml-examples/cli/jobs/single-step/tensorflow/mnist från den communitydrivna lagringsplatsen i Visual Studio Code.

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

  3. Högerklicka på din prenumerationsnod i Azure Machine Learning-vyn och välj Skapa arbetsyta.

    Create workspace

  4. En specifikationsfil visas. Konfigurera specifikationsfilen med följande alternativ.

    $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 resurser i VS Code.

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 ser ut så här:

$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-portalen.

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

Track experiment progress

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

Nästa steg