MulaiMulai sekarang secara gratis

EntityRuler dengan multi-pattern di spaCy

EntityRuler memungkinkan Anda menambahkan entitas ke doc.ents dan meningkatkan kinerja named entity recognition. Pada latihan ini, Anda akan berlatih menambahkan komponen EntityRuler ke pipeline nlp yang sudah ada untuk memastikan beberapa entitas diklasifikasikan dengan benar.

Model en_core_web_sm sudah dimuat dan tersedia sebagai nlp. Anda dapat mengakses contoh teks di example_text dan menggunakan nlp serta doc untuk mengakses model spaCy dan kontainer Doc dari example_text masing-masing.

Latihan ini adalah bagian dari kursus

Pemrosesan Bahasa Alami dengan spaCy

Lihat Kursus

Petunjuk latihan

  • Cetak list tuple berisi teks dan tipe entitas dalam example_text dengan model nlp.
  • Definisikan beberapa pola untuk mencocokkan brother dan sisters (huruf kecil) ke label PERSON.
  • Tambahkan komponen EntityRuler ke pipeline nlp dan tambahkan patterns ke EntityRuler.
  • Cetak tuple teks dan tipe entitas untuk example_text dengan model nlp.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

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).____])
Edit dan Jalankan Kode