2. What is NLP??
Wiki: Natural language processing (NLP) is a field of
computer science, artificial intelligence, and computational
linguistics concerned with the interactions between
computers and human (natural) languages.
ML in NLP 2
3. Go beyond the keyword matching
Identify the structure and meaning of words, sentences,
texts and conversations
Deep understanding of broad language
NLP is all around us
ML in NLP 3
4. Tujuan dari NLP :
Membuat System yang dapat Memahami bahasa alami (natural languange)
7. Example: Siri
Siri contains
Speech recognition
Language analysis
Dialog processing
Text to speech
Image: Wikipedia
21. Sintaksis
• Pengetahuan tentang urutan kata dalam pembentukan kalimat.
• Contoh:
Kalimat Subyek, Predikat
Subyek Determinan, KataBenda
Predikat KataKerja, KataBenda
22. Semantik
• Mempelajari arti suatu kata pada kalimat yang utuh.
• Contoh:
– Ayahku datang membawa buah tangan
– Saya mau tahu. (tahu = mengerti)- saya mau tahu. (tahu = makanan)
24. Kategori Kata
NOUN Kata benda Bangku, awan, tetikus
VERB Kata kerja Belajar, lari, makan
ADJ Kata sifat Ungu, tinggi, lucu
ADV Kata keterangan Yang biru / dengan lincah
DETERMINER Kata penentu Itu, ini
PUNCT Tanda baca (.) / (,) / (?) / (!) dll
PRONOUN Kata ganti Dia, kamu, mereka
ADP Preposisi Di atas, di bawah
SYM Simbol $ / @ /
NUM Angka 1 / 3 / 45 / 1975
X Lain-lain
27. Parsing
• Suatu proses menganalisa suatu kumpulan kata dengan
memisahkan kata-kata itu dan menentukan struktur sintaktis
dari tiap kata tersebut.
• Mempunyai 2 pendekatan:
– Top-down parsing
– Bottom-up parsing
31. Parsing Resources
• SpaCy
Python, high accuracy, fast
https://spacy.io/
• NLTK
Python, low accuracy, fast
https://www.nltk.org/
32. Masalah pada POS Tagger
• Polysemi (ambigu)
– Sebuah kata dapat memiliki lebih dari 1 jenis kata, tergantung dari kalimat
tempat kata tersebut berada atau disebut juga konteks
– Contoh :
• Bisa ular bisa mematikan (Bisa: sebagai kata benda dan kata kerja bantu)
• Bagus memakai baju baru yang bagus (Bagus: sebagai kata benda dan kata sifat
• OOV
– Terdapat kata-kata baru misalnya berupa kata serapan atau named entity
baru
33. Penandaan (Tagging) Otomatis
• Contoh: menggunakan Penn Tagger
Input: Some scorpions are able to survive 6 to 12 months of
starvation
Output: Some/DT scorpions/NNS are/VBP able/JJ to/TO
survive/VB 6/CD to/TO 12/CD months/NNS of/IN
starvation/NN
• Misalnya:
– http://nlp.stanford.edu:8080/parser/
– GATE – General Architecture for Text Engineering
(http://www.gate.ac.uk)
34. Metode pada POS Tagger
• Rule based tagger
– Top down
– Pendefinisian aturan yang biasa digunakan manusia
• Statistical tagger
– bottom up
– Menggunakan corpus sebagai training data dimana aturan ditetapkan secara
otomatis
– Pendekatan probabilistik tag terbaik untuk sebuah kata dalam konteks kalimat
tertentu machine learning
– Perlu menentukan ciri atau fitur sebagai masukan kedalam machine learning
– Transformation based tagger menggunakan corpus sebagai training data
untuk mengmbil rule atau aturan pendefinisian POS tag sebuah kata
35. Rule-based POS Tagger
Langkah
• Menggunakan kamus untuk
menentukan tag ke setiap kata
• Menggunakan aturan (rule) untuk
menghilangkan kemungkinan POS
tagging yang salah rule
mempertimbangkan konteks kalimat
(beberapa kata tetangga
Contoh
• Punya VB
• Kemarin NN
• Wabah NN
• Virus X
• Membahayakan VB
• Semua CD
• Manusia NN
36. Statistical based POS Tagger
• Rule/aturan klasifikasi POS dilakukan secara otomatis melalui
corpus yang sudah dilabeli
• Tahap:
– Pembuatan corpus (daftar kalimat dimana setiap katanya diberi label POS)
– Contoh : “Bisa/NN ular/NN bisa/MD mematikan/VB”
– Keterangan : NN = noun, MD = Modality, VB = verb
• Pelatihan dengan algoritma
– HMM: hasil pelatihan berupa nilai probabilitas
– Decision Tree: hasil pelatihan berupa pohon keputusan
– Neural Network: hasil pelatihan berupa fungsi pembeda
37. Transformation Based Tagger
• Ide
– Meng-assign tag dengan nilai probabilitas terbesar
– Perbaiki kesalahan dengan melihat rule yang dipelajari dari data
• Contoh
– P(NN|race) = 0.98
– P(VB|race) = 0.02
– Maka pertama kali race di-tag sebagai NN
– Ubah tag jika memenuhi rule tertentu, cth: change NN to VB when
the previous tag is TO
38. So what about ML and Deep Learning?
Penggunaan Machine Learning (ML) dan Deep Learning (DL) untuk
menyelesaikan banyak tugas NLP tingkat tinggi