Dasar-dasar Natural Language Processing (NLP)

Pemrosesan Bahasa Alami dengan spaCy

Azadeh Mobasher

Principal Data Scientist

Natural Language Processing (NLP)

 

  • Subbidang Kecerdasan Buatan (AI)
  • Membantu komputer memahami bahasa manusia
  • Membantu mengekstrak insight dari data tidak terstruktur
  • Menggabungkan statistika, model pembelajaran mesin, dan model pembelajaran mendalam

 

NLP, subbidang AI

Pemrosesan Bahasa Alami dengan spaCy

Use case NLP

Analisis sentimen  

  • Penggunaan komputer untuk menentukan nada subjektif suatu tulisan

 

Contoh analisis sentimen

Pemrosesan Bahasa Alami dengan spaCy

Use case NLP

Named entity recognition (NER)  

  • Menemukan dan mengklasifikasikan entitas bernama pada teks tidak terstruktur ke dalam kategori pradefinisi
  • Entitas bernama adalah objek dunia nyata seperti orang atau lokasi

 

Contoh NER

Pemrosesan Bahasa Alami dengan spaCy

Use case NLP

 

  • Menghasilkan respons menyerupai manusia untuk input teks, seperti ChatGPT

 

Chatbot

Pemrosesan Bahasa Alami dengan spaCy

Pengenalan spaCy

spaCy adalah pustaka gratis, open-source untuk NLP di Python yang:

  • Dirancang untuk membangun sistem ekstraksi informasi
  • Menyediakan kode siap produksi untuk kasus penggunaan NLP
  • Mendukung 64+ bahasa
  • Tangguh, cepat, dan memiliki pustaka visualisasi

 

spaCy dan NLP

Pemrosesan Bahasa Alami dengan spaCy

Instal dan impor spaCy

 

  • Langkah awal, instal spaCy dengan pengelola paket Python pip
  • Unduh model terlatih spaCy
  • Tersedia beberapa model bahasa Inggris di spacy.io

 

$ python3 pip install spacy
python3 -m spacy download en_core_web_sm
import spacy
nlp = spacy.load("en_core_web_sm")
Pemrosesan Bahasa Alami dengan spaCy

Baca dan proses teks dengan spaCy

  • Model spaCy en_core_web_sm dimuat sebagai objek nlp
  • Objek nlp mengonversi teks menjadi objek Doc (wadah) untuk menyimpan teks terproses

Pemrosesan teks dengan spaCy

Pemrosesan Bahasa Alami dengan spaCy

spaCy dalam praktik

  • Memproses string dengan spaCy
import spacy
nlp = spacy.load("en_core_web_sm")
text = "A spaCy pipeline object is created."
doc = nlp(text)
  • Tokenisasi
    • Token adalah bagian terkecil yang bermakna dari teks.
    • Tokenisasi: proses membagi teks menjadi daftar token bermakna
print([token.text for token in doc])
['A', 'spaCy', 'pipeline', 'object', 'is', 'created', '.']
Pemrosesan Bahasa Alami dengan spaCy

Ayo berlatih!

Pemrosesan Bahasa Alami dengan spaCy

Preparing Video For Download...