Anda di halaman 1dari 27

Natural

Language
Processing
Jakarta, 26 September 2019
• Introduction
• NLP Pipeline / tehnik
AGENDA • Praktek

Data Science Specialisation – Pusdiklat Keuangan Umum 2


• Natural language
processing (NLP) is a subfield
of linguistics, computer
science, information
engineering, and artificial
intelligence concerned with the
Pengertian interactions between
computers and human (natural)
languages, in particular how to
program computers to process
and analyze large amounts
of natural language data.
(Wikipedia)

Data Science Specialisation – Pusdiklat Keuangan Umum 3


Pengertian

AI

Computer Computational
Science Linguistics

Interaksi antara komputer


dan komunikasi
NLP
Data Science Specialisation – Pusdiklat Keuangan Umum 4
Penggunaan

Email Text processing Search engine


Pengkategorian email Auto correct Pengenalan bentuk baku
spam Text suggestion pencarian kata
Pengkategorian email adds Search suggestion

Data Science Specialisation – Pusdiklat Keuangan Umum 5


Tantangan Bahasa
Makna
umum yang
ambigu
komplek

Bahasa
yang tidak
standar

Data Science Specialisation – Pusdiklat Keuangan Umum 6


Makna Ambigu

Data Science Specialisation – Pusdiklat Keuangan Umum 7


Bahasa yang tidak standar

Data Science Specialisation – Pusdiklat Keuangan Umum 8


Jerman:
Donaudampfschiffahrtsgesellschaftskapitän
Bahasa yang (5 kata)
komplek China: 50,000 characters

Jepang: 3 writing systems

Thailand: konsep kalimat dan kata yang


ambigu

Data Science Specialisation – Pusdiklat Keuangan Umum 9


ML vs Konvensional algorithm ?
konvensional
algoritm • If ...else ..
• select ... case
• recursion

ML

• Supervised
• unsupervised

Data Science Specialisation – Pusdiklat Keuangan Umum 10


Pengumpulan Pemrosesas
Data Data

Persiapan
Data

NLP Pipeline
Data Science Specialisation – Pusdiklat Keuangan Umum 11
Web site
Target text
Any format file

Persiapan Tools
Excel
Text editor
data python

Extract Text file

Data Science Specialisation – Pusdiklat Keuangan Umum 12


Load data
• Gabung file
• Rubah format menjadi list
steamer
Persiapan • Pembakuan kata menjadi kata
dasar
data • standarisasi

tokenizer
• Memecah kata menjadi list kata
per kalimat

Data Science Specialisation – Pusdiklat Keuangan Umum 13


• Steammer adalah transformasi
kata menajdi bentuk dasarnya.
• Hal ini sangat diperlukan untuk
menghindari sesedikit mungkin
pengulangan kata yang sama
Steammer dengan bentuk berbeda.
• Misal :
– menghapal -> hapal
– memeluk -> meluk
• Pendekatan Lain yaitu
Lemitizing (tidak dibahas)

Data Science Specialisation – Pusdiklat Keuangan Umum 14


• Proses perubahan, kalimat,
paragraph ke bentuk kata
katanya.
• Misal :
– “pergi ke pasar modern” ->
“pergi”, “ke”, ”pasar”, “modern
Tokenizer • Bisa dilakukan dengan
pendekatan bigram, trigram
atau disebut nGram.
• Misal :
– bigram = “pergi ke”, “pasar
modern”

Data Science Specialisation – Pusdiklat Keuangan Umum 15


Persiapan data

Custom word
• Hapus kata yang tidak removal • Bag of words,
di inginkan dengan merupakan library
bantuan dictionary • Hapus kata yang tidak yang memetakan kata
di inginkan custom) dan jumlahnya pada
sebuah dokumen

Stopword BOW

Data Science Specialisation – Pusdiklat Keuangan Umum 16


Menhilangkan kata yang dianggap tidak
penting.

Word
Removal
Dilakukan karena kata kata ini tidak berarti
bila diproses dan menjadikan penghitungan
probabilitas menjadi tidak seimbang.
Range 5%
Kata dengan
berdasarkan
Stopword jumlah n
jumlah
huruf
dokumen.

Data Science Specialisation – Pusdiklat Keuangan Umum 17


Sebuah objek yang merupakan
dictionary dari id, kata dan
jumlahnya dalam sebuah
dokumen.

Bag of
Biasanya berupa objek
Words Dictionary.
(BoW)

Corpus = [1:25, 2:1,3:12,…]

Data Science Specialisation – Pusdiklat Keuangan Umum 18


• Proses mengurangi jumlah feature
Dimension • Sangat berguna untuk menambah
keakuratan hasil
Reduction • Mempercepat hasil
karena jumlah data berkurang

Data Science Specialisation – Pusdiklat Keuangan Umum 19


Dimension Reduction

STOP-WORD BOW TF-IDF LDA


REMOVAL

...

Data Science Specialisation – Pusdiklat Keuangan Umum 20


ID saya belajar nlp python
Kalimat 1 1 1 1
Kalimat 2 1 1
Kalimat 3 1 1 1
TF-IDF Kalimat 4 1

• Term Frequency-inverse Document Frequency


• TF = jumlah kata tertentu dalam dokumen / jumlah kata dalam
dokumen
• IDF = log (jumlah dokumen dengan kata tertentu / jumlah dokumen)

• TF-IDF = TF * IDF

Data Science Specialisation – Pusdiklat Keuangan Umum 21


TF, IDF, TF-IDF
?

Data Science Specialisation – Pusdiklat Keuangan Umum 22


Data Science Specialisation – Pusdiklat Keuangan Umum 23
Text Processing

Supervised
Regresi
Klasifikasi

Unsupervised
Clustering
Latent Variable Models

Data Science Specialisation – Pusdiklat Keuangan Umum 24


Digunakan untuk prediksi

Prediksi dapat berupa


klasifikasi

Supervised Prediksi dapat juga berupa kata


yang muncul berikutnya
• misal : ketika mengetik departemen
pada google maka google
menyarankan beberapa rujukan kata.

DIBUTUHKAN TRAINING DAN


TEST

Data Science Specialisation – Pusdiklat Keuangan Umum 25


Topic modeling
• Menemukan topic dari sebuah artikel
• Tidak diketahui klasifikasi dari artikel
tersebut

LDA (Latent Dirichlet allocation)


• Mengobservasi satu set dokumen
Unsupervised (besar)
• Menjelaskan set dokumen dengan
menemukan group tersembunyi
• Menggunakan tehnik sampling,
sehingga cocok digukan untuk
dokumen yang sangat besar.
• Banyak digunakan untuk topic
modelling.

Data Science Specialisation – Pusdiklat Keuangan Umum 26


Praktek

Data Science Specialisation – Pusdiklat Keuangan Umum 27

Anda mungkin juga menyukai