NER için EntityRuler
EntityRuler, mevcut bir modelin EntityRecognizer bileşeniyle birleştirilerek doğruluğu artırılabilir. Bu egzersizde, en_core_web_sm modelinin mevcut NER bileşeniyle bir EntityRuler bileşenini birleştirmeyi pratik edeceksin. Model nlp olarak zaten yüklü.
EntityRuler, NER bileşeninden önce eklendiğinde, varlık tanıyıcı mevcut varlık aralıklarına saygı duyar ve adlandırılmış varlık tanıma görevinin doğruluğunu artırmak için EntityRulera eklenen desenlere göre tahminlerini ayarlar.
Bu egzersiz, kursun bir parçasıdır
spaCy ile Natural Language Processing
Egzersiz talimatları
EntityRulerınerbileşeninden öncenlpiçine ekle.- Küçük harfli
new york groupifadesiniORGolarak sınıflandıracak bir token varlık deseni tanımla. patternslistesiniEntityRulerbileşenine ekle.- Modeli çalıştır ve
Dockapsayıcısı için varlık metni ve türünden oluşan ikilileri (tuple) yazdır.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
nlp = spacy.load("en_core_web_sm")
text = "New York Group was built in 1987."
# Add an EntityRuler to the nlp before NER component
ruler = nlp.____("entity_ruler", ____="ner")
# Define a pattern to classify lower cased new york group as ORG
patterns = [{"label": "ORG", "pattern": [{"lower": ____}]}]
# Add the patterns to the EntityRuler component
ruler.____(____)
# Run the model and print entities text and type for all the entities
doc = ____
print([(ent.____, ent.____) for ent in doc.____])