KLASIFIKASI PADA TEXT
MINING
Budi Susanto
Tujuan
• Memahami konsep dasar sistem klasifikasi
• Memahami beberapa algoritma klasifikasi:
• KNN
Naïve Bayes
Text dan Web Mining -‐ FTI UKDW -‐ BUDI
SUSANTO 2
Pendahuluan
• Masalah klasifikasi adalah bagaimana menentukan suatu objek masuk ke suatu class yang sebenarnya.
• Dalam text mining, suatu class lebih bersifat area subjek umum.
(disebut juga Topik).
• Pekerjaan klasifikasi disebut sebagai text classification, text
categorization, topic classification, atau topic spotting.
Contoh Implementasi
• Identifikasi bahasa suatu dokumen
• Mendeteksi encoding dokumen
• Mendeteksi otomatis halaman/email spam • Sentiment detection
• Personal email sorting
• Topic-specific (vertical search)
Machine Learning
• Klasifikasi dilakukan berdasar pembelajaran dari
kumpulan dokumen untuk mendapatkan suatu pola tiap class.
• Pola dapat berupa suatu rule
• Pembelajaran untuk mendapatkan pola atau kriteria
keputusan suatu class oleh komputer dilakukan dengan cara “mempelajari” secara otomatis dari data pelatihan
(training data).
• Jika menggunakan metode statisik, disebut statistical text
classification.
Machine Learning
• Diperlukan sejumlah dokumen (training document) yang sangat baik untuk tiap class.
• Harus dilakukan dengan cara manual terkait pemberian label class
tiap training document.
Text dan Web Mining -‐ FTI UKDW -‐ BUDI
SUSANTO 4
Konsep Dasar
• Supervised learning
• Setelah mempelajari , kita dapat menerapkannya untuk himpunan dokumen test.
C
→
Χ
:
γ
γ
Proses Klasifikasi
Naïve Bayes Text Classification
• Menurut metode multinomial Naïve Bayes, probabilitas suatu dokumen, d, sebagai bagian dari anggota class c
dihitung sebagai:
• P(tk|c) adalah probabilitas kondisi kemunculan term tk dalam
sebuah dokumen class c.
• Seberapa yakin tk berkontribusi bahwa c adalah kelas yang benar
• P(c) adalah probabilitas kemunculan sebuah dokumen dalam kelas
c.
• <t1, t2, …, tnd> adalah token-token dalam d.
Naïve Bayes Text Classification
•
Sebuah dokumen test terpilih masuk sebagai
anggota suatu class terbaik jika memiliki
maximum a posteriori (MAP) kelas c
map:
Text dan Web Mining -‐ FTI UKDW -‐ BUDI
SUSANTO 6
Naïve Bayes Text Classification
Contoh
Feature Selection
• Feature Selection adalah proses pemilihan sebuah subset term yang muncul dalam himpunan training.
• Klasifikasi teks hanya akan menggunakan hasil feature selection.
• Alasan:
• Agar metode pengklasifikasian lebih efisien dengan mengurangi ukuran
vocabulary.
• Meningkatkan akurasi klasifikasi dengan membuang feature noise.
Feature Selection
• Algoritma dasar:
Text dan Web Mining -‐ FTI UKDW -‐ BUDI
SUSANTO 8
Feature Selection: Mutual Information
•
A(t,c) nilai mutual information dari term t dan
class c.
•
MI mengukur seberapa besar kontribusi ada/
tidaknya suatu term, t, dalam pembuatan
keputusan klasifikasi yang benar, c.
Contoh MI
• Class poultry dan term export:
Feature Selection:
• Pada statistik, test digunakan untuk menguji independensi antar dua kejadian.
• Dua kejadian, A dan B, dikatakan independen jika P(AB)=P(A)P(B).
• A adalah kemunculan term
• B adalah kemunculan class
χ
2
χ
Contoh
• Berdasar contoh data slide 16
Text dan Web Mining - FTI UKDW - BUDI SUSANTO 18
2
Text dan Web Mining -‐ FTI UKDW -‐ BUDI
SUSANTO 10
Feature Selection: Frequency-based
• Memilih term-term yang paling umum dalam kelas.
• Frekuensi dapat didefinisikan sebagai frekuensi dokumen
• Jumlah dokumen dalam kelas, c, yang mengandung term, t.
• Frekuensi dapat didefinisikan sebagai frekuensi koleksi
• Jumlah token-token, t, yang muncul di dokumen-dokumen dalam
kelas, c.
• Lebih cocok untuk Naïve Bayes classifier.
Decision Tree
• Decision Tree dibangun dengan cara membagi data pelatihan sehingga hasil subset adalah pure.
• pure subset adalah salah satu yang berisi contoh pelatihan dari
suatu kelas tunggal.
• Sebuah decision tree dapat diubah menjadi himpunan
aturan if-then.
• Setiap aturan yang dihasilkan bersifat mutually exclusive dan
lengkap.
• Setiap instan data dicakup oleh sebuah aturan tunggal.
Algoritma Decission Tree
Decision Tree
• Salah satu hal terpenting dalam pembentukan decission tree adalah pemilihan impurity function.
• Fungsi yang meminimalkan impurity setelah pembagian.
• Impurity function yang terkenal:
Text dan Web Mining -‐ FTI UKDW -‐ BUDI
SUSANTO 12
Information Gain (IG)
• Diberikan himpunan data, D, hitung impurity D dengan entropy(D):
• Evaluasi tiap atribut untuk menemukan atribut mana yang terpilih
mengurangi impurity.
• Hitung IG atribut A
Contoh
Contoh
• Entropy(D) = entropy([9,5]) = 0.940 bit
• Entropy(Aoutlook, D) = (5/14) × 0.971 + (4/14) × 0 + (5/14) × 0.971 =
0.693 bit
• Gain(outlook) = Entropy(D) - Entropy(Aoutlook, D) = 0.247 bit • Hitunglah IG untuk atribut yang lain:
• Gain(temperature) = ?
• Gain(humidity) = ?
• Gain(windy) = ?
k-NN
• Pada kNN, setiap dokumen dimasukkan dalam satu kelas yang muncul terbanyak di antara k tetangga terdekatnya.
• Sebuah dokumen uji, d, diharapkan memiliki label kelas yang sama dengan dokumen latih yang berada pada satu
Text dan Web Mining -‐ FTI UKDW -‐ BUDI
SUSANTO 14
k-NN
• Terdapat alternatif probabilistik untuk memperkirakan keanggotaan kelas sebuah dokumen uji.
• P(lingkaran|bintang) = 1/3
• P(X|bintang) = 2/3
• P(diamond|bintang) = 0
• Pemilihan nilai k disarakan bernilai ganjil, k=3 dan k=5 umum digunakan.
• Namun nilai k besar juga digunakan, antara 50-100.
• Penghitungan dokumen latih yang dekat dengan dokumen uji dapat digunakan Euclidean, Minkowski Distance.
• Untuk mengukur bobot “vote” untuk k-NN, dapat digunakan cosine.
Algoritma k-NN
Contoh
Dnggi
berat
label
160
80
O
150
45
N
145
44
N
148
75
O
158
56
N
175
80
O
165
70
???
Evaluasi
• Accuracy• (Jumlah terklasifikasi benar/total dokumen)*100
• Metode evaluasi:
Holdout set (test set)
Text dan Web Mining -‐ FTI UKDW -‐ BUDI
SUSANTO 16
Evaluasi
• Jika pengklasifikasian dilakukan terhadap topik tertentu, misalnya positif jika benar masuk ke topik, dan negatif jika tidak.
• Pengukuran akurasi dipandang tidak optimal, jika ternyata terdapat
dokumen uji yang “mengganggu”
• Pengukuran Recall dan Precision lebih optimal.
• Menghitung seberapa tepat dan lengkap klasifikasi terhadap kelas
positif.
• Menggunakan confusion matrix
• Berisi informasi hasil aktual dan prediksi yang dihasilkan oleh
pengklasifikasi.
Evaluasi
• Confusion Matrix
Evaluasi
• Contoh confusion matrix
• Presisi
• Ukuran akurasi terhadap suatu class yang telah diprediksi.
• PresisiA = 25/(25+3+1)
• Recall
• Ukuran kemampuan model prediksi untuk memilih data pada class
tertentu dari dataset. • RecallA = 25/(25+5+2) Prediksi Class Class Aktual A B C A 25 5 2 B 3 32 4 C 1 0 15