Compartilhar via


Como preparar dados e definir um esquema de classificação de texto

Para criar um modelo de classificação de texto personalizado, você precisará de dados de qualidade para treiná-los. Este artigo aborda como selecionar e preparar seus dados, além de definir um esquema. Definir o esquema é a primeira etapa no ciclo de vida de desenvolvimento do projeto e define as classes em que você precisa do modelo para classificar o texto em runtime.

Design de esquema

O esquema define as classes para as quais precisa de seu modelo para classificar o texto em runtime.

  • Revise e identifique: examine os documentos em seu conjunto de dados para estar familiarizado com sua estrutura e conteúdo e, em seguida, identifique como deseja classificar os dados.

    Por exemplo, se estiver classificando tíquetes de suporte, talvez precise das seguintes classes: problema de logon, problema de hardware, problema de conectividade e nova solicitação de equipamento.

  • Evite ambiguidade nas classes: a ambiguidade surge quando as classes especificadas compartilham um significado semelhante ao outro. Quanto mais ambíguo for o esquema, mais dados rotulados poderão ser necessários para diferenciar entre classes diferentes.

    Por exemplo, se estiver classificando receitas de alimentos, elas poderão ser semelhantes a uma extensão. Para diferenciar entre a receita de sobremesa e a receita de prato principal, talvez seja necessário rotular mais exemplos para ajudar seu modelo a distinguir entre as duas classes. Evitar ambiguidade poupa tempo e produz resultados melhores.

  • Dados fora do escopo: ao usar seu modelo na produção, considere adicionar uma classe fora do escopo ao seu esquema se você espera documentos que não pertencem a nenhuma de suas classes. Em seguida, adicione alguns documentos ao seu conjunto de dados para que eles sejam rotulados como fora do escopo. O modelo pode aprender a reconhecer documentos irrelevantes e prever os rótulos deles de acordo.

Seleção de dados

A qualidade dos dados com os quais você treina seu modelo afeta muito o desempenho do modelo.

  • Use dados da vida real que reflitam o espaço de problema do seu domínio para treinar efetivamente seu modelo. É possível usar dados sintéticos para acelerar o processo inicial de treinamento do modelo, mas eles provavelmente serão diferentes dos dados da vida real e tornarão seu modelo menos eficaz quando usado.

  • Equilibre a distribuição de dados o máximo possível sem se desviar da distribuição na vida real.

  • Use dados diversos sempre que possível para evitar sobreajuste do modelo. Menos diversidade nos dados de treinamento pode levar ao aprendizado de modelo de correlações espúrias que podem não existir nos dados da vida real.

  • Evite documentos duplicados em seus dados. Os dados duplicados têm um efeito negativo no processo de treinamento, nas métricas do modelo e no desempenho do modelo.

  • Considere de onde vêm seus dados. Caso se estiver coletando dados de uma pessoa, departamento ou parte de seu cenário, provavelmente não há diversidade que possa ser importante para seu modelo saber mais.

Observação

Se os documentos estiverem em vários idiomas, selecione a opção de vários idiomas durante a criação do projeto e defina a opção de idioma como o idioma da maioria dos seus documentos.

Preparação de dados

Como pré-requisito para criar um projeto de classificação de texto personalizado, os dados de treinamento precisam ser carregados em um contêiner de blob em sua conta de armazenamento. É possível criar e carregar documentos de treinamento do Azure diretamente ou usando a ferramenta Gerenciador de Armazenamento do Azure. Usar a ferramenta Gerenciador de Armazenamento do Azure permite carregar mais dados rapidamente.

É possível apenas usar .txt. documentos para texto personalizado. Se os dados estão em outro formato, você pode usar o comando de análise CLUtils para alterar o formato do arquivo.

É possível carregar um conjuntos de dados com anotações ou sem anotações e rotular seus dados no Language Studio.

Conjunto de testes

Ao definir o conjunto de testes, certifique-se de incluir documentos de exemplo que não estão presentes no conjunto de treinamento. Definir o conjunto de testes é uma etapa importante para calcular o desempenho do modelo. Além disso, verifique se o conjunto de testes inclui documentos que representam todas as classes usadas em seu projeto.

Próximas etapas

Se você ainda não fez isso, crie um projeto de classificação de texto personalizado. Se for a primeira vez que usa a classificação de textos personalizada, considere seguir o guia de início rápido para criar um projeto de exemplo. Você também pode ver os requisitos do projeto para obter mais detalhes sobre o que é necessário para criar um projeto.