शुरू करेंमुफ़्त में शुरू करें

spaCy में मल्टी-पैटर्न्स के साथ EntityRuler

EntityRuler आपको doc.ents में एंटिटीज़ जोड़ने देता है और इसकी named entity recognition परफॉर्मेंस को बेहतर करता है. इस अभ्यास में, आप एक मौजूदा nlp पाइपलाइन में EntityRuler कंपोनेंट जोड़ने का अभ्यास करेंगे ताकि कई एंटिटीज़ सही तरह से क्लासिफाई हों.

en_core_web_sm मॉडल पहले से लोड है और nlp के रूप में उपलब्ध है. आप example_text में एक उदाहरण टेक्स्ट एक्सेस कर सकते हैं और क्रमशः nlp और doc का उपयोग करके spaCy मॉडल और example_text का Doc कंटेनर एक्सेस कर सकते हैं.

यह अभ्यास पाठ्यक्रम का हिस्सा है

spaCy के साथ Natural Language Processing

पाठ्यक्रम देखें

अभ्यास निर्देश

  • nlp मॉडल के साथ example_text में एंटिटीज़ के टेक्स्ट और टाइप के ट्युपल्स की लिस्ट प्रिंट करें.
  • brother और sisters के लोअर-केस्ड रूपों को PERSON लेबल से मैच करने के लिए कई पैटर्न डिफाइन करें.
  • nlp पाइपलाइन में एक EntityRuler कंपोनेंट जोड़ें और patterns को EntityRuler में ऐड करें.
  • nlp मॉडल के साथ example_text के लिए एंटिटीज़ के टेक्स्ट और टाइप का ट्युपल प्रिंट करें.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

nlp = spacy.load("en_core_web_md")

# Print a list of tuples of entities text and types in the example_text
print("Before EntityRuler: ", [____ for ____ in nlp(____).____], "\n")

# Define pattern to add a label PERSON for lower cased sisters and brother entities
patterns = [{"label": ____, "pattern": [{"lower": ____}]},
            {"label": ____, "pattern": [{"lower": ____}]}]

# Add an EntityRuler component and add the patterns to the ruler
ruler = nlp.____("entity_ruler")
ruler.____(____)

# Print a list of tuples of entities text and types
print("After EntityRuler: ", [(ent.____, ent.____) for ent in nlp(example_text).____])
कोड संपादित करें और चलाएँ