perpustakaan.uns.ac.id digilib.uns.ac.id
commit to user
5
BAB II
TINJAUAN PUSTAKA
2.1. Landasan Teori
2.1.1. Twitter API
Twitter API terdiri dari dua komponen yang berbeda, REST dan SEARCH
API. REST API memungkinkan pengembang/developer Twitter untuk mengakses
data core Twitter (tweet, timeline, user data). Sedangkan SEARCH API digunakan
untuk membuat query tweet (Wardhani, 2012).
2.1.2. Text Mining
Text mining merupakan variasi dari data mining yang digunakan untuk
menemukan pola tertentu dari sekumpulan besar data tekstual (Feldman & Sanger,
2007). Salah satu langkah yang dilakukan dalam text mining adalah text
preprocessing.
Tindakan yang dilakukan pada tahap text preprocessing adalah
toLowerCase, yaitu mengubah semua karakter huruf menjadi huruf kecil serta
tokenizing, yaitu proses pemecahan kalimat menjadi token berupa kata atau term,
dimana setiap term dipisahkan oleh delimiter. Tanda titik (.), koma (,), spasi ( )
dan karakter angka yang ada pada kalimat dapat dianggap sebagai delimiter
(Weiss et al., 2005)
2.1.3. Jaro-Winkler Distance
Salah satu metode similaritas yang digunakan untuk mendeteksi kesamaan
dua dokumen adalah Jaro metric. Dalam penelitian persamaan dokumen,
didapatkan hasil yang baik dengan menggunakan metode Jaro, yang didasarkan
pada jumlah dan urutan karakter yang sama antara dua dokumen (Jaro, 1989).
Algoritma Jaro mendefinisikan βkarakter yang samaβ sebagai karakter pada
kedua string yang sama dan memenuhi ketentuan jarak teoritis (Jaro, 1989). Jarak
teoritis dua buah karakter yang disamakan dapat dibenarkan jika tidak melebihi
nilai persamaan berikut ini:
βmax(|π 1|,|π 2|)
2β β 1 (2.1)
perpustakaan.uns.ac.id digilib.uns.ac.id
commit to user
6
Persamaan di bawah ini menunjukkan rumus untuk menghitung jarak (dj)
antara dua string yaitu s1 dan s2 pada algoritma Jaro.
ππ =1
3Γ (
π
|π 1|+
π
|π 2|+
πβπ‘
π) (2.2)
dimana:
m = jumlah karakter yang sama dan memenuhi kriteria
|s1| = panjang string 1
|s2| = panjang string 2
t = jumlah transposisi
Pengembangan dari algoritma Jaro berdasarkan Winkler menggunakan
nilai panjang prefix yang sama di awal string dengan nilai maksimal adalah 4 (l)
(Winkler, 1999).
Persamaan di bawah ini menunjukkan nilai Jaro-Winkler distance (dw) bila
string s1 dan s2 yang diperbandingkan.
ππ€ = ππ + (ππ(1 β ππ)) (2.3)
dimana:
dj = Jaro distance untuk string s1 dan s2
l = panjang prefix umum di awal string (panjang karakter yang sama sebelum
ditemukan ketidaksamaan, maksimal 4)
p = konstanta scaling factor. Nilai standar untuk konstanta ini menurut Winkler
adalah p = 0.1.
Semakin tinggi Jaro-Winkler distance untuk dua string maka semakin
mirip kedua string tersebut. Nilai terendah Jaro-Winkler distance adalah 0 yang
menandakan tidak ada kesamaan antara kedua string. Nilai tertingginya adalah 1
yang menunjukkan kedua string sama persis (Kurniawati et al., 2010).
2.1.4. NaΓ―ve Bayes Classifier
NaΓ―ve Bayes Classifier adalah algoritma klasifikasi probabilitas sederhana
berdasarkan pada teorema Bayes dengan asumsi yang sangat kuat (naΓ―f) akan
independensi dari masing-masing kondisi. Naive Bayes Classifier dikenal sebagai
algoritma klasifikasi Bayes sederhana (Lewis, 1992).
perpustakaan.uns.ac.id digilib.uns.ac.id
commit to user
7
Pada teorema Bayes, bila terdapat dua kejadian yang terpisah (misalkan A
dan B), maka teorema Bayes dirumuskan sebagai berikut:
π·(π¨|π©) = π·(π¨)
π·(π©)π·(π©|π¨) (2.4)
Teorema Bayes sering pula dikembangkan mengingat berlakunya hukum
probabilitas total menjadi seperti berikut:
π·(π¨|π©) =π·(π¨)π·(π©|π¨)
β π·(π¨π|π©)ππ=π
(2.5)
dimana A1UA2U β¦ UAn = S.
Untuk menjelaskan teorema NaΓ―ve Bayes, perlu diketahui bahwa proses
klasifikasi memerlukan sejumlah petunjuk untuk menentukan kelas apa yang
cocok bagi sampel yang dianalisis tersebut. Karena itu, teorema Bayes diatas
disesuaikan sebagai berikut:
π·(πͺ|ππ, β¦ , ππ) =π·(πͺ)π·(ππ,β¦,ππ|πͺ)
π·(ππ,β¦,ππ) (2.6)
Dimana variabel C merepresentasikan kelas, sementara variabel F1β¦Fn
merepresentasikan karakteristik-karakteristik petunjuk yang dibutuhkan untuk
melakukan klasifikasi. Maka rumus tersebut menjelaskan bahwa peluang
masuknya sampel dengan karakteristik tertentu dalam kelas C (posterior) adalah
peluang munculnya kelas C (sebelum masuknya sampel tersebut, seringkali
disebut prior), dikali dengan peluang kemunculan karakteristik-karakteristik
sampel pada kelas C (disebut juga likelihood), dibagi dengan peluang kemunculan
karakteristik-karakteristik sampel secara global (disebut juga evidence). Sehingga
rumus diatas dapat juga ditulis secara sederhana sebagai berikut:
π·ππππππππ =πππππΓππππππππππ
ππππ ππππ (2.7)
Nilai evidence selalu tetap untuk setiap kelas pada satu sampel. Nilai dari
posterior tersebut yang nantinya akan dibandingkan dengan nilai-nilai posterior
kelas lainnya untuk menentukan ke kelas apa suatu sampel akan diklasifikasikan.
Penjabaran lebih lanjut rumus Bayes tersebut dilakukan dengan
menjabarkan P(F1, β¦, Fn|C) menggunakan aturan perkalian menjadi sebagai
berikut:
π·(ππ, β¦ , ππ|πͺ) = π·(ππ|πͺ)π·(ππ, β¦ , ππ|πͺ, ππ)
perpustakaan.uns.ac.id digilib.uns.ac.id
commit to user
8
= π·(ππ|πͺ)π·(ππ|πͺ, ππ)π·(ππ, β¦ ππ|πͺ, ππ, ππ)
= π·(ππ|πͺ)π·(ππ|πͺ, ππ) β¦ π·(ππ|πͺ, ππ, ππ, β¦ , ππβπ) (2.8)
Dapat dilihat bahwa hasil penjabaran tersebut menyebabkan semakin
banyak dan semakin kompleksnnya faktor-faktor syarat yang mempengaruhi nilai
probabilitas, yang hampir mustahil untuk dianalisa satu per satu. Akibatnya,
perhitungan tersebut menjadi sulit untuk dilakukan.
Disinilah digunakan asumsi independensi yang sangat tinggi (naΓ―f), bahwa
masing-masing petunjuk (F1, F2, β¦, Fn) saling bebas (independen) satu sama lain.
Dengan asumsi tersebut, maka berlaku suatu kesamaan sebagai berikut:
π·(ππ|ππ) =π·(ππβ©ππ)
π·(ππ)=
π·(ππ)π·(ππ)
π·(ππ)= π·(ππ) (2.9)
untuk i β j, sehingga:
π·(ππ|πͺ, ππ) = π·(ππ|πͺ) (2.10)
Dari persamaan di atas dapat disimpulkan bahwa asumsi independensi naΓ―f
tersebut membuat syarat peluang menjadi sederhana, sehingga perhitungan
menjadi mungkin untuk dilakukan. Selanjutnya, penjabaran P(F1,β¦,Fn|C) dapat
disederhanakan menjadi seperti berikut:
π·(ππ β¦ ππ|πͺ) = π·(ππ|πͺ)π·(ππ|πͺ) β¦ π·(ππ|πͺ)
= β π·(ππ|πͺ)ππ=π (2.11)
Dengan kesamaan diatas, persamaan teorema Bayes dapat dituliskan
sebagai berikut:
π·(πͺ|ππ β¦ ππ) =π
π·(ππ, ππ, β¦ , ππ)π·(πͺ) β π·(ππ|πͺ)
π
π=π
π·(πͺ|ππ β¦ ππ) =π·(πͺ)
ππβ π·(ππ|πͺ)π
π=π (2.12)
Persamaan diatas merupakan model dari teorema NaΓ―ve Bayes yang
selanjutnya akan digunakan dalam proses klasifikasi dokumen. Adapun Z
merepresentasikan evidence yang nilainya konstan untuk semua kelas pada satu
sampel.
Penentuan kelas yang cocok bagi suatu sampel dilakukan dengan cara
membandingkan nilai posterior untuk masing-masing kelas dan mengambil kelas
perpustakaan.uns.ac.id digilib.uns.ac.id
commit to user
9
dengan nilai posterior tertinggi. Secara matematis, klasifikasi dirumuskan sebagai
berikut:
πͺπ΅π© = πππππππβπͺπ·(πͺ) β π·(ππ|πͺ)ππ=π (2.13)
dengan c yaitu variabel kelas yang tergabung dalam suatu himpunan kelas C.
Dapat dilihat bahwa rumusan diatas tidak memuat nilai evidence (Z). Hal
ini disebabkan karena evidence memiliki nilai yang positif dan tetap untuk semua
kelas sehingga tidak mempengaruhi perbandingan nilai posterior. Karena itu,
faktor Z ini dapat dihilangkan. Algoritma NaΓ―ve Bayes Classifier ini dapat
digunakan bila sebelumnya telah tersedia data yang dijadikan acuan untuk
melakukan klasifikasi (Natalius, 2010).
2.1.5. Laplacian Smoothing
Untuk mengatasi nilai probabilitas kondisional pada NaΓ―ve Bayes
Classifier yang dapat saja bernilai 0, digunakan teknik smoothing. Salah satu
teknik smoothing sederhana yang kerap diterapkan pada algoritma NaΓ―ve Bayes
Classifier adalah Laplacian Smoothing. Cara yang digunakan pada teknik
Laplacian Smoothing adalah dengan cara menambahkan angka 1 pada
perhitungan Likelihood (Dai et al., 2007).
Sehingga untuk algoritma NaΓ―ve Bayes Classifier, perhitungan nilai
Likelihood menjadi seperti berikut ini:
π(πΉπ|πΆ) =1+π(πΉπ,πΆ)
|π|+ π(πΆ) (2.14)
dimana n(Fi,C) adalah jumlah term Fi yang ditemukan di seluruh data
pelatihan dengan kategori C, n(C) adalah jumlah term di seluruh data pelatihan
dengan kategori C, dan |W| adalah jumlah seluruh term dari seluruh data pelatihan
(Dai et al., 2007).
2.1.6. Vector Space Model
Representasi satu set dokumen sebagai vector dalam ruang vektor dikenal
sebagai Vector Space Model (VSM) dan merupakan dasar untuk sejumlah operasi
pengambilan informasi seperti penilaian dokumen dalam query, klasifikasi dan
clustering dokumen (Manning et al., 2009).
perpustakaan.uns.ac.id digilib.uns.ac.id
commit to user
10
VSM digunakan untuk mengukur kemiripan antara dua buah dokumen.
Dokumen merupakan vector berdimensi n dan parameter t adalah semua term
yang ditemukan dalam vocabulary tanpa duplikasi (Isa & Abidin, 2013).
Gambar 2.1 memperlihatkan tiga buah vector pada ruang dimensi 3. Nilai
kosinus digunakan untuk mengukur tingkat kesamaan antar dua vector. Pada
gambar 2.1, P1 adalah vektor dari dokumen pembanding, sementara P2 dan P3
adalah vektor dari dokumen yang dibandingkan.
Gambar 2.1 Vector Space Model (Isa & Abidin, 2013)
2.1.7. Pembobotan TF x IDF
Term Frequency (TF) adalah jumlah kemunculan term t pada dokumen d,
yang dirumuskan sebagai freq(d, t). Matriks bobot term frequency atau TF(d,t)
menunjukkan hubungan antara term t dengan dokumen d, dimana jika dokumen d
tidak mengandung term t maka bobotnya bernilai 0, dan sebaliknya. Fungsi di
bawah ini menunjukkan perhitungan nilai TF (Han & Kamber, 2006).
ππΉ(π, π‘) = ππππ (π, π‘) (2.15)
Document Frequency (DF) merupakan jumlah dokumen yang
mengandung term t. Inverse Document Frequency (IDF) menunjukkan
pembobotan dari term t. Term yang jarang muncul dalam dokumen memiliki nilai
IDF yang tinggi, sementara term yang sering muncul dalam dokumen memiliki
nilai IDF yang lebih rendah. Fungsi di bawah ini menunjukkan perhitungan nilai
IDF (Manning et al., 2009):
πΌπ·πΉ (π‘) = logπ
ππ(π‘) (2.16)
perpustakaan.uns.ac.id digilib.uns.ac.id
commit to user
11
Nilai TF-IDF dalam Vector Space Model dihitung dengan fungsi sebagai
berikut (Han & Kamber, 2006):
π»ππ°π«π(π , π) = π»π (π , π) Γ π°π«π(π) (2.17)
2.1.8. Cosine Similarity
Untuk menghitung kesamaan antara kedua dokumen dalam vector space,
maka akan dihitung nilai cosine similarity dari representasi vektor kedua dokumen
(Manning et al., 2009).
Sim(P1,P2) = Cos ΞΈ = P1βP2
|P1||P2| (2.18)
Pada fungsi diatas, pembilang merepresentasikan nilai dot product dari
kedua vektor, sedangkan penyebut merepresentasikan nilai perkalian dari
Euclidean length kedua vektor. Nilai dot product dari kedua vektor dapat dicari
dengan fungsi sebagai berikut (Manning et al., 2009):
P1βP2 = β P1iP2i
Mi=1 (2.19)
Sedangkan nilai Euclidean length dari vector P dapat dicari dengan fungsi
di bawah ini (Manning et al., 2009):
|P|= ββ Pi2M
i=1 (2.20)
Jika nilai cosine similarity dari kedua vector adalah 1 maka kedua
dokumen adalah sama persis. Jika nilai cosine similarity adalah 0 maka dapat
dikatakan bahwa kedua dokumen tidak sama.
2.1.9. Confusion Matrix
Confusion matrix merupakan matriks yang menampilkan prediksi
klasifikasi dan klasifikasi yang aktual. Confusion matrix berukuran LxL, dimana L
adalah jumlah label klasifikasi yang berbeda. Tabel di bawah ini menunjukkan
confusion matrix untuk L=2 (Kohavi & Provost, 1998).
Tabel 2.1 Confusion Matrix untuk L = 2 (Kohavi & Provost, 1998)
Prediksi
Aktual
Negatif Positif
Negatif a b
Positif c d
perpustakaan.uns.ac.id digilib.uns.ac.id
commit to user
12
Nilai akurasi didapatkan dari rumus di bawah ini:
π¨ππππππ = π+π
π+π+π+π (2.21)
Nilai true positive rate didapatkan dari rumus di bawah ini:
π»πππ ππππππππ ππππ = π
π+π (2.22)
Nilai true negative rate didapatkan dari rumus di bawah ini:
π»πππ ππππππππ ππππ = π
π+π (2.23)
Nilai false positive rate didapatkan dari rumus berikut:
πππππ ππππππππ ππππ = π
π+π (2.24)
Nilai false negative rate didapatkan dari rumus di bawah ini:
πππππ ππππππππ ππππ = π
π+π (2.25)
Gambar 2.2 menunjukkan perubahan dari extended confusion matrix
berukuran 3x3 menjadi berukuran 2x2, dengan kelas βAβ sebagai kelas positif dan
kelas βNot Aβ sebagai kelas negatif.
Gambar 2.2 Extended confusion matrix 3x3 (Felkin, 2007)
2.2. Penelitian Terkait
1. Is NaΓ―ve Bayes a Good Classifier for Document Classification? (Ting et
al., 2011)
Penelitian ini dilakukan untuk melihat performa metode NaΓ―ve Bayes
pada klasifikasi dokumen.
Hasil menunjukkan bahwa NaΓ―ve Bayes merupakan metode klasifikasi
paling baik jika dibandingkan dengan metode lain seperti decision tree,
neural network dan support vector machines dalam hal akurasi dan
efisiensi komputasi. Penggunaan metode NaΓ―ve Bayes dalam proses
perpustakaan.uns.ac.id digilib.uns.ac.id
commit to user
13
klasifikasi dapat mencapai keakuratan hingga 97%, sementara metode lain
memiliki tingkat keakuratan dibawah 97%. Jika sebelum klasifikasi
dilakukan proses preprocessing dan feature selection maka keakuratan
metode klasifikasi NaΓ―ve Bayes dapat mencapai 97%, namun jika kedua
proses tersebut tidak dilakukan maka keakuratannya mencapai 96.9%.
2. Klasifikasi Teks Dengan NaΓ―ve Bayes Classifier (NBC) Untuk
Pengelompokan Teks Berita dan Abstract Akademis (Hamzah, 2012)
Penelitian ini mengkaji kinerja metode NaΓ―ve Bayes Classifier untuk
kategorisasi teks berita dan teks akademik. Penelitian menggunakan data
1000 dokumen berita dan 450 dokumen abstrak akademik. Hasil penelitian
menunjukkan pada dokumen berita, akurasi maksimal dicapai 91% dengan
dokumen latih sebanyak 900 dokumen dan dokumen uji sebanyak 100
dokumen. Sedangkan pada dokumen akademik, akurasi maksimal dicapai
82% dengan dokumen latih sebanyak 405 dokumen dan dokumen uji
sebanyak 45 dokumen. Sementara baik pada dokumen berita maupun
dokumen akademik, penggunaan 50% dokumen sebagai dokumen
pelatihan memberikan kinerja akurasi diatas 75%. Algoritma NBC
memiliki kinerja yang baik untuk klasifikasi dokumen teks, baik dokumen
berita maupun dokumen akademik.
3. Comparison Between The Probabilistic and Vector Space Model For Spam
Filtering (Bansal, 2012)
Penelitian ini berfokus pada perbandingan dua buah metode yakni
metode probabilistic dan vector space model untuk penyaringan spam
pada surat elektronik. Hasil yang didapatkan adalah metode probabilistic
memiliki tingkat kemudahan, fleksibilitas dan performa yang lebih baik
dibandingkan dengan metode vector space model.
4. Mengukur Tingkat Kesamaan Paragraf Menggunakan Vector Space Model
Untuk Mendeteksi Plagiarisme (Isa & Abidin, 2013)
Penelitian ini dilakukan untuk mendeteksi kesamaan antar dokumen.
Similaritas setiap paragraf dalam dokumen dihitung dengan menggunakan
perpustakaan.uns.ac.id digilib.uns.ac.id
commit to user
14
algoritma vector space model. Dokumen yang digunakan sebanyak 52876
dokumen yang berasal dari repository beberapa universitas di Indonesia.
Pengujian algoritma dilakukan menggunakan beberapa jenis query,
yaitu query satu kata, dua kata dan tiga kata. Total query adalah 15,
masing-masing 5 query untuk setiap jenis.
Kemiripan antar paragraf dibagi menjadi tiga kelompok yaitu
kemiripan dengan similaritas rendah, sedang dan tinggi. Similaritas sedang
memiliki nilai similaritas antara 50-65.99%, similaritas sedang memiliki
nilai kesamaan antara 66-80.99%, sedangkan similaritas tinggi memiliki
nilai kemiripan antara 81-100%.
Hasil kajian menggunakan query satu kata menunjukkan bahwa
pasangan paragraf dalam kelompok similaritas tinggi lebih banyak
dibanding dengan pasangan paragraf dengan similaritas sedang dan
rendah. Hasil query dua kata menunjukkan hasil bahwa jumlah pasangan
paragraf dengan similaritas tinggi lebih banyak bila dibanding dengan
similaritas rendah dan sedang. Hasil query dengan tiga kata menunjukkan
bahwa pasangan paragraf dengan similaritas tinggi dapat dideteksi dengan
baik. Hasil rata-rata similaritas untuk semua query menunjukkan bahwa
pasangan paragraf dengan tingkat similaritas tinggi dapat dideteksi dengan
baik.
Kesimpulan dalam penelitian ini adalah algoritma vector space model
dapat mendeteksi dengan baik kesamaan dokumen melalui kesamaan
paragraf dalam dokumen.
2.3. Kerangka Pemikiran
Berdasarkan penelitian tersebut, penelitian yang akan dilakukan adalah
mengklasifikasikan data berupa mentions Twitter menjadi keluhan, berita dan
spam dengan menggunakan algoritma NaΓ―ve Bayes Classifier. Selanjutnya, setiap
mentions yang diklasifikasikan sebagai keluhan akan dikelompokkan berdasarkan
kesamaan term dengan algoritma Cosine Similarity. Rekomendasi solusi
kemudian akan diberikan terhadap setiap mentions yang diklasifikasikan sebagai
keluhan.
perpustakaan.uns.ac.id digilib.uns.ac.id
commit to user
15
Tabel di bawah ini menunjukkan matriks penelitian dari penelitian terkait
yang ada.
Tabel 2.2 Matriks penelitian
No. Penulis (Tahun) Judul Metode Hasil
1. S.L. Ting
W.H. Ip
A.H.C. Tsang
(2011)
Is NaΓ―ve Bayes a
Good Classifier for
Document
Classification?
NaΓ―ve Bayes
Decision Tree
Neural Network
Support Vector
Machines
NaΓ―ve Bayes merupakan
metode klasifikasi paling baik
jika dibandingkan dengan
metode lain seperti decision
tree, neural network dan
support vector machines
dalam hal akurasi dan
efisiensi komputasi.
2. Amir Hamzah
(2012)
Klasifikasi Teks
Dengan NaΓ―ve
Bayes Classifier
(NBC) Untuk
Pengelompokan
Teks Berita dan
Abstract Akademis
NaΓ―ve Bayes
Classifier
Pada dokumen berita, akurasi
maksimal dicapai 91%
dengan 900 dokumen
pelatihan dan 100 dokumen
pengujian. Pada dokumen
akademik, akurasi maksimal
dicapai 82% dengan 405
dokumen pelatihan dan 45
dokumen pengujian.
3. S. Bansal
(2012)
Comparison
Between The
Probabilistic and
Vector Space Model
For Spam Filtering
Probabilistic
Vector Space
Model
Metode probabilistic
memiliki tingkat kemudahan,
fleksibilitas dan performa
yang lebih baik dibandingkan
metode Vector Space Model.
4. T.M. Isa
T.F. Abidin
(2013)
Mengukur Tingkat
Kesamaan Paragraf
Menggunakan
Vector Space Model
Untuk Mendeteksi
Plagiarisme
Vector Space
Model
Algoritma Vector Space
Model dapat mendeteksi
dengan baik kesamaan
dokumen melalui kesamaan
paragraf dalam dokumen.
5. Aisha Alfiani M.
(2014)
Sistem Klasifikasi
Feedback
Pelanggan Dan
Rekomendasi
Solusi Atas
Keluhan Di UPT
Puskom UNS
Dengan Algoritma
NaΓ―ve Bayes
Classifier Dan
Cosine Similarity
NaΓ―ve Bayes
Classifier
Cosine
Similarity
?
Top Related