Criar e explorar o conjunto de dados do Azure Machine Learning com rótulos
Neste artigo, você aprenderá como exportar os rótulos de dados de um projeto de rotulagem de dados do Aprendizado de Máquina do Azure e carregá-los em formatos populares, como um dataframe pandas para exploração de dados.
O que são conjuntos de dados com rótulos
Os conjuntos de dados do Azure Machine Learning com rótulos são chamados de conjuntos de dados rotulados. Esses conjuntos de dados específicos são TabularDatasets com uma coluna de rótulo dedicada e são criados apenas como uma saída de projetos de rotulagem de dados do Aprendizado de Máquina do Azure. Crie um projeto de etiquetagem de dados para etiquetagem de imagem ou etiquetagem de texto. O Machine Learning suporta projetos de etiquetagem de dados para classificação de imagens, multi-rótulo ou multiclasse, e identificação de objetos juntamente com caixas delimitadas.
Pré-requisitos
- Uma subscrição do Azure. Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.
- O SDK do Azure Machine Learning para Python ou acesso ao estúdio do Azure Machine Learning.
- Um espaço de trabalho de Machine Learning. Consulte Criar recursos do espaço de trabalho.
- Acesso a um projeto de rotulagem de dados do Azure Machine Learning. Se você não tiver um projeto de rotulagem, primeiro crie um para rotulagem de imagem ou texto.
Exportar etiquetas de dados
Ao concluir um projeto de rotulagem de dados, você pode exportar os dados de rótulo de um projeto de rotulagem. Isso permite capturar a referência aos dados e seus rótulos e exportá-los no formato COCO ou como um conjunto de dados do Azure Machine Learning.
Use o botão Exportar na página Detalhes do projeto do seu projeto de rotulagem.
COCO
O arquivo COCO é criado no repositório de blob padrão do espaço de trabalho do Azure Machine Learning em uma pasta dentro export/coco.
Nota
Em projetos de deteção de objetos, os valores exportados "bbox": [x,y,width,height]" no arquivo COCO são normalizados. Eles são dimensionados para 1. Exemplo: uma caixa delimitadora no local (10, 10), com 30 pixels de largura, 60 pixels de altura, em uma imagem de 640x480 pixels será anotada como (0,015625. 0,02083, 0,046875, 0,125). Uma vez que os coordintes são normalizados, ele será mostrado como '0.0' como "largura" e "altura" para todas as imagens. A largura e altura reais podem ser obtidas usando a biblioteca Python como OpenCV ou Pillow (PIL).
Conjunto de dados do Azure Machine Learning
Você pode acessar o conjunto de dados exportado do Azure Machine Learning na seção Conjuntos de Dados do seu estúdio do Azure Machine Learning. A página Detalhes do conjunto de dados também fornece código de exemplo para acessar seus rótulos do Python.
Gorjeta
Depois de exportar seus dados rotulados para um conjunto de dados do Azure Machine Learning, você pode usar o AutoML para criar modelos de visão computacional treinados em seus dados rotulados. Saiba mais em Configurar o AutoML para treinar modelos de visão computacional com Python
Explore conjuntos de dados rotulados através de pandas dataframe
Carregue seus conjuntos de dados rotulados em um dataframe pandas para aproveitar bibliotecas de código aberto populares para exploração de dados com o to_pandas_dataframe()
azureml-dataprep
método da classe.
Instale a classe com o seguinte comando shell:
pip install azureml-dataprep
No código a seguir, o animal_labels
conjunto de dados é a saída de um projeto de rotulagem salvo anteriormente no espaço de trabalho.
O conjunto de dados exportado é um TabularDataset.
APLICA-SE A:Python SDK azureml v1
import azureml.core
from azureml.core import Dataset, Workspace
# get animal_labels dataset from the workspace
animal_labels = Dataset.get_by_name(workspace, 'animal_labels')
animal_pd = animal_labels.to_pandas_dataframe()
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
#read images from dataset
img = mpimg.imread(animal_pd['image_url'].iloc(0).open())
imgplot = plt.imshow(img)