Partilhar 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á-lo. Este artigo aborda como você deve selecionar e preparar seus dados, juntamente com a definição de um esquema. Definir o esquema é a primeira etapa no ciclo de vida de desenvolvimento do projeto e define as classes em que você precisa que seu modelo classifique seu texto em tempo de execução.

Design de esquema

O esquema define as classes em que você precisa do modelo para classificar o texto em tempo de execução.

  • Revisar e identificar: revise documentos em seu conjunto de dados para estar familiarizado com sua estrutura e conteúdo e, em seguida, identifique como você deseja classificar seus dados.

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

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

    Por exemplo, se você estiver classificando receitas de alimentos, elas podem ser semelhantes até certo ponto. Para diferenciar entre receita de sobremesa e receita de prato principal, você pode precisar rotular mais exemplos para ajudar seu modelo a distinguir entre as duas classes. Evitar a ambiguidade poupa tempo e produz melhores resultados.

  • Dados fora do escopo: ao usar seu modelo em 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 serem rotulados como fora do escopo. O modelo pode aprender a reconhecer documentos irrelevantes e prever seus rótulos 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 problemas do seu domínio para treinar seu modelo de forma eficaz. Você pode usar dados sintéticos para acelerar o processo de treinamento inicial do modelo, mas eles provavelmente serão diferentes dos dados da vida real e tornarão seu modelo menos eficaz quando usado.

  • Equilibre sua distribuição de dados tanto quanto possível sem se desviar muito da distribuição na vida real.

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

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

  • Considere a origem dos seus dados. Se você estiver coletando dados de uma pessoa, departamento ou parte do seu cenário, provavelmente está perdendo diversidade que pode ser importante para seu modelo aprender.

Nota

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

Preparação de dados

Como pré-requisito para criar um projeto de classificação de texto personalizado, seus dados de treinamento precisam ser carregados em um contêiner de blob em sua conta de armazenamento. Você pode 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 que você carregue mais dados rapidamente.

Você só pode usar .txto . documentos para texto personalizado. Se os dados estiverem em outro formato, você poderá usar o comando CLUtils parse para alterar o formato do arquivo.

Você pode carregar um conjunto de dados anotado ou pode carregar um conjunto de dados não anotado 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, certifique-se de que o conjunto de testes inclua documentos que representem todas as classes usadas em seu projeto.

Próximos passos

Se ainda não o fez, crie um projeto de classificação de texto personalizado. Se for a primeira vez que você usa a classificação de texto personalizada, considere seguir o 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 você precisa para criar um projeto.