Oscar Harries Skripsi
Perancangan dan Pembuatan Software Search Engine Jurnal Ilmiah dengan Menggunakan Text Mining Berbasis Web dengan Faster Algorithm
Suatu kumpulan Abstrak terdiri dari Abstrak-Abstrak yang memiliki struktur yang signifikan. Dalam pencarian informasi pada Abstrak terstruktur, proses indexing dan penentuan relevansi Abstrak dalam proses pencarian harus memperhatikan struktur dan isi dari Abstrak. Selain itu dengan menggunakan antar muka basis web akan memudahkan pengguna untuk mencari sebuah Abstrak sesuai dengan pendekatan relevansinya pada struktur Abstrak.
Abstrak yang digunakan adalah Abstrak makalah Jurnal Pusat Penelitian Universitas Kristen Petra yang tersimpan dalam file dengan format doc (dibuat menggunakan Microsoft Word). Pada masing-masing file tersebut dilakukan proses checking dan parsing untuk mendapatkan isi dan struktur Abstrak dengan menggunakan Java Component Object Model Bridge (JACOB) yang kemudian disimpan dalam database Oracle 9i. Pada data tersebut kemudian dilakukan proses indexing, quering dan data mining, dengan menggunakan fitur-fitur yang dimiliki Oracle 9.2 Text. Data-data hasil proses tersebut selanjutnya digunakan untuk membangun software search engine dengan menggunakan bahasa pemrograman Java. Hasil yang dihasilkan dari proses- proses di atas adalah abstrak-abstrak yang berhubungan dengan pencarian yang dimasukkan oleh pengguna.
Uji coba dilakukan untuk mengetahui kemampuan pengecekan, pembacaan, dan pengambilan isi (teks) dan struktur Abstrak pada file berformat doc. Serta untuk mengetahui pengaruh pencarian berdasarkan struktur Abstrak melalui antarmuka grafis terhadap pencarian informasi pada Abstrak terstruktur.
Hasil uji coba menunjukkan bahwa proses pengecekan, pembacaan, dan pengambilan teks dan sruktur pada file Abstrak berjalan dengan baik, sedangkan pencarian informasi berdasarkan struktur Abstrak menunjukkan bahwa pencarian tersebut mampu mengurangi lingkup pencarian.
Kata Kunci : Information Retrieval, Abstrak Terstruktur, Data mining, Fast Algorithms, Oracle9i Text, Java Component Object Model Bridge (JACOB).
ABSTRACT
Oscar Harries Thesis
Design and Implementing Text Mining Software Search Engine Petra Christian University Research Center Journal Using Faster Algorithm
Every bundle of documents contains of many documents which have a significant structural. Information retrieval in structured documents, indexing process and act of determining documents relation in searching process have to observe structure and it’s contents. Besides that, using web interface will make user easier when they want to find out the documents depend on it’s relation trough documents structure.
The documents which used is Petra Christian University Research Center Journal which saved by doc format (Microsoft Word format documents). Every file must be processed by checking and parsing process, it used to get any information about document’s content and structure using JACOB (Java Com Bridge Model) which it will save in Oracle9i Text’s database. After that files processed by indexing, querying, and data mining process using basic feature of Oracle9i Text. The result of many kind processes is a bundle of word which represented about document’s content. The data will process into the software using java programming language. The result of processes are bounds of abstract which related with user.
The experiment is to be done to find out the software’s ability to checking, reading and retrieved the document’s content which saved in doc format. And to find out the influence of searching of document’s structure using web concerning information searching in structured documents. Experiment’s result represented that all of mentioned processes are worked very well and information searching depends of document’s structured can make the scope become smaller.
Keywords : Information Retrieval, Structured Documents, Data mining, Fast Algorithms, Oracle9i Text, Java Component Object Model Bridge (JACOB).
HALAMAN JUDUL ……….. i
LEMBAR PENGESAHAN ……… ii
SURAT PERNYATAAN PERSETUJUAN PUBLIKASI ………. iii
KATA PENGANTAR ……… iv
UCAPAN TERIMA KASIH ……….. v
ABSTRAK ………. viii
ABSCTRACT ……….. ix
DAFTAR ISI ………. x
DAFTAR GAMBAR ………. xiii
DAFTAR TABEL ………. xvi
1. PENDAHULUAN ……….. 1
1.1. Latar Belakang Masalah ……… 1
1.2. Perumusan Masalah ……….. 3
1.3. Tujuan Tugas Akhir ……….. 5
1.4. Ruang Lingkup ………. 6
1.5. Metode Penelitian ………. 7
1.6. Sistematika Penyusunan ……… 9
2. LANDASAN TEORI ………. 10
2.1. Information retrieval ………. 10
2.2. Pre-processing ……….. 11
2.2.1. Analisa Leksikal ……… 11
2.2.2. Penghilangan Stop word ……….. 12
2.2.3. Stemming ……… 13
2.3. Oracle Text 9.2.0.1 ………. 14
2.3.1. Kilasan Umum Oracle Text ……….. 14
2.3.2. Tahapan – Tahapan dalam Oracle Text ……… 15
2.3.2.1. Mempopulasi Tabel Abstrak ………. 16
2.3.2.1.1. SQL Insert ………... 16
2.3.2.1.2. SQL Loader ………. 16
2.3.2.1.3. Prosedur PL/SQL Insert Empty_CLOB atau Empty_BLOB ……….. 19
2.3.2.2. Membuat Indeks pada Tabel Abstrak ………... 20
2.3.2.2.1. Tipe Indeks pada Oracle Text ………. 20
2.3.2.2.1.1. Tipe Indeks CONTEXT ………. 21
2.3.2.2.1.2. Tipe data CTXCAT ……… 24
2.3.2.2.1.3. Tipe indeks CTXRULE ………. 28
2.3.2.2.2. Langkah – langkah membuat Indeks ……….. 29
2.3.2.2.2.1. Menentukan dan membuat Preference Indeks ….. 30
2.3.2.2.2.1.1. Datastore Preference ……… 31
2.3.2.2.2.1.2. Filter Preference ……….. 32
2.3.2.2.2.1.3. Lexer Preference ……….. 32
2.3.2.2.2.1.4. Wordlist Preference ……….. 33
2.3.2.2.2.1.5. Storage Preference ……… 36
2.3.2.2.2.1.6. Stoplist Preference ……… 38
2.3.2.2.2.1.7. Section Group Preference ………. 39
2..2.2.2.2. Membuat Indeks Teks ……….. 41
2.4. Algoritma Porter ……… 41
2.5. (Java 2 Enterprise Edition) J2EE ……….. 46
2.6. (Java Database Connectivity) JDBC ………. 47
2.7. Algoritma Boyer-Moore …... 49
2.8. Faster Algorithms ……….. 51
3. PERANCANGAN SISTEM ………..………. 53
3.1. Gambaran Sistem ………... 53
3.2. Desain dan Perancangan Proses ………. 57
3.3. Perancangan Desain Sistem Informasi ……….. 63
3.4. Perancangan Desain Antar Muka (interface) ……… 66
3.5. ( Java Com – Bridge Model ) JACOB ……….. 67
3.5.1. Langkah-langkah penggunaan JACOB ……… 68
3.5.2. Sekilas tentang OLE dari Microsoft Word ………... 68
3.5.3. Object dalam JACOB ……….. 69
3.6. Algoritma Boyer-Moore ………. 69
3.7. Faster Algorithms ……….. 71
4. IMPLEMENTASI PERANGKAT LUNAK ……….. 75
4.1. Tahap-tahap Implementasi ………. 75
4.2. Persiapan Abstrak ………... 75
4.3. Perancangan Perangkat Lunak ……….. 78
4.3.1. Implementasi Basis Data ………. 79
4.3.2. Implementasi Proses ……… 80
4.3.2.1. Proses Parsing Abstrak ……… 81
4.3.2.1.1. Proses Parsing isi Abstrak ……….. 82
4.3.2.1.2. Proses Penyimpanan ke dalam basis data …….. 84
4.3.2.2. Proses Indexing Abstrak ……….. 86
4.3.2.3. Proses Stemming Abstrak ………. 89
4.3.2.4. Proses Skoring Abstrak ……… 91
4.3.2.4.1. Proses Indexing kata yang dicari ………. 91
4.3.2.4.2. Proses generate kombinasi ……….. 91
4.3.2.4.3. Proses scoring pada itemset kombinasi ………. 94
4.3.2.4.4. Proses pencarian kata berdasarkan itemset ……. 96
4.3.2.5. Proses Pencarian Abstrak ………. 98
4.4. Implementasi Antar Muka ………. 99
4.4.1. Implementasi interface software ……….. 99
4.4.2. Implementasi interface web ………. 102
5.1. Lingkungan dan Pelaksanaan Uji Coba ……….. 110
5.2. Uji Coba I ………. 110
5.3. Uji Coba II ………... 114
5.4. Uji Coba III ……….. 118
5.5. Evaluasi Uji Coba ……… 128
6. KESIMPULAN DAN SARAN ……….. 130
6.1. Kesimpulan ……….. 130
6.2. Saran ……… 131
DAFTAR PUSTAKA ………. 132
LAMPIRAN A ……… 134
SCRIPT DATABASE ………. 115
LAMPIRAN B ……… 118
SCRIPT PROGRAM ……….. 118
LAMPIRAN C ……… 171
DAFTAR STOPWORD ………. 171
DAFTAR GAMBAR
Gambar 2.1. Bagan Tahapan Teks Pre-processing .……… 11
Gambar 2.2. Bagan sub-indeks tabel AUCTION ..………. 25
Gambar 2.3.. Proses algoritma Boyer-Moore ………. 50
Gambar 3.1. Gambaran Sistem ………... 53
Gambar 3.2. Gambaran sub sistem pre-processingi ... 55
Gambar 3.3. Gambaran sub sistem pencarian informasi dan antarmuka ………… 56
Gambar 3.4. Diagram DFD Level 0 ……… 57
Gambar 3.5. Diagram DFD Level 1 ……… 58
Gambar 3.6. Diagram DFD Level 2 sub proses parsing Abstrak ………. 59
Gambar 3.7. Diagram DFD Level 2 sub proses pencarian informasi ………. 60
Gambar 3.8. Diagram proses level 3 sub proses index ………... 62
Gambar 3.9. ERD Sistem ……… 65
Gambar 3.10. Desain Antar Muka (interface) ……… 66
Gambar 3.11. Proses algoritma Boyer-Moore ……… 70
Gambar 3.12. Perhitungan pemberian nilai ……… 73
Gambar 4.1. Contoh Abstrak artikel jurnal ……….. 77
Gambar 4.2. Diagram garis besar proses perangkat lunak ……….. 79
Gambar 4.3. Algoritma untuk parsing isi dan struktur Abstrak ……… 85
Gambar 4.4. Algoritma untuk insert ke dalam master table ………... 86
Gambar 4.5. Algoritma untuk insert ke dalam detail tablei ………... 86
Gambar 4.6. Perintah SQL untuk membuat preference stoplist ………. 88
Gambar 4.7. Perintah SQL untuk create indexing ………. 88
Gambar 4.8. hasil indexing pada Oracle9i ………. 88
Gambar 4.9. PL/SQL Synchronized Index ……….. 89
Gambar 4.10. Algoritma call Stemmer ………... 91
Gambar 4.11. Contoh kombinasi angka ……….. 94
Gambar 4.12. Contoh kombinasi kata ………. 94
Gambar 4.13. Tampilan utama aplikasi ……….. 101
Gambar 4.14. Tampilan Insert Documents ………. 101
Gambar 4.15. Tampilan fileChooser ………... 102
Gambar 4.17. Tampilan Menu StopWord ………... 103
Gambar 4.18. Tampilan menu connect ………... 104
Gambar 4.19. Tampilan menu searching ……… 105
Gambar 4.20.Tampilan web ……… 106
Gambar 4.21. Scripting program HTML halaman utama ……….. 107
Gambar 4.22. Tampilan dari halaman kedua Template.jsp ………. 108
Gambar 4.23. Scripting program .jsp halaman kedua ……… 109
Gambar 5.1. Tampilan untuk tabel judul ……… 112
Gambar 5.2. Tampilan untuk tabel author ………. 113
Gambar 5.3. Tampilan untuk tabel abstract1 ………. 113
Gambar 5.4. Tampilan untuk tabel abstract2 ………. 114
Gambar 5.5. Tampilan untuk tabel keyword1 ………. 114
Gambar 5.6. Tampilan untuk tabel keyword2 ………. 115
Gambar 5.7. Tampilan untuk mengetahui nilai dari itemset untuk 2 kata ……….. 116
Gambar 5.8. Tampilan untuk mengetahui nilai itemset 3 kata ……… 117
Gambar 5.9. Tampilan untuk value dengan itemset 4 kata ………. 118
Gambar 5.10. Tampilan untuk value dengan itemset 5 kata ………... 119
Gambar 5.11.(a) Hasil index dari Oracle9i ………. 120
Gambar 5.11.(b) Hasil index searching ……….. 121
Gambar 5.12.(a) Tampilan tabel kombinasi beserta dengan nilai-nya ……… 122
Gambar 5.12.(b) Tampilan tabel hasil dengan min. supp = 2.0 ……….. 122
Gambar 5.13. Tampilan hasil pencarian jika diberi nilai 50.0 ……… 122
Gambar 5.14. Tampilan hasil pencarian jika diberi nilai 10.0 ……… 123
Gambar 5.15. Tampilan hasil pencarian jika diberi nilai 2.0 ……….. 123
Gambar 5.16. Tampilan hasil pencarian jika diberi nilai 0.0 ……….. 123
Gambar 5.17. Hasil Uji Coba Pada Struktur JUDUL/TITLE OF ARTICLES …... 124
Gambar 5.18. Hasil Pengujian Pada Struktur PENULIS/AUTHOR OF ARTICLES ……….. 125 Gambar 5.19. Hasil Pengujian Pada Struktur ABSTRAK/ABSTRACT OF INDONESIA ……….. 126 Gambar 5.20. Hasil Pengujian Pada Struktur ENGLISH ABSTRACT …………. 127
Gambar 5.21. Hasil Pengujian Pada Struktur Kata Kunci ……….. 128 Gambar 5.22. Hasil Pengujian Pada Struktur ENGLISH KEYWORDS ………… 129
Tabel 2.1 Index Type Overview ……….. 20
Tabel 2.2 Daftar Preference dalam Oracle Text ………. 30
Tabel 2.3 List Datastore Preference ………... 31
Tabel 2.4 List Preference Filter ……….. 32
Tabel 2.5 List Preference Lexer ……….. 33
Tabel 2.6 Atribut BASIC_WORDLIST ………... 34
Tabel 2.7 Atribut BASIC_STORAGE ……… 36
Tabel 2.8 Tipe-tipe grup pada SECTION_GROUP ……… 40
Tabel 3.1. Property pada JACOB ………... 68
Tabel 3.2. Object dalam JACOB ……… 69
Tabel 3.3. Bentuk Kombinasi yang di-generate ………. 73
Table 4.1. Hasil implementasi dari indexing ……….. 89
Tabel 4.2. Perhitungan pemberian nilai ………. 95
Tabel 4.3. Tabel list item ComboBox ………. 107