Klasifikasi token

Natural Language Processing (NLP) in Python

Fouad Trad

Machine Learning Engineer

Klasifikasi teks vs token

Klasifikasi teks

  • Mengklasifikasikan seluruh kalimat atau pasangan teks

Gambar menampilkan tugas klasifikasi teks dan QNLI, seperti di video sebelumnya.

Natural Language Processing (NLP) in Python

Klasifikasi teks vs token

Klasifikasi teks

  • Mengklasifikasikan seluruh kalimat atau pasangan teks

Gambar menampilkan tugas klasifikasi teks dan QNLI, seperti di video sebelumnya.

Klasifikasi token

  • Memberi label pada token dalam kalimat

Gambar menampilkan kalimat yang dipecah per kata, tiap kata berwarna berbeda mewakili kelas berbeda.

  • Named entity recognition (NER)
  • Pelabelan kelas kata (PoS)
Natural Language Processing (NLP) in Python

Named entity recognition (NER)

  • Mengidentifikasi entitas seperti nama, lokasi, organisasi, tanggal, dan lainnya

Gambar menampilkan analisis NER untuk kalimat "Apple opened a new office in Toronto in March 2023", dengan Apple dikenali sebagai organisasi, Toronto sebagai lokasi, dan March 2023 sebagai tanggal.

  • Berguna untuk:
    • Penelusuran informasi
    • Tanya jawab
Natural Language Processing (NLP) in Python

NER dalam kode

from transformers import pipeline

ner_pipeline = pipeline(task="ner",
model="dslim/bert-base-NER",
grouped_entities=True)
ner_results = ner_pipeline("Zara Venn established NovaCore Dynamics in London.")
print(ner_results)
[{'entity_group': 'PER', 'score': np.float32(0.99840075), 'word': 'Zara Venn', 'start': 0, 'end': 9}, 
 {'entity_group': 'ORG', 'score': np.float32(0.99875560), 'word': 'NovaCore Dynamics', 'start': 21, 'end': 38}, 
 {'entity_group': 'LOC', 'score': np.float32(0.99960726), 'word': 'London', 'start': 42, 'end': 48}]
Natural Language Processing (NLP) in Python

Pelabelan kelas kata (PoS)

  • Memberi peran gramatikal (nomina, verba, adjektiva) pada tiap kata

Gambar menampilkan tag PoS untuk kalimat "The quick fox jumps over the lazy dog", di mana "the" adalah determiner, "quick" dan "lazy" adalah adjektiva, "fox" dan "dogs" adalah nomina, "jumps" adalah verba, dan "over" adalah preposisi.

  • Berguna untuk:
    • Parsing sintaksis
    • Koreksi tata bahasa
    • Generasi teks
Natural Language Processing (NLP) in Python

PoS dalam kode

pos_pipeline = pipeline(task="token-classification",

model="vblagoje/bert-english-uncased-finetuned-pos",
grouped_entities=True)
pos_results = pos_pipeline("Zara Venn established NovaCore Dynamics in London.") print(pos_results)
[{'entity_group': 'PROPN', 'score': np.float32(0.9982983), 'word': 'zara venn', 'start': 0, 'end': 9},  
 {'entity_group': 'VERB', 'score': np.float32(0.99940944), 'word': 'established', 'start': 10, 'end': 21},  
 {'entity_group': 'PROPN', 'score': np.float32(0.99455726), 'word': 'novacore dynamics', 'start': 22, 'end': 39},  
 {'entity_group': 'ADP', 'score': np.float32(0.99935526), 'word': 'in', 'start': 40, 'end': 42},  
 {'entity_group': 'PROPN', 'score': np.float32(0.99847955), 'word': 'london', 'start': 43, 'end': 49}]
Natural Language Processing (NLP) in Python

Ayo berlatih!

Natural Language Processing (NLP) in Python

Preparing Video For Download...