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

Verimli ifade eşleştirme

Bazen tek tek token'ları tanımlayan kalıplar yazmak yerine, tam dizeleri (string) eşleştirmek daha verimlidir. Bu özellikle de sonlu kategoriler için geçerlidir – örneğin dünyadaki tüm ülkeler gibi.

Halihazırda bir ülke listemiz var, bu yüzden bunu bilgi çıkarma betiğimizin temeli olarak kullanalım. Dize adlarının bulunduğu bir liste COUNTRIES değişkeni olarak mevcut. nlp nesnesi ve bir test doc zaten oluşturuldu ve doc.text kabuğa yazdırıldı.

Bu egzersiz

spaCy ile İleri Düzey NLP

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

Egzersiz talimatları

  • PhraseMatcher'ı içe aktar ve paylaşılan vocab ile başlatıp matcher değişkenine ata.
  • İfade kalıplarını ekle ve eşleştiriciyi (matcher) doc üzerinde çağır.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Import the PhraseMatcher and initialize it
from spacy.____ import ____
matcher = ____(____)

# Create pattern Doc objects and add them to the matcher
# This is the faster version of: [nlp(country) for country in COUNTRIES]
patterns = list(nlp.pipe(COUNTRIES))
matcher.add('COUNTRY', None, *patterns)

# Call the matcher on the test document and print the result
matches = ____(____)
print([doc[start:end] for match_id, start, end in matches])
Kodu Düzenle ve Çalıştır