EntityRuler s prázdným modelem spaCy
EntityRuler ti umožňuje přidávat entity do doc.ents. Lze ho kombinovat s EntityRecognizer, což je komponenta pipeline spaCy pro rozpoznávání pojmenovaných entit, a tím zvýšit přesnost — nebo ho použít samostatně jako čistě pravidlový systém rozpoznávání entit. V tomto cvičení si procvičíš přidání komponenty EntityRuler do prázdného anglického modelu spaCy a klasifikaci pojmenovaných entit v zadaném textu text pomocí čistě pravidlového přístupu.
Balíček spaCy je už naimportován a prázdný anglický model spaCy je připraven k použití jako nlp. Seznam vzorů patterns pro klasifikaci výrazů OpenAI a Microsoft (bez ohledu na velikost písmen) jako ORG je také připraven.
Toto cvičení je součástí kurzu
Zpracování přirozeného jazyka s knihovnou spaCy
Pokyny k cvičení
- Vytvoř komponentu
EntityRulera přidej ji do pipeline. - Přidej zadané vzory do komponenty
EntityRuler. - Spusť model na zadaném textu
texta vytvoř odpovídající kontejnerDoc. - Vypiš n-tici (text entity a její typ) pro všechny entity v kontejneru
Doc.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
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.____])