Configurar um projeto de etiquetagem de texto e exportar etiquetas

No Aprendizado de Máquina do Azure, saiba como criar e executar projetos de rotulagem de dados para rotular dados de texto. Especifique um único rótulo ou vários rótulos para aplicar a cada item de texto.

Você também pode usar a ferramenta de rotulagem de dados no Aprendizado de Máquina do Azure para criar um projeto de rotulagem de imagem.

Recursos de rotulagem de texto

A rotulagem de dados do Aprendizado de Máquina do Azure é uma ferramenta que você pode usar para criar, gerenciar e monitorar projetos de rotulagem de dados. Utilize-o para:

  • Coordene dados, rótulos e membros da equipe para gerenciar com eficiência as tarefas de rotulagem.
  • Acompanhe o progresso e mantenha a fila de tarefas de rotulagem incompletas.
  • Inicie e pare o projeto e controle o progresso da rotulagem.
  • Revise e exporte os dados rotulados como um conjunto de dados do Azure Machine Learning.

Importante

Os dados de texto com os quais você trabalha na ferramenta de rotulagem de dados do Aprendizado de Máquina do Azure devem estar disponíveis em um armazenamento de dados do Armazenamento de Blob do Azure. Se você não tiver um armazenamento de dados existente, poderá carregar seus arquivos de dados para um novo armazenamento de dados ao criar um projeto.

Estes formatos de dados estão disponíveis para dados de texto:

  • .txt: Cada arquivo representa um item a ser rotulado.
  • .csv ou .tsv: Cada linha representa um item que é apresentado ao rotulador. Você decide quais colunas o rotulador pode ver quando rotula a linha.

Pré-requisitos

Use estes itens para configurar a rotulagem de texto no Aprendizado de Máquina do Azure:

  • Os dados que você deseja rotular, em arquivos locais ou no Armazenamento de Blobs do Azure.
  • O conjunto de rótulos que você deseja aplicar.
  • As instruções para rotulagem.
  • Uma subscrição do Azure. Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.
  • Uma área de trabalho do Azure Machine Learning. Consulte Criar um espaço de trabalho do Azure Machine Learning.

Criar um projeto de rotulagem de texto

Os projetos de rotulagem são administrados no Azure Machine Learning. Use a página Rotulagem de dados no Machine Learning para gerenciar seus projetos.

Se seus dados já estiverem no Armazenamento de Blobs do Azure, verifique se eles estão disponíveis como um armazenamento de dados antes de criar o projeto de rotulagem.

  1. Para criar um projeto, selecione Adicionar projeto.

  2. Em Nome do projeto, insira um nome para o projeto.

    Não é possível reutilizar o nome do projeto, mesmo que você exclua o projeto.

  3. Para criar um projeto de rotulagem de texto, para Tipo de mídia, selecione Texto.

  4. Para Tipo de tarefa Rotulagem, selecione uma opção para o seu cenário:

    • Para aplicar apenas um único rótulo a cada parte do texto de um conjunto de rótulos, selecione Classificação de texto Multiclasse.
    • Para aplicar um ou mais rótulos a cada parte do texto de um conjunto de rótulos, selecione Classificação de texto Multirótulo.
    • Para aplicar rótulos a palavras de texto individuais ou a várias palavras de texto em cada entrada, selecione Reconhecimento de Entidade Nomeada de Texto.

    Screenshot that shows creating a labeling project for text labeling.

  5. Selecione Seguinte para continuar.

Adicionar força de trabalho (opcional)

Selecione Usar uma empresa de rotulagem de fornecedor do Azure Marketplace somente se você contratou uma empresa de rotulagem de dados do Azure Marketplace. Em seguida, selecione o fornecedor. Se o seu fornecedor não aparecer na lista, desmarque esta opção.

Certifique-se de entrar em contato primeiro com o fornecedor e assinar um contrato. Para obter mais informações, consulte Trabalhar com uma empresa fornecedora de rotulagem de dados (visualização).

Selecione Seguinte para continuar.

Selecionar ou criar um conjunto de dados

Se você já criou um conjunto de dados que contém seus dados, selecione-o na lista suspensa Selecione um conjunto de dados existente. Você também pode selecionar Criar um conjunto de dados para usar um armazenamento de dados existente do Azure ou para carregar arquivos locais.

Nota

Um projeto não pode conter mais de 500.000 arquivos. Se o conjunto de dados exceder essa contagem de arquivos, somente os primeiros 500.000 arquivos serão carregados.

Criar um conjunto de dados a partir de um armazenamento de dados do Azure

Em muitos casos, você pode carregar arquivos locais. No entanto, o Gerenciador de Armazenamento do Azure fornece uma maneira mais rápida e robusta de transferir uma grande quantidade de dados. Recomendamos o Storage Explorer como a maneira padrão de mover arquivos.

Para criar um conjunto de dados a partir de dados que já estão armazenados no Armazenamento de Blob:

  1. Selecione Criar.
  2. Em Nome, insira um nome para o conjunto de dados. Opcionalmente, insira uma descrição.
  3. Escolha o tipo de conjunto de dados:
    • Se você estiver usando um arquivo .csv ou .tsv e cada linha contiver uma resposta, selecione Tabular.
    • Se você estiver usando arquivos .txt separados para cada resposta, selecione Arquivo.
  4. Selecione Seguinte.
  5. Selecione Do armazenamento do Azure e, em seguida, selecione Avançar.
  6. Selecione o armazenamento de dados e, em seguida, selecione Avançar.
  7. Se os dados estiverem em uma subpasta dentro do Armazenamento de Blobs, escolha Procurar para selecionar o caminho.
    • Para incluir todos os arquivos nas subpastas do caminho selecionado, acrescente /** ao caminho.
    • Para incluir todos os dados no contêiner atual e suas subpastas, acrescente **/*.* ao caminho.
  8. Selecione Criar.
  9. Selecione o ativo de dados que você criou.

Criar um conjunto de dados a partir dos dados carregados

Para carregar diretamente os seus dados:

  1. Selecione Criar.
  2. Em Nome, insira um nome para o conjunto de dados. Opcionalmente, insira uma descrição.
  3. Escolha o tipo de conjunto de dados:
    • Se você estiver usando um arquivo .csv ou .tsv e cada linha contiver uma resposta, selecione Tabular.
    • Se você estiver usando arquivos .txt separados para cada resposta, selecione Arquivo.
  4. Selecione Seguinte.
  5. Selecione De arquivos locais e, em seguida, selecione Avançar.
  6. (Opcional) Selecione um armazenamento de dados. O padrão é carregado para o repositório de blob padrão (workspaceblobstore) para seu espaço de trabalho do Machine Learning.
  7. Selecione Seguinte.
  8. Selecione Carregar>arquivos ou Carregar>pasta de upload para selecionar os arquivos ou pastas locais a serem carregados.
  9. Localize os seus ficheiros ou pastas na janela do browser e, em seguida, selecione Abrir.
  10. Continue a selecionar Carregar até especificar todos os seus arquivos e pastas.
  11. Opcionalmente, marque a caixa de seleção Substituir, se já existir . Verifique a lista de arquivos e pastas.
  12. Selecione Seguinte.
  13. Confirme os detalhes. Selecione Voltar para modificar as configurações ou selecione Criar para criar o conjunto de dados.
  14. Por fim, selecione o ativo de dados que você criou.

Configurar atualização incremental

Se você planeja adicionar novos arquivos de dados ao seu conjunto de dados, use a atualização incremental para adicionar os arquivos ao seu projeto.

Quando a opção Habilitar atualização incremental em intervalos regulares é definida, o conjunto de dados é verificado periodicamente quanto a novos arquivos a serem adicionados a um projeto com base na taxa de conclusão da rotulagem. A verificação de novos dados para quando o projeto contém o máximo de 500.000 arquivos.

Selecione Habilitar atualização incremental em intervalos regulares quando desejar que seu projeto monitore continuamente novos dados no armazenamento de dados.

Desmarque a seleção se não quiser que novos arquivos no armazenamento de dados sejam adicionados automaticamente ao seu projeto.

Importante

Não crie uma nova versão para o conjunto de dados que deseja atualizar. Se você fizer isso, as atualizações não serão vistas porque o projeto de rotulagem de dados está fixado à versão inicial. Em vez disso, use o Gerenciador de Armazenamento do Azure para modificar seus dados na pasta apropriada no Armazenamento de Blob.

Além disso, não remova dados. Remover dados do conjunto de dados que o seu projeto utiliza causa um erro no projeto.

Depois que o projeto for criado, use a guia Detalhes para alterar a atualização incremental, exibir o carimbo de data/hora da última atualização e solicitar uma atualização imediata dos dados.

Nota

Projetos que usam entrada de conjunto de dados tabular (.csv ou .tsv) podem usar a atualização incremental. Mas a atualização incremental apenas adiciona novos arquivos tabulares. A atualização não reconhece alterações em arquivos tabulares existentes.

Especificar categorias de rótulos

Na página Categorias de rótulo, especifique um conjunto de classes para categorizar seus dados.

A precisão e a velocidade das suas rotuladoras são afetadas pela sua capacidade de escolher entre classes. Por exemplo, em vez de especificar o género e a espécie completos para plantas ou animais, utilize um código de campo ou abreviar o género.

Você pode usar uma lista simples ou criar grupos de rótulos.

  • Para criar uma lista simples, selecione Adicionar categoria de rótulo para criar cada rótulo.

    Screenshot that shows how to add a flat structure of labels.

  • Para criar rótulos em grupos diferentes, selecione Adicionar categoria de rótulo para criar os rótulos de nível superior. Em seguida, selecione o sinal de adição (+) em cada nível superior para criar o próximo nível de rótulos para essa categoria. Você pode criar até seis níveis para qualquer agrupamento.

    Screenshot that shows how to add groups of labels.

Você pode selecionar rótulos em qualquer nível durante o processo de marcação. Por exemplo, os rótulos Animal, Animal/Cat, Animal/Dog, Color, Color/Black, Color/White, e Color/Silver são todas opções disponíveis para um rótulo. Em um projeto multi-label, não há necessidade de escolher uma de cada categoria. Se essa for a sua intenção, certifique-se de incluir essas informações em suas instruções.

Descrever a tarefa de rotulagem de texto

É importante explicar claramente a tarefa de rotulagem. Na página Instruções de rotulagem, você pode adicionar um link para um site externo que tenha instruções de rotulagem ou pode fornecer instruções na caixa de edição da página. Mantenha as instruções orientadas para tarefas e adequadas ao público. Considere estas perguntas:

  • Quais são os rótulos que os rotuladores verão e como escolherão entre eles? Existe algum texto de referência a que se possa referir?
  • O que devem fazer se nenhum rótulo parecer adequado?
  • O que devem fazer se vários rótulos parecerem adequados?
  • Que limiar de confiança devem aplicar a um rótulo? Você quer o melhor palpite da rotuladora se ela não tiver certeza?
  • O que devem fazer com objetos de interesse parcialmente ocluídos ou sobrepostos?
  • O que eles devem fazer se um objeto de interesse for cortado pela borda da imagem?
  • O que devem fazer se acharem que cometeram um erro depois de apresentarem um rótulo?
  • O que eles devem fazer se descobrirem problemas de qualidade de imagem, incluindo más condições de iluminação, reflexos, perda de foco, fundo indesejado incluído, ângulos de câmera anormais e assim por diante?
  • O que eles devem fazer se vários revisores tiverem opiniões diferentes sobre a aplicação de um rótulo?

Nota

Os rotuladores podem selecionar as primeiras nove etiquetas usando as teclas numéricas de 1 a 9.

Controlo de qualidade (pré-visualização)

Para obter etiquetas mais precisas, use a página Controle de qualidade para enviar cada item para várias rotuladoras.

Importante

A rotulagem de consenso está atualmente em pré-visualização pública.

A versão de visualização é fornecida sem um contrato de nível de serviço e não é recomendada para cargas de trabalho de produção. Algumas funcionalidades poderão não ser suportadas ou poderão ter capacidades limitadas.

Para obter mais informações, veja Termos Suplementares de Utilização para Pré-visualizações do Microsoft Azure.

Para que cada item seja enviado para vários rotuladores, selecione Habilitar rotulagem de consenso (visualização). Em seguida, defina valores para Rotuladoras mínimas e Rotuladoras máximas para especificar quantas rotuladoras usar. Certifique-se de que tem tantas etiquetadoras disponíveis quanto o seu número máximo. Não é possível alterar essas configurações após o início do projeto.

Se se chegar a um consenso a partir do número mínimo de rotuladores, o item é rotulado. Se não se chegar a um consenso, o item é enviado para mais rotuladoras. Se não houver consenso depois que o item for para o número máximo de rotuladores, seu status é Revisão de necessidades e o proprietário do projeto é responsável por rotular o item.

Usar rotulagem de dados assistida por ML

Para acelerar as tarefas de rotulagem, a página de rotulagem assistida por ML pode acionar modelos automáticos de aprendizado de máquina. A rotulagem assistida por aprendizado de máquina (ML) pode lidar com entradas de dados de texto de arquivo (.txt) e tabular (.csv).

Para usar a rotulagem assistida por ML:

  1. Selecione Ativar rotulagem assistida por ML.
  2. Selecione o idioma do conjunto de dados para o projeto. Esta lista mostra todos os idiomas suportados pela classe TextDNNLanguages.
  3. Especifique um destino de computação a ser usado. Se você não tiver um destino de computação em seu espaço de trabalho, esta etapa criará um cluster de computação e o adicionará ao seu espaço de trabalho. O cluster é criado com um mínimo de zero nós e não custa nada quando não está em uso.

Mais informações sobre a rotulagem assistida por ML

No início do seu projeto de rotulagem, os itens são embaralhados em uma ordem aleatória para reduzir possíveis vieses. No entanto, o modelo treinado reflete quaisquer vieses presentes no conjunto de dados. Por exemplo, se 80% dos seus itens forem de uma única classe, aproximadamente 80% dos dados usados para treinar o modelo serão incluídos nessa classe.

Para treinar o modelo DNN de texto que a rotulagem assistida por ML usa, o texto de entrada por exemplo de treinamento é limitado a aproximadamente as primeiras 128 palavras do documento. Para entrada tabular, todas as colunas de texto são concatenadas antes que esse limite seja aplicado. Este limite prático permite que o modelo de formação seja concluído num período de tempo razoável. O texto real em um documento (para entrada de arquivo) ou conjunto de colunas de texto (para entrada tabular) pode exceder 128 palavras. O limite refere-se apenas ao que o modelo usa internamente durante o processo de treinamento.

O número de itens rotulados necessário para iniciar a etiquetagem assistida não é um número fixo. Este número pode variar significativamente de um projeto de etiquetagem para outro. A variância depende de muitos fatores, incluindo o número de classes de rótulos e a distribuição de rótulos.

Quando você usa o rótulo de consenso, o rótulo de consenso é usado para treinamento.

Como os rótulos finais ainda dependem da entrada da rotuladora, essa tecnologia às vezes é chamada de rotulagem human-in-the-loop .

Nota

A rotulagem de dados assistida por ML não suporta contas de armazenamento padrão protegidas por trás de uma rede virtual. Você deve usar uma conta de armazenamento não padrão para rotulagem de dados assistida por ML. A conta de armazenamento não padrão pode ser protegida atrás da rede virtual.

Pré-rotulagem

Depois de enviar rótulos suficientes para treinamento, o modelo treinado é usado para prever tags. O rotulador agora vê páginas que mostram rótulos previstos já presentes em cada item. Em seguida, a tarefa envolve a revisão dessas previsões e a correção de quaisquer itens rotulados incorretamente antes do envio da página.

Depois de treinar o modelo de aprendizado de máquina em seus dados rotulados manualmente, o modelo é avaliado em um conjunto de teste de itens rotulados manualmente. A avaliação ajuda a determinar a precisão do modelo em diferentes limiares de confiança. O processo de avaliação estabelece um limiar de confiança acima do qual o modelo é suficientemente preciso para mostrar pré-rótulos. O modelo é então avaliado em relação a dados não rotulados. Os itens que têm previsões mais confiáveis do que o limite são usados para pré-rotulagem.

Inicializar o projeto de rotulagem de texto

Depois que o projeto de rotulagem é inicializado, alguns aspetos do projeto são imutáveis. Não é possível alterar o tipo de tarefa ou o conjunto de dados. Você pode modificar rótulos e a URL para a descrição da tarefa. Analise cuidadosamente as configurações antes de criar o projeto. Depois de enviar o projeto, você retorna à página de visão geral de Rotulagem de Dados, que mostra o projeto como Inicializando.

Nota

Esta página pode não ser atualizada automaticamente. Após uma pausa, atualize manualmente a página para ver o status do projeto como Criado.

Resolução de Problemas

Para problemas ao criar um projeto ou acessar dados, consulte Solucionar problemas de rotulagem de dados.

Próximos passos