IMPLEMENTASI SUPPORT VECTOR MACHINES UNTUK PENCARIAN
INFORMASI BUKU DI PERPUSTAKAAN DAERAH BANDUNG PROVINSI JAWA BARAT
Nelly Indriani Widiastuti, Riki Hidayat
Teknik Informatika UNIKOM, Jl. Dipati Ukur no. 102-116
Bandung
E-Mail: indiwidi@gmail.com, riki.hidayat.91@gmail.com
Abstrak
Badan Perpustakaan dan Kearsipan Daerah (BAPUSIPDA) adalah
lembaga
perpustakaan daerah ditingkat Provinsi Jawa Barat. Untuk
memperoleh informasi buku
yang diperlukan, pengunjung perpustakaan harus mengetahui
identitas buku tersebut.
Berdasarkan permasalahan tersebut perlu dikembangkan sistem
pencarian informasi buku yang dapat menemukan informasi buku sesuai dengan
kebutuhan pengunjung secara dinamis. Sistem tidak hanya terpaku kepada
identitas buku seperti judul, pengarang, penerbit, dan lain-lain, melainkan
gambaran kebutuhan pengunjung terhadap buku. Selain itu, pengunjung juga dapat
menentukan relevan atau tidaknya informasi buku sebagai feedback untuk sistem
agar sistem bisa menemukan informasi buku yang lebih relevan menurut
pengunjung. Sistem ini dibangun dengan mengimplementasikan metode vector space
model dan support vector machines.
Hasil penelitian dapat disimpulkan bahwa sistem pencarian
informasi buku dapat mempermudah pengunjung untuk mencari informasi buku yang
dibutuhkan.
Kata kunci : sistem pencarian informasi buku, vector space
model, support vector machines
Abstract
Badan Perpustakaan dan Kearsipan Daerah (BAPUSIPDA) is the
local library level, West Java Province. To obtain the necessary information
books, library patrons visitors have to know the identity of the book.
Based on these problems, books information retrieval systems
must be developed that can find information about the books that fit the needs
of visitors dynamically. System, not only identity of the book such as title,
author, publisher, etc., but the picture of the needs of visitors to the book.
In addition, visitors can also determine whether or not the information
relevant to the user as a feedback to the system so that the system can find
the book more relevant information by visitors. The system is built by
implementing methods of vector space model and support vector machines.
The research concluded that information retrieval systems to
facilitate visitor books to find the information needed books.
Keyword : books Information Retrieval System, vector space
model, support vector machines
PENDAHULUAN
Perpustakaan adalah salah satu tempat untuk memperoleh ilmu
dengan cara yang sangat murah. Pengunjung hanya perlu mendaftarkan diri untuk
dapat meminjam beberapa buku dengan nyaris tanpa biaya. Badan Perpustakaan dan
Kearsipan Daerah (BAPUSIPDA) adalah perpustakaan daerah Bandung JawaBarat. Saat
ini jumlah buku di
perpustakaan daerah tersebut sudah mencapai kurang lebih
180.000 eksemplar per tanggal 18 April 2012. Meskipun demikian dari sekian
banyaknya jumlah buku yang ada di perpustakaan tersebut tetap masih belum bisa
memenuhi kebutuhan masyarakat.
Untuk memperoleh buku yang diperlukan seseorang dapat datang
langsung ke perpustakaan. Tetapi berdasarkan hasil wawancara terhadap beberapa
pengunjung perpustakaan dapat disimpulkan bahwa untuk
mencari informasi buku yang diinginkan, hanya sedikit
pengunjung yang sudah mengetahui identitas buku (judul, pengarang, subjek, dan
lain-lain). Kebanyakan pengunjung justru tidak mengetahui informasi yang cukup
tentang identitas buku yang akan dicari melainkan hanya mengetahui gambaran
akan kebutuhannya mengenai informasi yang dibutuhkan terhadap buku.
Sistem pencarian yang ada di perpustakaan tidak dapat
memecahkan solusi untuk permasalahan yang sudah dipaparkan sebelumnya karena
masukan terhadap sistem masih sangat spesifik yaitu judul dan penulis buku
tersebut. Berdasarkan uraian masalah tersebut perlu dikembangkan sistem
pencarian informasi buku yang dapat menemukan informasi buku sesuai dengan
gambaran kebutuhan pengunjung yang dinamis.
Information Retrieval System (IRS)
Information Retrieval (IR) atau pencarian informasi dapat
didefinisikan sebagai upaya untuk menemukan materi atau dokumen yang sifatnya
tidak terstruktur (misalnya teks) yang memenuhi kebutuhan informasi dari jumlah
data yang sangat besar dalam sebuah sistem. Salah satu pengertian IR menurut
Bill Frakes dan Ricardo Yates[1] adalah "sub bidang dari ilmu komputer
yang mempelajari tentang pengumpulan data dan temu kembali dokumen". Dalam
perkembangan selanjutnya IR dikembangkan menjadi automated IR systems yang
menangani temu kembali data secara otomatis dalam jumlah data yang besar.
Tujuan dari sistem IR adalah memenuhi kebutuhan informasi
pengguna dengan me-retrieve semua dokumen yang mungkin relevan, pada waktu yang
sama me-retrieve sesedikit mungkin dokumen yang tidak relevan. Sistem IR yang
baik memungkinkan pengguna menentukan secara cepat dan akurat apakah isi dari
dokumen yang diterima memenuhi kebutuhannya. Agar representasi dokumen lebih
baik, dokumen-dokumen dengan topik atau isi yang mirip dikelompokkan
bersama¬sama [2].
Keefektifan dari temu kembali informasi yang diinginkan
tergantung pada dua hal mendasar yaitu perilaku pengguna dan logical view.
Perilaku pengguna berhubungan
dengan kegiatan pengguna menentukan query yang sesuai dengan
informasi yang diinginkan. Logical view adalah representasi dokumen dalam
bentuk koleksi keseluruhan kata-kata yang dikandungnya. Efektifitas dengan
logical view dimana sistem harus dapat mereduksi kata yang disimpan dan
mentransformasi logical view dari full text menjadi bentuk indeks. Hal ini
dilakukan dengan meng-eliminasi stoplist (kata-kata yang terlalu umum seperti
kata sandang, kata sambung, kata ganti, dll) dan melakukan proses stemming
(pengubahan bentuk imbuhan ke bentuk dasar). Lebih jauh lagi adalah penggunaan
metode-metode kompresi teks.
Gambar 1. Arsitektur IRS[3]
Proses yang ada didalam IRS dapat dilihat pada Gambar 1.
Secara umum proses IRS adalah preprocessing, indexing, searching dan ranking.
Vector Space Model (VSM)
VSM adalah model sistem temu balik informasi yang
mengibaratkan masing¬masing query dan dokumen sebagai sebuah vektor n-dimensi.
Tiap dimensi pada vektor tersebut diwakili oleh satu term. Term yang digunakan
biasanya berpatokan kepada term yang ada pada query, sehingga term yang ada
pada dokumen tetapi tidak ada pada query biasanya diabaikan.
Secara umum prosedur VSM dibagi menjadi tiga tahap [4].
1. Document indexing yaitu kumpulan
term yang telah diekstrak dari teks dokumen.
2. Weighting
yaitu pembobotan dari term yang sudah di-indeks untuk meningkatkan kualitas
pencarian.
3. Ranking document berdasarkan tingkat kemiripan antara
query dengan dokumen.
Gambar 2. Vector Space Model[5]
Contoh dari model ruang vektor tiga dimensi untuk dua
dokumen D1 dan D2, satu query pengguna Q1, dan tiga term T1, T2 dan T3
diperlihatkan pada gambar 2.
Support Vector Machines (SVM)
Rancangan dasar dari sistem IR dapat ditingkatkan untuk
menaikkan presisi dan recall serta memperbaiki matriks term-document. Isu
pertama sering diselesaikan
menggunakan mekanisme relevance
feedback. Beberapa term ditambahkan ke dalam query awal agar
dapat menemukan dokumen yang lebih relevan. Relevance feedback dapat dikerjakan
secara manual maupun otomatis. Pada pendekatan manual, pengguna
mengidentifikasi dokumen yang relevan dan term baru dipilih secara manual atau
otomatis. Pada pendekatan otomatis,
dokumen relevan diidentifikasi
menggunakan dokumen yang berada di rangking paling atas,
kemudian term-term baru dipilih secara otomatis.
Takashi Onoda, dkk dalam
penelitiannya yang berjudul Relevance Feedback Document
Retrieval using Support Vector Machines, telah berhasil melakukan peningkatan
kualitas pencarian dengan memodifikasi vektor query.
Support Vector Machines (SVM) adalah suatu teknik yang
relatif baru (1992) untuk melakukan prediksi, baik dalam kasus klasifikasi
maupun regresi, yang sangat populer belakangan ini. SVM berada dalam satu kelas
dengan Artificial Neural Network (ANN) dalam hal fungsi dan kondisi
permasalahan yang bisa diselesaikan. Keduanya masuk dalam kelas supervised
learning. SVM selalu mencapai solusi yang sama untuk setiap running. Dalam
teknik
ini, SVM berusaha untuk menemukan hyperplane
(pemisah/classifier) yang optimal yang bisa memisahkan dua set data dari dua
kelas yang berbeda.
Dalam hal ini fungsi pemisah yang dicari adalah fungsi
linier. Fungsi ini bisa didefinisikan sebagai g(x) := sgn(f(x)) dengan f(x) =
wT x + b. Teknik SVM berusaha menemukan fungsi hyperplane terbaik diantara
fungsi yang tidak terbatas jumlahnya untuk memisahkan dua macam obyek.
Hyperplane terbaik adalah hyperplane yang terletak di tengah-tengah antara dua
set obyek dari dua kelas. Mencari hyperplane terbaik ekuivalen dengan
memaksimalkan margin atau jarak antara dua set objek dari kelas yang berbeda.
Untuk menentukan hyperplane-pendukung (supporting
hyperplane) dari kelas +1 (wx1 + b = +1) digunakan rumus (1) dan rumus (2)
untuk menentukan hyperplane-pendukung dari kelas -1(wx2 + b = -1)
wx1 + b = +1 (1)
wx2 + b = -1 (2)
Margin antara dua kelas dapat dihitung dengan mencari jarak
antara kedua hyperplane-pendukung dari kedua kelas. Rumus (3) digunakan untuk
menghitung margin.
(wx1 + b = +1) - (wx2 + b = -1) (3)
= w(x1 – x2 ) = 2
= W
(IIWII (x1 − x2)) = 2
IIWII
Gambar 3 memperlihatkan bagaimana SVM bekerja untuk
menemukan suatu fungsi pemisah dengan margin yang maksimal. Dengan memperbesar
margin bisa meningkatkan probabilitas pengelompokkan suatu data secara benar.
ANALISA KEBUTUHAN DATA
Sistem yang dikembangkan adalah sistem pencarian hanya jika
data pencarian tersedia. Data pencarian adalah identitas buku, dalam penelitian
ini data yang dibutuhkan berupa judul, pengarang dan deskripsi.
Gambar 3. Mencari Fungsi Pemisah Optimal yang dapat
Memisahkan Data Secara Linear[6]
Berdasarkan hasil analisa beberapa golongan buku, maka
diperoleh karakteristik teks dari data buku yang perlu diperhatikan adalah
sebagai berikut :
a. Bahasa
Terdapat beragam bahasa yang digunakan dalam buku yang ada
di perpustakaan. Pada penelitian ini data buku yang digunakan merupakan data
buku dengan teks berbahasa Indonesia dan bahasa Inggris.
b. Deskripsi
Buku
Untuk mendapatkan deskripsi buku, dapat dilihat dari cover
belakang buku. Alternatif lain yang bisa dijadikan deskripsi buku yaitu kata
pengantar atau
daftar isi dari data buku.
c. Jenis
Kata
Terdapat beragam jenis kata yang ada data buku, yaitu :
1) kata
sesuai EYD,
2) kata yang
biasa digunakan sehari-hari,
3) kata
berimbuhan,
4) kata
dasar
ANALISA PROSES
Sistem dibagi menjadi dua proses penting, yaitu proses
pencarian dan proses pengolahan data. Proses pencarian dapat digunakan oleh
pengunjung untuk melakukan proses pencarian informasi buku dan lihat deskripsi
dari buku itu sendiri. Proses pencarian dalam penelitian ini adalah proses
pencarian dinamis, dimana pengguna juga dapat menentukan sesuai atau tidak nya
query dengan informasi buku yang
ditampilkan dari hasil pencarian, setelah itu sistem akan
mengklasifikasikan seluruh data buku yang terdapat dalam database kedalam
kategori relevan dan tidak relevan. Data buku yang ditampilkan adalah data buku
yang masuk dalam kategori relevan.
Proses pengolahan data, khusus digunakan oleh operator untuk
melakukan proses pengolahan (tambah, ubah, lihat detail, cari, dan hapus) data
buku, pengolahan (tambah dan ubah) data golongan, dan melakukan optimisasi pada
sistem pencarian. Gambar 4. Berikut ini adalah gambaran dari aktivitas sistem
pencarian informasi buku :
Pengunjung Sistem
_
Masukkan Mencari
dan Memberi Peringkat Data
Buku Berdasarkan Ukuran Kemiripan
Query
1
Menampilkan
Maksimal 10 Informasi
Buku dengan Ukuran Kemiripan Tertinggi
Cek Data Buku
yang
Relevan
~
Mengklasifikasi
Seluruh Data Buku
Berdasarkan Hasil Cek Pengunjung
1
Menampilkan
Informasi Buku Hasil
Klasifikasi
0
Gambar 4. Aktivitas Pencarian Informasi Buku
Analisa Keyword
Keyword yang dimaksud dalam penelitian ini adalah data buku
yang merupakan gabungan dari judul, pengarang dan deskripsi buku yang sudah
mengalami proses tokenizing, filtering dan stemming. Metode stemming yang
digunakan dalam penelitian ini adalah Nazief & Adriani. Setiap data buku
mempunyai keyword-nya masing¬masing yang akan digunakan sebagai poros data
untuk proses pencarian informasi buku. Gambar 5. adalah gambaran proses
pembuatan keyword.
Setelah keyword diperoleh, selanjutnya adalah tahapan yang
ada dalam VSM yaitu
1. Memberikan bobot pada keyword. Pembobotan adalah proses
merubah
keyword dan query menjadi bentuk vektor.
2. Normalisasi
3. Mengukur
kemiripan yang dilakukan suatu perhitungan untuk mendapatkan ukuran kemiripan
antara dokumen dengan query.
4. Ukuran
ini hasil pengukuran kemiripan digunakan untuk perankingan dokumen sesuai
dengan kemiripan relevansinya terhadap query.
5. Terakhir,
sejumlah maksimal 10
dokumen, ditampilkan kepada
pengunjung[7].
Operator Sistem
T
Masukan Data Buku
Cek Isi
Data
[Ada
Field Kosong]
[Tidak
Ada Field
Kosong]
Simpan
Data Buku
Tokenisasi
dan Hapus
Stopword
" Stemming .
Simpan
Keyword
Menampilkan
Pesan
Konfirmasi
Gambar 5. Pembuatan Keyword
Analisa Pelatihan
Pada proses pelatihan SVM bertujuan untuk menemukan vektor α
dan konstanta b. Dalam proses pelatihan dibutuhkan satu set input-output data
atau dalam kasus ini dibutuhkan dokumen relevan dan dokumen tidak relevan
dimana penilaian relevan atau tidaknya suatu dokumen ditentutkan oleh pengguna.
Dokumen-dokumen relevan diberi label 1 dan dokumen yang tidak relevan diberi
label -1.
Sebagai contoh kasus, digunakan dokumen-dokumen yang
terdapat dalam contoh kasus VSM dan diasumsikan D1 dan D2 sebagai dokumen
relevan menurut pengguna dan D3 sebagai dokumen tidak
relavan. Maka, satu set input-output data dalam pelatihan
bisa dilihat di tabel 1.
Tahap selanjutnya yaitu melakukan
kernelisasi menggunakan fungsi
polynomial kernel pangkat 2 yang didefinisikan sebagai K(xi
, xi ) = (xi + xi’+12 ).
Tabel 1. Data Latih
D1 D2 D3
x1 0,208 0 0,163
x2 0,564 0 0
x3 0,564 0 0
x4 0,564 0 0
x5 0 0,408 0
x6 0 0,408 0
x7 0 0,408 0
x8 0 0,408 0
x9 0 0,408 0
x10 0 0,408 0
x11 0 0 0,441
x12 0 0 0,441
x13 0 0 0,441
x14 0 0 0,441
x15 0 0 0,441
y 1 1 -1
Analisa Klasifikasi
Takashi Onoda, dkk[9], mengusulkan
penggunaan SVM sebagai
pengklasifikasian dokumen dengan tahap¬tahap berikut ini :
1. Inisialisasi
Pencarian
Hasil pencarian ini diperoleh dari metode VSM dengan cara
menampilkan N peringkat teratas dokumen yang memiliki kemiripan terhadap query.
2. Penilaian
Dokumen oleh Pengguna Pengguna mengevaluasi N peringkat teratas dokumen dan
mengklasifikasi dokumen tersebut ke dalam dokumen
relevan atau tidak
relevan. Setelah
pengguna selesai mengevaluasi, relevan dokumen dan dokumen
yang tidak relevan diberi label +1 dan -1.
3. Penentuan
Optimal Hyper-plane
Optimal hyperplane untuk
mengklasifikasikan relevan dan tidak relevan suatu dokumen
dihasilkan oleh metode SVM.
4. Diskriminasi
Dokumen dan Pencarian Informasi
Dokumen yang diperoleh dari langkah 1 dipetakan ke dalam
ruang fitur, SVM mengklasifikasikan dokumen-dokumen tersebut sebagai dokumen
yang relevan
dan tidak relevan. Kemudian sistem akan memilih
dokumen-dokumen berdasarkan jarak optimal hyperplane dan margin area.
5. Menampilkan Hasil Akhir dari Pencarian Dokumen yang
didapat, di beri peringkat sesuai dengan jarak antara dokumen dengan fungsi
pemisah hyperplane, dimana fungsi pemisah ini ditetapkan oleh SVM. Dokumen yang
didapat di tampilkan berdasarkan peringkat.
ANALISA FUNGSIONAL
Mendefinisikan analisa kebutuhan fungsional dan operasional
sistem dengan
mendefinisikan skenario penggunaan
aplikasi. Pada aplikasi ini yang akan bertindak sebagai
aktor yaitu pengunjung dan operator. Operator berperan mengelola
seluruh konten perangkat lunak.
Pengunjung berperan dalam melakukan proses pencarian.
Analisis yang dilakukan dimodelkan dengan menggunakan UML
(Unified Modeling Language). Tahap-tahap pemodelan dalam analisa tersebut
antara lain identifikasi aktor, use case diagram, skenario usecase, activity
diagram, sequence diagram dan class diagram. Dalam jurnal yang ditampilan hanya
usecase dan activity diagram.
Gambar 6. Use Case Diagram Sistem Pencarian
Informasi Buku
Untuk memperlihatkan hubungan-hubungan yang terjadi antara
aktor-aktor dengan usecase dalam sistem dapat dilihat pada gambar 6. Operator
dalam usecase adalah petugas perpustakaan yang bertugas memperbarui data buku,
Proses yang terjadi dalam pencarian informasi dalam sistem
ini dapat dilihat pada gambar 7.
Pengunjung Sistem
S
Masukan
Query Cek Query
[tidak
kosong]
~ [kosong] i
Menampilkan
Pesan Melakukan Proses
Kesalahan Tokenization dan Filtering
Melakukan Proses
Stemming
Hitung
Bobot Query Baca Bobot Keyword
[Data
Buku]
Hitung
Similiarity /•A~
Menampilkan
Pesan/
Data
Tidak Ditemukan [Tidak Ditemukan]
[Ditemukan]
Menampilkan
Informasi
Buku
Gambar 7. Pencarian Data Buku
Aktivitas pencarian data buku lebih lanjut pada gambar 8.
Merupakan aktivitas pengunjung untuk menemukan informasi buku yang lebih
relevan dengan cara memilih beberapa informasi buku hasil dari proses pencarian
data buku yang relevan berdasarkan penilaian pengunjung.
Aktivitas Optimisasi pada gambar 9. merupakan aktivitas
operator untuk menghitung bobot dan normalisasi data buku serta membuat data
tes untuk setiap data buku. Tahapan-tahapan aktivitas yang dilakukan pada saat
optimisasi adalah :
Gambar 9. Optimasi Sistem Pencarian
IMPLEMENTASI DAN PENGUJIAN
Perangkat keras yang digunakan pada saat mengimplementasikan
perangkat lunak dari Sistem Pencarian Informasi Buku di Perpustakaan Daerah
Provinsi Jawa Barat adalah sebagai berikut :
1. Processor
Intel(R) Core i3 2.1 GHz,
2. RAM 3GB,
3. VGA ATI
Radeon HD 530v,
4. Hard Disk
320GB,
5. Monitor
14”, dan
6. Modem
berkecepatan 153Kbps.
Perangkat lunak yang digunakan saat mengembangkan Sistem
Pencarian Informasi Buku di Perpustakaan Daerah Provinsi Jawa Barat adalah
sebagai berikut :
1. Sistem
operasi Windows 7 Professional,
2. Bahasa
pemrograman PHP 5.3.0,
3. Database
MySQL Server 5.0.37,
4. Browser
Maxthon 3.4.2.2000,
5. Macromedia
Dreamweaver CS5, dan
6. UML
Modeler Power Designer 12.
File-file yang berhasil diimplementasikan terdiri dari
file-file tabel yang dibuat denganSQL, file kelas metode dan file antarmuka.
Pengujian perangkat lunak Sistem Pencarian Informasi Buku di
Perpustakaan ini menggunakan dua data uji yaitu data buku dan data golongan.
Pengujian dilakukan dengan metode Black Box untuk menguji fungsi-fungsi yang
dapat dilihat pengguna. Metode Whitebox untuk menguji proses yang ada dalam
metode SVM.
Dari hasil pengujian proses
klasifikasi yang dilakukan, maka didapat kesimpulan bahwa
seluruh node yang ada pada setiap independent path telah dikerjakan , serta
tidak terjadi pengulangan tak terhingga.
Selain pengujian fungsional, respon pengguna juga diperlukan
untuk mengetahui kepuasan pengguna terhadap sistem. Hasil dari pengujian beta
dapat disimpulkan bahwa sistem pencarian informasi buku yang telah dibangun
dapat membantu pengguna khususnya pengunjung perpustakaan untuk menemukan buku
yang dibutuhkan, karena mudah untuk digunakan dan cukup cepat dalam proses
pencarian.
DAFTAR PUSTAKA
[1] Frakes,
William B and Yates, Ricardo Baeza. Information Retrieval: Data Structures and
Algorithms. 2004.
[2] Murad, AzmiMA., Martin,
Trevor.2007.Word Similarity for
Document Grouping using Soft Computing. IJCSNS International
Journal of Computer Science and
Network Security, Vol.7 No.8, August 2007, pp.20-27.
[3] Onoda T,
Murata H , and Yamada S , Relevance feedback with active learning for document
retrieval, in Proc. of IJCNN2003, pp. 1757–1762, 2003.
[4] Larsen,
Jan. 1998. Vector Space Model.http://cogsys.imm.dtu.dk/thor/proj
ects/multimedia/textmining/node5.html. Diakses pada tanggal 4 Juni 2012.
[5] Cios,
Krzysztof J. Etc. Data Mining a Knowledge Discovery Approach, Springer. 2007.
[6] Santosa.
Budi. Tutorial Support Vector Machines. Institut Teknologi Sepuluh Nopember,
Surabaya.
[7] D. Harris,
S. Behzad, G. C. David. Relevance Feedback using Support Vector Machines.
AT&T Research.
CI-007 (wahyu)
CI-008 (wahyu)
Tidak ada komentar:
Posting Komentar