Sdílet prostřednictvím


Příprava dat pro úlohy počítačového zpracování obrazu pomocí automatizovaného strojového učení

PLATÍ PRO:Rozšíření Azure CLI ml v2 (aktuální)Python SDK azure-ai-ml v2 (aktuální)

Důležité

Podpora trénování modelů počítačového zpracování obrazu pomocí automatizovaného strojového učení ve službě Azure Machine Learning je experimentální funkce ve verzi Public Preview. 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 článku se dozvíte, jak připravit image dat pro trénování modelů počítačového zpracování obrazu pomocí automatizovaného strojového učení ve službě Azure Machine Learning. Pokud chcete vygenerovat modely pro úlohy počítačového zpracování obrazu pomocí automatizovaného strojového MLTableučení, musíte jako vstup pro trénování modelu použít označení obrazová data ve formě .

Můžete vytvořit z MLTable označených trénovacích dat ve formátu JSONL. Pokud jsou vaše trénovací data označená v jiném formátu, například Pascal Visual Object Classes (VOC) nebo COCO, můžete ho pomocí skriptu převodu převést na JSONL a pak vytvořit MLTable. Alternativně můžete k ručnímu označování obrázků použít nástroj popisování dat služby Azure Machine Learning. Potom vyexportujte označená data, která se použijí pro trénování modelu AutoML.

Požadavky

Získání dat s popiskem

Abyste mohli trénovat modely počítačového zpracování obrazu pomocí AutoML, musíte získat trénovací data s popisky. Obrázky je potřeba nahrát do cloudu. Poznámky popisků musí být ve formátu JSONL. K označení dat můžete použít nástroj Popisování dat služby Azure Machine Learning nebo můžete začít s předem označenými daty obrázků.

Použití nástroje popisování dat ve službě Azure Machine Learning k označení trénovacích dat

Pokud nemáte předem označená data, můžete k ručnímu popisování obrázků použít nástroj pro popisování dat služby Azure Machine Learning. Tento nástroj automaticky vygeneruje data potřebná pro trénování v přijatém formátu. Další informace naleznete v tématu Nastavení projektu popisování obrázků.

Nástroj pomáhá vytvářet, spravovat a monitorovat úlohy popisování dat pro:

  • Klasifikace obrázků (více tříd a více popisků)
  • Detekce objektů (ohraničující rámeček)
  • Segmentace instancí (mnohoúhelník)

Pokud už máte označená data, která chcete použít, exportujte tato označená data jako datovou sadu Azure Machine Learning a přejděte k datové sadě na kartě Datové sady v studio Azure Machine Learning. Tuto exportovanou datovou sadu můžete předat jako vstup ve azureml:<tabulardataset_name>:<version> formátu. Další informace najdete v tématu Export štítků.

Tady je příklad předání existující datové sady jako vstupu pro trénování modelů počítačového zpracování obrazu.

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

training_data:
  path: azureml:odFridgeObjectsTrainingDataset:1
  type: mltable
  mode: direct

Použití předem označených trénovacích dat z místního počítače

Pokud jste označili data, která chcete použít k trénování modelu, nahrajte obrázky do Azure. Obrázky můžete nahrát do výchozí služby Azure Blob Storage pracovního prostoru služby Azure Machine Learning. Zaregistrujte ho jako datový asset. Další informace najdete v tématu Vytváření a správa datových prostředků.

Následující skript nahraje data obrázků na místním počítači na cestě ./data/odFridgeObjects do úložiště dat ve službě Azure Blob Storage. Potom vytvoří nový datový prostředek s názvem fridge-items-images-object-detection v pracovním prostoru Azure Machine Learning.

Pokud již existuje datový prostředek s názvem fridge-items-images-object-detection v pracovním prostoru Azure Machine Learning, kód aktualizuje číslo verze datového prostředku a odkazuje ho na nové místo, kde se nahrála data obrázku.

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

Vytvořte soubor .yml s následující konfigurací.

$schema: https://azuremlschemas.azureedge.net/latest/data.schema.json
name: fridge-items-images-object-detection
description: Fridge-items images Object detection
path: ./data/odFridgeObjects
type: uri_folder

Pokud chcete nahrát obrázky jako datový prostředek, spusťte následující příkaz CLI v2 s cestou k souboru .yml , názvu pracovního prostoru, skupině prostředků a ID předplatného.

az ml data create -f [PATH_TO_YML_FILE] --workspace-name [YOUR_AZURE_WORKSPACE] --resource-group [YOUR_AZURE_RESOURCE_GROUP] --subscription [YOUR_AZURE_SUBSCRIPTION]

Pokud už máte data v existujícím úložišti dat, můžete z něj vytvořit datový asset. Zadejte cestu k datům v úložišti dat místo cesty místního počítače. Aktualizujte předchozí kód následujícím fragmentem kódu.

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

Vytvořte soubor .yml s následující konfigurací.

$schema: https://azuremlschemas.azureedge.net/latest/data.schema.json
name: fridge-items-images-object-detection
description: Fridge-items images Object detection
path: azureml://subscriptions/<my-subscription-id>/resourcegroups/<my-resource-group>/workspaces/<my-workspace>/datastores/<my-datastore>/paths/<path_to_image_data_folder>
type: uri_folder

V dalším kroku získejte poznámky popisků ve formátu JSONL. Schéma označených dat závisí na úloze počítačového zpracování obrazu. Další informace o požadovaném schématu JSONL pro jednotlivé typy úloh najdete v tématu Schémata dat pro trénování modelů počítačového zpracování obrazu pomocí automatizovaného strojového učení.

Pokud jsou trénovací data v jiném formátu, například pascal VOC nebo COCO, pomocné skripty můžou data převést na JSONL. Skripty jsou k dispozici v příkladech poznámkového bloku.

Po vytvoření souboru .jsonl ho můžete zaregistrovat jako datový prostředek pomocí uživatelského rozhraní. Ujistěte se, že jste vybrali stream typ v oddílu schématu, jak je znázorněno v této animaci.

Animace znázorňující, jak zaregistrovat datový asset ze souborů jsonl

Použití předem označených trénovacích dat ze služby Azure Blob Storage

Pokud se vaše trénovací data s popiskem nacházejí v kontejneru ve službě Azure Blob Storage, můžete k ní přistupovat přímo. Vytvořte úložiště dat pro tento kontejner. Další informace najdete v tématu Vytváření a správa datových prostředků.

Vytvoření tabulky MLTable

Jakmile jsou označená data ve formátu JSONL, můžete je použít k vytvoření MLTable , jak je znázorněno v tomto fragmentu kódu yaml. MLtable zabalí vaše data do spotřebního objektu pro trénování.

paths:
  - file: ./train_annotations.jsonl
transformations:
  - read_json_lines:
        encoding: utf8
        invalid_lines: error
        include_path_column: false
  - convert_column_types:
      - columns: image_url
        column_type: stream_info

Potom můžete předat MLTable jako datový vstup pro trénovací úlohu AutoML. Další informace najdete v tématu Nastavení AutoML pro trénování modelů počítačového zpracování obrazu.