Tinjauan Pustaka
2.2 Prepocessing
Tahapan prepocessing adalah tahapan paling awal yang dilakukan dalam sebuah
sistem. Pada tahapan ini, data akan dipersiapkan agar dapat diproses lebih lanjut.
2.2.1 Case folding
Case folding adalah tahapan mengubah atau menyeragamkan semua huruf dalam
teks menjadi huruf kecil.
4
2.2.2 Tokenisasi
Tokenisasi adalah suatu proses pemotongan kata dalam suatu kalimat.
Pemotongan kata dilakukan dengan melihat pembatas antar kata dalam suatu
kalimat yaitu tanda baca titik dan spasi. Kata-kata yang didapat dari hasil
perpotongan yang disebut sebagai token. Untuk proses lebih lanjut, token inilah
yang akan digunakan sehingga tidak memerlukan pengaksesan kembali terhadap
teks asli.
Biaya
tenaga
Biaya tenaga kerja naik kerja
Tokenisasi naik
pada tingkat yang jauh
pada
lebih cepat .
tingkat
yang
jauh
lebih
cepat
(2.1)
Keterangan :
M = matriks awal
U = matriks vektor singular kiri
V = matriks vektor singular kanan
VT = transpose matriks vektor V singular kanan
S = matriks diagonal / matriks nilai singular
2.3.1 SVD2
Perbedaan SVD dengan SVD2 hanyalah proses dalam SVD2 merupakan proses
SVD yang diulang sebanyak dua kali. Meskipun teknik pereduksian rank
matriknya berbeda dengan yang dibangun oleh Schutze dalam SVD, begitu pula
dengan geometri dan clusteringnya sedikit berbeda, namun prosedur umumnya
tetap sama[16]. Tahapan-tahapan yang dilakukan pada proses ini antara lain:
a. Mencari top frekuen dari distinct term
Sebuah dokumen yang berisikan kalimat-kalimat akan diproses melalui tahap
awal yaitu prepocessing dimana kalimat dalam dokumen akan dilakukan case
folding terlebih dahulu kemudian ditokenisasi untuk mendapatkan token.
Token yang didapat kemungkinan ada yang sama sehingga perlu dilakukan
5
penyaringan agar token yang muncul hanya satu. Distinct token yang didapat
kemudian akan dicari frekuensi tertingginya dengan menggunakan teknik
quick sort. Proses ini membentuk matriks awal yang berdimensi distinct
token dan top frekuen token.
b. Menentukan matrik kiri dan kanan
Matrik awal dengan dimensi distinct token dan top frekuensi dari token,
dilakukan pengecekan hubungan ketetanggaannya dengan token sebelumnya.
Matrik kiri dan matrik kanan adalah matrik yang memiliki dimensi yang sama
dengan matrik awal. Isi daripada matrik kiri adalah jumlah kata dari top
frekuen token yang didahului oleh kata dari distinct token. Isi dari matriks
kanan adalah jumlah kata dari top frekuen token yang diikuti oleh kata dari
distinct token.
c. Mendapatkan nilai matrik U, S, dan V
Dengan menggunakan JAMA library bawaan java, masing-masing matrik kiri
dan kanan dari matriks awal memiliki 3 buah matriks yang diuraikan dengan
Singular Value Decomposition yaitu dua buah matriks ortogonal yang
berisikan eigenvektor dan satu buah matriks diagonal.
d. Mereduksi dimensi matrik
Pereduksian nilai matrik singular dibuat dengan cara mengambil nilai matrik
sebesar r kemudian dilakukan pengaturan nilai-nilai yang melebihi batas r
akan menjadi nol.
e. Normalisasi nilai matrik
Normalisasi bertujuan untuk menghindari nilai negatif dan memberikan range
antara nol sampai dengan satu. Persamaan yang digunakan adalah sebagai
berikut.[7]
( ) (2.2)
Keterangan :
x = nilai normalisasi data pada matrik
xmax = nilai maksimum dari matrik dengan ymax
xmin = nilai minimum dari matrik dengan ymin
ymin = nilai minimum yang diset 0
ymax = nilai maksimum yang diset 1
f. Matrik deskriptor
Matrik yang telah dinormalisasi untuk kedua bagiannya baik matrik kiri dan
matrik kanan dikonkat pada kedua matrik tersebut sehingga didapatkan matrik
deskriptor. Matrik deskriptor yang diproses untuk proses clustering
selanjutnya.
6
(unsupervised). Clustering dapat didefinisikan sebagai metode yang dilakukan
dengan meminimalkan jarak objek dalam satu cluster (intra-cluster) dan
memaksimalkan jarak objek antar cluster (inter-cluster).[4]
X-means merupakan pengembangan dari kekurangan metode K-means sendiri.
Kekurangan metode K-means yaitu penentuan centroid awal secara random
sejumlah k dimana belum tentu centroid yang terpilih adalah terbaik. Jika K-
means membutuhkan input dari user untuk nilai k, maka dalam algoritma X-
means yang diinputkan oleh user adalah range cluster. Algoritma X-means
dimulai dengan nilai k sama dengan batas bawah (lower bound) dan terus
bertambah hingga mencapai batas atas (upper bound) dari range cluster yang
telah diberikan. Selama proses berlangsung, jumlah k yang memperoleh skor
terbaik akan dikeluarkan ketika proses eksekusi berakhir[2]. Algoritma X-means
terdiri dari dua tahapan yang berulang yaitu Improve param dan Improve
structure.
2.4.1 Improve param
Tahapan improve param merupakan tahapan mengeksekusi data dengan k-means
hingga mencapai konvergen (tidak ada perpindahan data). Penentuan awal data
yang akan dijadikan centroid dilakukan secara acak. Centroid yang telah
didapatkan berkelompok dengan data yang memiliki kedekatan dengannya.
Setelah semua data berkelompok, dilakukan pembaharuan terhadap nilai centroid,
terjadi perpindahan data. Proses terus berulang hingga pada suatu nilai tertentu
tidak ada data yang berpindah lagi.
2.4.1.1 K-Means
K-means adalah teknik clustering yang paling mudah dan umum digunakan.
Dasar pemikiran dari algoritma k-means adalah nilai k yang diberikan oleh user
digunakan sebagai inisial jumlah centroid. Centroid adalah titik pusat yang
digunakan sebagai perbandingan data tersebut masuk ke cluster atau tidak. Setiap
cluster memiliki centroid. Jarak antara data dan centroid akan dihitung
menggunakan Euclidean distance. Setiap data yang memiliki jarak terdekat
dengan centroid akan menjadi sebuah cluster. Jumlah data yang terdapat dalam
satu cluster akan dicari nilai rata-ratanya dalam cluster tersebut untuk dijadikan
nilai centroid baru. Nilai centroid baru akan menentukan data yang masih
tergolong satu cluster. Apabila masih terjadi perpindahan data ketika nilai
centroid berubah maka terus terjadi perulangan hingga tidak terjadi perpindahan
data lagi (konvergen).
Euclidean distance adalah salah satu fungsi perhitungan jarak antar komponen
yang terlibat. Rumusnya dapat dilihat sebagai berikut.[1]
( ) √∑ ( ) (2.3)
Keterangan :
d(p,q) = besar jarak antara komponen p dan q
pi = nilai komponen p yang ke-i
qi = nilai komponen q yang ke-i
n = jumlah komponen
7
2.4.2 Improve structure
Tahapan Improve structure adalah tahapan yang membedakan antara K-Means
clustering dengan X-Means clustering. Tahapan ini merupakan tahapan
pemecahan centroid dan pemilihan lokasi terbaik untuk menemukan jika dan
dimana centroid baru harus muncul. Hal ini bisa dicapai dengan membiarkan
beberapa centroid dibagi menjadi dua[2]. Kemunculan centroid-centroid baru
memperhatikan perbandingan nilai BIC (Bayesian Information Criterion) yang
dimiliki.
BIC scoring digunakan untuk menyeleksi jumlah cluster terbaik yang
dihasilkan dari proses X-means clustering. Secara umum, rumus BIC adalah
sebagai berikut.[2,11]
( ) (2.4)
Keterangan :
BIC = Bayesian Information Criterion
L(θ) = fungsi-likelihood data
m = jumlah kluster
n = besarnya dataset yang digunakan
Nilai log likelihood data dari semua poin yang dimiliki oleh setiap cluster adalah
jumlah log likelihood data untuk masing-masing individu. Fungsi likelihood data
untuk seluruh cluster adalah sebagai berikut.[2,11]
( ) ∑ ( ) (2.5)
( ) ( ) ∑ (2.6)
dimana,
∑ ‖ ‖ (2.7)
∑ ( ( ) ∑ ) (2.8)
Keterangan :
ni = ukuran dari cluster ke-i
d = dimensi data
m = jumlah cluster
n = besarnya dataset yang digunakan
8
2.5 Silhouette Coefficient
Mengukur validitas suatu cluster dapat dilakukan dengan 3 cara yaitu : External
Index, mengukur similarity dari cluster yang telah diketahui labelnya. Contohnya :
Entropy. Internal Index, mengukur kualitas cluster tanpa ada pengaruh dari luar.
Contohnya : Silhouette Coefficient. Relative Index,membandingkan dua hasil
cluster yang berbeda. Contohnya : SSE.
Sillhouette Coeficient adalah metode evaluasi yang digunakan untuk
menentukan kualitas dari cluster yang dihasilkan oleh sistem. Nilai yang
diperoleh dalam metode ini memerlukan besar jarak dari data dengan
menggunakan perhitungan Euclidean Distance (2.3). Metode evaluasi ini
merupakan gabungan dari ide evaluasi cluster lainnya yaitu Cohesion dan
Separation.
9
lainnya. Jika nilai si=-1, maka struktur cluster yang dihasilkan overlapping
sehingga data lebih baik dimasukkan ke dalam cluster yang lain.
Berikut jenis struktur cluster berdasarkan nilai Silhouette Coefficient yang
diperoleh.
Tabel 2-1: Penggolongan Tipe Cluster [18]
Jangkauan nilai Sillhouette Struktur Cluster yang terbentuk
Coefficient
Kuat
Menengah
Lemah
Tidak memiliki struktur
Cluster yang memiliki rata-rata nilai SC diatas 0.5 menunjukkan bahwa data
telah berada pada cluster yang tepat. Sedangkan nilai SC yang kurang dari 0.2
menunjukkan bahwa terdapat data yang tidak tepat berada dalam cluster tersebut.
10