Zacznij terazZacznij za darmo

EntityRuler z pustym modelem spaCy

EntityRuler pozwala dodawać encje do doc.ents. Można go łączyć z EntityRecognizer – komponentem potoku spaCy do rozpoznawania nazwanych encji – w celu zwiększenia dokładności, lub używać samodzielnie jako czysto regułowego systemu rozpoznawania encji. W tym ćwiczeniu przećwiczysz dodawanie komponentu EntityRuler do pustego modelu angielskiego spaCy i klasyfikowanie nazwanych encji w podanym text przy użyciu wyłącznie reguł.

Pakiet spaCy jest już zaimportowany, a pusty angielski model spaCy jest dostępny jako nlp. Lista patterns klasyfikująca OpenAI i Microsoft (pisane małymi literami) jako ORG jest już gotowa do użycia.

To ćwiczenie jest częścią kursu

Przetwarzanie języka naturalnego z użyciem spaCy

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz komponent EntityRuler i dodaj go do potoku.
  • Dodaj podane wzorce do komponentu EntityRuler.
  • Uruchom model na podanym text i utwórz odpowiadający mu kontener Doc.
  • Wyświetl krotki zawierające tekst i typ każdej encji z kontenera Doc.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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.____])
Edytuj i uruchom kod