Kurz: Trénování modelu klasifikace obrázků TensorFlow pomocí rozšíření Visual Studio Code pro Azure Machine Learning (Preview)

PLATÍ PRO: Rozšíření Azure CLI ml v2 (aktuální)

Naučte se trénovat model klasifikace obrázků tak, aby rozpoznával ručně napsaná čísla pomocí TensorFlow a rozšíření editoru Visual Studio Code pro Azure Machine Learning.

Důležité

Tato funkce je v současné době ve verzi Public Preview. Tato verze Preview je poskytována bez smlouvy o úrovni služeb a nedoporučujeme ji pro produkční úlohy. Některé funkce se nemusí podporovat nebo mohou mít omezené možnosti.

Další informace najdete v dodatečných podmínkách použití pro verze Preview v Microsoft Azure.

V tomto kurzu se naučíte následující úlohy:

  • Vysvětlení kódu
  • Vytvoření pracovního prostoru
  • Učení modelu

Požadavky

Vysvětlení kódu

Kód pro tento kurz používá TensorFlow k trénování modelu strojového učení klasifikace obrázků, který kategorizuje ručně psané číslice od 0 do 9. Provede to tak, že vytvoříte neurální síť, která přebírá hodnoty pixelů 28 px x 28 px jako vstup a výstupy seznam 10 pravděpodobností, jeden pro každou klasifikovanou číslici. Toto je ukázka toho, jak data vypadají.

Číslice MNIST

Vytvoření pracovního prostoru

První věcí, kterou musíte udělat k vytvoření aplikace ve službě Azure Machine Learning, je vytvoření pracovního prostoru. Pracovní prostor obsahuje prostředky pro trénování modelů a samotných natrénovaných modelů. Další informace najdete v pracovním prostoru.

  1. Otevřete adresář azureml-examples/cli/jobs/single-step/tensorflow/mnist z komunitního úložiště řízeného v editoru Visual Studio Code.

  2. Na panelu aktivit editoru Visual Studio Code výběrem ikony Azure otevřete zobrazení Azure Machine Learning.

  3. V zobrazení Azure Machine Learning klikněte pravým tlačítkem na uzel předplatného a vyberte Vytvořit pracovní prostor.

    Vytvoření pracovního prostoru

  4. Zobrazí se soubor specifikace. Nakonfigurujte soubor specifikace s následujícími možnostmi.

    $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
    

    Soubor specifikace vytvoří pracovní prostor volaný TeamWorkspace v WestUS2 oblasti. Zbývající možnosti definované v souboru specifikace poskytují popisné názvy, popisy a značky pro pracovní prostor.

  5. Klikněte pravým tlačítkem na soubor specifikace a vyberte AzureML: Spusťte YAML. Vytvoření prostředku používá možnosti konfigurace definované v souboru specifikace YAML a odešle úlohu pomocí rozhraní příkazového řádku (v2). V tomto okamžiku se v Azure vytvoří požadavek na vytvoření nového pracovního prostoru a závislých prostředků ve vašem účtu. Po několika minutách se nový pracovní prostor zobrazí v uzlu předplatného.

  6. Nastavte TeamWorkspace jako výchozí pracovní prostor. Tím umístíte prostředky a úlohy, které v pracovním prostoru vytvoříte ve výchozím nastavení. Na stavovém řádku editoru Visual Studio Code vyberte tlačítko Nastavit pracovní prostor Služby Azure Machine Learning a podle pokynů nastavte TeamWorkspace jako výchozí pracovní prostor.

Další informace o pracovníchprostorch

Trénování modelu

Během trénování se model TensorFlow vytrénuje zpracováním trénovacích dat a vzorů učení vložených do něj pro každou z příslušných číslic, které se klasifikují.

Podobně jako pracovní prostory a cílové výpočetní objekty se trénovací úlohy definují pomocí šablon prostředků. Pro tuto ukázku je specifikace definována v souboru job.yml , který vypadá takto:

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

Tento soubor specifikace odešle trénovací úlohu volanou tensorflow-mnist-example do nedávno vytvořeného gpu-cluster cíle počítače, který spustí kód ve skriptu train.py Pythonu. Použité prostředí je jedním z kurátorovaných prostředí poskytovaných službou Azure Machine Learning, která obsahuje TensorFlow a další softwarové závislosti potřebné ke spuštění trénovacího skriptu. Další informace o kurátorovaných prostředích najdete v kurátorovaných prostředích služby Azure Machine Learning.

Odeslání trénovací úlohy:

  1. Otevřete soubor job.yml.
  2. Klikněte pravým tlačítkem na soubor v textovém editoru a vyberte AzureML: Spusťte YAML.

V tomto okamžiku se do Azure odešle žádost o spuštění experimentu na vybraném cílovém výpočetním objektu ve vašem pracovním prostoru. Tento proces trvá několik minut. Doba spuštění trénovací úlohy má vliv na několik faktorů, jako je výpočetní typ a velikost trénovacích dat. Pokud chcete sledovat průběh experimentu, klikněte pravým tlačítkem myši na aktuální uzel spuštění a vyberte Zobrazit úlohu na webu Azure Portal.

Když se zobrazí dialogové okno s žádostí o otevření externího webu, vyberte Otevřít.

Sledování průběhu experimentu

Po trénování modelu se popisek stavu vedle uzlu spuštění aktualizuje na Dokončeno.

Další kroky