Sistem pemerolehan informasi makalah ilmiah berbahasa Indonesia menggunakan struktur data inverted index dengan metode pembobotan TF-IDF berbasis ordbms - USD Repository
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
SISTEM PEMEROLEHAN INFORMASI MAKALAH ILMIAH
BERBAHASA INDONESIA MENGGUNAKAN STRUKTUR DATA
INVERTED INDEX DENGAN METODE PEMBOBOTAN TF-IDF
BERBASIS ORDBMS
SKRIPSI
Diajukan untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Komputer
Program Studi Teknik Informatika
Oleh:
Justina Septiani Wulandari
NIM : 085314031
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2013
i
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
INFORMATION RETRIEVAL SYSTEM OF INDONESIAN SCIENTIFIC
PAPERS USING INVERTED INDEX DATA STRUCTURE WITH TF-IDF
WEIGHTING METHOD BASED ON ORDBMS
THESIS
Presented as Partial Fullfilment of the Requirements
To Obtain the Computer Bachelor Degree
In Informatics Engineering
By:
Justina Septiani Wulandari
Student Number : 085314031
INFORMATICS ENGINEERING STUDY PROGRAM
DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2013
ii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN PERSETUJUAN
iii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN PENGESAHAN
iv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PERNYATAAN KEASLIAN KARYA
Penulis menyatakan dengan sesungguhnya bahwa skripsi yang ditulis ini
tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan
dalam kutipan dan daftar pustaka, sebagaimana layaknya sebuah karya ilmiah.
Yogyakarta, 13 Februari 2013
Penulis,
Justina Septiani Wulandari
v
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN MOTO
LULUS ITU PILIHAN..
MAU CEPAT ATAU LAMBAT SEMUA DITENTUKAN OLEH DIRI
SENDIRI..
CINTAILAH SKRIPSI SEPERTI MENCINTAI PACARMU, MAKA
SKRIPSI AKAN LEBIH MUDAH UNTUK DITAKLUKAN..
JUST FOCUS AND SAY “I CAN DO IT!!”
In Nomine Jesu
vi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN PERSEMBAHAN
Kupersembahkan skripsi ini kepada:
Tuhan Yesus Kristus dan Bunda-Nya atas lindungan dan kasih-Nya ε(˘ʃƪ˘)з
Keluargaku Mama Anastasia. W, Bapak FX. Suwarli, Adik F. Desylita. C,
Bulik T. Suwarni, Romo Paulus Sarmono, SCJ atas dukungan, kasih, doa
dan materi sehingga aku bisa menyelesaikan skripsiku (ɔ ˘⌣˘)˘⌣˘ c)
Kekasih hati AG. Hari Jati Nugraha, S.T yang mau menjadi tempat
sharing, memberikan masukkan dan kritik, memberikan support dalam
penyelesaian skripsiku, menjadi alarm pengingat untuk cepat lulus, waktu
dan cutinya utk menemani saat ujian (˘⌣˘)ε˘`) beserta keluarganya
yang memberikan doa serta dukungan
Sahabat-sahabatku yang selalu mau membantu, memberikan semangat
dan kritik:
~@rezaEmde yang menjadi teman seperjuangan dalam penyelesaian
skripsi dan seminar nasional ReTII~ (*^□^)八(^□^*)
~Friends Photography crew: @petrav69, @puutripuut, @iamdewangga,
@SuryaAtmajaDB, @DeviiSinaga, @rosadell, @eesyyyyyy, Ndul,
@nezines22 yang memberikan pengalaman yang sangat berharga bekerja
sama, profesional, dan mendapatkan hal baru \(^o^)/
~Kos Pak Kuat: @xtina_itha, @Little_Lan91, @yuliachann yang
menjadi teman seperjuangan dalam menyelesaikan skripsi~ ╭ (′▽`)╯
~@xvienz yang membantu dalam menggunakan sistem operasi open
source dan sharing skripsiku~ (˘-˘)ง
~@bebh_beth, @endra_prasetya, @virtualservers, @gadissssssss,
@frendars, @batistagempil, @fidisiledif, @roysyahputra,
@cellathiodore, @stmita, @exseminaris2007~ (╯▽╰)
~Teman-teman Laskar TI 2008, SaOS atas persahabatannya~ (ʃƪ˘˘)ﻬ
Teman-teman yang sedang menyelesaikan skripsi, tetap semangat YOU
CAN DO IT!! ƪ(٥`▽´٥)ʃ
@justwul90
vii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ABSTRAKSI
Setiap tahun makalah ilmiah berbahasa Indonesia semakin bertambah
banyak sehingga diperlukan sistem pemerolehan informasi untuk mencari
dokumen yang relevan. Sebagian besar sistem pemerolehan informasi dan web
pencarian menerapkan inverted index yang terbukti efisien dalam menjawab
query. Pada penelitian sebelumnya, penggunaan inverted index pada database
menawarkan beberapa keuntungan dan implementasi inverted index dengan
Bahasa Indonesia menggunakan ORDBMS memiliki waktu akses yang lebih baik
dibandingkan menggunakan RDBMS.
Dari latar belakang tersebut, diimplementasikan sebuah pencarian makalah
ilmiah berbahasa Indonesia berdasarkan seluruh isi teks dalam dokumen
menggunakan struktur data inverted index pada ORDBMS dengan metode
pembobotan TF-IDF (Savoy) dan stemming menggunakan algoritma Nazief &
Adriani. Sistem ini dikembangkan menggunakan bahasa pemrograman Java,
ORDBMS pada Oracle 11g R2 Enterprise Edition dan Netbeans.
Percobaan ini menggunakan corpus 281 dokumen makalah ilmiah
berbahasa Indonesia yang berisikan 25737 term. Waktu yang dibutuhkan untuk
proses pencarian pada operasi AND dengan 1 sampai 2 kata kunci kurang dari 0,1
detik, 3 kata kunci kurang dari 0,4 detik, dan 4 kata kunci kurang dari 1 detik.
Sedangkan, pada hasil perhitungan recall precision pada 11 titik sistem dapat
menghasilkan nilai yang baik meskipun terdapat beberapa kelemahan yang
ditemukan.
Kata kunci: Pemerolehan informasi, inverted index, ORDBMS, TF-IDF
viii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ABSTRACT
Every year, Indonesian scientific papers are multiplying so it required
information retrieval system to find relevant documents. Most of the information
retrieval system and web search implement inverted index which proven efficient
in answering queries. In previous research, the use of inverted index on database
offers several advantages and implementation of inverted index by using
Indonesian languages on ORDBMS had better access time than using RDBMS.
From these background, searching scientific paper with Indonesian
language was implemented scientific paper searching, the entire contents of the
text in a document using the inverted index data structure on ORDBMS with TFIDF weighting method (Savoy) and stemming algorithm Nazief & Adriani. The
system was developed using the Java programming language, ORDBMS Oracle
11g R2 Enterprise Edition and Netbeans.
This experiment uses corpus 281 Indonesian scientific papers documents
that contains 25,737 terms. The time needed to process a search on the AND
operation with 1 to 2 keywords less than 0.1 seconds, 3 keywords less than 0.4
seconds, and 4 keywords less than 1 second. Meanwhile, result on the 11-point
recall precision computation system can produce a good value despite some
weaknesses were found.
Keyword: Information retrieval, inverted index, ORDBMS, TF-IDF
ix
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LEMBAR PERNYATAAN PERSETUJUAN
PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
Yang bertanda tangan dibawah ini, saya mahasiswa Universitas Sanata Dharma:
Nama
: Justina Septiani Wulandari
NIM
: 085314031
Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan
Universitas Sanata Dharma karya ilmiah yang berjudul:
SISTEM PEMEROLEHAN INFORMASI MAKALAH ILMIAH
BERBAHASA INDONESIA MENGGUNAKAN STRUKTUR DATA
INVERTED INDEX MENGGUNAKAN METODE PEMBOBOTAN TF-IDF
BERBASIS ORDBMS
Beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan
kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan,
mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan
data mendistribusikan secara terbatas, dan mempublikasikannya di Internet atau
media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya
maupun memberikan royalti kepada saya selama tetap mencantumkan nama saya
sebagai penulis.
Demikian pernyataan ini yang saya buat dengan sebenarnya.
Dibuat di Yogyakarta,
Pada tanggal: 13 Februari 2013
Yang menyatakan,
Justina Septiani Wulandari
x
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
KATA PENGANTAR
Puji dan saya panjatkan kepada Tuhan Yesus Kristus atas kasih dan
lindungan-Nya sehingga saya dapat menyelesaikan tugas akhir ini.
Dalam penyelesaian tugas akhir ini ada begitu banyak pihak yang telah
memberikan bantuan dan perhatian dengan caranya masing-masing sehingga
tugas akhir ini dapat diselesaikan. Oleh karena itu saya mengucapkan terimakasih
kepada :
1.
Ibu Paulina Heruningsih Prima Rosa, S.Si., M.Sc., selaku dekan Fakultas
Sains dan Teknologi Universitas Sanata Dharma.
2.
Ibu Ridowati Gunawan, S.Kom., M.T., selaku ketua jurusan Teknik
Informatika Universitas Sanata Dharma.
3.
Bapak JB. Budi Darmawan, S.T., M.Sc., selaku dosen pembimbing TA yang
selalu membimbing dan memberikan banyak masukkan.
4.
Ibu Sri Hartati Wijono, S.Si., M.Kom. dan Bapak Puspaningtyas Sanjoyo
Adi, S.T., M.T. selaku penguji TA, atas saran dan kritik yang diberikan untuk
menunjang Tugas Akhir ini.
5.
Kedua orang tua FX. Suwarli dan Anastasia. W, adik Fabiola Desylita. C,
Bulik T. Suwarni, dan kekasih AG. Hari Jati Nugraha, S.T yang selalu
memberi dukungan, kasih sayang, semangat, dan masukkan dalam proses
pengerjaan tugas akhir ini.
6.
Responden kuesioner yang merelakan waktunya dalam pengujian tugas akhir
ini.
xi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7.
Teman-teman Laskar IT 2008, SaOS, crew friends photography atas
dukungan dan persahabatannya.
8.
Semua pihak yang telah membantu penulis baik secara langsung maupun
tidak langsung, yang tidak dapat disebutkan satu persatu.
Saya menyadari masih banyak kekurangan yang terdapat pada laporan ini.
Saran dan kritik selalu saya harapkan dari pembaca untuk perbaikan – perbaikan di
masa yang akan datang.
Akhir kata, saya berharap tulisan ini dapat bermanfaat bagi kemajuan dan
perkembangan ilmu pengetahuan dan berbagai pihak pengguna pada umumnya.
Yogyakarta, 13 Februari 2013
Penulis
xii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR ISI
HALAMAN JUDUL BAHASA INDONESIA ...................................................... i
HALAMAN JUDUL BAHASA INGGRIS .......................................................... ii
HALAMAN PERSETUJUAN ............................................................................iii
HALAMAN PENGESAHAN ............................................................................. iv
PERNYATAAN KEASLIAN KARYA ............................................................... v
HALAMAN MOTO ........................................................................................... vi
HALAMAN PERSEMBAHAN ......................................................................... vii
ABSTRAKSI .................................................................................................... viii
ABSTRACT ....................................................................................................... ix
LEMBAR PERNYATAAN PERSETUJUAN ...................................................... x
KATA PENGANTAR ........................................................................................ xi
DAFTAR ISI .................................................................................................... xiii
DAFTAR TABEL ........................................................................................... xvii
DAFTAR GAMBAR ........................................................................................ xix
DAFTAR LISTING ......................................................................................... xxii
BAB I PENDAHULUAN .................................................................................... 1
1.1
Latar Belakang Masalah......................................................................... 1
1.2
Rumusan Masalah.................................................................................. 2
1.3
Tujuan ................................................................................................... 2
1.4
Batasan Masalah .................................................................................... 3
1.5
Metodologi Penelitian ............................................................................ 3
1.6
Sistematika Penulisan ............................................................................ 4
BAB II LANDASAN TEORI .............................................................................. 5
2.1
Pemerolehan Informasi .......................................................................... 5
2.1.1
Konsep Pemerolehan Informasi ...................................................... 5
2.1.2
Logical View Dokumen .................................................................. 5
2.1.4
Inverted Index............................................................................... 11
2.1.5
Metode Pembobotan TF-IDF ........................................................ 12
xiii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2.1.6
2.2
Recall dan Precision ..................................................................... 13
Object Oriented Conceptual Model ...................................................... 14
2.2.1
Relasi Asosiasi ............................................................................. 15
2.2.2
Relasi Agregrasi .......................................................................... 15
2.3
Object Relational Database Management System ................................ 16
2.3.1
Konsep Object Relational Database Management System ............. 16
2.4 Implementasi Existence-Dependent Aggregation menggunakan Teknik
Nesting ........................................................................................................... 19
2.5
Penggunaan DBMS untuk Pemerolehan Informasi ............................... 19
BAB III ANALISA DAN PERANCANGAN SISTEM ...................................... 22
3.1
Gambaran Sistem yang Dikembangkan ................................................ 22
3.1.1
Gambaran Proses pada Sistem ...................................................... 23
3.1.1.1
3.2
3.3
Alur Kerja Proses Indexing .................................................... 23
Analisa Kebutuhan ........................................................................... 31
Perancangan Sistem ............................................................................. 31
3.3.1
Diagram Use Case ........................................................................ 31
3.3.2
Narasi Use Case ............................................................................ 32
3.3.2.1
Login ..................................................................................... 32
3.3.2.2
Menambahkan Dokumen Makalah ......................................... 34
3.3.2.3
Mengubah Data Dokumen Makalah ....................................... 36
3.3.2.4
Logout ................................................................................... 37
3.3.2.5
Mencari Dokumen Makalah ................................................... 38
3.3.3
Data Flow Diagram (DFD) ........................................................... 39
3.3.3.1
Diagram Context ................................................................... 40
3.3.3.2
Diagram Berjenjang ............................................................... 40
3.3.3.3
DFD Level 0 .......................................................................... 41
3.3.3.4
DFD Level 1 Proses 1 ............................................................ 42
3.3.3.5
DFD Level 1 Proses 2 ............................................................ 42
3.3.3.6
DFD Level 1 Proses 3 ............................................................ 43
3.3.3.7
DFD Level 1 Proses 4 ............................................................ 43
3.3.3.8
DFD Level 1 Proses 5 ............................................................ 43
xiv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3.3.3.9
3.4
DFD Level 1 Proses 6 ............................................................ 44
Perancangan Database ......................................................................... 45
3.4.1
Conceptual Database Design ......................................................... 45
3.4.2
Logical Database Design .............................................................. 48
3.4.3
Physical Database Design ............................................................. 48
3.4.4
Proses Query pada ORDBMS ....................................................... 54
3.5
Perancangan Antarmuka (Interface) ..................................................... 55
3.5.1
Desain Halaman Login Administrator ........................................... 55
3.5.2
Desain Halaman Beranda Administrator ....................................... 56
3.5.3
Desain Halaman Tambah Makalah ................................................ 57
3.5.4
Desain Halaman Edit Makalah ...................................................... 57
3.5.5
Desain Halaman Pencarian ........................................................... 59
3.5.6
Desain Halaman Hasil Pencarian .................................................. 59
BAB IV IMPLEMENTASI ................................................................................ 61
4.1
Spesifikasi Software dan Hardware yang Digunakan............................ 61
4.1.1
Spesifikasi Software ..................................................................... 61
4.1.2
Spesifikasi Hardware .................................................................... 61
4.2
Implementasi Basis Data ...................................................................... 62
4.3
Koneksi dari Java ke Oracle ................................................................. 74
4.4
Implementasi Struktur Data Inverted Index .......................................... 74
4.5
Pembuatan Antarmuka (Interface) ....................................................... 76
4.5.1
Halaman Login ............................................................................. 76
4.5.2
Halaman Beranda Administrator ................................................... 76
4.5.3
Halaman Tambah Makalah ........................................................... 77
4.5.5
Halaman Edit Makalah ................................................................. 88
4.5.6
Halaman Pencarian ....................................................................... 89
4.5.7
Halaman Hasil Pencarian .............................................................. 96
BAB V ANALISA HASIL ................................................................................ 97
5.1
Analisa Hasil Program ......................................................................... 97
5.1.2
5.1.3
Analisa Uji Coba Pengguna .............................................................. 97
Analisa Unjuk Kerja Waktu Akses Query ................................... 116
xv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5.2
Kelebihan dan Kekurangan Sistem..................................................... 119
5.2.1
Kelebihan Sistem ........................................................................ 119
5.2.2
Kelemahan Sistem ...................................................................... 120
BAB VI KESIMPULAN DAN SARAN .......................................................... 121
6.1
Kesimpulan........................................................................................ 121
6.2
Saran ................................................................................................. 122
DAFTAR PUSTAKA ...................................................................................... 124
LAMPIRAN .................................................................................................... 126
xvi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR TABEL
Tabel 2.1. Kombinasi Awalan Akhiran Yang Tidak Diijinkan .............................. 8
Tabel 2.2. Cara menentukan tipe awalan untuk Kata yang diawali dengan “te-” ... 8
Tabel 2.3. Jenis Awalan Berdasarkan Tipe Awalannya......................................... 9
Tabel 3.1. Tabel Analisa Kebutuhan .................................................................. 31
Tabel 3.2. Narasi Use Case Login ...................................................................... 32
Tabel 3.3.Narasi Use Case Menambah Dokumen Makalah ................................ 34
Tabel 3.4.Narasi Use Case Mengubah Data Dokumen Makalah ......................... 36
Tabel 3.5. Narasi Use Case Logout .................................................................... 37
Tabel 3.6. Narasi Use Case Mencari Dokumen Makalah .................................... 38
Tabel 3.7. Tabel Status....................................................................................... 49
Tabel 3.8. Tabel Documents ............................................................................... 49
Tabel 3.9. Tabel Posting .................................................................................... 50
Tabel 3.10. Tabel Terms..................................................................................... 50
Tabel 3.11. Tabel Posting_Stopword .................................................................. 51
Tabel 3.12. Tabel Stopwords .............................................................................. 51
Tabel 3.13. Tabel Dictionary ............................................................................. 51
Tabel 3.14. Tabel Administrator......................................................................... 52
Tabel 3.15. Tabel Sourceterm ............................................................................ 52
Tabel 3.16. Tabel Jurnal ..................................................................................... 53
Tabel 3.17. Tabel Term ...................................................................................... 53
Tabel 4.1. Tabel Status....................................................................................... 64
Tabel 4.2. Tabel Documents ............................................................................... 64
Tabel 4.3. Tabel Posting..................................................................................... 65
Tabel 4.4. Tabel Terms ...................................................................................... 66
Tabel 4.5. Tabel Posting_stopword .................................................................... 67
Tabel 4.6. Tabel Stopwords ................................................................................ 68
Tabel 4.7. Tabel Dictionary ............................................................................... 69
Tabel 4.8. Tabel Administrator .......................................................................... 69
Tabel 4.9. Tabel Sourceterm .............................................................................. 70
xvii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Tabel 4.10. Tabel Jurnal ..................................................................................... 71
Tabel 4.11. Tabel Term ...................................................................................... 72
Tabel 5.1. Hasil operasi AND sebelum dijumlahkan nilai bobotnya ................. 102
Tabel 5.2. Hasil operasi AND setelah dijumlahkan nilai bobotnya ................... 102
Tabel 5.3. Urutan dokumen untuk kata kunci “jaringan syaraf tiruan” .............. 103
Tabel 5.4. Seluruh dokumen yang relevan berdasarkan responden untuk kata
kunci “jaringan syaraf tiruan” .......................................................................... 103
Tabel 5.5. Nilai recall dan precision untuk kata kunci “jaringan syaraf tiruan”. 104
Tabel 5.6. Perhitungan interpolasi untuk kata kunci “jaringan syaraf tiruan” .... 105
Tabel 5.7. Seluruh dokumen yang relevan berdasarkan responden untuk kata
kunci “data mining asosiasi” ............................................................................ 106
Tabel 5.8. Nilai recall dan precision untuk kata kunci “data mining asosiasi” .. 106
Tabel 5.9. Perhitungan interpolasi untuk kata kunci “data mining asosiasi” ...... 107
Tabel 5.10. Seluruh dokumen yang relevan berdasarkan responden untuk kata
kunci “cube” .................................................................................................... 109
Tabel 5.11. Nilai recall dan precision untuk kata kunci “cube” ........................ 109
Tabel 5.12. Perhitungan interpolasi untuk kata kunci “cube” ............................ 110
Tabel 5.13. Seluruh dokumen yang relevan berdasarkan responden untuk kata
kunci “hardisk” ................................................................................................ 111
Tabel 5.14. Nilai recall dan precision untuk kata kunci “hardisk” .................... 112
Tabel 5.15. Perhitungan interpolasi untuk kata kunci “hardisk”........................ 112
Tabel 5.16. Seluruh dokumen yang relevan berdasarkan responden untuk kata
kunci “wireless network” ................................................................................. 113
Tabel 5.17. Nilai recall dan precision untuk kata kunci “wireless network”...... 114
Tabel 5.18. Perhitungan interpolasi untuk kata kunci “wireless network” ......... 114
Tabel 5.19. Rata-rata waktu query untuk 3 kelompok dfk dengan 4 kata kunci . 118
xviii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR GAMBAR
Gambar 2.1. Operasi teks logical view dari sebuah dokumen: dari full text menjadi
sebuah set indeks term. (Baeza-Yates, 1999) ........................................................ 6
Gambar 2.2. Proses pemerolehan informasi (Baeza-Yates, 1999) ....................... 11
Gambar 2.3. Representasi Inverted Index (Manning, 2009) ................................ 12
Gambar 2.4. Pemotongan posting list untuk query Brutus AND Calpuria
(Manning, 2009) ................................................................................................ 12
Gambar 2.5. Object (Pardede, 2006) .................................................................. 14
Gambar 2.6. Contoh relasi agregrasi (Pardede, 2006) ......................................... 15
Gambar 2.7. Contoh relasi agregrasi existence-dependent (Pardede, 2006) ......... 16
Gambar 2.8. Contoh relasi agregrasi existence-independent (Pardede, 2006) ...... 16
Gambar 2.9. Object type dan contoh object type (Oracle, 2008) ......................... 17
Gambar 3.1. Gambaran sistem yang dikembangkan ........................................... 23
Gambar 3.2. Flowchart proses indexing untuk menyimpan ke database text
RDBMS ............................................................................................................. 24
Gambar 3.3. Flowchart pada stored procedure insert_term pada database text
RDBMS ............................................................................................................. 25
Gambar 3.4. Flowchart pembentukan inverted index dari database text RDBMS
ke database index ready ORDBMS.................................................................... 26
Gambar 3.5. Flowchart stored procedure insert_term_ordbms pada database
index ready ORDBMS ....................................................................................... 27
Gambar 3.6. Flowchart untuk proses searching ................................................. 28
Gambar 3.7. Flowchart untuk operasi AND ....................................................... 29
Gambar 3.8. Flowchart penghitungan waktu akses query ................................... 30
Gambar 3.9. Use Case........................................................................................ 32
Gambar 3.10. Diagram Context .......................................................................... 40
Gambar 3.11. Diagram berjenjang ...................................................................... 40
Gambar 3.12. DFD level 0 ................................................................................. 41
Gambar 3.13. DFD level 1 proses 1.................................................................... 42
Gambar 3.14. DFD level 1 proses 2.................................................................... 42
xix
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 3.15. DFD level 1 proses 3.................................................................... 43
Gambar 3.16. DFD level 1 proses 4.................................................................... 43
Gambar 3.17. DFD level 1 proses 5.................................................................... 44
Gambar 3.18. DFD level 1 proses 6.................................................................... 45
Gambar 3.19. Diagram ER pada database text RDBMS ..................................... 46
Gambar 3.20. Struktur data inverted index klasik ............................................... 46
Gambar 3.21. Gambaran nested table pada database index ready ORDBMS...... 47
Gambar 3.22. Rancangan database index ready ORDBMS dalam bentuk diagram
kelas .................................................................................................................. 48
Gambar 3.23. Hubungan relasi antar tabel pada database teks RDBMS ............. 48
Gambar 3.24. Desain halaman login administrator ............................................. 56
Gambar 3.25. Desain halaman beranda administrator ......................................... 56
Gambar 3.26. Desain halaman tambah makalah ................................................. 57
Gambar 3.27. Desain halaman edit makalah ....................................................... 58
Gambar 3.28. Desain halaman form edit makalah............................................... 58
Gambar 3.29. Desain halaman pencarian ............................................................ 59
Gambar 3.30. Desain halaman hasil pencarian ................................................... 60
Gambar 4.1. Database text RDBMS pada sistem pemerolehan informasi makalah
ilmiah berbahasa Indonesia ................................................................................ 63
Gambar 4.2. Database index ready ORDBMS pada sistem pemerolehan informasi
makalah berbahasa Indonesia ............................................................................. 63
Gambar 4.3. Implementasi struktur data inverted index pada tabel posting dalam
database text RDBMS ....................................................................................... 75
Gambar 4.4. Implementasi struktur data inverted index pada tabel term dalam
database index ready ORDBMS ........................................................................ 75
Gambar 4.5. Halaman login ............................................................................... 76
Gambar 4.6. Halaman beranda administrator ...................................................... 77
Gambar 4.7. Halaman tambah makalah .............................................................. 78
Gambar 4.8. Halaman edit data makalah ............................................................ 88
Gambar 4.9. Form edit data makalah.................................................................. 89
Gambar 4.10. Halaman Pencarian ...................................................................... 90
xx
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 4.11. Halaman hasil pencarian .............................................................. 96
Gambar 5.1. Output perintah SQL untuk kata jaring ........................................... 98
Gambar 5.2. Output perintah SQL untuk kata syaraf ........................................ 101
Gambar 5.3. Output perintah SQL untuk kata tiru ............................................ 101
Gambar 5.4. Grafik interpolasi untuk kata kunci pencarian “jaringan
syaraf tiruan” ................................................................................................... 105
Gambar
5.5.
Grafik
interpolasi
untuk
kata
kunci
pencarian
“data mining asosiasi” ..................................................................................... 108
Gambar 5.6. Grafik interpolasi untuk kata kunci pencarian “cube” ................... 110
Gambar 5.7. Grafik interpolasi untuk kata kunci pencarian “hardisk”............... 113
Gambar 5.8. Grafik interpolasi untuk kata kunci pencarian “wireless network” 116
Gambar 5.9. Grafik rata-rata waktu query untuk 3 kelompok dfk dengan
menggunakan 1 sampai 4 kata kunci ................................................................ 119
xxi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR LISTING
Listing 2.1. Perintah SQL umum untuk membuat object Type ............................ 17
Listing 3.1. Type untuk object type JurnalType .................................................. 54
Listing 3.2. Type untuk object type PostingListType .......................................... 54
Listing 3.3. Type untuk object type PostingListNestedType ................................ 54
Listing 3.4. Type untuk object type termType ..................................................... 55
Listing 3.5. Create tabel jurnal ........................................................................... 55
Listing 3.6. Create tabel term ............................................................................. 55
Listing 4.1. Create tabel status ........................................................................... 64
Listing 4.2. Create tabel documents ................................................................... 65
Listing 4.3. Create tabel posting ........................................................................ 66
Listing 4.4. Create tabel terms ........................................................................... 67
Listing 4.5. Create tabel posting_stopword ........................................................ 67
Listing 4.6. Create tabel stopwords .................................................................... 68
Listing 4.7. Create tabel dictionary .................................................................... 69
Listing 4.8. Create tabel administrator ............................................................... 70
Listing 4.9. Create tabel sourceterm ................................................................... 70
Listing 4.10. Type untuk object type JurnalType................................................. 71
Listing 4.11. Create tabel jurnal ......................................................................... 72
Listing 4.12. Type untuk object type termType ................................................... 73
Listing 4.13. Type untuk object type PostingListType ........................................ 73
Listing 4.14. Create tabel term ........................................................................... 73
Listing 4.15. JDBCURL untuk koneksi dari Java ke Oracle ............................... 74
Listing 4.16. Method getConnection................................................................... 74
Listing 4.17. Perintah SQL untuk menampilkan struktur data inverted index pada
database text RDBMS untuk kata syaraf ............................................................ 75
Listing 4.18. Perintah SQL untuk menampilkan struktur data inverted index pada
database index ready ORDBMS ........................................................................ 75
Listing 4.19. Stored procedure insert_term untuk menambahkan term pada
database teks RDBMS ....................................................................................... 79
xxii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Listing 4.20. Stored procedure insert_stemmedterms untuk menambahkan
stemmed word pada tabel terms database teks RDBMS ..................................... 80
Listing 4.21. Stored procedure insert_sourceterm untuk menambahkan original
word pada tabel source term database teks RDBMS .......................................... 81
Listing 4.22. Stored procedure counting_dfk_nidfk untuk menghitung nilai dfk
dan nidfk ............................................................................................................ 82
Listing 4.23. Stored procedure counting_w untuk menghitung nilai ntfik dan w 83
Listing 4.24. Method untuk penjadwalan update database index ready
ORDBMS .......................................................................................................... 83
Listing 4.25. Method untuk memanggil method update dan create inverted index
pada database index ready ORDBMS ................................................................ 84
Listing 4.26. Method untuk update inverted index pada database index ready
ORDBMS .......................................................................................................... 85
Listing 4.27. Method untuk create inverted index pada database index ready
ORDBMS .......................................................................................................... 85
Listing 4.28. Stored procedure update_term_ordbms untuk update inverted index
pada database index ready ORDBMS ................................................................ 86
Listing 4.29. Stored procedure insert_term_ordbms untuk create inverted index
pada database index ready ORDBMS ................................................................ 87
Listing 4.30. Method searching untuk pencarian ................................................ 90
Listing 4.31. Method singlesearch untuk pencarian dengan 1 kata kunci ............ 91
Listing 4.32. Method AND untuk operasi pencarian AND .................................. 92
Listing 4.33. Listing untuk penghitungan waktu akses query .............................. 95
Listing 5.1. Perintah SQL untuk kata “jaring” .................................................... 98
Listing 5.2. Perintah SQL untuk kata “syaraf” .................................................. 100
Listing 5.3. Perintah SQL untuk kata “tiru” ...................................................... 101
xxiii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB I
PENDAHULUAN
1.1
Latar Belakang Masalah
Kemajuan dunia pendidikan maupun riset dibidang teknologi cukuplah
pesat, khususnya teknologi informasi yang dapat dilihat dari banyak bermunculan
makalah penelitian. Setiap tahun makalah ilmiah akan bertambah banyak seiiring
dengan banyaknya orang yang melakukan penelitian. Pencari makalah pun ingin
menemukan makalah yang sesuai dengan kebutuhannya. Penyaringan makalah
secara
manual
diklasifikasikan
dilakukan
dengan
dengan
membaca
kesesuaian
makalah
makalah
yang
yang
kemudian
diinginkan.
Untuk
mempermudah pencari makalah, maka diperlukan sistem pemerolehan informasi
untuk mencari dokumen makalah yang relevan.
Sebagian besar sistem pemerolehan informasi dan web pencarian
menerapkan inverted index yang terbukti efisien dalam menjawab query (BaezaYates, 1999). Penggunaan inverted index pada DBMS (Database Management
System) menawarkan beberapa kelebihan dan kekurangannya (Papadakos P,
2008). Implementasi inverted index dengan Bahasa Indonesia pada ORDBMS
(Object Relational Database Management System) memiliki waktu akses yang
lebih baik dibanding menggunakan RDBMS (Relational Database Management
System) (Darmawan, 2012). Proses pembentukan indeks menggunakan rumus
Savoy berdasarkan frekuensi kata, jumlah dokumen, dan frekuensi terbesar pada
sebuah dokumen yang mampu memberikan bobot yang lebih spesifik pada dua
dokumen yang mempunyai frekuensi sama, sehingga mudah untuk diperingkat
1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
(Hasibuan, 2001). Penggunaan indeks tersebut sudah pernah diterapkan pada
dokumen berbahasa Indonesia dan dapat menghasilkan dokumen pemerolehan
informasi (information retrieval) yang sesuai (Hasibuan, 2001). Penerapan
struktur data inverted index di ORDBMS dapat menggunakan collection yang
struktur datanya mirip dengan struktur data inverted index klasik (Darmawan,
2012).
Aplikasi yang dikembangkan adalah sistem pemerolehan informasi makalah
ilmiah menggunakan struktur data inverted index berbasis ORDBMS dengan
metode pembobotan TF-IDF.
1.2
Rumusan Masalah
Rumusan masalah tugas akhir ini adalah:
1.
Bagaimana mengimplementasikan sistem pemerolehan informasi untuk
pencarian dokumen makalah ilmiah berbahasa Indonesia?
2.
Bagaimana keakuratan pencarian dokumen makalah ilmiah berbahasa
Indonesia menggunakan full text dari file pdf dokumen makalah dengan
metode pembobotan Savoy dan stemming bahasa Indonesia?
3.
Bagaimana unjuk kerja penggunaan struktur data inverted index berbasis
ORDBMS dengan metode pembobotan TF-IDF?
1.3
Tujuan
Tujuan dari tugas akhir ini adalah membangun sistem pemerolehan
informasi untuk pencarian makalah ilmiah. Manfaatnya memudahkan pengguna
untuk mencari makalah ilmiah berbahasa Indonesia.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3
1.4
Batasan Masalah
Batasan masalah tugas akhir ini adalah :
1.
Sistem pemerolehan informasi ini hanya untuk pencarian dalam Bahasa
Indonesia.
2.
Koleksi dokumen yang disediakan adalah makalah ilmiah berbahasa
Indonesia dengan jumlah 281 dokumen.
3.
Kamus Bahasa Indonesia yang disediakan adalah 3278 kata.
4.
Jumlah stopword (kata buang) yang disediakan adalah 395 kata.
1.5
Metodologi Penelitian
Dalam pembuatan tugas akhir ini dilakukan tahap-tahap sebagai berikut:
1.
Studi pustaka penerapan pemerolehan informasi untuk menjawab query
dalam ORDBMS menggunakan pembobotan TF-IDF dengan model
pemerolehan boolean AND.
2.
Analisa dan perancangan sistem. Melakukan analisis terhadap masalah dan
kebutuhan sistem yang akan dibangun. Kemudian, membuat perancangan
sistem.
3.
Pengumpulan dokumen-dokumen makalah ilmiah berbahasa Indonesia
sebagai corpus.
4.
Implementasi penerapan struktur data inverted index dalam ORDBMS
dengan metode pembobotan TF-IDF menggunakan rumus Savoy.
5.
Pengujian dan analisa sistem.
Pengujian hasil sistem dengan menggunakan metode recall dan precision.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
1.6
Sistematika Penulisan
BAB I : PENDAHULUAN
Bab ini berisikan pendahuluan yang terdiri dari latar belakang, rumusan
masalah, tujuan, batasan masalah, metodologi penelitian, dan sistematika
penulisan
BAB II : LANDASAN TEORI
Bab ini berisikan konsep dasar sistem pemerolehan informasi (information
retrieval system), pembobotan TF-IDF, evaluasi sistem pemerolehan
informasi, algoritma stemming, konsep basis data relasional obyek.
BAB III : ANALISA DAN PERANCANGAN SISTEM
Bab ini berisikan analisis kebutuhan sistem dan rancangan database.
BAB IV : IMPLEMENTASI
Bab ini berisikan penjelasan dan fungsi sistem pemerolehan informasi
makalah ilmiah berbahasa Indonesia.
BAB V : ANALISA HASIL
Bab ini berisikan analisis hasil pengujian sistem.
BAB VI : KESIMPULAN DAN SARAN
Bab ini berisikan kesimpulan dan saran dari pembuatan sistem pencarian
makalah ilmiah berbahasa Indonesia.
DAFTAR PUSTAKA
LAMPIRAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB II
LANDASAN TEORI
2.1
Pemerolehan Informasi
2.1.1 Konsep Pemerolehan Informasi
Pemerolehan informasi adalah proses menemukan dokumen (berisikan
teks) yang tidak terstruktur untuk memenuhi kebutuhan informasi dari koleksi
yang besar (Manning, 2009).
2.1.2 Logical View Dokumen
Dokumen dalam koleksi sering dipresentasikan melalui term indeks atau
keyword. Keyword tersebut dapat diekstraksi langsung dari teks dokumen atau
ditentukan secara manual (dibuat oleh spesialis seperti banyak dilakukan pada
bidang information science). Term indeks ini menyediakan suatu logical view dari
dokumen. Komputer modern memungkinkan representasi suatu dokumen dengan
menggunakan seluruh teks yang terdapat dalam dokumen tersebut. Dalam hal ini,
sistem pemerolehan informasi disebut mengadopsi full text logical view dari
dokumen. Jika koleksi dokumen sangat besar, maka komputer modern akan
mengurangi jumlah term indeks melalui proses penghapusan stopwords,
stemming, dan indentifikasi noun groups (menghilangkan adjectives, adverbs, dan
verbs). Proses tersebut disebut text operation (operasi teks) yang akan mengurangi
kompleksitas dari representasi dokumen dan mengubah logical view dari full text
menjadi term indeks. Gambar 2.1 mengilustrasikan beberapa intermediate logical
view yang akan digunakan oleh suatu sistem pemerolehan informasi (BaezaYates, 1999).
5
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
Gambar 2.1. Operasi teks logical view dari sebuah dokumen: dari full text
menjadi sebuah set indeks term. (Baeza-Yates, 1999)
Penghapusan stopword adalah proses penghilangan kata-kata yang tidak
digunakan (kata buang). Contoh stopwords pada Bahasa Indonesia adalah tetapi,
dan, atau, itu, yang (Hasibuan, 2001).
2.1.2.1 Stemming
Stemming adalah merupakan proses mengubah kata-kata yang terdapat
dalam suatu dokumen dalam bentuk kata dasar (rootword) (Agusta, 2009).
Algoritma stemming pada teks berbahasa Indonesia menggunakan
Algoritma Nazief & Adriani. Tahap-tahap pada Algoritma Nazief & Adriani
adalah sebagai berikut (Agusta, 2009):
1. Cari kata yang akan di-stem dalam kamus. Jika ditemukan maka diasumsikan
bahwa kata tesebut adalah root word. Maka algoritma berhenti.
2. Inflection Suffixes (“-lah”, “-kah”, “-ku”, “-mu”, atau “-nya”) dibuang. Jika
berupa particles (“-lah”, “-kah”, “-tah” atau “-pun”) maka langkah ini
diulangi lagi untuk menghapus Possesive Pronouns (“-ku”, “-mu”, atau “nya”), jika ada.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
3. Hapus Derivation Suffixes (“-i”, “-an” atau “-kan”). Jika kata ditemukan di
kamus, maka algoritma berhenti. Jika tidak maka ke langkah 3a
a. Jika “-an” telah dihapus dan huruf terakhir dari kata tersebut adalah “-k”,
maka “-k” juga ikut dihapus. Jika kata tersebut ditemukan dalam kamus
maka algoritma berhenti. Jika tidak ditemukan maka lakukan langkah 3b.
b. Akhiran yang dihapus (“-i”, “-an” atau “-kan”) dikembalikan, lanjut ke
langkah 4.
4. Hapus Derivation Prefix. Jika pada langkah 3 ada sufiks yang dihapus maka
pergi ke langkah 4a, jika tidak pergi ke langkah 4b.
a. Periksa tabel kombinasi awalan-akhiran yang tidak diijinkan (Tabel 2.1).
Jika ditemukan maka algoritma berhenti, jika tidak pergi ke langkah 4b.
b. For i = 1 to 3, tentukan tipe awalan kemudian hapus awalan. Jika root
word belum juga ditemukan lakukan langkah 5, jika sudah maka algoritma
berhenti. Catatan: jika awalan kedua sama dengan awalan pertama
algoritma berhenti.
5. Melakukan Recoding.
6. Jika semua langkah telah selesai tetapi tidak juga berhasil maka kata awal
diasumsikan sebagai root word. Proses selesai.
Tipe awalan ditentukan melalui langkah-langkah berikut:
1. Jika awalannya adalah: “di-”, “ke-”, atau “se-” maka tipe awalannya secara
berturut-turut adalah “di-”, “ke-”, atau “se-”.
2. Jika awalannya adalah “te-”, “me-”, “be-”, atau “pe-” maka dibutuhkan
sebuah proses tambahan untuk menentukan tipe awalannya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
3. Jika dua karakter pertama bukan “di-”, “ke-”, “se-”, “te-”, “be-”, “me”, atau
“pe-” maka berhenti.
4. Jika tipe awalan adalah “none” maka berhenti. Jika tipe awalan adalah bukan
“none” maka awalan dapat dilihat pada Tabel 2.2. Hapus awalan jika
ditemukan.
Tabel 2.1. Kombinasi Awalan Akhiran Yang Tidak Diijinkan
Awalan
Akhiran yang tidak diijinkan
be-
-i
di-
-an
ke-
-i, -kan
me-
-an
se-
-i, -kan
Tabel 2.2. Cara menentukan tipe awalan untuk Kata yang diawali dengan “te-”
Tipe
Following Characters
Set 1
Set 2
Set 3
Set 4
Awalan
“-r”
“-r”
-
-
none
“-r”
vowel
-
-
ter-luluh
“-r”
not (vowel or “-r”)
“-er”
vowel
ter
“-r”
not (vowel or “-r”)
“-er”
not vowel
ter-
“-r”
not (vowel or “-r”)
not “-er”
-
ter
not (vowel or “-r”)
“-er”
vowel
-
none
not (vowel or “-r”)
“-er”
not vowel
te
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9
Tabel 2.3. Jenis Awalan Berdasarkan Tipe Awalannya
Tipe Awalan
Awalan yang harus dihapus
di-
di-
ke-
ke-
se-
se-
te-
te-
ter-
ter-
ter-luluh
ter
Untuk mengatasi keterbatasan pada algoritma di atas, maka ditambahkan
aturan-aturan dibawah ini:
1. Aturan untuk reduplikasi.
- Jika kedua kata yang dihubungkan oleh kata penghubung adalah kata yang
sama maka root word adalah bentuk tunggalnya, contoh : “buku-buku” root
word-nya adalah “buku”.
- Kata lain, misalnya “bolak-balik”, “berbalas-balasan, dan ”seolah-olah”.
Untuk mendapatkan root word-nya, kedua kata diartikan secara terpisah.
Jika keduanya memiliki root word yang sama maka diubah menjadi bentuk
tunggal, contoh: kata “berbalas-balasan”, “berbalas” dan “balasan” memiliki
root word yang sama yaitu “balas”, maka root word “berbalas-balasan”
adalah “balas”. Sebaliknya, pada kata “bolak-balik”, “bolak” dan “balik”
memiliki root word yang berbeda, maka root word-nya adalah “bolak-balik”
2. Tambahan bentuk awalan dan akhiran serta aturannya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
10
- Untuk tipe awalan “mem-“, kata yang diawali dengan awalan “memp-”
memiliki tipe awalan “mem-”.
- Tipe awalan “meng-“, kata yang diawali dengan awalan “mengk-” memiliki
tipe awalan “meng2.1.3 Proses Pemerolehan Informasi
Proses pemerolehan informasi terdapat beberapa tahap. Pertama-tama,
sebelum proses pemerolehan informasi dimulai, diperlukan pendefinisian
database teks. Hal ini dilakukan dengan melakukan identifikasi terhadap
dokumen-dokumen yang akan digunakan, operasi yang akan dilakukan terhadap
teks, dan model teks (struktur teks dan elemen mana saja dari teks yang dapat
dilakukan proses pemerolehan informasi). Operasi teks (text operations)
mentransformasikan dokumen asal menjadi logical view dokumen tersebut.
Setelah logical view dokumen diperoleh, dibuatlah term indeks pada database
untuk mempercepat proses pencarian terhadap jumlah data yang besar. Struktur
indeks yang paling banyak digunakan adalah inverted file seperti pada Gambar
2.2. Database dokumen telah diindeks, maka proses pemerolehan informasi dapat
dimulai. Pengguna menentukan kebutuhannya yang kemudian ditransformasikan
oleh operasi teks yang sama digunakan pada koleksi dokumen. Query kemudian
ditransformasi untuk
SISTEM PEMEROLEHAN INFORMASI MAKALAH ILMIAH
BERBAHASA INDONESIA MENGGUNAKAN STRUKTUR DATA
INVERTED INDEX DENGAN METODE PEMBOBOTAN TF-IDF
BERBASIS ORDBMS
SKRIPSI
Diajukan untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Komputer
Program Studi Teknik Informatika
Oleh:
Justina Septiani Wulandari
NIM : 085314031
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2013
i
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
INFORMATION RETRIEVAL SYSTEM OF INDONESIAN SCIENTIFIC
PAPERS USING INVERTED INDEX DATA STRUCTURE WITH TF-IDF
WEIGHTING METHOD BASED ON ORDBMS
THESIS
Presented as Partial Fullfilment of the Requirements
To Obtain the Computer Bachelor Degree
In Informatics Engineering
By:
Justina Septiani Wulandari
Student Number : 085314031
INFORMATICS ENGINEERING STUDY PROGRAM
DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2013
ii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN PERSETUJUAN
iii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN PENGESAHAN
iv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PERNYATAAN KEASLIAN KARYA
Penulis menyatakan dengan sesungguhnya bahwa skripsi yang ditulis ini
tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan
dalam kutipan dan daftar pustaka, sebagaimana layaknya sebuah karya ilmiah.
Yogyakarta, 13 Februari 2013
Penulis,
Justina Septiani Wulandari
v
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN MOTO
LULUS ITU PILIHAN..
MAU CEPAT ATAU LAMBAT SEMUA DITENTUKAN OLEH DIRI
SENDIRI..
CINTAILAH SKRIPSI SEPERTI MENCINTAI PACARMU, MAKA
SKRIPSI AKAN LEBIH MUDAH UNTUK DITAKLUKAN..
JUST FOCUS AND SAY “I CAN DO IT!!”
In Nomine Jesu
vi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
HALAMAN PERSEMBAHAN
Kupersembahkan skripsi ini kepada:
Tuhan Yesus Kristus dan Bunda-Nya atas lindungan dan kasih-Nya ε(˘ʃƪ˘)з
Keluargaku Mama Anastasia. W, Bapak FX. Suwarli, Adik F. Desylita. C,
Bulik T. Suwarni, Romo Paulus Sarmono, SCJ atas dukungan, kasih, doa
dan materi sehingga aku bisa menyelesaikan skripsiku (ɔ ˘⌣˘)˘⌣˘ c)
Kekasih hati AG. Hari Jati Nugraha, S.T yang mau menjadi tempat
sharing, memberikan masukkan dan kritik, memberikan support dalam
penyelesaian skripsiku, menjadi alarm pengingat untuk cepat lulus, waktu
dan cutinya utk menemani saat ujian (˘⌣˘)ε˘`) beserta keluarganya
yang memberikan doa serta dukungan
Sahabat-sahabatku yang selalu mau membantu, memberikan semangat
dan kritik:
~@rezaEmde yang menjadi teman seperjuangan dalam penyelesaian
skripsi dan seminar nasional ReTII~ (*^□^)八(^□^*)
~Friends Photography crew: @petrav69, @puutripuut, @iamdewangga,
@SuryaAtmajaDB, @DeviiSinaga, @rosadell, @eesyyyyyy, Ndul,
@nezines22 yang memberikan pengalaman yang sangat berharga bekerja
sama, profesional, dan mendapatkan hal baru \(^o^)/
~Kos Pak Kuat: @xtina_itha, @Little_Lan91, @yuliachann yang
menjadi teman seperjuangan dalam menyelesaikan skripsi~ ╭ (′▽`)╯
~@xvienz yang membantu dalam menggunakan sistem operasi open
source dan sharing skripsiku~ (˘-˘)ง
~@bebh_beth, @endra_prasetya, @virtualservers, @gadissssssss,
@frendars, @batistagempil, @fidisiledif, @roysyahputra,
@cellathiodore, @stmita, @exseminaris2007~ (╯▽╰)
~Teman-teman Laskar TI 2008, SaOS atas persahabatannya~ (ʃƪ˘˘)ﻬ
Teman-teman yang sedang menyelesaikan skripsi, tetap semangat YOU
CAN DO IT!! ƪ(٥`▽´٥)ʃ
@justwul90
vii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ABSTRAKSI
Setiap tahun makalah ilmiah berbahasa Indonesia semakin bertambah
banyak sehingga diperlukan sistem pemerolehan informasi untuk mencari
dokumen yang relevan. Sebagian besar sistem pemerolehan informasi dan web
pencarian menerapkan inverted index yang terbukti efisien dalam menjawab
query. Pada penelitian sebelumnya, penggunaan inverted index pada database
menawarkan beberapa keuntungan dan implementasi inverted index dengan
Bahasa Indonesia menggunakan ORDBMS memiliki waktu akses yang lebih baik
dibandingkan menggunakan RDBMS.
Dari latar belakang tersebut, diimplementasikan sebuah pencarian makalah
ilmiah berbahasa Indonesia berdasarkan seluruh isi teks dalam dokumen
menggunakan struktur data inverted index pada ORDBMS dengan metode
pembobotan TF-IDF (Savoy) dan stemming menggunakan algoritma Nazief &
Adriani. Sistem ini dikembangkan menggunakan bahasa pemrograman Java,
ORDBMS pada Oracle 11g R2 Enterprise Edition dan Netbeans.
Percobaan ini menggunakan corpus 281 dokumen makalah ilmiah
berbahasa Indonesia yang berisikan 25737 term. Waktu yang dibutuhkan untuk
proses pencarian pada operasi AND dengan 1 sampai 2 kata kunci kurang dari 0,1
detik, 3 kata kunci kurang dari 0,4 detik, dan 4 kata kunci kurang dari 1 detik.
Sedangkan, pada hasil perhitungan recall precision pada 11 titik sistem dapat
menghasilkan nilai yang baik meskipun terdapat beberapa kelemahan yang
ditemukan.
Kata kunci: Pemerolehan informasi, inverted index, ORDBMS, TF-IDF
viii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ABSTRACT
Every year, Indonesian scientific papers are multiplying so it required
information retrieval system to find relevant documents. Most of the information
retrieval system and web search implement inverted index which proven efficient
in answering queries. In previous research, the use of inverted index on database
offers several advantages and implementation of inverted index by using
Indonesian languages on ORDBMS had better access time than using RDBMS.
From these background, searching scientific paper with Indonesian
language was implemented scientific paper searching, the entire contents of the
text in a document using the inverted index data structure on ORDBMS with TFIDF weighting method (Savoy) and stemming algorithm Nazief & Adriani. The
system was developed using the Java programming language, ORDBMS Oracle
11g R2 Enterprise Edition and Netbeans.
This experiment uses corpus 281 Indonesian scientific papers documents
that contains 25,737 terms. The time needed to process a search on the AND
operation with 1 to 2 keywords less than 0.1 seconds, 3 keywords less than 0.4
seconds, and 4 keywords less than 1 second. Meanwhile, result on the 11-point
recall precision computation system can produce a good value despite some
weaknesses were found.
Keyword: Information retrieval, inverted index, ORDBMS, TF-IDF
ix
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LEMBAR PERNYATAAN PERSETUJUAN
PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS
Yang bertanda tangan dibawah ini, saya mahasiswa Universitas Sanata Dharma:
Nama
: Justina Septiani Wulandari
NIM
: 085314031
Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan
Universitas Sanata Dharma karya ilmiah yang berjudul:
SISTEM PEMEROLEHAN INFORMASI MAKALAH ILMIAH
BERBAHASA INDONESIA MENGGUNAKAN STRUKTUR DATA
INVERTED INDEX MENGGUNAKAN METODE PEMBOBOTAN TF-IDF
BERBASIS ORDBMS
Beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan
kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan,
mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan
data mendistribusikan secara terbatas, dan mempublikasikannya di Internet atau
media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya
maupun memberikan royalti kepada saya selama tetap mencantumkan nama saya
sebagai penulis.
Demikian pernyataan ini yang saya buat dengan sebenarnya.
Dibuat di Yogyakarta,
Pada tanggal: 13 Februari 2013
Yang menyatakan,
Justina Septiani Wulandari
x
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
KATA PENGANTAR
Puji dan saya panjatkan kepada Tuhan Yesus Kristus atas kasih dan
lindungan-Nya sehingga saya dapat menyelesaikan tugas akhir ini.
Dalam penyelesaian tugas akhir ini ada begitu banyak pihak yang telah
memberikan bantuan dan perhatian dengan caranya masing-masing sehingga
tugas akhir ini dapat diselesaikan. Oleh karena itu saya mengucapkan terimakasih
kepada :
1.
Ibu Paulina Heruningsih Prima Rosa, S.Si., M.Sc., selaku dekan Fakultas
Sains dan Teknologi Universitas Sanata Dharma.
2.
Ibu Ridowati Gunawan, S.Kom., M.T., selaku ketua jurusan Teknik
Informatika Universitas Sanata Dharma.
3.
Bapak JB. Budi Darmawan, S.T., M.Sc., selaku dosen pembimbing TA yang
selalu membimbing dan memberikan banyak masukkan.
4.
Ibu Sri Hartati Wijono, S.Si., M.Kom. dan Bapak Puspaningtyas Sanjoyo
Adi, S.T., M.T. selaku penguji TA, atas saran dan kritik yang diberikan untuk
menunjang Tugas Akhir ini.
5.
Kedua orang tua FX. Suwarli dan Anastasia. W, adik Fabiola Desylita. C,
Bulik T. Suwarni, dan kekasih AG. Hari Jati Nugraha, S.T yang selalu
memberi dukungan, kasih sayang, semangat, dan masukkan dalam proses
pengerjaan tugas akhir ini.
6.
Responden kuesioner yang merelakan waktunya dalam pengujian tugas akhir
ini.
xi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7.
Teman-teman Laskar IT 2008, SaOS, crew friends photography atas
dukungan dan persahabatannya.
8.
Semua pihak yang telah membantu penulis baik secara langsung maupun
tidak langsung, yang tidak dapat disebutkan satu persatu.
Saya menyadari masih banyak kekurangan yang terdapat pada laporan ini.
Saran dan kritik selalu saya harapkan dari pembaca untuk perbaikan – perbaikan di
masa yang akan datang.
Akhir kata, saya berharap tulisan ini dapat bermanfaat bagi kemajuan dan
perkembangan ilmu pengetahuan dan berbagai pihak pengguna pada umumnya.
Yogyakarta, 13 Februari 2013
Penulis
xii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR ISI
HALAMAN JUDUL BAHASA INDONESIA ...................................................... i
HALAMAN JUDUL BAHASA INGGRIS .......................................................... ii
HALAMAN PERSETUJUAN ............................................................................iii
HALAMAN PENGESAHAN ............................................................................. iv
PERNYATAAN KEASLIAN KARYA ............................................................... v
HALAMAN MOTO ........................................................................................... vi
HALAMAN PERSEMBAHAN ......................................................................... vii
ABSTRAKSI .................................................................................................... viii
ABSTRACT ....................................................................................................... ix
LEMBAR PERNYATAAN PERSETUJUAN ...................................................... x
KATA PENGANTAR ........................................................................................ xi
DAFTAR ISI .................................................................................................... xiii
DAFTAR TABEL ........................................................................................... xvii
DAFTAR GAMBAR ........................................................................................ xix
DAFTAR LISTING ......................................................................................... xxii
BAB I PENDAHULUAN .................................................................................... 1
1.1
Latar Belakang Masalah......................................................................... 1
1.2
Rumusan Masalah.................................................................................. 2
1.3
Tujuan ................................................................................................... 2
1.4
Batasan Masalah .................................................................................... 3
1.5
Metodologi Penelitian ............................................................................ 3
1.6
Sistematika Penulisan ............................................................................ 4
BAB II LANDASAN TEORI .............................................................................. 5
2.1
Pemerolehan Informasi .......................................................................... 5
2.1.1
Konsep Pemerolehan Informasi ...................................................... 5
2.1.2
Logical View Dokumen .................................................................. 5
2.1.4
Inverted Index............................................................................... 11
2.1.5
Metode Pembobotan TF-IDF ........................................................ 12
xiii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2.1.6
2.2
Recall dan Precision ..................................................................... 13
Object Oriented Conceptual Model ...................................................... 14
2.2.1
Relasi Asosiasi ............................................................................. 15
2.2.2
Relasi Agregrasi .......................................................................... 15
2.3
Object Relational Database Management System ................................ 16
2.3.1
Konsep Object Relational Database Management System ............. 16
2.4 Implementasi Existence-Dependent Aggregation menggunakan Teknik
Nesting ........................................................................................................... 19
2.5
Penggunaan DBMS untuk Pemerolehan Informasi ............................... 19
BAB III ANALISA DAN PERANCANGAN SISTEM ...................................... 22
3.1
Gambaran Sistem yang Dikembangkan ................................................ 22
3.1.1
Gambaran Proses pada Sistem ...................................................... 23
3.1.1.1
3.2
3.3
Alur Kerja Proses Indexing .................................................... 23
Analisa Kebutuhan ........................................................................... 31
Perancangan Sistem ............................................................................. 31
3.3.1
Diagram Use Case ........................................................................ 31
3.3.2
Narasi Use Case ............................................................................ 32
3.3.2.1
Login ..................................................................................... 32
3.3.2.2
Menambahkan Dokumen Makalah ......................................... 34
3.3.2.3
Mengubah Data Dokumen Makalah ....................................... 36
3.3.2.4
Logout ................................................................................... 37
3.3.2.5
Mencari Dokumen Makalah ................................................... 38
3.3.3
Data Flow Diagram (DFD) ........................................................... 39
3.3.3.1
Diagram Context ................................................................... 40
3.3.3.2
Diagram Berjenjang ............................................................... 40
3.3.3.3
DFD Level 0 .......................................................................... 41
3.3.3.4
DFD Level 1 Proses 1 ............................................................ 42
3.3.3.5
DFD Level 1 Proses 2 ............................................................ 42
3.3.3.6
DFD Level 1 Proses 3 ............................................................ 43
3.3.3.7
DFD Level 1 Proses 4 ............................................................ 43
3.3.3.8
DFD Level 1 Proses 5 ............................................................ 43
xiv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3.3.3.9
3.4
DFD Level 1 Proses 6 ............................................................ 44
Perancangan Database ......................................................................... 45
3.4.1
Conceptual Database Design ......................................................... 45
3.4.2
Logical Database Design .............................................................. 48
3.4.3
Physical Database Design ............................................................. 48
3.4.4
Proses Query pada ORDBMS ....................................................... 54
3.5
Perancangan Antarmuka (Interface) ..................................................... 55
3.5.1
Desain Halaman Login Administrator ........................................... 55
3.5.2
Desain Halaman Beranda Administrator ....................................... 56
3.5.3
Desain Halaman Tambah Makalah ................................................ 57
3.5.4
Desain Halaman Edit Makalah ...................................................... 57
3.5.5
Desain Halaman Pencarian ........................................................... 59
3.5.6
Desain Halaman Hasil Pencarian .................................................. 59
BAB IV IMPLEMENTASI ................................................................................ 61
4.1
Spesifikasi Software dan Hardware yang Digunakan............................ 61
4.1.1
Spesifikasi Software ..................................................................... 61
4.1.2
Spesifikasi Hardware .................................................................... 61
4.2
Implementasi Basis Data ...................................................................... 62
4.3
Koneksi dari Java ke Oracle ................................................................. 74
4.4
Implementasi Struktur Data Inverted Index .......................................... 74
4.5
Pembuatan Antarmuka (Interface) ....................................................... 76
4.5.1
Halaman Login ............................................................................. 76
4.5.2
Halaman Beranda Administrator ................................................... 76
4.5.3
Halaman Tambah Makalah ........................................................... 77
4.5.5
Halaman Edit Makalah ................................................................. 88
4.5.6
Halaman Pencarian ....................................................................... 89
4.5.7
Halaman Hasil Pencarian .............................................................. 96
BAB V ANALISA HASIL ................................................................................ 97
5.1
Analisa Hasil Program ......................................................................... 97
5.1.2
5.1.3
Analisa Uji Coba Pengguna .............................................................. 97
Analisa Unjuk Kerja Waktu Akses Query ................................... 116
xv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5.2
Kelebihan dan Kekurangan Sistem..................................................... 119
5.2.1
Kelebihan Sistem ........................................................................ 119
5.2.2
Kelemahan Sistem ...................................................................... 120
BAB VI KESIMPULAN DAN SARAN .......................................................... 121
6.1
Kesimpulan........................................................................................ 121
6.2
Saran ................................................................................................. 122
DAFTAR PUSTAKA ...................................................................................... 124
LAMPIRAN .................................................................................................... 126
xvi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR TABEL
Tabel 2.1. Kombinasi Awalan Akhiran Yang Tidak Diijinkan .............................. 8
Tabel 2.2. Cara menentukan tipe awalan untuk Kata yang diawali dengan “te-” ... 8
Tabel 2.3. Jenis Awalan Berdasarkan Tipe Awalannya......................................... 9
Tabel 3.1. Tabel Analisa Kebutuhan .................................................................. 31
Tabel 3.2. Narasi Use Case Login ...................................................................... 32
Tabel 3.3.Narasi Use Case Menambah Dokumen Makalah ................................ 34
Tabel 3.4.Narasi Use Case Mengubah Data Dokumen Makalah ......................... 36
Tabel 3.5. Narasi Use Case Logout .................................................................... 37
Tabel 3.6. Narasi Use Case Mencari Dokumen Makalah .................................... 38
Tabel 3.7. Tabel Status....................................................................................... 49
Tabel 3.8. Tabel Documents ............................................................................... 49
Tabel 3.9. Tabel Posting .................................................................................... 50
Tabel 3.10. Tabel Terms..................................................................................... 50
Tabel 3.11. Tabel Posting_Stopword .................................................................. 51
Tabel 3.12. Tabel Stopwords .............................................................................. 51
Tabel 3.13. Tabel Dictionary ............................................................................. 51
Tabel 3.14. Tabel Administrator......................................................................... 52
Tabel 3.15. Tabel Sourceterm ............................................................................ 52
Tabel 3.16. Tabel Jurnal ..................................................................................... 53
Tabel 3.17. Tabel Term ...................................................................................... 53
Tabel 4.1. Tabel Status....................................................................................... 64
Tabel 4.2. Tabel Documents ............................................................................... 64
Tabel 4.3. Tabel Posting..................................................................................... 65
Tabel 4.4. Tabel Terms ...................................................................................... 66
Tabel 4.5. Tabel Posting_stopword .................................................................... 67
Tabel 4.6. Tabel Stopwords ................................................................................ 68
Tabel 4.7. Tabel Dictionary ............................................................................... 69
Tabel 4.8. Tabel Administrator .......................................................................... 69
Tabel 4.9. Tabel Sourceterm .............................................................................. 70
xvii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Tabel 4.10. Tabel Jurnal ..................................................................................... 71
Tabel 4.11. Tabel Term ...................................................................................... 72
Tabel 5.1. Hasil operasi AND sebelum dijumlahkan nilai bobotnya ................. 102
Tabel 5.2. Hasil operasi AND setelah dijumlahkan nilai bobotnya ................... 102
Tabel 5.3. Urutan dokumen untuk kata kunci “jaringan syaraf tiruan” .............. 103
Tabel 5.4. Seluruh dokumen yang relevan berdasarkan responden untuk kata
kunci “jaringan syaraf tiruan” .......................................................................... 103
Tabel 5.5. Nilai recall dan precision untuk kata kunci “jaringan syaraf tiruan”. 104
Tabel 5.6. Perhitungan interpolasi untuk kata kunci “jaringan syaraf tiruan” .... 105
Tabel 5.7. Seluruh dokumen yang relevan berdasarkan responden untuk kata
kunci “data mining asosiasi” ............................................................................ 106
Tabel 5.8. Nilai recall dan precision untuk kata kunci “data mining asosiasi” .. 106
Tabel 5.9. Perhitungan interpolasi untuk kata kunci “data mining asosiasi” ...... 107
Tabel 5.10. Seluruh dokumen yang relevan berdasarkan responden untuk kata
kunci “cube” .................................................................................................... 109
Tabel 5.11. Nilai recall dan precision untuk kata kunci “cube” ........................ 109
Tabel 5.12. Perhitungan interpolasi untuk kata kunci “cube” ............................ 110
Tabel 5.13. Seluruh dokumen yang relevan berdasarkan responden untuk kata
kunci “hardisk” ................................................................................................ 111
Tabel 5.14. Nilai recall dan precision untuk kata kunci “hardisk” .................... 112
Tabel 5.15. Perhitungan interpolasi untuk kata kunci “hardisk”........................ 112
Tabel 5.16. Seluruh dokumen yang relevan berdasarkan responden untuk kata
kunci “wireless network” ................................................................................. 113
Tabel 5.17. Nilai recall dan precision untuk kata kunci “wireless network”...... 114
Tabel 5.18. Perhitungan interpolasi untuk kata kunci “wireless network” ......... 114
Tabel 5.19. Rata-rata waktu query untuk 3 kelompok dfk dengan 4 kata kunci . 118
xviii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR GAMBAR
Gambar 2.1. Operasi teks logical view dari sebuah dokumen: dari full text menjadi
sebuah set indeks term. (Baeza-Yates, 1999) ........................................................ 6
Gambar 2.2. Proses pemerolehan informasi (Baeza-Yates, 1999) ....................... 11
Gambar 2.3. Representasi Inverted Index (Manning, 2009) ................................ 12
Gambar 2.4. Pemotongan posting list untuk query Brutus AND Calpuria
(Manning, 2009) ................................................................................................ 12
Gambar 2.5. Object (Pardede, 2006) .................................................................. 14
Gambar 2.6. Contoh relasi agregrasi (Pardede, 2006) ......................................... 15
Gambar 2.7. Contoh relasi agregrasi existence-dependent (Pardede, 2006) ......... 16
Gambar 2.8. Contoh relasi agregrasi existence-independent (Pardede, 2006) ...... 16
Gambar 2.9. Object type dan contoh object type (Oracle, 2008) ......................... 17
Gambar 3.1. Gambaran sistem yang dikembangkan ........................................... 23
Gambar 3.2. Flowchart proses indexing untuk menyimpan ke database text
RDBMS ............................................................................................................. 24
Gambar 3.3. Flowchart pada stored procedure insert_term pada database text
RDBMS ............................................................................................................. 25
Gambar 3.4. Flowchart pembentukan inverted index dari database text RDBMS
ke database index ready ORDBMS.................................................................... 26
Gambar 3.5. Flowchart stored procedure insert_term_ordbms pada database
index ready ORDBMS ....................................................................................... 27
Gambar 3.6. Flowchart untuk proses searching ................................................. 28
Gambar 3.7. Flowchart untuk operasi AND ....................................................... 29
Gambar 3.8. Flowchart penghitungan waktu akses query ................................... 30
Gambar 3.9. Use Case........................................................................................ 32
Gambar 3.10. Diagram Context .......................................................................... 40
Gambar 3.11. Diagram berjenjang ...................................................................... 40
Gambar 3.12. DFD level 0 ................................................................................. 41
Gambar 3.13. DFD level 1 proses 1.................................................................... 42
Gambar 3.14. DFD level 1 proses 2.................................................................... 42
xix
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 3.15. DFD level 1 proses 3.................................................................... 43
Gambar 3.16. DFD level 1 proses 4.................................................................... 43
Gambar 3.17. DFD level 1 proses 5.................................................................... 44
Gambar 3.18. DFD level 1 proses 6.................................................................... 45
Gambar 3.19. Diagram ER pada database text RDBMS ..................................... 46
Gambar 3.20. Struktur data inverted index klasik ............................................... 46
Gambar 3.21. Gambaran nested table pada database index ready ORDBMS...... 47
Gambar 3.22. Rancangan database index ready ORDBMS dalam bentuk diagram
kelas .................................................................................................................. 48
Gambar 3.23. Hubungan relasi antar tabel pada database teks RDBMS ............. 48
Gambar 3.24. Desain halaman login administrator ............................................. 56
Gambar 3.25. Desain halaman beranda administrator ......................................... 56
Gambar 3.26. Desain halaman tambah makalah ................................................. 57
Gambar 3.27. Desain halaman edit makalah ....................................................... 58
Gambar 3.28. Desain halaman form edit makalah............................................... 58
Gambar 3.29. Desain halaman pencarian ............................................................ 59
Gambar 3.30. Desain halaman hasil pencarian ................................................... 60
Gambar 4.1. Database text RDBMS pada sistem pemerolehan informasi makalah
ilmiah berbahasa Indonesia ................................................................................ 63
Gambar 4.2. Database index ready ORDBMS pada sistem pemerolehan informasi
makalah berbahasa Indonesia ............................................................................. 63
Gambar 4.3. Implementasi struktur data inverted index pada tabel posting dalam
database text RDBMS ....................................................................................... 75
Gambar 4.4. Implementasi struktur data inverted index pada tabel term dalam
database index ready ORDBMS ........................................................................ 75
Gambar 4.5. Halaman login ............................................................................... 76
Gambar 4.6. Halaman beranda administrator ...................................................... 77
Gambar 4.7. Halaman tambah makalah .............................................................. 78
Gambar 4.8. Halaman edit data makalah ............................................................ 88
Gambar 4.9. Form edit data makalah.................................................................. 89
Gambar 4.10. Halaman Pencarian ...................................................................... 90
xx
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Gambar 4.11. Halaman hasil pencarian .............................................................. 96
Gambar 5.1. Output perintah SQL untuk kata jaring ........................................... 98
Gambar 5.2. Output perintah SQL untuk kata syaraf ........................................ 101
Gambar 5.3. Output perintah SQL untuk kata tiru ............................................ 101
Gambar 5.4. Grafik interpolasi untuk kata kunci pencarian “jaringan
syaraf tiruan” ................................................................................................... 105
Gambar
5.5.
Grafik
interpolasi
untuk
kata
kunci
pencarian
“data mining asosiasi” ..................................................................................... 108
Gambar 5.6. Grafik interpolasi untuk kata kunci pencarian “cube” ................... 110
Gambar 5.7. Grafik interpolasi untuk kata kunci pencarian “hardisk”............... 113
Gambar 5.8. Grafik interpolasi untuk kata kunci pencarian “wireless network” 116
Gambar 5.9. Grafik rata-rata waktu query untuk 3 kelompok dfk dengan
menggunakan 1 sampai 4 kata kunci ................................................................ 119
xxi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
DAFTAR LISTING
Listing 2.1. Perintah SQL umum untuk membuat object Type ............................ 17
Listing 3.1. Type untuk object type JurnalType .................................................. 54
Listing 3.2. Type untuk object type PostingListType .......................................... 54
Listing 3.3. Type untuk object type PostingListNestedType ................................ 54
Listing 3.4. Type untuk object type termType ..................................................... 55
Listing 3.5. Create tabel jurnal ........................................................................... 55
Listing 3.6. Create tabel term ............................................................................. 55
Listing 4.1. Create tabel status ........................................................................... 64
Listing 4.2. Create tabel documents ................................................................... 65
Listing 4.3. Create tabel posting ........................................................................ 66
Listing 4.4. Create tabel terms ........................................................................... 67
Listing 4.5. Create tabel posting_stopword ........................................................ 67
Listing 4.6. Create tabel stopwords .................................................................... 68
Listing 4.7. Create tabel dictionary .................................................................... 69
Listing 4.8. Create tabel administrator ............................................................... 70
Listing 4.9. Create tabel sourceterm ................................................................... 70
Listing 4.10. Type untuk object type JurnalType................................................. 71
Listing 4.11. Create tabel jurnal ......................................................................... 72
Listing 4.12. Type untuk object type termType ................................................... 73
Listing 4.13. Type untuk object type PostingListType ........................................ 73
Listing 4.14. Create tabel term ........................................................................... 73
Listing 4.15. JDBCURL untuk koneksi dari Java ke Oracle ............................... 74
Listing 4.16. Method getConnection................................................................... 74
Listing 4.17. Perintah SQL untuk menampilkan struktur data inverted index pada
database text RDBMS untuk kata syaraf ............................................................ 75
Listing 4.18. Perintah SQL untuk menampilkan struktur data inverted index pada
database index ready ORDBMS ........................................................................ 75
Listing 4.19. Stored procedure insert_term untuk menambahkan term pada
database teks RDBMS ....................................................................................... 79
xxii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Listing 4.20. Stored procedure insert_stemmedterms untuk menambahkan
stemmed word pada tabel terms database teks RDBMS ..................................... 80
Listing 4.21. Stored procedure insert_sourceterm untuk menambahkan original
word pada tabel source term database teks RDBMS .......................................... 81
Listing 4.22. Stored procedure counting_dfk_nidfk untuk menghitung nilai dfk
dan nidfk ............................................................................................................ 82
Listing 4.23. Stored procedure counting_w untuk menghitung nilai ntfik dan w 83
Listing 4.24. Method untuk penjadwalan update database index ready
ORDBMS .......................................................................................................... 83
Listing 4.25. Method untuk memanggil method update dan create inverted index
pada database index ready ORDBMS ................................................................ 84
Listing 4.26. Method untuk update inverted index pada database index ready
ORDBMS .......................................................................................................... 85
Listing 4.27. Method untuk create inverted index pada database index ready
ORDBMS .......................................................................................................... 85
Listing 4.28. Stored procedure update_term_ordbms untuk update inverted index
pada database index ready ORDBMS ................................................................ 86
Listing 4.29. Stored procedure insert_term_ordbms untuk create inverted index
pada database index ready ORDBMS ................................................................ 87
Listing 4.30. Method searching untuk pencarian ................................................ 90
Listing 4.31. Method singlesearch untuk pencarian dengan 1 kata kunci ............ 91
Listing 4.32. Method AND untuk operasi pencarian AND .................................. 92
Listing 4.33. Listing untuk penghitungan waktu akses query .............................. 95
Listing 5.1. Perintah SQL untuk kata “jaring” .................................................... 98
Listing 5.2. Perintah SQL untuk kata “syaraf” .................................................. 100
Listing 5.3. Perintah SQL untuk kata “tiru” ...................................................... 101
xxiii
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB I
PENDAHULUAN
1.1
Latar Belakang Masalah
Kemajuan dunia pendidikan maupun riset dibidang teknologi cukuplah
pesat, khususnya teknologi informasi yang dapat dilihat dari banyak bermunculan
makalah penelitian. Setiap tahun makalah ilmiah akan bertambah banyak seiiring
dengan banyaknya orang yang melakukan penelitian. Pencari makalah pun ingin
menemukan makalah yang sesuai dengan kebutuhannya. Penyaringan makalah
secara
manual
diklasifikasikan
dilakukan
dengan
dengan
membaca
kesesuaian
makalah
makalah
yang
yang
kemudian
diinginkan.
Untuk
mempermudah pencari makalah, maka diperlukan sistem pemerolehan informasi
untuk mencari dokumen makalah yang relevan.
Sebagian besar sistem pemerolehan informasi dan web pencarian
menerapkan inverted index yang terbukti efisien dalam menjawab query (BaezaYates, 1999). Penggunaan inverted index pada DBMS (Database Management
System) menawarkan beberapa kelebihan dan kekurangannya (Papadakos P,
2008). Implementasi inverted index dengan Bahasa Indonesia pada ORDBMS
(Object Relational Database Management System) memiliki waktu akses yang
lebih baik dibanding menggunakan RDBMS (Relational Database Management
System) (Darmawan, 2012). Proses pembentukan indeks menggunakan rumus
Savoy berdasarkan frekuensi kata, jumlah dokumen, dan frekuensi terbesar pada
sebuah dokumen yang mampu memberikan bobot yang lebih spesifik pada dua
dokumen yang mempunyai frekuensi sama, sehingga mudah untuk diperingkat
1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
(Hasibuan, 2001). Penggunaan indeks tersebut sudah pernah diterapkan pada
dokumen berbahasa Indonesia dan dapat menghasilkan dokumen pemerolehan
informasi (information retrieval) yang sesuai (Hasibuan, 2001). Penerapan
struktur data inverted index di ORDBMS dapat menggunakan collection yang
struktur datanya mirip dengan struktur data inverted index klasik (Darmawan,
2012).
Aplikasi yang dikembangkan adalah sistem pemerolehan informasi makalah
ilmiah menggunakan struktur data inverted index berbasis ORDBMS dengan
metode pembobotan TF-IDF.
1.2
Rumusan Masalah
Rumusan masalah tugas akhir ini adalah:
1.
Bagaimana mengimplementasikan sistem pemerolehan informasi untuk
pencarian dokumen makalah ilmiah berbahasa Indonesia?
2.
Bagaimana keakuratan pencarian dokumen makalah ilmiah berbahasa
Indonesia menggunakan full text dari file pdf dokumen makalah dengan
metode pembobotan Savoy dan stemming bahasa Indonesia?
3.
Bagaimana unjuk kerja penggunaan struktur data inverted index berbasis
ORDBMS dengan metode pembobotan TF-IDF?
1.3
Tujuan
Tujuan dari tugas akhir ini adalah membangun sistem pemerolehan
informasi untuk pencarian makalah ilmiah. Manfaatnya memudahkan pengguna
untuk mencari makalah ilmiah berbahasa Indonesia.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3
1.4
Batasan Masalah
Batasan masalah tugas akhir ini adalah :
1.
Sistem pemerolehan informasi ini hanya untuk pencarian dalam Bahasa
Indonesia.
2.
Koleksi dokumen yang disediakan adalah makalah ilmiah berbahasa
Indonesia dengan jumlah 281 dokumen.
3.
Kamus Bahasa Indonesia yang disediakan adalah 3278 kata.
4.
Jumlah stopword (kata buang) yang disediakan adalah 395 kata.
1.5
Metodologi Penelitian
Dalam pembuatan tugas akhir ini dilakukan tahap-tahap sebagai berikut:
1.
Studi pustaka penerapan pemerolehan informasi untuk menjawab query
dalam ORDBMS menggunakan pembobotan TF-IDF dengan model
pemerolehan boolean AND.
2.
Analisa dan perancangan sistem. Melakukan analisis terhadap masalah dan
kebutuhan sistem yang akan dibangun. Kemudian, membuat perancangan
sistem.
3.
Pengumpulan dokumen-dokumen makalah ilmiah berbahasa Indonesia
sebagai corpus.
4.
Implementasi penerapan struktur data inverted index dalam ORDBMS
dengan metode pembobotan TF-IDF menggunakan rumus Savoy.
5.
Pengujian dan analisa sistem.
Pengujian hasil sistem dengan menggunakan metode recall dan precision.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
1.6
Sistematika Penulisan
BAB I : PENDAHULUAN
Bab ini berisikan pendahuluan yang terdiri dari latar belakang, rumusan
masalah, tujuan, batasan masalah, metodologi penelitian, dan sistematika
penulisan
BAB II : LANDASAN TEORI
Bab ini berisikan konsep dasar sistem pemerolehan informasi (information
retrieval system), pembobotan TF-IDF, evaluasi sistem pemerolehan
informasi, algoritma stemming, konsep basis data relasional obyek.
BAB III : ANALISA DAN PERANCANGAN SISTEM
Bab ini berisikan analisis kebutuhan sistem dan rancangan database.
BAB IV : IMPLEMENTASI
Bab ini berisikan penjelasan dan fungsi sistem pemerolehan informasi
makalah ilmiah berbahasa Indonesia.
BAB V : ANALISA HASIL
Bab ini berisikan analisis hasil pengujian sistem.
BAB VI : KESIMPULAN DAN SARAN
Bab ini berisikan kesimpulan dan saran dari pembuatan sistem pencarian
makalah ilmiah berbahasa Indonesia.
DAFTAR PUSTAKA
LAMPIRAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
BAB II
LANDASAN TEORI
2.1
Pemerolehan Informasi
2.1.1 Konsep Pemerolehan Informasi
Pemerolehan informasi adalah proses menemukan dokumen (berisikan
teks) yang tidak terstruktur untuk memenuhi kebutuhan informasi dari koleksi
yang besar (Manning, 2009).
2.1.2 Logical View Dokumen
Dokumen dalam koleksi sering dipresentasikan melalui term indeks atau
keyword. Keyword tersebut dapat diekstraksi langsung dari teks dokumen atau
ditentukan secara manual (dibuat oleh spesialis seperti banyak dilakukan pada
bidang information science). Term indeks ini menyediakan suatu logical view dari
dokumen. Komputer modern memungkinkan representasi suatu dokumen dengan
menggunakan seluruh teks yang terdapat dalam dokumen tersebut. Dalam hal ini,
sistem pemerolehan informasi disebut mengadopsi full text logical view dari
dokumen. Jika koleksi dokumen sangat besar, maka komputer modern akan
mengurangi jumlah term indeks melalui proses penghapusan stopwords,
stemming, dan indentifikasi noun groups (menghilangkan adjectives, adverbs, dan
verbs). Proses tersebut disebut text operation (operasi teks) yang akan mengurangi
kompleksitas dari representasi dokumen dan mengubah logical view dari full text
menjadi term indeks. Gambar 2.1 mengilustrasikan beberapa intermediate logical
view yang akan digunakan oleh suatu sistem pemerolehan informasi (BaezaYates, 1999).
5
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
Gambar 2.1. Operasi teks logical view dari sebuah dokumen: dari full text
menjadi sebuah set indeks term. (Baeza-Yates, 1999)
Penghapusan stopword adalah proses penghilangan kata-kata yang tidak
digunakan (kata buang). Contoh stopwords pada Bahasa Indonesia adalah tetapi,
dan, atau, itu, yang (Hasibuan, 2001).
2.1.2.1 Stemming
Stemming adalah merupakan proses mengubah kata-kata yang terdapat
dalam suatu dokumen dalam bentuk kata dasar (rootword) (Agusta, 2009).
Algoritma stemming pada teks berbahasa Indonesia menggunakan
Algoritma Nazief & Adriani. Tahap-tahap pada Algoritma Nazief & Adriani
adalah sebagai berikut (Agusta, 2009):
1. Cari kata yang akan di-stem dalam kamus. Jika ditemukan maka diasumsikan
bahwa kata tesebut adalah root word. Maka algoritma berhenti.
2. Inflection Suffixes (“-lah”, “-kah”, “-ku”, “-mu”, atau “-nya”) dibuang. Jika
berupa particles (“-lah”, “-kah”, “-tah” atau “-pun”) maka langkah ini
diulangi lagi untuk menghapus Possesive Pronouns (“-ku”, “-mu”, atau “nya”), jika ada.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
3. Hapus Derivation Suffixes (“-i”, “-an” atau “-kan”). Jika kata ditemukan di
kamus, maka algoritma berhenti. Jika tidak maka ke langkah 3a
a. Jika “-an” telah dihapus dan huruf terakhir dari kata tersebut adalah “-k”,
maka “-k” juga ikut dihapus. Jika kata tersebut ditemukan dalam kamus
maka algoritma berhenti. Jika tidak ditemukan maka lakukan langkah 3b.
b. Akhiran yang dihapus (“-i”, “-an” atau “-kan”) dikembalikan, lanjut ke
langkah 4.
4. Hapus Derivation Prefix. Jika pada langkah 3 ada sufiks yang dihapus maka
pergi ke langkah 4a, jika tidak pergi ke langkah 4b.
a. Periksa tabel kombinasi awalan-akhiran yang tidak diijinkan (Tabel 2.1).
Jika ditemukan maka algoritma berhenti, jika tidak pergi ke langkah 4b.
b. For i = 1 to 3, tentukan tipe awalan kemudian hapus awalan. Jika root
word belum juga ditemukan lakukan langkah 5, jika sudah maka algoritma
berhenti. Catatan: jika awalan kedua sama dengan awalan pertama
algoritma berhenti.
5. Melakukan Recoding.
6. Jika semua langkah telah selesai tetapi tidak juga berhasil maka kata awal
diasumsikan sebagai root word. Proses selesai.
Tipe awalan ditentukan melalui langkah-langkah berikut:
1. Jika awalannya adalah: “di-”, “ke-”, atau “se-” maka tipe awalannya secara
berturut-turut adalah “di-”, “ke-”, atau “se-”.
2. Jika awalannya adalah “te-”, “me-”, “be-”, atau “pe-” maka dibutuhkan
sebuah proses tambahan untuk menentukan tipe awalannya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
3. Jika dua karakter pertama bukan “di-”, “ke-”, “se-”, “te-”, “be-”, “me”, atau
“pe-” maka berhenti.
4. Jika tipe awalan adalah “none” maka berhenti. Jika tipe awalan adalah bukan
“none” maka awalan dapat dilihat pada Tabel 2.2. Hapus awalan jika
ditemukan.
Tabel 2.1. Kombinasi Awalan Akhiran Yang Tidak Diijinkan
Awalan
Akhiran yang tidak diijinkan
be-
-i
di-
-an
ke-
-i, -kan
me-
-an
se-
-i, -kan
Tabel 2.2. Cara menentukan tipe awalan untuk Kata yang diawali dengan “te-”
Tipe
Following Characters
Set 1
Set 2
Set 3
Set 4
Awalan
“-r”
“-r”
-
-
none
“-r”
vowel
-
-
ter-luluh
“-r”
not (vowel or “-r”)
“-er”
vowel
ter
“-r”
not (vowel or “-r”)
“-er”
not vowel
ter-
“-r”
not (vowel or “-r”)
not “-er”
-
ter
not (vowel or “-r”)
“-er”
vowel
-
none
not (vowel or “-r”)
“-er”
not vowel
te
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9
Tabel 2.3. Jenis Awalan Berdasarkan Tipe Awalannya
Tipe Awalan
Awalan yang harus dihapus
di-
di-
ke-
ke-
se-
se-
te-
te-
ter-
ter-
ter-luluh
ter
Untuk mengatasi keterbatasan pada algoritma di atas, maka ditambahkan
aturan-aturan dibawah ini:
1. Aturan untuk reduplikasi.
- Jika kedua kata yang dihubungkan oleh kata penghubung adalah kata yang
sama maka root word adalah bentuk tunggalnya, contoh : “buku-buku” root
word-nya adalah “buku”.
- Kata lain, misalnya “bolak-balik”, “berbalas-balasan, dan ”seolah-olah”.
Untuk mendapatkan root word-nya, kedua kata diartikan secara terpisah.
Jika keduanya memiliki root word yang sama maka diubah menjadi bentuk
tunggal, contoh: kata “berbalas-balasan”, “berbalas” dan “balasan” memiliki
root word yang sama yaitu “balas”, maka root word “berbalas-balasan”
adalah “balas”. Sebaliknya, pada kata “bolak-balik”, “bolak” dan “balik”
memiliki root word yang berbeda, maka root word-nya adalah “bolak-balik”
2. Tambahan bentuk awalan dan akhiran serta aturannya.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
10
- Untuk tipe awalan “mem-“, kata yang diawali dengan awalan “memp-”
memiliki tipe awalan “mem-”.
- Tipe awalan “meng-“, kata yang diawali dengan awalan “mengk-” memiliki
tipe awalan “meng2.1.3 Proses Pemerolehan Informasi
Proses pemerolehan informasi terdapat beberapa tahap. Pertama-tama,
sebelum proses pemerolehan informasi dimulai, diperlukan pendefinisian
database teks. Hal ini dilakukan dengan melakukan identifikasi terhadap
dokumen-dokumen yang akan digunakan, operasi yang akan dilakukan terhadap
teks, dan model teks (struktur teks dan elemen mana saja dari teks yang dapat
dilakukan proses pemerolehan informasi). Operasi teks (text operations)
mentransformasikan dokumen asal menjadi logical view dokumen tersebut.
Setelah logical view dokumen diperoleh, dibuatlah term indeks pada database
untuk mempercepat proses pencarian terhadap jumlah data yang besar. Struktur
indeks yang paling banyak digunakan adalah inverted file seperti pada Gambar
2.2. Database dokumen telah diindeks, maka proses pemerolehan informasi dapat
dimulai. Pengguna menentukan kebutuhannya yang kemudian ditransformasikan
oleh operasi teks yang sama digunakan pada koleksi dokumen. Query kemudian
ditransformasi untuk