Condividi tramite


Preparare i dati per le attività di visione artificiale con ML automatizzato v1

SI APPLICA A: Python SDK azureml v1

Importante

Alcuni comandi dell'interfaccia della riga di comando (CLI) di Azure in questo articolo usano l'estensione azure-cli-ml, o v1, per Azure Machine Learning. L'assistenza per l'estensione v1 terminerà il 30 settembre 2025. Sarà possibile installare e usare l'estensione v1 fino a tale data.

Consigliamo di passare all'estensione ml, o v2, prima del 30 settembre 2025. Per ulteriori informazioni sull'estensione v2, consultare Estensione dell'interfaccia della riga di comando (CLI) di Azure Machine Learning e Python SDK v2.

Importante

Il supporto per il training di modelli di visione artificiale con ML automatizzato in Azure Machine Learning è una funzionalità di anteprima pubblica sperimentale. Alcune funzionalità potrebbero non essere supportate o potrebbero presentare funzionalità limitate. Per altre informazioni, vedere le Condizioni supplementari per l'uso delle anteprime di Microsoft Azure.

Questo articolo illustra come preparare i dati delle immagini per il training dei modelli di visione artificiale con ML automatizzato in Azure Machine Learning.

Per generare modelli per le attività di visione artificiale con autoML, è necessario portare i dati delle immagini etichettati come input per il training del modello sotto forma di TabularDataset di Azure Machine Learning .

Per assicurarsi che TabularDataset contenga lo schema accettato per l'utilizzo in ML automatizzato, è possibile usare lo strumento di etichettatura dei dati di Azure Machine Learning o uno script di conversione.

Prerequisiti

Etichettatura dei dati di Azure Machine Learning

Se i dati non sono etichettati, è possibile usare lo strumento di etichettatura dati di Azure Machine Learning per etichettare manualmente le immagini. Questo strumento genera automaticamente i dati necessari per il training nel formato accettato.

Consente di creare, gestire e monitorare le attività di etichettatura dei dati per

  • Classificazione immagini (multiclasse e multietichetta)
  • Rilevamento oggetti (rettangolo di selezione)
  • Segmentazione istanza (poligono)

Se si dispone già di un progetto di etichettatura dati e si vogliono usare tali dati, è possibile esportare i dati etichettati come un oggetto TabularDataset di Azure Machine Learning, che può quindi essere usato direttamente con ML automatizzato per il training dei modelli di visione artificiale.

Usare script di conversione

Se i dati sono stati etichettati in formati di dati di visione artificiale più diffusi, ad esempio VOC o COCO, gli script helper per generare file JSONL per i dati di training e convalida sono disponibili negli esempi di notebook.

Se i dati non seguono uno dei formati menzionati in precedenza, è possibile usare uno script personalizzato per generare file di righe JSON. Per generare file di righe JSON, usare gli schemi definiti in Schema per i file JSONL per gli esperimenti di immagine AutoML.

Dopo la conversione dei file di dati nel formato JSONL accettato, è possibile caricarli nell'account di archiviazione in Azure.

Caricare il file JSONL e le immagini nell'archiviazione

Per usare i dati per il training di ML automatizzato, caricare i dati nell'area di lavoro di Azure Machine Learning tramite un archivio dati. L'archivio dati fornisce un meccanismo per caricare o scaricare dati nell'archiviazione in Azure e interagire con essi dalle destinazioni di calcolo remote.

Caricare l'intera directory padre costituita da immagini e file JSONL nell'archivio dati predefinito creato automaticamente al momento della creazione dell'area di lavoro. Questo archivio dati si connette al contenitore di archiviazione BLOB di Azure predefinito creato come parte della creazione dell'area di lavoro.

# Retrieve default datastore that's automatically created when we setup a workspace
ds = ws.get_default_datastore()
ds.upload(src_dir='./fridgeObjects', target_path='fridgeObjects')

Al termine del caricamento dei dati, è possibile creare TabularDataset di Azure Machine Learning. Registrare quindi il set di dati nell'area di lavoro per usarlo in futuro come input per gli esperimenti di Machine Learning automatizzati per i modelli di visione artificiale.

from azureml.core import Dataset
from azureml.data import DataType

training_dataset_name = 'fridgeObjectsTrainingDataset'
# create training dataset
training_dataset = Dataset.Tabular.from_json_lines_files(path=ds.path("fridgeObjects/train_annotations.jsonl"),
                                                         set_column_types={"image_url": DataType.to_stream(ds.workspace)}
                                                        )
training_dataset = training_dataset.register( workspace=ws,name=training_dataset_name)

print("Training dataset name: " + training_dataset.name)

Passaggi successivi