Oktatóanyag: Képosztályozási TensorFlow-modell betanítása az Azure Machine Tanulás Visual Studio Code-bővítmény (előzetes verzió) használatával

ÉRVÉNYES:Azure CLI ml-bővítmény 2-es verzió (aktuális)

Megtudhatja, hogyan taníthat be képbesorolási modellt a kézzel írt számok felismerésére a TensorFlow és az Azure Machine Tanulás Visual Studio Code-bővítmény használatával.

Fontos

Ez a funkció jelenleg nyilvános előzetes verzióban érhető el. Ez az előzetes verzió szolgáltatásszintű szerződés nélkül érhető el, és éles számítási feladatokhoz nem javasoljuk. Előfordulhat, hogy néhány funkció nem támogatott, vagy korlátozott képességekkel rendelkezik.

További információ: Kiegészítő használati feltételek a Microsoft Azure előzetes verziójú termékeihez.

Ebben az oktatóanyagban a következő feladatokat sajátíthatja el:

  • A kód értelmezése
  • Munkaterület létrehozása
  • Modell betanítása

Előfeltételek

A kód értelmezése

Az oktatóanyag kódja a TensorFlow használatával tanít be egy képbesorolási gépi tanulási modellt, amely a kézzel írt számjegyeket kategorizálja 0 és 9 között. Ezt úgy teszi, hogy létrehoz egy neurális hálózatot, amely a 28 px x 28 px kép képpontértékeit veszi bemenetként, és 10 valószínűségű listát ad ki, egyet a besorolandó számjegyek mindegyikéhez. Ez egy minta az adatok megjelenésére.

MNIST Digits

Munkaterület létrehozása

Az első teendő egy alkalmazás Azure Machine-Tanulás történő létrehozásához egy munkaterület létrehozása. A munkaterület tartalmazza a modellek és maguk a betanított modellek betanásához szükséges erőforrásokat. További információ: mi az a munkaterület.

  1. Nyissa meg az azureml-examples/cli/jobs/single-step/tensorflow/mnist könyvtárat a Visual Studio Code közösségvezérelt adattárából.

  2. A Visual Studio Code tevékenységsávján válassza az Azure ikont az Azure Machine Tanulás nézet megnyitásához.

  3. Az Azure Machine Tanulás nézetben kattintson a jobb gombbal az előfizetési csomópontra, és válassza a Munkaterület létrehozása lehetőséget.

    Create workspace

  4. Megjelenik egy specifikációs fájl. Konfigurálja a specifikációs fájlt az alábbi beállításokkal.

    $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
    

    A specifikációs fájl létrehoz egy munkaterületet, amely a WestUS2 régióban van meghívvaTeamWorkspace. A specifikációs fájlban definiált többi beállítás felhasználóbarát elnevezést, leírásokat és címkéket biztosít a munkaterülethez.

  5. Kattintson a jobb gombbal a specifikációs fájlra, és válassza az AzureML: Execute YAML (YAML végrehajtása) lehetőséget. Az erőforrás létrehozása a YAML specifikációs fájlban meghatározott konfigurációs beállításokat használja, és a parancssori felület (v2) használatával küldi el a feladatot. Ezen a ponton a rendszer egy új munkaterület és függő erőforrások létrehozására vonatkozó kérést küld az Azure-nak a fiókjában. Néhány perc múlva megjelenik az új munkaterület az előfizetési csomóponton.

  6. Állítsa be TeamWorkspace alapértelmezett munkaterületként. Ezzel alapértelmezés szerint a munkaterületen létrehozott erőforrásokat és feladatokat helyezi el. Válassza az Azure Machine Tanulás-munkaterület beállítása gombot a Visual Studio Code állapotsorán, és kövesse az utasításokat az alapértelmezett munkaterületként való beállításhozTeamWorkspace.

A munkaterületekkel kapcsolatos további információkért tekintse meg , hogyan kezelheti az erőforrásokat a VS Code-ban.

A modell betanítása

A betanítási folyamat során a TensorFlow-modell betanítása a benne beágyazott betanítási adatok és tanulási minták feldolgozásával történik az egyes besorolt számjegyek esetében.

A munkaterületekhez és a számítási célokhoz hasonlóan a betanítási feladatok erőforrássablonokkal vannak definiálva. Ebben a mintában a specifikáció a job.yml fájlban van definiálva, amely a következőképpen néz ki:

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

Ez a specifikációs fájl elküld egy betanítási feladatot, amelyet a nemrég létrehozott számítógép-célnak hívnaktensorflow-mnist-example, amely a kódot a train.py Python-szkriptben futtatja.gpu-cluster A használt környezet az Azure Machine Tanulás által biztosított válogatott környezetek egyike, amely a TensorFlow-t és a betanítási szkript futtatásához szükséges egyéb szoftverfüggőségeket tartalmazza. A válogatott környezetekről további információt az Azure Machine Tanulás válogatott környezetekben talál.

A betanítási feladat elküldése:

  1. Nyissa meg a job.yml fájlt.
  2. Kattintson a jobb gombbal a fájlra a szövegszerkesztőben, és válassza az AzureML: Execute YAML (YAML végrehajtása) lehetőséget.

Ezen a ponton a rendszer egy kérést küld az Azure-nak, hogy futtassa a kísérletet a munkaterületen kiválasztott számítási célon. Ez a folyamat több percig is eltarthat. A betanítási feladat futtatásához szükséges időt számos tényező befolyásolja, például a számítási típus és a betanítási adatok mérete. A kísérlet előrehaladásának nyomon követéséhez kattintson a jobb gombbal az aktuális futtatási csomópontra, és válassza a Feladat megtekintése az Azure Portalon lehetőséget.

Amikor megjelenik a külső webhely megnyitását kérő párbeszédpanel, válassza a Megnyitás lehetőséget.

Track experiment progress

A modell betanítása után a futtatási csomópont melletti állapotfelirat a "Kész" értékre frissül.

Következő lépések