Reconhecimento de Entidades Nomeadas
Use a ferramenta Reconhecimento de Entidades Nomeadas para identificar entidades, como pessoas, lugares e coisas, em um texto. A ferramenta aproveita os recursos de reconhecimento de entidades nomeadas no pacote spaCy . Você pode utilizar o conjunto predefinido de entidades ou suas próprias entidades personalizadas.
Requer o Alteryx Intelligence Suite
Esta ferramenta faz parte do Alteryx Intelligence Suite . O Intelligence Suite exige uma licença separada e um instalador complementar para o Designer. Depois de instalar o Designer, instale o Intelligence Suite e inicie sua avaliação gratuita .
Suporte a idiomas
A ferramenta Reconhecimento de Entidades Nomeadas é compatível com inglês, francês, alemão, italiano, português e espanhol.
Componentes da ferramenta
A ferramenta Reconhecimento de Entidades Nomeadas tem quatro âncoras.
Âncora de entrada D : conecte os dados de texto às entidades que você deseja identificar.
Âncora de entrada E (opcional): conecte os dados às entidades personalizadas que você deseja identificar. Esses dados precisam conter os nomes das entidades personalizadas e os rótulos que você deseja usar a fim de treinar o modelo.
Âncora de saída D : gera novas colunas de dados que exibem informações sobre as entidades nos seus dados.
Âncora de saída M : gera um objeto de modelo para uso com novos dados. O objeto de modelo é compatível com a ferramenta Previsão .
Configuração padrão do modelo
Configurar a ferramenta
Arraste a ferramenta para a tela.
Conecte a âncora de entrada D aos dados de texto que contêm as entidades que você deseja identificar.
Selecione o Idioma dos dados de texto.
Selecione a Coluna com texto .
Clique no botão para Executar o fluxo de trabalho.
Lista de entidades padrão em inglês
PERSON: pessoas fictícias e não fictícias.
NORP: nacionalidade, religião ou grupo político.
FAC: instalações, como edifícios, aeroportos, rodovias e pontes.
ORG: organizações, como empresas, agências e instituições.
GPE: entidades geográficas, como países, cidades e estados.
LOC: locais não GPE, como cordilheiras, corpos de água e continentes.
PRODUCT: produtos, como veículos e alimentos. Exclui serviços.
EVENT: acontecimentos, como furacões, guerras e eventos esportivos.
WORK_OF_ART: obras de arte, como livros, músicas e filmes.
LAW: documentos nominativos transformados em leis.
LANGUAGE: idiomas designados.
DATE: entidade de data.
TIME: entidade de hora, menos de um dia.
PERCENT: porcentagem; inclui o símbolo "%" e a palavra "percent" (por cento).
MONEY: valor monetário que inclui a unidade.
QUANTITY: medidas, como altura, peso e distância.
ORDINAL: entidades ordinais, como primeiro, segundo e terceiro.
CARDINAL: numerais que não se enquadram em outra categoria numérica.
Você pode encontrar as listas de entidades padrão para os outros idiomas na documentação do spaCy.
Configuração personalizada do modelo
Caso queira usar suas próprias entidades personalizadas para treinar o modelo, selecione Treinar com novas entidades . O seu conteúdo de origem precisa conter, pelo menos, 20 instâncias de cada entidade personalizada. Conecte suas entidades personalizadas à âncora de entrada E .
Formato da lista de entidades personalizadas
Você pode usar a ferramenta Entrada de Texto para passar suas próprias entidades personalizadas para a âncora de entrada E . A ferramenta usa sua lista de entidades para treinar um novo modelo. Veja a seguir o formato da lista de entidades, com alguns exemplos:
Entidade | Rótulo |
---|---|
Riesling | UVA |
Sauvignon Blanc | UVA |
Pinot Noir | UVA |
Syrah | UVA |
Cabernet Sauvignon | UVA |
Configurar a ferramenta
Arraste a ferramenta para a tela.
Conecte a âncora de entrada D aos dados de texto que contêm as entidades que você deseja identificar.
Conecte a âncora de entrada E à sua lista de entidades personalizadas.
Selecione o Idioma dos dados de texto conectados à âncora de entrada D .
Selecione a Coluna com texto dos dados de texto conectados à âncora de entrada D .
Selecione Treinar com novas entidades .
Selecione a Coluna com entidades da lista de entidades personalizadas conectada à âncora de entrada E .
Selecione a Coluna com rótulos da lista de entidades personalizadas conectada à âncora de entrada E .
Marque a caixa de seleção caso queira Diferenciar maiúsculas de minúsculas no seu modelo.
(Opcional) Configure a seção Treinar modelo . Consulte a seção a seguir para obter detalhes.
Clique no botão para Executar o fluxo de trabalho.
Treinar modelo
Uma época é uma passagem única (para frente e para trás) de todos os dados em um conjunto de treinamento por meio de uma rede neural. As épocas estão relacionadas às iterações, mas não são a mesma coisa. Uma iteração é uma única passagem de todos os dados em um lote do conjunto de treinamento.
Aumentar o número de épocas permite que o modelo aprenda com o conjunto de treinamento por um período maior. No entanto, isso também aumenta o custo computacional.
Você pode aumentar o número de épocas para ajudar a reduzir o erro do modelo. No entanto, em algum momento, o nível da redução de erro pode não compensar o custo computacional gerado. Além disso, aumentar demais o número de épocas pode causar problemas de sobreajuste. Por outro lado, quando não usamos épocas suficientes, pode haver o problema oposto, um subajuste.
Por padrão, a ferramenta usa 10 épocas.
A parada antecipada diz a um método iterativo de machine learning, como a rede neural convolucional utilizada na ferramenta Reconhecimento de Entidades Nomeadas, quando parar o aprendizado. A ferramenta Reconhecimento de Entidades Nomeadas usa a pontuação F1 como a métrica para a parada antecipada.
A parada antecipada é útil quando seu modelo tem problemas de sobreajuste. O sobreajuste ocorre quando o modelo aprende pela memorização das respostas, e não pela identificação dos padrões subjacentes nos dados. Você também pode usar uma parada antecipada para evitar que o algoritmo seja executado por épocas desnecessárias.
Use uma parada antecipada caso tenha receio de que seu modelo possa se sobreajustar aos dados ou não se beneficiar de épocas adicionais.
Por padrão, a ferramenta usa a parada antecipada.
Um lote é um subconjunto do conjunto inteiro de dados de treinamento.
Diminuir o tamanho do lote permite escalonar quantos dados passam por uma rede neural em determinado momento. Isso permite que você treine modelos sem ocupar tanta memória quanto ocuparia se estivesse passando todos os dados pela rede neural de uma só vez. A criação de lotes pode acelerar o treinamento. No entanto, dividir seus dados em lotes também pode aumentar o erro do modelo.
Separe seus dados em lotes caso sua máquina não consiga processar todos os dados de uma vez ou caso você queira reduzir o tempo de treinamento.
Por padrão, a ferramenta usa 32 como o tamanho do lote.
Saída
A âncora de saída D adiciona duas colunas à saída:
entities: essa coluna contém uma saída JSON com uma lista de marcas e descrições de entidades.
entity: entidade encontrada pelo modelo.
label: rótulo da entidade.
character_index: índice do primeiro caractere da palavra no corpus textual. O índice começa em 0.
word_index: índice da palavra no corpus textual. O índice começa em 0.
entity_length: comprimento de caracteres da entidade.
entity_diagram: essa coluna contém seu texto com entidades rotuladas e pode ser visualizada com a ferramenta Navegar .
A âncora de saída M contém um objeto de modelo. Você pode salvar o objeto de modelo e usá-lo em novos dados com a ferramenta Previsão.
Como separar a saída JSON
Para transformar a saída JSON em dados tabulares, use uma combinação das ferramentas Análise JSON , Texto para Colunas e Tabela de Referência Cruzada como neste fluxo de exemplo:
Passe a saída da ferramenta Reconhecimento de Entidades Nomeadas para a entrada da ferramenta Análise JSON.
Selecione a coluna de entidades em Campo JSON .
Selecione Fazer a saída dos valores em um único campo de cadeia de caracteres .
Passe a saída da ferramenta Análise JSON para a entrada da ferramenta Texto para Colunas.
Selecione a coluna "JSON_Name" em Coluna para dividir e defina Delimitadores como um ponto ( . ).
Selecione Dividir em colunas e defina Número de colunas como 3 .
Passe a saída da ferramenta Texto para Colunas para a entrada da ferramenta Tabela de Referência Cruzada.
Configuração da ferramenta Tabela de Referência Cruzada:
Agrupar dados por estes valores : selecione o nome da coluna que contém os dados de texto originais e a segunda coluna JSON_Name dividida (por padrão, é JSON_Name2 ).
Alterar cabeçalhos de coluna : selecione a terceira coluna JSON_Name dividida (por padrão, é JSON_Name3 ).
Valores para novas colunas : selecione JSON_ValueString .
Método para agregar valores : selecione Concatenar .
Execute o fluxo de trabalho. A saída da ferramenta Tabela de Referência Cruzada agora contém a forma tabular da saída da ferramenta Reconhecimento de Entidades Nomeadas.
Perguntas frequentes
O algoritmo prioriza sua lista personalizada.
Por padrão, não. A ferramenta Reconhecimento de Entidades Nomeadas não consegue reconhecer Michael Jordan e Air Jordan como a mesma pessoa. No entanto, você pode treinar um novo modelo para fazer isso passando uma entidade personalizada e uma lista de rótulos. Note que a ferramenta Reconhecimento de Entidades Nomeadas não substitui a ferramenta Encontrar e Substituir. O algoritmo pode escolher outros apelidos para Michael Jordan com base em associações feitas nos dados de origem.
Não, a ferramenta Reconhecimento de Entidades Nomeadas só oferece suporte ao idioma especificado. Por exemplo, se você especifica "Inglês", ela só procura por texto em inglês nos dados de origem. Caso seus dados de origem contenham texto em outros idiomas com suporte na ferramenta (por exemplo, texto em francês), é possível criar outro processo de NER na sua tela para o texto em francês e juntar os resultados no final.