Pipeline spaCy

Pemrosesan Bahasa Alami dengan spaCy

Azadeh Mobasher

Principal Data Scientist

Pipeline spaCy

 

  • spaCy terlebih dahulu melakukan tokenisasi teks untuk menghasilkan objek Doc
  • Doc diproses melalui beberapa langkah dalam processing pipeline

 

import spacy
nlp = spacy.load("en_core_web_sm")

doc = nlp(example_text)
Pemrosesan Bahasa Alami dengan spaCy

Pipeline spaCy

  • Pipeline adalah urutan pipe, atau aktor yang memproses data
  • Contoh pipeline spaCy untuk NER:
    • Tokenisasi
    • Identifikasi entitas bernama
    • Klasifikasi entitas bernama  

Contoh pipeline spaCy untuk NER

print([ent.text for ent in doc.ents])
Pemrosesan Bahasa Alami dengan spaCy

Menambahkan pipe

 

  • sentencizer: komponen pipeline spaCy untuk segmentasi kalimat.
text = " ".join(["This is a test sentence."]*10000)

en_core_sm_nlp = spacy.load("en_core_web_sm") start_time = time.time() doc = en_core_sm_nlp(text)
print(f"Finished processing with en_core_web_sm model in {round((time.time() - start_time)/60.0 , 5)} minutes")
>>> Finished processing with en_core_web_sm model in 0.09332 minutes
Pemrosesan Bahasa Alami dengan spaCy

Menambahkan pipe

 

  • Buat model kosong dan tambahkan pipe sentencizer:
blank_nlp = spacy.blank("en")

blank_nlp.add_pipe("sentencizer")
start_time = time.time() doc = blank_nlp(text) print(f"Finished processing with blank model in {round((time.time() - start_time)/60.0 , 5)} minutes")
>>> Finished processing with blank model in 0.00091 minutes
Pemrosesan Bahasa Alami dengan spaCy

Menganalisis komponen pipeline

  • nlp.analyze_pipes() menganalisis pipeline spaCy untuk menentukan:
    • Atribut yang disetel oleh komponen pipeline
    • Skor yang dihasilkan komponen saat pelatihan
    • Kehadiran semua atribut yang dibutuhkan

 

  • Mengatur pretty ke True akan mencetak tabel, bukan hanya data terstruktur.
import spacy

nlp = spacy.load("en_core_web_sm")
analysis = nlp.analyze_pipes(pretty=True)
Pemrosesan Bahasa Alami dengan spaCy

Menganalisis komponen pipeline

Hasil metode analyze_pipes

Pemrosesan Bahasa Alami dengan spaCy

Ayo berlatih!

Pemrosesan Bahasa Alami dengan spaCy

Preparing Video For Download...