ComeçarComece de graça

EntityRuler com modelo spaCy em branco

EntityRuler permite que você adicione entidades a doc.ents. Ele pode ser combinado com o EntityRecognizer, um componente do pipeline do spaCy para reconhecimento de entidades nomeadas, para aumentar a precisão, ou usado sozinho para implementar um sistema de reconhecimento de entidades puramente baseado em regras. Neste exercício, você vai praticar a adição de um componente EntityRuler a um modelo inglês spaCy em branco e classificar entidades nomeadas do text fornecido usando apenas reconhecimento de entidades baseado em regras.

O pacote spaCy já está importado e um modelo inglês spaCy em branco está pronto para você como nlp. Uma lista de patterns para classificar OpenAI e Microsoft em minúsculas como ORG já foi criada para você usar.

Este exercício faz parte do curso

Processamento de Linguagem Natural com spaCy

Ver curso

Instruções do exercício

  • Crie e adicione um componente EntityRuler ao pipeline.
  • Adicione os padrões fornecidos ao componente EntityRuler.
  • Execute o modelo no text fornecido e crie seu respectivo contêiner Doc.
  • Imprima uma tupla (texto e tipos das entidades) para todas as entidades no contêiner Doc

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

nlp = spacy.blank("en")
patterns = [{"label": "ORG", "pattern": [{"LOWER": "openai"}]},
            {"label": "ORG", "pattern": [{"LOWER": "microsoft"}]}]
text = "OpenAI has joined forces with Microsoft."

# Add EntityRuler component to the model
entity_ruler = nlp.____("entity_ruler")

# Add given patterns to the EntityRuler component
entity_ruler.____(____)

# Run the model on a given text
doc = nlp(____)

# Print entities text and type for all entities in the Doc container
print([(ent.____, ent.____) for ent in doc.____])
Editar e executar o código