BaşlayınÜcretsiz Başlayın

spaCy ile özel adlandırılmış varlık oluşturma

spaCy'nin yerleşik adlandırılmış varlıkları yeterli değilse, spaCy'nin EntityRuler() sınıfını kullanarak kendi varlıklarını oluşturabilirsin.

EntityRuler(), kendi varlıklarını oluşturup bir spaCy işlem hattına (pipeline) eklemene olanak tanır.

Önce EntityRuler() sınıfından bir örnek oluşturup mevcut işlem hattı olan nlp'yi geçirirsin.

Ardından örnek üzerinde add_patterns() çağırıp, bir varlıkla etiketlemek istediğin metin patternını içeren bir sözlük (dictionary) geçebilirsin.

Bir pattern oluşturduğunda, bunu add_pipe() kullanarak nlp işlem hattına ekleyebilirsin.

Acme bir teknoloji şirketi olduğundan, "smartphone" patternını "PRODUCT" varlık etiketiyle etiketlemeye karar veriyorsun.

spaCy içe aktarılmış durumda ve call_4_channel_2.wav dosyasından çevrilmiş metni içeren bir doc zaten mevcut.

Bu egzersiz

Python ile Konuşma Dili İşleme

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • EntityRulerspacy.pipeline içinden içe aktar.
  • "pattern" anahtarı için değer olarak "smartphone" ekle.
  • EntityRuler() örneği olan rulernlp işlem hattına ekle.
  • doc içinde yer alan varlık özniteliklerini (attributes) yazdır.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Import EntityRuler class
from spacy.pipeline import ____

# Create EntityRuler instance
ruler = EntityRuler(nlp)

# Define pattern for new entity
ruler.add_patterns([{"label": "PRODUCT", "pattern": ____}])

# Update existing pipeline
nlp.add_pipe(____, before="ner")

# Test new entity
for entity in doc.____:
  print(entity.text, entity.label_)
Kodu Düzenle ve Çalıştır