Top Banner
QUERY EXPANSION PADA SISTEM TEMU KEMBALI INFORMASI BERBAHASA INDONESIA DENGAN METODE PEMBOBOTAN TF-IDF DAN ALGORITME COSINE SIMILARITY BERBASIS WORDNET SKRIPSI Untuk memenuhi sebagian persyaratan memperoleh gelar Sarjana Komputer Disusun oleh: Mahdarani Dwi Laxmi NIM: 145150201111140 PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER UNIVERSITAS BRAWIJAYA MALANG 2018
81

query expansion pada sistem temu kembali informasi ...

Mar 23, 2023

Download

Documents

Khang Minh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: query expansion pada sistem temu kembali informasi ...

QUERY EXPANSION PADA SISTEM TEMU KEMBALI INFORMASI BERBAHASA INDONESIA DENGAN METODE PEMBOBOTAN TF-IDF DAN ALGORITME

COSINE SIMILARITY BERBASIS WORDNET

SKRIPSI

Untuk memenuhi sebagian persyaratan memperoleh gelar Sarjana Komputer

Disusun oleh:

Mahdarani Dwi Laxmi NIM: 145150201111140

PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN TEKNIK INFORMATIKA

FAKULTAS ILMU KOMPUTER UNIVERSITAS BRAWIJAYA

MALANG 2018

Page 2: query expansion pada sistem temu kembali informasi ...

PENGESAHAN

Query Expansion Pada Sistem Temu Kembali Informasi Berbahasa Indonesia Dengan Metode Pembobotan Tf-Idf Dan Algoritme Cosine Similarity Berbasis Wordnet

SKRIPSI

Diajukan untuk memenuhi sebagian persyaratan

memperoleh gelar Sarjana Komputer

Disusun Oleh : Mahdarani Dwi Laxmi

NIM: 145150201111140

Skripsi ini telah diuji dan dinyatakan lulus pada 02 Agustus 2018

Telah diperiksa dan disetujui oleh:

Page 3: query expansion pada sistem temu kembali informasi ...
Page 4: query expansion pada sistem temu kembali informasi ...

KATA PENGANTAR

Puji syukur Penulis panjatkan kepada Allah SWT atas limpahan rahmat, hidayah, inayah

dan kesmpatan yang telah diberikan kepada Penulis, sehingga Penulis dapat menyelesaikan

penelitian dengan judul β€œQuery Expansion Pada Sistem Temu Kembali Informasi Berbahasa

Indonesia Dengan Metode Pembobotan Tf-Idf Dan Algoritme Cosine Similarity Berbasis

Wordnet”. Skripsi ini diajukan untuk memperoleh gelar Sarjana Komputer di Fakultas Ilmu

Komputer (FILKOM) Universitas Brawijaya.

Dalam melakukan penelitian dan penyusunan dokumen skripsi ini, Penulis banyak sekali

mendapatkan panduan, dukungan, dan arahan dari berbgai pihak. Dengan tulisan ini Penulis

ingin menyampaikan terimakasih yang sebesar-besarnya kepada :

1. Ibu Indriati, S.T, M.Kom selaku dosen pembimbing satu yang telah meluangkan waktu

serta memberikan arahan dan bimbingan dalam pengerjaan skripsi ini.

2. Bapak Mochammad Ali Fauzi, S.Kom., M.Kom selaku dosen pembimbing dua yang

telah meluangkan waktu serta memberikan arahan dan bimbingan dalam pengerjaan

skripsi ini.

3. Bapak Wayan Firdaus Mahmudy, S.Si, M.T, Ph.D selaku Dekan Fakultas Ilmu Komputer Universitas Brawijaya.

4. Bapak Tri Astoto Kurniawan, S.T, M.T, Ph.D selaku Ketua Jurusan Teknik Informatika

Fakultas Ilmu Komputer Universitas Brawijaya.

5. Bapak Agus Wahyu Widodo, S.T, M.Cs selaku Ketua Program Studi Teknik Informatika

Fakultas Ilmu Komputer Universitas Brawijaya.

6. Seluruh Dosen Fakultas Ilmu Komputer yang telah bersedia membagi ilmunya dan

mendidik Penulis.

7. Kedua orang tua penulis, Bapak Hartono dan Ibu Rukiyani, serta seluruh keluarga

yang selalu mendukung baik moril ataupun materil, serta doa demi kelancaran

pengerjaan skripsi ini.

8. Kakak saya Vian Anawagis yang selalu memberikan support dan mendoakan penulis

demi kemudahan dan kelancaran pengerjaan skripsi.

9. Saudara Zulqi Fahreza Akbar yang selalu memberikan support dan mendoakan

penulis demi kemudahan dan kelancaran pengerjaan skripsi.

10. Teman-teman tercinta, Nabila Faradish, Yuniar Siska Fatmala, Dwi Qunita serta

teman-teman penghuni kos putri mekarsari mbak Shintya, mbak Raras, Linda,

Noverly, Heidy, dan Ratna yang telah mendukung dan terlibat dalam segala proses

pengerjaan skripsi.

11. Untuk seluruh teman-teman yang belum dapat disebut satu-persatu, yang telah

membantu dan mendukung penulis dalam pengerjaan skripsi.

Page 5: query expansion pada sistem temu kembali informasi ...

Penulis sadar bahwasanya skripsi ini memiliki banyak kekurangan dan jauh dari kata

sempurna. Penulis mengharapkan dan menerima kritik maupun saran agar skripsi ini

menjadi lebih baik. Akhir kata, Penulis berharap agar skripsi ini dapat bermaanfaat untuk

seluruh pembacanya dan untuk penelitian-penelitian selanjutnya.

Malang, 02 Agustus 2018

Penulis

[email protected]

Page 6: query expansion pada sistem temu kembali informasi ...

ABSTRAK Mahdarani Dwi Laxmi, 2018. Query Expansion Pada Sistem Temu Kembali Informasi

Berbahasa Indonesia Dengan Metode Pembobotan Tf-Idf Dan Algoritme Cosine Similarity

berbasis Wordnet

Fakultas Ilmu Komputer Universitas Brawijaya. Pembimbing : Indriati, S.T, M.Kom dan M.

Ali Fauzi, S.Kom, M.Kom

Query Expansion secara umum merupakan suatu teknik untuk menambahkan query pada

information retrieval dalam teknik relevance feedback. Query awal akan ditambahkan

dengan beberapa term atau kata pada query untuk memberikan kemudahan dalam proses

information retrieval. Temu Kembali Informasi dimulai dengan penyediaan beberapa koleksi

dokumen yang akan digunakan. Dengan menggunakan operasi teks akan diproses menjadi

suatu berkas inverted index. Untuk menemukannya, penelitian ini menggunakan metode

pembobotan TF-IDF dan algoritme cosine similarity berbasis wordNet. Dengan

menggunakan wordNet dilakukan penambahan query untuk memperbaiki sebuah teks

tertentu sehingga sesuai dengan konsep kalimat tertentu. Pada penelitian ini akan

digunakan synset berupa relasi kata hiponim untuk ditambahkan kedalam query.

Berdasarkan hasil pengujian menggunakan precision@20 dari 10 query didapatkan nilai

presisi rata-rata sebesar 0,7. Artinya probabilitas sistem dapat menemukan kembali

dokumen yang relevan tanpa menggunakan query expansion adalah sebesar 70%.

Berdasarkan hasil pengujian menggunakan precision@20 dari 10 query didapatkan nilai

presisi rata-rata sebesar 0,52. Artinya probabilitas sistem dapat menemukan kembali

dokumen yang relevan tanpa menggunakan query expansion adalah sebesar 52%.

Kata kunci: query expansion, sistem temu kembali informasi, TF-IDF, alogaritme consine,

wordnet.

Page 7: query expansion pada sistem temu kembali informasi ...

ABSTRACT Mahdarani Dwi Laxmi, 2018. Query Expansion of Information Retrieval System in

Indonesian Languange with the Tf-Idf Weighting Method And Cosine Similarity Algorithm

Wordnet-based

Fakultas Ilmu Komputer Universitas Brawijaya. Pembimbing : Indriati, S.T, M.Kom dan M.

Ali Fauzi, S.Kom, M.Kom

Query Expansion is generally a technique for adding queries in information retrieval in

relevance feedback techniques. The initial query will be added with several terms or words in

the query to facilitate the process of information retrieval. Information Retrieval begins with

the provision of several collections of documents to be used. Using text operations will be

processed into an inverted index file. To find it, this research uses TF-IDF weighting method

and wordNet based cosine similarity algorithm. By using wordNet, a query is added to

correct a particular text so that it matches the concept of a particular sentence. In this

research will be used synset in the form of a hyponym word relation to be added to the

query. Based on the results of testing using precision @ 20 from 10 queries, the average

precision value was 0.7. This means that the probability of the system can rediscover the

relevant documents without using the query expansion is 70%. Based on the results of

testing using precision @ 20 from 10 queries obtained an average precision value of 0.52.

This means that the probability of the system can rediscover the relevant documents without

using the query expansion is 52%.

Keywords: query expansion, information retrieval system, TF-IDF, cosine algorithm, wordnet.

Page 8: query expansion pada sistem temu kembali informasi ...

i

DAFTAR ISI

PENGESAHAN ...................................................................................................................... ii

PERNYATAAN ORISINALITAS .................................................Error! Bookmark not defined.

KATA PENGANTAR...............................................................................................................iv

ABSTRAK ..............................................................................................................................vi

ABSTRACT ........................................................................................................................... vii

DAFTAR ISI ............................................................................................................................ i

DAFTAR GAMBAR ................................................................................................................iv

DAFTAR TABEL .................................................................................................................... v

DAFTAR KODE PROGRAM ...................................................................................................vi

DAFTAR LAMPIRAN ............................................................................................................ vii

BAB 1 PENDAHULUAN ..........................................................Error! Bookmark not defined.

1.1. Latar Belakang ..........................................................Error! Bookmark not defined.

1.2. Rumusan Masalah ....................................................Error! Bookmark not defined.

1.3. Tujuan.......................................................................Error! Bookmark not defined.

1.4. Manfaat ....................................................................Error! Bookmark not defined.

1.5. Batasan Masalah ......................................................Error! Bookmark not defined.

1.6. Sistematika Pembahasan .........................................Error! Bookmark not defined.

BAB 2 LANDASAN KEPUSTAKAAN .........................................Error! Bookmark not defined.

2.1 Kajian Pustaka ..........................................................Error! Bookmark not defined.

2.2. Dasar Teori ...............................................................Error! Bookmark not defined.

2.2.1. Query Expansion .................................................Error! Bookmark not defined.

2.2.2. Sistem Temu Kembali Informasi .........................Error! Bookmark not defined.

2.2.3. Twitter .................................................................Error! Bookmark not defined.

2.2.4. Hiponim ...............................................................Error! Bookmark not defined.

2.2.5. Google Translate API ...........................................Error! Bookmark not defined.

2.2.6. WordNet .............................................................Error! Bookmark not defined.

2.2.7. Preprocessing ......................................................Error! Bookmark not defined.

2.2.8. Pembobotan Term Frequency-inverse Document Frequency (TF-IDF) ....... Error!

Bookmark not defined.

2.2.9. Ukuran Kemiripan ...............................................Error! Bookmark not defined.

2.2.10. Evaluasi Pengujian .........................................Error! Bookmark not defined.

2.2.10.1. Precision at K (P@K) ..............................Error! Bookmark not defined.

Page 9: query expansion pada sistem temu kembali informasi ...

BAB 3 METODOLOGI .............................................................Error! Bookmark not defined.

3.1. Tipe Penelitian ..........................................................Error! Bookmark not defined.

3.2. Strategi Penelitian ....................................................Error! Bookmark not defined.

3.3. Partisipan Penelitian ................................................Error! Bookmark not defined.

3.4. Lokasi Penelitian.......................................................Error! Bookmark not defined.

3.5. Pengumpulan Data ...................................................Error! Bookmark not defined.

3.6. Perancangan Algoritme ............................................Error! Bookmark not defined.

3.7. Teknik Pengujian dan Analisis ..................................Error! Bookmark not defined.

3.8. Penarikan kesimpulan dan saran .............................Error! Bookmark not defined.

3.9. Jadwal Penelitian ......................................................Error! Bookmark not defined.

BAB 4 PERANCANGAN ALGORITME ......................................Error! Bookmark not defined.

4.1 Deskripsi Masalah .......................................................Error! Bookmark not defined.

4.2. Deskripsi Umum Sistem ...........................................Error! Bookmark not defined.

4.3. Diagram Alir Sistem ..................................................Error! Bookmark not defined.

4.4. Manualisasi Perhitungan Data .................................Error! Bookmark not defined.

4.4.1. Preprocessing ......................................................Error! Bookmark not defined.

4.4.1.1. Case Folding ................................................Error! Bookmark not defined.

4.4.1.2. Tokenisasi ....................................................Error! Bookmark not defined.

4.4.1.3. Filtering .......................................................Error! Bookmark not defined.

4.4.1.4. Stemming ....................................................Error! Bookmark not defined.

4.4.2. Pembobotan .......................................................Error! Bookmark not defined.

4.4.2.1. Manualisasi tanpa Query Expansion ...........Error! Bookmark not defined.

4.4.2.2. Manualisasi menggunakan Query Expansion............ Error! Bookmark not

defined.

4.4.3. Cosine Similarity ..................................................Error! Bookmark not defined.

BAB 5 IMPLEMENTASI ...........................................................Error! Bookmark not defined.

5.1. Batasan Implementasi................................................Error! Bookmark not defined.

5.2. Implementasi Algoritme ............................................Error! Bookmark not defined.

5.2.1. Implementasi Algoritme Preprocessing Text ......Error! Bookmark not defined.

5.3. Implementasi Antarmuka.........................................Error! Bookmark not defined.

5.3.1. Implementasi Antarmuka Form Pencarian .........Error! Bookmark not defined.

5.3.2. Implementasi Antarmuka Input Database ..........Error! Bookmark not defined.

BAB 6 PENGUJIAN .................................................................Error! Bookmark not defined.

6.1. Evaluasi dengan Precision at K .................................Error! Bookmark not defined.

Page 10: query expansion pada sistem temu kembali informasi ...

6.2. Perbandingan Pengujian Tanpa Query Expansion dan Menggunakan Query

Expansion ..........................................................................Error! Bookmark not defined.

6.3. Analisis .....................................................................Error! Bookmark not defined.

BAB 7 KESIMPULAN DAN SARAN ..........................................Error! Bookmark not defined.

7.1. Kesimpulan ...............................................................Error! Bookmark not defined.

7.2. Saran ........................................................................Error! Bookmark not defined.

DAFTAR PUSTAKA .................................................................Error! Bookmark not defined.

DAFTAR LAMPIRAN ...............................................................Error! Bookmark not defined.

Page 11: query expansion pada sistem temu kembali informasi ...

DAFTAR GAMBAR

Gambar 1. Contoh proses tokenisasi ....................................Error! Bookmark not defined.

Gambar 2. Contoh proses filtering ........................................Error! Bookmark not defined.

Gambar 3. Perancangan Algoritme .......................................Error! Bookmark not defined.

Gambar 4. Diagram Alir Sistem .............................................Error! Bookmark not defined.

Gambar 5. Diagram alir Query Expansion .............................Error! Bookmark not defined.

Gambar 6. Diagram alir proses preprocessing ......................Error! Bookmark not defined.

Gambar 7. Diagram alir proses tokenisasi ............................Error! Bookmark not defined.

Gambar 8. Diagram alir proses filtering ................................Error! Bookmark not defined.

Gambar 9. Diagram alir porses stemming ............................Error! Bookmark not defined.

Gambar 10. Tampilan Form Pencarian .................................Error! Bookmark not defined.

Gambar 11. Tampilan Form Tambah Database ....................Error! Bookmark not defined.

Page 12: query expansion pada sistem temu kembali informasi ...

DAFTAR TABEL

Tabel 1. Aturan Stemmer Sastrawi .......................................Error! Bookmark not defined.

Tabel 2 Aturan Stemmer Sastrawi (Lanjutan) .......................Error! Bookmark not defined.

Tabel 3. Jadwal Penelitian .....................................................Error! Bookmark not defined.

Tabel 4. Dokumen .................................................................Error! Bookmark not defined.

Tabel 5. Query .......................................................................Error! Bookmark not defined.

Tabel 6. Hasil Case Folding Dokumen ...................................Error! Bookmark not defined.

Tabel 7. hasil Case Folding Query..........................................Error! Bookmark not defined.

Tabel 8. Hasil Tokenisasi Dokumen .......................................Error! Bookmark not defined.

Tabel 9. Hasil Tokenisasi Query .............................................Error! Bookmark not defined.

Tabel 10. Hasil Filtering Dokumen ........................................Error! Bookmark not defined.

Tabel 11. Hasil Filtering Query ..............................................Error! Bookmark not defined.

Tabel 12. Hasil Stemming Dokumen .....................................Error! Bookmark not defined.

Tabel 13. Hasil Stemming Query ...........................................Error! Bookmark not defined.

Tabel 14. Dokumen ...............................................................Error! Bookmark not defined.

Tabel 15. Query .....................................................................Error! Bookmark not defined.

Tabel 16. Perhitungan Tf-Idf .................................................Error! Bookmark not defined.

Tabel 17. Perhitungan Wtd ...................................................Error! Bookmark not defined.

Tabel 18. Normalisasi Akhir ..................................................Error! Bookmark not defined.

Tabel 19. Dokumen ...............................................................Error! Bookmark not defined.

Tabel 20. Query .....................................................................Error! Bookmark not defined.

Tabel 21. Perhitungan Tf-Idf .................................................Error! Bookmark not defined.

Tabel 22. Perhitungan Wtd ...................................................Error! Bookmark not defined.

Tabel 23. Perhitungan Normalisasi .......................................Error! Bookmark not defined.

Tabel 24. Hasil Cosine Similarity ...........................................Error! Bookmark not defined.

Tabel 25. Daftar Query dan Query Expansion.......................Error! Bookmark not defined.

Tabel 26. Perbandingan Pengujian Tanpa Query Expansion dan Menggunakan Query

Expansion ..............................................................................Error! Bookmark not defined.

Tabel 27. Skenario Pengujian 2 .............................................Error! Bookmark not defined.

Page 13: query expansion pada sistem temu kembali informasi ...

DAFTAR KODE PROGRAM

Kode Program 1. Implementasi Case Folding .......................Error! Bookmark not defined.

Kode Program 2. Implementasi Tokenizing ..........................Error! Bookmark not defined.

Kode Program 3. Implementasi Filtering ..............................Error! Bookmark not defined.

Kode Program 4. Implementasi Stemming ...........................Error! Bookmark not defined.

Kode Program 5. Translate....................................................Error! Bookmark not defined.

Kode Program 6. Koneksi Database ......................................Error! Bookmark not defined.

Kode Program 7. Koneksi Wordnet .......................................Error! Bookmark not defined.

Kode Program 8. Koneksi Wordnet .......................................Error! Bookmark not defined.

Kode Program 9. Pencarian...................................................Error! Bookmark not defined.

Kode Program 10. Query Expansion .....................................Error! Bookmark not defined.

Kode Program 11. Implementasi Penentuan Term Setiap Dokumen . Error! Bookmark not

defined.

Kode Program 12. Implementasi Pembobotan Tf-Idf ...........Error! Bookmark not defined.

Kode Program 13. Implementasi Pemetaan Pembobotan Awal ........ Error! Bookmark not

defined.

Kode Program 14. Implementasi Normaliasasi Ketetapan Bobot ...... Error! Bookmark not

defined.

Kode Program 15. Implementasi Perhitungan Cosine Similarity ........ Error! Bookmark not

defined.

Page 14: query expansion pada sistem temu kembali informasi ...

DAFTAR LAMPIRAN

Lampiran 1. Data Tweet ........................................................Error! Bookmark not defined.

Lampiran 2. Menggunakan Query Expansion .......................Error! Bookmark not defined.

Lampiran 3. Tanpa Menggunakan Query Expansion ............Error! Bookmark not defined.

Page 15: query expansion pada sistem temu kembali informasi ...
Page 16: query expansion pada sistem temu kembali informasi ...

BAB 1 PENDAHULUAN

1.1. Latar Belakang

Perkembangan teknologi informasi pada dunia maya saat ini merupakan salah satu masalah utama dalam mengakses dan mencari informasi yang lebih berguna dan lebih selektif. Menurut (Warsita, 2008) mengenai teknologi informasi yaitu sarana dan prasarana untuk memperoleh, menafsirkan, menyimpan, dan menggunakan data secara bermakna. Namun masalah dalam pencarian informasi tersebut lebih besar daripada sekedar mengakses informasi. Hal ini disebabkan oleh meningkatnya kebutuhan pengguna digital akan pencarian informasi yang lebih cepat dan lebih efisien. Banyaknya layanan sistem informasi yang menawarkan pencarian informasi lebih cepat sehingga menjadi salah satu cara yang ditawarkan bagi pengguna digital.

Banyaknya layanan sistem informasi pada dunia maya, salah satunya yaitu Twitter. Twitter merupakan salah satu media sosial yang membantu penggunanya mendapatkan berbagai informasi melalui postingan berbagai orang yang disebut kicauan (tweets) dengan jumlah karakter maksimal sebanyak 200 kata. Pengguna Twitter dari tahun ke tahun di berbagai negara mengalami peningkatan. Pengguna yang telah menggunakan Twitter maka akan memiliki hak akses untuk mendapatkan berbagai informasi yang ada di Twitter. Contohnya pada pengguna yang ingin mendapatkan informasi dari salah satu akun maka pengguna tersebut harus menjadi pengikut (follower) pada akun tersebut.

Dengan bertambahnya pengguna media sosial yang semakin diminati di kalangan masyarakat salah satunya yaitu Twitter. Twitter merupakan microblog yang didalamnya terdapat pengguna yang bisa mengirimkan pesan berisi kumpulan karakter yang disebut tweet. Banyaknya jumlah tweet yang dipost mengakibatkan bertambahnya jumlah data teks pada elektronik sangat besar, bertambahnya data tersebut mengakibatkan penumpukan data asli yang sangat besar yang belum diolah menjadi sebuat informasi. Sistem temu kembali informasi menawarkan solusi untuk permasalahan tersebut, dengan memanfaatkan teknik information retrieval. Salah satu teknik yang ada pada sistem temu kembali informasi dalam menemukan query expansion menggunakan metode pembobotan TF-IDF dan algoritme cosine similarity.

Perkembangan media sosial Twitter memberikan dampak pada pertukaran informasi dan komunikasi yang semakin mudah. Pertumbuhan media sosial Twitter ini juga mendorong adanya informasi tekstual yang sangat besar. Pengguna Twitter yang semakin meningkat ini terlihat dari jutaan tweet yang diposting setiap harinya dengan berbagai topik yang berbeda. Data tweet dapat berupa persepsi publik baik politik, ekonomi, perilaku sosial, fenomena alam serta perdagangan yang terjadi diseluruh dunia. Data tersebut dapat dijadikan

Page 17: query expansion pada sistem temu kembali informasi ...

objek penelitian. Penelitian ini melakukan query expansion pada query yang telah diinputkan pengguna. Data berupa tweet yang ada dalam situs tersebut . Koleksi dokumen terdiri atas 376 dokumen yang terdiri dari 10 query yang telah di tentukan sebelumnya, dimana dokumen tersebut diambil dari 20 top teratas dokumen yang relevan. Kemudian dokumen relevan tersebut telah di tentukan oleh pakar.

Sistem Temu Kembali Informasi atau Information Retrieval System yaitu bagian dari Ilmu Komputer yang berisi tentang pengambilan informasi dari beberapa dokumen yang berdasarkan pada isi dan konteks dokumen itu sendiri. Menurut Gerald J. Kowalski dalam bukunya β€œInformation Storage and Retrieval System Theory and Implementation”, sistem temu kembali informasi yaitu merupakan suatu sistem yang dapat melakukan penyimpanan, pencarian dan pemeliharaan sebuah informasi. Informasi didalamnya berisi sebuah teks (data numerik dan tanggal), audio, video, gambar dan objek multimedia lainnya.

Sistem temu kembali informasi memiliki tujuan untuk memberikan sebuah informasi yang relevan bagi pengguna. Dokumen-dokumen yang relevan dipengaruhi oleh query yang diberikan pengguna. Sebagian pengguna mengalami kesulitan untuk merepresentasikan informasi ke dalam query yang sesuai untuk melakukan pencarian sehingga user tidak mendapatkan dokumen yang sesuai dengan keinginan pengguna. Permasalahan tersebut memerlukan sebuah solusi untuk memperbaiki query yang di masukkan oleh pengguna yaitu query expansion. Ide yang digunakan yaitu mengubah query yang lebih relevan dengan cara menambah, membuang dan mengubah bobot tiap kata pada kueri.

Pada penelitian sebelumnya mengenai query expansion salah satunya bersumber pada penelitian yang dilakukan oleh (Pamungkas, Zanwar Yoga, 2015) dalam penelitiannya Query Expansion Pada Sistem Temu Kembali Informasi Dokumen Berbahasa Indonesia Menggunakan Pseudo Relevance Feedback. Hasilnya bahwa query expansion dapat berpengaruh terhadap nilai precision. Dari beberapa percobaan yang dilakukan, precision akan mengalami kenaikan nilai. Namun pada nilai recall cenderung tetap. Kenaikan nilai yang terjadi pada precision dan ketetapan nilai pada recall menyebabkan nilai f-measure meningkat. Hal ini disebabkan karena query semakin spesifik dan jumlah dokumen cenderung tetap. Penambahan jumlah kata akan menaikkan rangking dari dokumen yang relevan. Pada penelitian query expansion menggunakan pseudo relevance feedback menghasilkan kenaikan akurasi sebesar 0.17, dan kenaikan recall sebesar 0.03 dan kenaikan rata-rata sebesar 0.18. Namun, untuk pengembangan lebih lanjut tentang penelitian ini yaitu perlu diperhatikan dan pencarian metode lain dalam pemilihan kata baru sehingga kata yang di tampilkan dan dipilih oleh user semakin baik dan memiliki kesamaan yang tinggi dengan query awal user.

Pada penelitian yang dilakukan oleh (Rahayuni, 2011) dalam penelitiannya Ekspansi Kueri Pada Sistem Temu Kembali Informasi Berbahasa Indonesia Menggunakan Thesaurus. Hasilnya bahwa ekspansi kueri dengan thesaurus dapat

Page 18: query expansion pada sistem temu kembali informasi ...

meningkatkan hasil temu kembali informasi. Panjang ekspansi kueri mempengaruhi hasil temu kembali informasi dan semakin panjang ekspansi kueri yang diberikan maka dokumen yang ditemu kembali semakin tidak relevan. Penambahan kata thesaurus pada ekspansi kueri mempengaruhi hasil temu kembali. Pada evaluasi dokumen menggunakan nilai recall dan precision menggunakan ekspansi kueri menghasilkan temuan kembali dokumen yang relevan sebesar 100% dengan nilai average precision sebesar 0.076. Namun untuk pengembangan lebih lanjut mengenai penelitian ini diperlukan uji coba dengan menggunakan dokumen yang lebih beragam dan jumlah dokumen diperbanyak.

Terdapat berbagai macam metode yang sudah dilakukan sebelumnya dalam menentukan query expansion seperti beberapa uraian dan penelitian yang telah dilakukan sebelumnya, maka penelitian ini akan membangun sebuah sistem untuk menemukan informasi yang lebih akurat untuk user dengan memanfaatkan hiponim sebagai kata kunci berbasis WordNet untuk memperkaya query pengguna. WordNet yang digunakan pada penelitian sebelumnya merupakan WordNet berbahasa inggris dimana didalamnya terdapat synonim set (synset) (Li, et al., 016). Istilah hiponim dalam WordNet yang memiliki kedekatan dengan query diharapkan dapat untuk membangun query yang baru. Hasil dari query ini diharapkan dapat menghasilkan temu kembali yang lebih baik dalam pencarian dokumen dengan apa yang diinputkan oleh pengguna. Pada penelitian sebelumnya yang dilakukan oleh Firmansyah (2016) menggunakan sinonim pada kata awal dan di belakang kata awal, sedangkan pada penelitian ini akan menggunakan hiponim untuk memperkaya query.

Berdasarkan latar belakang tersebut, maka diajukan penelitian yang berjudul β€œQUERY EXPANSION PADA SISTEM TEMU KEMBALI INFORMASI BERBAHASA INDONESIA DENGAN METODE PEMBOBOTAN TF-IDF DAN ALGORITME COSINE SIMILARITY BERBASIS WORDNET”. diharapkan dengan adanya penelitian ini mampu membantu dan mempermudah pengguna media sosial Twitter dalam pencarian dan membaca sebuah tweet sesuai dengan kategori yang diinginkan.

1.2. Rumusan Masalah

Dari latar belakang yang telah dijabarkan sebelumnya, maka rumusan masalah yang dapat diperoleh pada penelitian ini adalah sebagai berikut :

1. Bagaimana menerapkan Query Expansion pada sistem temu kembali

informasi berbahasa indonesia dengan metode pembobotan TF-IDF dan algoritme Cosine Similarity bebasis WordNet dapat memberikan query pencarian yang lebih spesifik?

2. Bagaimana pengaruh penggunaan Query Expansion pada sistem temu

kembali informasi berbahasa indonesia dengan metode pembobotan TF-IDF dan algoritme Cosine Similarity bebasis WordNet?

Page 19: query expansion pada sistem temu kembali informasi ...

1.3. Tujuan

Dari rumusan masalah yang telah dijelasan sebelumnya, maka dapat diambil

tujuan yang dapat diperoleh dalam penelitian ini adalah sebagai berikut :

1. Menerapkan Query Expansion pada sistem temu kembali informasi

berbahasa indonesia dengan metode pembobotan tf-idf dan algoritme

Cosine Similarity bebasis WordNet dapat memberikan query pencarian yang

lebih spesifik.

2. Menguji serta menganalisis dari hasil Query Expansion pada sistem temu

kembali informasi berbahasa indonesia dengan metode pembobotan tf-idf

dan algoritme Cosine Similarity bebasis WordNet.

1.4. Manfaat

Manfaat yang diperoleh dari penelitian ini diantara lain :

1. Memberikan hasil pencarian yang lebih akurat sesuai dengan yang

diinginkan oleh pengguna.

2. Meningkatkan wawasan pembaca dari permasalahan query expansion.

3. Memberikan lebih banyak dokumen yang relevan.

4. Sebagai referensi untuk penelitian-penelitian query expansion selanjutnya

dengan substansi penelitiannya.

1.5. Batasan Masalah

Batasan masalah pada penelitian ini diantaranya :

1. Dokumen yang digunakan pada penelitian Query Expansion pada sistem temu kembali informasi berbahasa indonesia dengan metode pembobotan tf-idf dan algoritme Cosine Similarity bebasis WordNet adalah tweet berbahasa indonesia.

2. Jumlah data yang digunakan sebagai dataset berjumlah 376 tweet

3. Query Expansion yang digunakan adalah dengan mengambil synset dari WordNet.

4. WordNet yang digunakan sebagai acuan pengambilan hiponim adalah WordNet berbahasa inggris.

5. Hasil translate yang dilakukan sepenuhnya menggunakan Google Translate

API dan tidak dilakukan secara manual.

Page 20: query expansion pada sistem temu kembali informasi ...

1.6. Sistematika Pembahasan

Paba subbab ini akan diuraikan mengenai gambaran umum tentang apa

yang akan dibahas pada penelitian ini, dan diharapkan pembaca dapat

mengetahui poin penting dalam penelitian ini. Berikut adalah sistematika

pembahasan pada benelitian ini :

BAB I. Pendahuluan

Bab pendahuluan ini berisi tentang latar belakang masalah,

rumusan masalah, batasan masalah, tujuan dan manfaat serta

sistematika penulisan.

BAB II. Landasan Kepustakaan

Bab landasan kepustakaan berisi review dari beberapa penelitian

terdahulu yang sama atau mirip yang membahas tentang metode

pembobotan tf-idf dan algoritme Cosine Similarity bebasis

WordNet dan dasar teori yang berhubungan dengan topik

penulisan yang menjadi acuan dalam pembuatan sistem.

BAB III. Metodologi

Bab metodologi berisi tentang gambaran secara umum dari

metode yang dipakai untuk menyelesaikan masalah, teknik proses

pengumpulan data, studi literatur yang dipakai, perancangan dan

gambaran implementasi yang nantinya akan diterapkan, serta

pengujian dan analisis hasil, dan kesimpulan dari hasil penelitian.

BAB IV. PERANCANGAN

Bab perancangan ini akan menjelaskan tentang perancangan

penelitian yang terdiri dari perancangan data, perancangan

algoritme, perancangan antarmuka dan perancangan evaluasi

pengujian dari hasil ringkasan yang diperoleh.

BAB V. Implementasi

Bab ini akan menjelaskan tentang implementasi dari penelitian

yang dibuat berdasarkan perancangan yang telah dibahas

sebelumnya yang meliputi lingkungan implementasi sistem,

implementasi data, implementasi algoritme serta implementasi

antarmuka.

BAB VI. Pengujian Dan Analisis Hasil

Bab ini menjelaskan pengujian dan analisis dari hasil penelitian,

diantaranya pengujian parameter dan perhitungan akurasi dari

penelitian yang dilakukan.

Page 21: query expansion pada sistem temu kembali informasi ...

BAB VII. Penutup

Bab ini akan diuraikan tentang kesimpulan yang diperoleh dari

penelitian yang telah dilakukan yaitu penerapan metode

pembobotan tf-idf dan algoritme Cosine Similarity bebasis

WordNet. Serta adanya saran yang diharapkan dapat dijadikan

masukan bagi sistem yang telah dibuat untuk menjadi lebih baik

lagi.

Page 22: query expansion pada sistem temu kembali informasi ...

BAB 2 LANDASAN KEPUSTAKAAN

Landasan kepustakaan memuat penjabaran dan pembahasan mengenai

teori, konsep, model, dan atau sistem dari literatur ilmiah yang dilakukan

sebelumnya serta yang terkait dengan, Query expansion, Twitter, metode Tf-Idf

dan Algoritme Cosine Similarity, WordNet.

2.1 Kajian Pustaka Sistem Temu Kembali Informasi (Information Retrieval) merupakan proses

yang terkomputerisasi untuk menghasilkan dokumen yang relevan berdasarkan

input dari user melalui perbandingan antara query dari user dengan index yang

dihasilkan dari dokumen yang terdapat dalam information retrieval (Yugianus,

2013). Dokumen yang di representasikan oleh kata kunci, kata kunci tersebut

disebut juga index term. Index term adalah kata yang secara semantik

membantu user untuk mengetahui tema utama dari dokumen tersebut

(Yugianus, 2013). Dokumen yang diolah menggunakan Information Retrieval

dapat berupa teks, suara, gambar, atau data dan lain-lain. Koleksi data teks yang

dijadikan sumber pencarian juga dapat berupa teks, suara, gambar, dan lain-lain.

Pada penelitian sebelumnya yang digunakan berasal dari beberapa jurnal

penelitian, guna untuk memperkuat dalam pemecahan masalah penelitian yang

akan dilakukan pada skripsi ini. Penelitian sebelumnya yang berjudul, β€œQuery

Expansion Pada Sistem Temu Kembali Informasi Dokumen Berbahasa Indonesia

Menggunakan Pseudo Relevance Feedback”. Dalam penelitian tersebut, metode

yang digunakan ialah Rocchio Relevance Feedback, yang digunakan untuk

menentukan kata atau term dan Pseudo Relevance Feedback, yang digunakan

untuk mengambil dokumen teratas yang kemudian akan dijadikan saran untuk

user. Hasil pengujian akurasi yang didapatkan, ialah dengan menggunakan

Pseudo Relevance Feedback sebesar 17% (Pamungkas, Zanwar Yoga, dkk, 2015).

Penelitian yang dilakukan sebelumnya juga membahas tentang beberapa metode lain yang digunakan pada Relevance Feedback. Penelitian tersebut berjudul, β€œRelevance Feedback Pada Temu-Kembali Teks Berbahasa Indonesia Dengan Metode Ide-Dec-Hi Dan Ide-Regular”. Pada penelitian tersebut dilakukan pengimplementasian dan analisis pada kinerja perluasan kueri dengan beberapa metode dari Relvance Feedback, yaitu Ide-Dec-Hi dan Ide-Regular. Hasil penelitian tersebut menunukkan adanya pengingkatan kinerja pada sistem temu kembali, karena dengan menggunakan metode Ide-Dec-Hi meningkat hingga 15.44% dan dengan menggunakan metode Ide-Regular peningkatan yang diperoleh mencapai 14.54%. Dengan adanya penelitian tersebut telah terbukti bahwa penggunaan metode Relevance Feedback cocok untuk perluasan kueri, (Adisantoso, Julio, dkk, 2006).

Page 23: query expansion pada sistem temu kembali informasi ...

2.2. Dasar Teori

2.2.1. Query Expansion Definisi Query Expansion secara umum merupakan suatu teknik untuk

menambahkan query pada information retrieval dalam teknik relevance feedback. Query awal akan ditambahkan dengan beberapa term atau kata pada query untuk memberikan kemudahan dalam proses informarion retrieval. Teknik ini digunakan untuk memodifikasi query agar memenuhi kebutuhan informasi yang dibutuhkan oleh user. Proses penambahan query dengan mencari sinonim dalam bentuk unstemmed-term dari query. Menurut (Manning et.al.2009) penambahan input pada koleksi dokumen yang diberikan dengan memberi tanda pada dokumen yang dianggap relevan. Selanjutnya input ini digunakan untuk memperbaiki query yang telah diberikan user. Dalam query expansion user memberikan input tambahan pada query awal berupa kata maupun frase.

2.2.2. Sistem Temu Kembali Informasi Temu Kembali Informasi dimulai dengan penyediaan beberapa koleksi

dokumen yang akan digunakan. Dengan menggunakan operasi teks akan diproses menjadi suatu berkas inverted index. Menurut (Rijsbergen, 1979) dalam (Rusidi,2008) Information Retrieval System tidak menyatakan bahwa terdapat masalah. Sistem tersebut hanya memberitahukan keterangan yang ada keterkaitannya dengan dokumen permintaan pengguna. Dalam proses awal temu kembali informasi, pengguna diminta merepresentasikan ulang kebutuhan dala bentyk query. Selanjutnya query akan diproses dengan operasi serupa seperti pada koleksi dokumen. Query yang telah diproses menghasilkan dokumen hasil temu kembali.

2.2.3. Twitter Twitter merupakan salah satu media sosial yang unik, yang mana didalamnya

para pengguna dapat mengirimkan dan menerima pesan singkat dengan panjang maksimal 200 karakter yang disebut dengan tweet (O’Reilly & Milstein, 2009). Tweet yang muncul pada halaman beranda tiap pengguna berbeda karena adanya sistem follow dan following, sistem ini akan menampilkan tweet dari pengguna lain yang di follow, sedangkan following terhadap suatu akun akan memunculkan tweet akun tersebut pada timeline followers (sebutan untuk orang yang mengikuti suatu akun).

Fitur – fitur yang terdapat pada twitter, diantaranya adalah (O’Reilly & Milstein, 2009)

1. Halaman Utama (Home) Pada halaman utama pengguna dapat melihat tweets yang diposting atau

dikirmkan oleh pengguna lain yang telah kita follow. Halaman utama dari

tiap pengguna berbeda tergantung akun yang difollow.

2. Profil (Profile) Pada halaman ini pengguna dapat melihat profil atau data diri pribadi. Selain itu pada halaman ini pengguna dapat melihat tweets yang telah dikirim atau dibuat sebelumnya

Page 24: query expansion pada sistem temu kembali informasi ...

3. Followers

Followers atau pengikut adalah orang yang telah menjadikan kita sebagai teman dan berlangganan tweets kita. Tweets orang yang di follow akan ditampilkan pada halaman utama.

4. Following

Following merupakan kebalikan dari followers. Proses following adalah dengan mengikuti pengguna lain. Tweets dari pengguna yang difollow akan muncul pada halaman utama

5. Favorite

Merupakan fungsi untuk menandai tweets sebagai favorit kita sehingga tidak akan hilang pada halaman sebelumnya.

6. Mentions

Fungsi mentions adalah untuk menandai pengguna yang sedang atau akan diajak bicara, sehingga tweets atau balasan percakapan bisa menuju pengguna yang dimaksud.

7. Pesan langsung (Direct Message)

Fungsi ini memungkinkan pengguna untuk melakukan pengiriman pesan secara personal, cara kerjanya hampir sama dengan SMS . Pesan hanya dapat dilihat oleh orang yang dialamati untuk dikirim pesan.

8. Hashtag

Hashtag atau yang bisa disimbolkan dengan β€œ#” merupakan fitur yang dituliskan di depan sebuah topik tertentu dalam tweets. Bertujuan agar pengguna lain dapat mencari topik yang sejenis yang ditulis oleh pengguna lain. Hashtag tidak dapat digunakan sebagai acuan untuk klasifikasi tweet karena hanya akan menampilkan data yang ada pada hashtag tersebut saja.

9. Topik Terkini (Trending Topic)

Merupakan salah satu fitur yang ada pada twitter yang cara kerjanya tertentu dan bersamaan.

10. List Fitur ini menyediakan kemampuan bagi pengguna untuk mengelompokkan pengguna yang mereka follow (following) kedalam suatu grup atau kelompok. Tujuan dari pengolompokan agar memudahkan pengguna untuk dapat melihat secara keseluruhan username yang telah diikuti

Page 25: query expansion pada sistem temu kembali informasi ...

2.2.4. Hiponim Hiponim merupakan salah satu relasi antar kata yang mana satu kata

merupakan bentuk khusus dari kata umum (subordinate) (Miller, et al., 1993) . Contohnya adalah kata burung camar merupakan hipernim dari burung. Maksudnya adalah kata burung camar merupakan salah satu dari jenis burung.

2.2.5. Google Translate API Google Translate API merupakan salah satu dari Cloud Machine Learning

yang dapat digunakan secara gratis (freeware). Google Translate API bekerja

secara dinamis, mampu melakukan translasi dari ratusan bahasa(Google Cloud

Platform, 2018) .

2.2.6. WordNet WordNet adalah sebuah kamus yang merupakan pengembangan dari

kamus kata Thesaurus, dikembangkan oleh Universitas Princeton dan berisi pemodelan leksikal Bahasa Inggris. Didalam WordNet terdapat synset (synonym set), didalamnya terdapat kata – kata yang memiliki keterkaitan dan relasi semantic dalam berbagai kategori kata seperti kata benda, kata kerja, kata sifat, dan kata keterangan (Zhang, et al., 2009). Dalam synset satu kata dengan kata lainnya dapat saling menggantikan tanpa merusak atau mengubah makna dari kalimat dalam satu konteks tertentu.

Dengan menggunakan wordNet yang merupakan sebuah kamus kata yang telah di-expert maka dapat dilakukan penambahan query untuk memperbaiki sebuah teks tertentu sehingga sesuai dengan konsep kalimat tertentu (Zhang, et al., 2009) . Pada penelitian iini akan digunakan synset berupa relasi kata hiponim untuk ditambahkan kedalam query.

2.2.7. Preprocessing Dokumen-dokumen yang ada kebanyakan tidak memiliki struktur yang pasti

sehingga informasi di dalamnya tidak bisa diekstrak secara langsung dan tidak

semua kata mencerminkan makna/isi yang terkandung dalam sebuah dokumen.

Preprocessing diperlukan untuk memilih kata yang akan digunakan sebagai

indeks. Indeks ini adalah kata-kata yang mewakili dokumen yang nantinya

digunakan untuk membuat pemodelan untuk Information Retrieval maupun

aplikasi text mining lain.Singkatnya Preprocessing adalah merubah teks menjadi

term index yang bertujuan untuk menghasilkan sebuah set term index yang bisa

mewakili dokumen. Ada beberapa langkah dalam menerapkan preprocessing

yakni :

1. Parsing

Proses awal disini dilakukan pemecahan struktur dokumen menjadi

komponen yang terpisah, singkatnya adalah menentukan mana yang akan

dijadikan satu dokumen. Contohnya buku dengan 500 halaman bisa dipecah

menjadi 500 dokumen, dimana per halaman dikelompokkan menjadi 1

dokumen.

Page 26: query expansion pada sistem temu kembali informasi ...

2. Lexical Analysis atau Tokenisasi

Pada proses ini dilakukan penghilangan angka, tanda baca dan karakter

selain huruf alfabet, karena karakter-karakter tersebut dianggap sebagai

pemisah kata (delimiter) dan tidak memiliki pengaruh terhadap

pemrosesan teks. Serta perubahan semua kata menjadi kata dengan awalan

huruf kecil. Proses tokenisasi akan digambarkan pada Gambar 2.1 di bawah

ini.

Gambar 1. Contoh proses tokenisasi

3. Stopword Removal atau Filtering

Merupakan tahap pengambilan dari hasil token, yaitu kata-kata

apa saja yang akan digunakan untuk merepresentasikan dokumen.

Stoplist atau stopwordadalah kata-kata yang tidak deskriptif (tidak

penting) yang dapat dibuang dengan pendekatan bag-of-words.

Gambar 2. Contoh proses filtering

4. Stemming

Proses pengubahan dari suatu kata menjadi kata dasar, dimana setiap

kata yang berimbuhan akan berubah menjadi kata dasar. Proses ini

nantinya tidak digunakan karena berdasarkan penelitian sebelumnya.

Fitur tanpa stemming memberikan akurasi lebih baik, ini menunjukkan

bahwa penciri berita hoax ditentukan secara leksikal (Rasywir &

Purwarianti, 2015: 8). Leksikal adalah suatu makna yang nyata dalam

kehidupan kita, jadi makna leksikal adalah arti sebenarnya yang

dijelaskan oleh kata tersebut. Sebuah kata yang memiliki makna leksikal

Walikota surabaya

meresmikan area

parkir di taman

bungkul

Mahasiswa brawijaya

melakukan kegitan

amal di desa terpencil

dan kurang mampu

walikota

surabaya

meresmikan

area

parkir

di

taman

bungkul

walikota surabaya meresmikan area parkir di taman bungkul

walikota surabaya meresmikan area parkir taman bungkul

Page 27: query expansion pada sistem temu kembali informasi ...

sudah jelas bahwa tanpa konteks pun memiliki referen atau makna

langsung (Chaer, 2013: 59).

4.1 Stemmer Sastrawi

Sastrawi stemmer merupakan salah satu library untuk melakukan

proses stemming. Stemmer ini dibuat sesederhana mungkin agar

mempermudah dalam penggunaannya(Librian, 2016).

Stemmer sastrawi memiliki beberapa aturan dalam melakukan

proses stemming, berikut akan dituliskan aturan stemming sastrawi pada

Table 1 dibawah ini.

Tabel 1. Aturan Stemmer Sastrawi

No Aturan Contoh

1a berV -> ber + V Beradu -> adu

1b berV -> be + rV Berambut -> rambut

2 berCAP -> ber + CAP Bersuara -> suara

3 berCAerV -> ber + CAerV (C

!= β€œr”)

Berdaerah -> daerah

4 Belajar -> bel + ajar Belajar -> ajar

5 beC1erC2 -> be-C1erC2

(C1 ! = { β€˜r’ | l } )

Bekerja -> kerja

Beternak -> ternak

6a terv -> ter + V Terasing -> asing

6b terV -> te + rV Teraup -> raup

7 terCerV -> ter + CerV (C !=

β€œr”)

Tergerak -> gerak

8 terCP -> ter-CP where C !=

'r' and P != 'er'

Terpuruk -> puruk

9 teC1erC2 -> te-C1erC2

where C1 != 'r'

Teterbang -> terbang

10 me{l|r|w|y}V -> me-

{l|r|w|y}V

Melipat-> lipat

Meringkas-> ringkas

Mewarnai -> warna

11

mem{b|f|v} -> mem-

{b|f|v}

Membangun-> bangun

Memfitnah -> fitnah

Page 28: query expansion pada sistem temu kembali informasi ...

No Aturan Contoh

Memvonis -> vonis

12 mempe{r|l} -> mem-pe Memperbarui -> baru

Mempelajari -> ajar

13a mem{rV|V} -> mem{rV|V} Meminum -> minum

13b mem{rV|V} -> me-p{rV|V} Memukul -> pukul

14 men{c|d|j|z} -> men-

{c|d|j|z}

Mencinta -> cinta

Mendua -> dua

Menjauh –> jauh

15 men{V} -> me-t{V} Menangkap –> tangkap

16 meng{g|h|q} -> meng-

{g|h|q}

Menggila -> gila

Menghajar -> hajar

Mengqasar -> qasar

17a mengV -> meng-V Mengudara-> udara

17b mengV -> meng-kV Mengupas -> kupas

Tabel 2 Aturan Stemmer Sastrawi (Lanjutan)

No Aturan Contoh

18 menyV -> meny-sV Menyuarakan -> suara

19 mempV -> mem-pV where V

!= 'e'

Mempopulerkan -> popular

20 pe{w|y}V -> pe-{w|y}V Pewarna -> warna

21a perV -> per-V Peradilan -> adil

21b perV -> pe-rV Perumahan -> rumah

23 perCAP -> per-CAP where C

!= 'r' and P != 'er'

Permuka -> muka

24 perCAerV -> per-CAerV

where C != 'r'

Perdaerah -> daerah

Page 29: query expansion pada sistem temu kembali informasi ...

No Aturan Contoh

25 pem{b|f|v} -> pem-{b|f|v} Pembangun -> bangun

Pemfitnah -> fitnah

26a pem{rV|V} -> pe-m{rV|V} Peminum -> minum

26b em{rV|V} -> pe-p{rV|V} Pemukul-> pukul

27 men{c|d|j|z} -> men-

{c|d|j|z}

Pecinta -> cinta

28a pen{V} -> pe-n{V} Penasihat -> nasihat

28b pen{V} -> pe-t{V} Penangkap -> tangkap

29 peng{g|h|q} -> peng-

{g|h|q}

Penggila -> gila

30a pengV -> peng-V Pengudara -> udara

30b pengV -> peng-kV Pengupas -> kupas

31 penyV -> peny-sV Penyuara -> suara

32 pelV -> pe-lV except pelajar

-> ajar

Pelajar -> ajar

33 peCerV -> per-erV where C

!= {r|w|y|l|m|n}

34 peCP -> pe-CP where C !=

{r|w|y|l|m|n} and P != 'er'

Petarung ->tarung

35 terC1erC2 -> ter-C1erC2

where C1 != 'r'

Terpercaya -> percaya

36 peC1erC2 -> pe-C1erC2

where C1 != {r|w|y|l|m|n}

Pekerja -> kerja

Sumber:

https://github.com/sastrawi/sastrawi/blob/master/tests/SastrawiFunctionalTest

/Stemmer/StemmerTest.php#L49

Selain aturan –aturan diatas, terdapat juga aturan modifikasi terhadap

aturan yang tercantum ditabel.Hal ini dikarenakan Bahasa Indonesia lebih

kompleks dibandingkan dengan Bahasa lainnya.

Page 30: query expansion pada sistem temu kembali informasi ...

2.2.8. Pembobotan Term Frequency-inverse Document Frequency (TF-IDF)

Algoritme Term Frequency-Inverse Document Frequency (TF-IDF)

merupakan algoritme yang digunakan untuk menghitung bobot suatu kata (term)

masing-masing dokumen terhadap kata kunci. Term frequency (tf) adalah

frekuensi dari kemunculan sebuah term dalam dokumen yang bersangkutan,

sedangkan Inverse document frequency (idf) merupakan suatu statistik yang

mengkarakteristikkan sebuah term dalam keseluruhan koleksi dokumen. Dan

Document Frequency (DF) merupakan banyaknya dokumen dimana suatu kata

tertentu muncul. TF merupakan pembobotan yang sederhana dimana penting

tidaknya sebuah kata diasumsikan sebanding dengan jumlah kemunculan kata

tersebut dalam dokumen, sementara IDF adalah pembobotan yang mengukur

seberapa penting sebuah kata dalam dokumen. Nilai pembobotan TF x IDF akan

tinggi jika nilai TF besar dan kata yang diamati tidak ditemukan di banyak

dokumen. Maka untuk mencari nilai TF-IDF menggunakan Persamaan 2.1 sebagai

berikut :

a. Term Frequency (TF)

π‘Šπ‘‘π‘“π‘‘,𝑑= {

1 + π‘™π‘œπ‘”10𝑑𝑓𝑑,𝑑, 𝑖𝑓 𝑑𝑓𝑑,𝑑 > 0

0, π‘œπ‘‘β„Žπ‘’π‘Ÿπ‘€π‘–π‘ π‘’ (2.1)

Keterangan :

π‘Šπ‘‘π‘“π‘‘,𝑑 = Frekuensi kemunculan kata t dalam dokumen d

b. Inverse Document Frequency (IDF)

𝑖𝑑𝑓𝑑 = π‘™π‘œπ‘”10 𝑁/𝑑𝑓𝑑 (2.2)

Keterangan:

𝑑𝑓𝑑 = Banyak dokumen yang memuat

𝑁 = jumlah total dokumen

c. TF.IDF Weighting

π‘Šπ‘‘,𝑑 = π‘Šπ‘‘π‘“π‘‘,𝑑 π‘₯ 𝑖𝑑𝑓𝑑 (2.3)

Normalisasi

π‘Šπ‘‘,𝑑 = π‘Šπ‘‘,𝑑

βˆšβˆ‘ π‘Šπ‘‘,𝑑2𝑛

𝑑=1

(2.4)

2.2.9. Ukuran Kemiripan Pada pengukuran kemiripan dokumen yaitu menggunakan cosine similarity.

Pengukuran ini digunakan untuk menghitung nilai sudut cosinus antara dua

Page 31: query expansion pada sistem temu kembali informasi ...

vektor yang merepresentasikan dokumen dan query. Nilai cosinus antara

dokumen dan query didefinisikan sebagai berikut:

Tanpa normalisasi:

πΆπ‘œπ‘ π‘†π‘–π‘š(𝑑𝑗 , π‘ž) = �⃗�𝑗 .οΏ½βƒ—βƒ—οΏ½

|�⃗�𝑗| . |οΏ½βƒ—βƒ—οΏ½|=

βˆ‘ (𝑑𝑖=1 π‘Šπ‘–π‘— .π‘Šπ‘–π‘ž)

βˆšβˆ‘ π‘Šπ‘–π‘—2 . βˆ‘ π‘Šπ‘–π‘ž

2𝑑𝑖=1

𝑑𝑖=1

(2.5)

Dengan normalisasi berdasarkan persamaan sebelumnya:

πΆπ‘œπ‘ π‘†π‘–π‘š(𝑑𝑗 , π‘ž) = 𝑑𝑗 . οΏ½βƒ—οΏ½ = βˆ‘ (𝑑𝑖=1 π‘Šπ‘–π‘— .π‘Šπ‘–π‘ž) (2.6)

Keterangan :

𝑑𝑗 = Data Latih

π‘ž = Data Uji

π‘Šπ‘–π‘— = Nilai pembobotan kata pada dokumen latih

π‘Šπ‘–π‘ž = Nilai pembobotan kata pada dokumen uji

2.2.10. Evaluasi Pengujian Pengujian dan analisis merupakan tahap terakhir dari pembuatan sistem.

Pengujian dilakukan untuk mengetahui jika sistem yang dibuat sudah sesuai

dengan kebutuhan yang telah didefinisikan sebelumnya. Pengujian akan

dilakukan dengan menghitung Precission at K (P@k) untuk mengukur ketepatan

sistem dalam menemukan dokumen yang relevan sesuai dengan masukan yang

diberikan pengguna.

2.2.10.1. Precision at K (P@K) Precision adalah perbandingan jumlah dokumen relevan yang ditemukan

kembali dengan seluruh dokumen yang dianggap relevan. Precision at K

menghitung nilai presisi dalam jumlah top-k dokumen. Misal 8 dari top 10 hasil

pencarian relevan dengan kebutuhan informasi pengguna, maka nilai presisinya

sebesar 0,8 atau 80%. Rumus Precision at K dituliskan secara matematis dalam

persamaan dibawah ini.

Precision@K = π’‹π’–π’Žπ’π’‚π’‰ π’…π’π’Œπ’–π’Žπ’†π’ 𝒓𝒆𝒍𝒆𝒗𝒂𝒏 π’…π’‚π’π’‚π’Ž 𝒕𝒐𝒑 π’Œ

π’‹π’–π’Žπ’π’‚π’‰ 𝒔𝒆𝒍𝒖𝒓𝒖𝒉 π’…π’π’Œπ’–π’Žπ’†π’ π’…π’‚π’π’‚π’Ž π’Œ

Page 32: query expansion pada sistem temu kembali informasi ...

BAB 3 METODOLOGI

Pada bab ini, metodologi yang dilakukan dalam penelitian ini akan dijelaskan

melalui beberapa subbab yaitu tipe penelitian, strategi penelitian, partisipan

penelitian, lokasi penelitian, teknik pengumpulan data, implementasi algoritme

dan jadwal penelitian.

3.1. Tipe Penelitian Pada penelitian ini merupakan tipe penelitian nonimplementatif. Tipe

penelitian nonimplementatif memfokuskan investigasi terhadap fenomena atau situasi tertentu, atau analisis terhadap hubungan antar fenomena yang sedang di kaji untuk kemudian menghasilkan hasil investigasi atau hasil analisis ilmiah sebagai produk atau artefak utamanya. Pendekatan dalam penelitian menggunakan pendekatan analitik. Pendekatan analitik merupakan sebuah kegiatan penelitian nonimplementatif yang dilakukan untuk menjelaskan derajat hubungan antar elemen dalam objek penelitian dengan fenomena atau situasi tertentu yang sedang diteliti. Produk atau artefak utamanya yang dihasilkan adalah analisis hasil.

3.2. Strategi Penelitian Strategi penelitian ini termasuk penelitian yang menggunakan metode

eksperimen. Penelitian eksperimen adalah penelitian yang berusaha mencari pengaruh variable tertentu terhadap variable yang lain dalam kondisi yang terkontrol secara ketat dan umumnya dilakukan di laboratorium. Metode eksperimen yang digunakan dalam penelitian ini yaitu menggunakan pembobotan tf-idf dan algoritme cosine similarity.

3.3. Partisipan Penelitian Pada penelitian ini ada beberapa pihak partisipan yang terlibat, yaitu penilus-

penulis pada aku Twitter. Dan partisipan selanjutnya ialah seorang pakar dari LSO

Display Filkom Universitas Brawijaya yang melakukan penilaian terhadap

dokumen-dokumen yang ditampilkan dalam suatu query yang diinputkan.

Penilaian berupa pemilihan dokumen yang relevan maupun tidak relevan hasil

dari inputan query.

3.4. Lokasi Penelitian Penelitian ini tidak memiliki lokasi khusus, melainkan dilakukan pada situs

Twitter yang dapat diakses melalui web sehingga tidak memiliki lokasi khusus

untuk penelitian yang dilakukan. Namun selama proses pembelajaran yang

dilakukan berada di Fakultas Ilmu Komputer (FILKOM) Universitas Brawijaya

Malang.

Page 33: query expansion pada sistem temu kembali informasi ...

Mulai Dokumen

tweets

Preprocessing

Tokenisasi + Filtering +

stemminStemming

Dataset

Query expansion

WordNet

Dokumen

tweets

Selesai

Google Translate API

Dataset (Bahasa

Inggris)

Translasi

Inggris-> Indonesia

3.5. Pengumpulan Data Teknik pengumpulan data didapatkan dati akun media sosial Twitter. Data

berupa tweets yang ada dalam situs tersebut. Nantinya berita tersebut akan

dilakukan proses query expansion dan dokumen relevan maupun tidak yang telah

ditentukan oleh pakar.

3.6. Perancangan Algoritme Pada tahap ini merupakan tahap perancangan algoritme yang akan digunakan

dalam penelitian ini. Akan dijabarkan alur dan proses serta langkah – langkah

dari algoritme tersebut. Selain itu pada tahap perancangan algoritme akan

menggambarkan jalannya algoritme yang digunakan.

Translasi Indonesia -> Inggris

3.7. Teknik Pengujian dan Analisis Pengujian akan dilakukan dengan menguji hasil kerja sistem yang dibuat dan

dilakukan evaluasi sistem. Proses tersebut dilakukan guna mengetahui hasil

sistem yang nantinya akan digunakan sebagai penarikan kesimpulan. Pengujian

dilakukan dengan dengan precision@K .

Tujuan analisis juga melihat apakah penelitian sudah mencapai tujuan yang

diinginkan.

Gambar 1. Perancangan Algoritme

Page 34: query expansion pada sistem temu kembali informasi ...

3.8. Penarikan kesimpulan dan saran Penarikan kesimpulan didapatkan setelah proses pengujian pada sistem

selesai dikerjakan sehingga nantinya akan dapat diketahui efektifitas kinerja pada

sistem. Selain itu kesimpulan juga merupakan jawaban dari rumusan masalah

yang dibahas sebelumnya.

Sedangkan pada saran digunakan untuk membantu pengembangan pada

seistem selanjutnya, agar penelitian mengenai query expansion dapat tereksplor

lebih baik lagi.

3.9. Jadwal Penelitian

Penelitian ini akan dilaksanakan terhitung sejak bulan Februari hingga Juni

mendatang. Berikut adalah jadwal penerlitian yang akan di tampilkan dalam

Tabel 4

Tabel 1. Jadwal Penelitian

No Uraian

Februari Maret April Mei Juni

Minggu ke-

1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3

1 Studi Kepustakaan

2 Pengumpulan Data

3 Implementasi Algoritme

4 Pengujian dan Analisis

5 Kesimpulan dan Saran

Page 35: query expansion pada sistem temu kembali informasi ...

BAB 4 PERANCANGAN ALGORITMA

4.1 Deskripsi Masalah Perkembangan zaman pada saat ini membuat pengguna internet terutama pengguna media sosial semakin meningkat dan tersebar luas. Banyaknya media online yang dapat memuat beragam berita online seperti olahraga, hiburan, politik, dan lain sebagainya. Namun tidak semua pengguna internet dapat mengakses dan mencari informasi yang lebih berguna dan lebih selektif. Padahal jika pengguna internet lebih cerdas dalam menentukan informasi yang berguna dan selektif maka akan meningkatkan dan mengembangkan dalam berbagai bidang seperti bisnis, ilmu pengetahuan dan sosial dan pendidikan. Hal ini menyebabkan pengguna internet maupun pengguna media sosial semakin diminati dalam pencarian informasi. Salah satunya Twitter yang mengalami pertambahan jumlah pengguna setiap tahunnya. Twitter merupakan saah satu jenis microblog yang dimana penggunanya dapat mengirimkan pesan berisi beberapa kumpulan karakter yang disebut dengan tweet. Bertambahnya jumlah tweet yang diposting oleh pengguna semakin memberikan kemudahan pengguna dalam pencarian sebuah informasi, namun tidak semua pengguna dapat memasukkan query yang sesuai. Query yang tidak sesuai inilah yang akan dijadikan sebuah penelitian dengan memperkaya query yaitu query expansion menggunakan pembobotan kata tf-idf dan algoritme cosine similarity menggunakan thesaurus. Algoritme Term Frequency-Inverse Document Frequency (TF-IDF) merupakan algoritme yang digunakan untuk menghitung bobot suatu kata (term) masing-masing dokumen terhadap kata kunci. Term frequency (tf) adalah frekuensi dari kemunculan sebuah term dalam dokumen yang bersangkutan, sedangkan Inverse document frequency (idf) merupakan suatu statistik yang mengkarakteristikkan sebuah term dalam keseluruhan koleksi dokumen. Dan Document Frequency (DF) merupakan banyaknya dokumen dimana suatu kata tertentu muncul. TF merupakan pembobotan yang sederhana dimana penting tidaknya sebuah kata diasumsikan sebanding dengan jumlah kemunculan kata tersebut dalam dokumen, sementara IDF adalah pembobotan yang mengukur seberapa penting sebuah kata dalam dokumen. Algoritme cosine similarity digunakan pada sistem agar dapat mengetahui dokumen mana yang paling mendekati keinginan pengguna. Sehingga pengguna mendapatkan dokumen sesuai dengan query yang diinputkan oleh pengguna. Maka diperlukan suatu perhitungan kemiripan dokumen menggunakan fungsi similarity. Semakin besar nilai similairy semakin besar tingkat kemiripan antara query dengan dokumen yang diinginkan oleh pengguna.

4.2. Deskripsi Umum Sistem Alur kerja sistem yang akan dibangun bertujuan untuk menghasilkan query

expansion. Dimana proses ekspansi kata akan dilakukan dengan cara menghitung

Page 36: query expansion pada sistem temu kembali informasi ...

bobot kata dan jumlah frekuensi kemunculan kata untuk pemilihan kata yang akan digunakan sebagai penambahan term. Dokumen dan query sebelumnya dilakukan proses preprocessing agar mendapatkan term yang sudah dihilangkan tanda baca, angka, imbuhan, dan kata yang dianggap tidak penting oleh sistem. Proses ekspansi kata hanya dilakukan pada query yang diinputkan , sedangkan hasil dari query expansion berasal dari hiponim dari query yang diinputkan. Setelah mendapatkan query expansion maka akan menghasilkan beberapa dokumen yang sudah mendaptkan query expansion dan dokumen yang relevan.

4.3. Diagram Alir Sistem Pada diagram alir yang menggambarkan perancangan sistem, terdapat

tiga proses utama yaitu preprocessing, proses penambahan query (query expansion), dan proses Dari ketiga proses utama tersebut terdapat proses-proses didalamnya yang akan didetailkan. Secara keseluruhan proses yang akan berjalan dapat digambarkan sebagaimana Gambar 3.

Langkah pertama ada mengambil data yang akan digunakan sebagai data uji.

Selanjutya query expansion untuk menambahkan query asli dengan kata yang

Mulai

Data Latih dan Uji

Preprocessing

Query expansion pada data

uji

Selesai

Hasil Dokumen

Cosine

Similarity

Gambar 1. Diagram Alir Sistem

Page 37: query expansion pada sistem temu kembali informasi ...

merupakan hiponim menggunakan metode query expansion. Lalu semua data

akan mengalami proses preprocessing, pada tahap ini bertujuan untuk

menyiapkan teks yang akan diproses lebih lanjut. Didalam proses preprocessing

dataset yang berupa teks akan dihilangkan kata yang tidak penting (stopword)

kemudian juga dilakukanproses penghilangan kata imbuhan agar menjadi bentuk

kata dasarnya, selain itu juga menghilangkan tanda baca yang tidak akan

digunakan sebagai fitur pada penelitian ini. Proses selanjutnya adalah melakukan

perhitungan ukuran kemiripan dengan cosine similarity setelah itu mengahsilkan

dokumen yang relevan.

Berikut ini diagram alir proses query expansion. Proses ini memerlukan

Wordnet sebagai kamus yang berisi hiponim , dari Wordnet akan diambil

hiponim dari kata. Selanjutnya adalah diagram alir dari proses Query Expansion

yang akan diambarkan pada Gambar 4.

Query Expansion Mulai

Query

Penambahan Hiponim

Output: dokumen

dengan penambahan

query

Selesai

Pencarian Hiponim

Preprocessing

Pembobotan tf-idf

Cosine Similarity

Gambar 2. Diagram alir Query Expansion

Page 38: query expansion pada sistem temu kembali informasi ...

Pada Gambar 4. proses dimulai dengan dokumen yang telah melalui tahap

penambahan query dengan menambahkan hiponim dari kata. Selanjutnya proses

preprocessing untuk mengolah data teks agar lebih terstruktur. Lalu perhitungan

kemiripan menggunakan perhitungan cosine similarity. Terakhir dokumen yang

lebih relevan sesuai dengan hasil penambahan query expansion.

Berikut ini adalah diagram alir dari proses preprocessing yang akan

digambarkan pada Gambar 5.

Preprocessing Mulai

Dokumen

tweets

Tokenisasi

Filteringatau

penghapusan

stopword

Stemming

Selesai

Dokumen hasil preprocessing

Gambar 3. Diagram alir proses preprocessing

Page 39: query expansion pada sistem temu kembali informasi ...

Pada proses preprocessing tahapan yang dilakukan adalah tokenisasi, filtering

dan stemming.

Tahap preprocessing bertujuan untuk mengolah data teks yang sebelumnya

tidak terstruktur menjadi lebih terstruktur, masing – masing proses

preprocessing akan digambarkan dengan digram alir berikut.

t

Pada Gambar 6 menjelasakan alur dalam proses tokenisasi, data awal berupa .

Dokumen berisi kalimat yang kemudian akan dipecah menjadi potongan per

kata. Selain memotong kata juga dihilangkan tanda baca, pada proses ini juga

Tokenisasi Mulai

dokumen tweet

Selesai

Kalimat dipecah menjadi

kata per kata

Menghilangkan tanda baca

dan simbol-simbol

Mengubah awalan kata

menjadi huruf kecil

Output: dokumen

teks yang telah

menjadi potongan

per kata

Gambar 4. Diagram alir proses tokenisasi

Page 40: query expansion pada sistem temu kembali informasi ...

semua kata dirubah menjadi lower case atau menjadikan awalan tiap kata

menjadi huruf kecil. Hasil proses tokenisasi kemudian disimpan kembali menjadi

dokumen teks untuk selanjutnya diporses lebih lanjut.

Pada Gambar 7 menunjukkan proses filtering, setiap kata yang ada pada

dokumen secara loop dicek apakah kata tersebut masuk dalam

liststopword.Jikaada maka kata tersebut akan dihapus dari dokumen, jika tidak

FIltering

Mulai

Input: Dokumen

hasil tokenisasi

For word di Dokumen -1

i=0

Cek apakah kata

ada dalam list

stopword

Simpan Kata

Hapus kata

Output: Dokumen

hasil filtering

Selesai

i

Tidak

IyaT

rtranslasi

Indonesia ->Ingg

ris

Gambar 5. Diagram alir proses filtering

Page 41: query expansion pada sistem temu kembali informasi ...

maka kata tersebut akan disimpan kedalam dokumen baru untuk selanjutnya

akan diproses kembali.

Stemming Mulai

Input: dokumen hasil

filtering

Melakukan loop sebanyak

jumlah kata pada dokumen

i=1

Kata == kamus

Cek imbuhan pada

kata berdasarkan

aturan stemming

Ada imbuhan?

Hapus imbuhan

pada kata

i

Output:

dokumen hasil

stemming

Seles

i

Indonesia ->Inggris

Iya

ak

y

Iya

Iya

Gambar 6. Diagram alir porses stemming

Page 42: query expansion pada sistem temu kembali informasi ...

Pada Gambar 8, digambarkan proses stemming. Proses stemming

bertujuan untuk mengembalikan kata menjadi kata dasar, jika ada imbuhan

maka akan dihapuskan. Langkah pertama yang dilakukan adalalah mengecek

apakah kata ada dalam kamus, jika ada maka langsung disimpan, jika tidak ada

maka selanjutnya dicek apakah kata tersebut memiliki imbuhan, jika memiliki

imbuhan maka selanjutnya imbuhan tersebut dihapus dan kata disimpan.

4.4. Manualisasi Perhitungan Data Manualisasi dilakukan dengan menghitung dan mendapatkan nilai yang

nantinya menjadi acuan dan data untuk sistem yang akan dibangun. Manualisasi

dilakukan dengan dokumen latih yang digunakan sebagai acuan perhitungan data

uji.

4.4.1. Preprocessing Pada tahap preprocessing akan dilakukan beberapa tahapan yaitu case

folding, tokenisasi, filtering dan stemming. Hal ini dilakukan agar menghasilkan data yang lebih terstruktur sehingga mempermudah proses perhitungan. Pada tabel 5 menunjukkan data latih yang digunakan, dan pada tabel 6 menunjukkan data uji yang digunakan.

Tabel 1. Dokumen

Doc Isi

1 Contoh hewan yang tergolong dalam kelas reptil antara lain buaya, cicak, kadal, komodo.

2 Mengkonsumsi buah seperti mangga, jeruk, semangka, dan melon dapat mencukupi kebutuhan vitamin dalam tubuh.

3 Taman ini penuh dengan aneka macam pohon, di antaranya pohon mangga, pohon cemara.

4 Pak Untung menguasai hampir semua jenis olahraga seperti sepak bola, voli, basket, tenis, dan badminton.

5 Gunung Kidul menjadi surganya beragam pantai dengan keindahannya masing-masing, di antaranya pantai Siung, pantai Krakal, pantai Kukup

6 Sejak kecil kita harus mencukupi kebutuhan vitamin, di antaranya vitamin A, vitamin B, vitamin C, vitamin D, vitamin E dengan makan buah

7 Hewan reptil hidup di darat dan di laut

Tabel 2. Query

Doc Isi

1 Reptil

2 Buah

Page 43: query expansion pada sistem temu kembali informasi ...

4.4.1.1. Case Folding Tahapan case folding ialah proses yang dilakukan untuk mengubah semua huruf pada dokumen menjadi huruf kecil. Pada tabel 7 menunjukkan hasil setelah dilakukan case folding terhadap data latih dan pada tabel 8 menunjukkan hasil setelah dilakukan case folding pada data uji.

Tabel 3. Hasil Case Folding Dokumen

Doc Isi

1 contoh hewan yang tergolong dalam kelas reptil antara lain buaya, cicak, kadal, komodo.

2 mengkonsumsi buah seperti mangga, jeruk, semangka, dan melon dapat mencukupi kebutuhan vitamin dalam tubuh.

3 taman ini penuh dengan aneka macam pohon, di antaranya pohon mangga, pohon cemara.

4 pak untung menguasai hampir semua jenis olahraga seperti sepak bola, voli, basket, tenis, dan badminton.

5 gunung kidul menjadi surganya beragam pantai dengan keindahannya masing-masing, di antaranya pantai siung, pantai krakal, pantai kukup

6 sejak kecil kita harus mencukupi kebutuhan vitamin, di antaranya vitamin a, vitamin b, vitamin c, vitamin d, vitamin e dengan makan buah

7 hewan reptil hidup di darat dan di laut

Tabel 4. hasil Case Folding Query

Doc Isi

1 Reptil

2 Buah

4.4.1.2. Tokenisasi Tahapan tokenisasi dilakukan untuk menghapus karakter-karakter yang tidak perlu pada dokumen tersebut baik tanda baca, angka, atau karakter lainnya. Tabel 9 menunjukkan hasil tokenisasi pada data latih dan Tabel 10 menunjukkan tokenisasi pada data uji.

Tabel 5. Hasil Tokenisasi Dokumen

Doc Isi

1 contoh hewan yang tergolong dalam kelas reptil antara lain buaya cicak kadal komodo

2 mengkonsumsi buah seperti mangga jeruk semangka dan

Page 44: query expansion pada sistem temu kembali informasi ...

Tabel 6. Hasil Tokenisasi Query

Doc Isi

1 reptil

2 buah

4.4.1.3. Filtering Pada tahap ini dilakukan proses filtering yaitu penghapusan kata yang kurang penting sesuai dengan stopword. Tabel 11 menunjukkan hasil filtering pada data latih dan Tabel 12 menunjukkan hasil filtering pada data uji.

Tabel 7. Hasil Filtering Dokumen

melon dapat mencukupi kebutuhan vitamin dalam tubuh

3 taman ini penuh dengan aneka macam pohon di antaranya pohon mangga pohon cemara

4 pak untung menguasai hampir semua jenis olahraga seperti sepak bola voli basket tenis dan badminton

5 gunung kidul menjadi surganya beragam pantai dengan keindahannya masing masing di antaranya pantai siung pantai krakal pantai kukup

6 sejak kecil kita harus mencukupi kebutuhan vitamin di antaranya vitamin a vitamin b vitamin c vitamin d vitamin e dengan makan buah

7 hewan reptil hidup di darat dan di laut

Doc Isi

1 contoh hewan tergolong kelas reptil buaya cicak kadal komodo

2 mengkonsumsi buah mangga jeruk semangka melon mencukupi kebutuhan vitamin tubuh

3 taman penuh aneka macam pohon pohon mangga pohon cemara

4 pak untung jenis olahraga sepak bola voli basket tenis badminton

5 gunung kidul menjadi surganya beragam pantai keindahannya pantai siung pantai krakal pantai kukup

6 kecil mencukupi kebutuhan vitamin makan buah

7 hewan reptil hidup darat laut

Page 45: query expansion pada sistem temu kembali informasi ...

Tabel 8. Hasil Filtering Query

Doc Isi

1 Reptil

2 Buah

4.4.1.4. Stemming Pada tahap ini dilakukan proses merubah bentuk kata menjadi kata dasar. Tabel 13 menunjukkan hasil stemming pada data latih dan Tabel 14 menunjukkan hasil stemming pada data uji.

Tabel 9. Hasil Stemming Dokumen

Tabel 10. Hasil Stemming Query

Doc Isi

1 Reptil

2 Buah

4.4.2. Pembobotan Pada tahap ini akan dilakukan perhitungan pembobotan TF-IDF untuk

menghitung nilai kata.

4.4.2.1. Manualisasi tanpa Query Expansion Manualisasi yang akan dilakukan berikut ini adalah proses klasifikasi tweet

pada Twitter tanpa menerapkan Query Expansion. Proses tahap perhitungan tanpa Query Expansion menggunakan data latih pada tabel 15 Tabel 16 menunjukkan data uji.

Doc Isi

1 contoh hewan golong kelas reptil buaya cicak kadal komodo

2 konsumsi buah mangga jeruk semangka melon cukup butuh vitamin tubuh

3 taman penuh aneka macam pohon pohon mangga pohon cemara

4 pak untung jenis olahraga sepak bola voli basket tenis badminton

5 gunung kidul menjadi surganya beragam pantai indah pantai siung pantai krakal pantai kukup

6 kecil cukup butuh vitamin makan buah

7 hewan reptil hidup darat laut

Page 46: query expansion pada sistem temu kembali informasi ...

Tabel 11. Dokumen

Tabel 12. Query

Doc Isi

1 reptil

2 buah

Proses yang dilakukan adalah langsung menghitung tanpa menggunakan

query expansion pada dokumen diatas, namun sebelumnya dokumen tersebut

telah dilakukan proses preprocessing terlebih dahulu. Berikut merupakan

perhitungan manualisasi tanpa menggunakan query expansion pada Tabel 17.

4.4.2.1.1. Menghitung TF dan IDF

Perhitungan TF dan IDF dimulai dengan melakukan perhitungan pada

banyaknya kemunculan term (kata) pada dokumen dengan menggunakan

persamaan 2.1.

π‘Šπ‘‘π‘“π‘‘,𝑑= {

1 + π‘™π‘œπ‘”10𝑑𝑓𝑑,𝑑, π‘‘π‘–π‘šπ‘Žπ‘›π‘Ž 𝑑𝑓𝑑,𝑑 > 0

0, π‘‘π‘–π‘šπ‘Žπ‘›π‘Ž 𝑑𝑓𝑑,𝑑 = 0

Setelah itu melakukan perhitungan untuk mengetahuin banyaknya dokumen

d yang memiliki t (df), kemudian melakukan perhitungan IDF dengan

menggunakan persamaan 2.2. Pada Tabel 4.9 menunjukan hasil dari perhitungan

TF dan IDF.

𝑖𝑑𝑓𝑑 = π‘™π‘œπ‘”10𝑁/𝑑𝑓𝑑

Contoh perhitungan Tf-Idf :

𝑀𝑑𝑓𝑑,𝑑= 1 + π‘™π‘œπ‘”10𝑑𝑓𝑑,𝑑 = 1 + π‘™π‘œπ‘”101 = 1

Doc Isi

1 contoh hewan golong kelas reptil buaya cicak kadal komodo

2 konsumsi buah mangga jeruk semangka melon cukup butuh vitamin tubuh

3 taman penuh aneka macam pohon pohon mangga pohon cemara

4 pak untung jenis olahraga sepak bola voli basket tenis badminton

5 gunung kidul menjadi surganya beragam pantai indah pantai siung pantai krakal pantai kukup

6 kecil cukup butuh vitamin makan buah

7 hewan reptil hidup darat laut

Page 47: query expansion pada sistem temu kembali informasi ...

Setelah mendapatkan nilai Wtf (t,d), dilanjutkan dengan menghitung berapa banyak

dokumen d yang terdapat term t (df).

𝑖𝑑𝑓𝑑 = π‘™π‘œπ‘”10

𝑁

𝑑𝑓𝑑=

7

1= 0.8451

Tabel 13. Perhitungan Tf-Idf

Term TF df idf

d1 d2 d3 d4 d5 d6 d7 uji1 uji2 log(N/df)

contoh 1 0 0 0 0 0 0 0 0 1 0,8451

hewan 1 0 0 0 0 0 1 0 0 2 0,5441

golongan 1 0 0 0 0 0 0 0 0 1 0,8451

kelas 1 0 0 0 0 0 0 0 0 1 0,8451

reptil 1 0 0 0 0 0 1 1 0 3 0,3680

ular 1 0 0 0 0 0 0 0 0 1 0,8451

kadal 1 0 0 0 0 0 0 0 0 1 0,8451

buaya 1 0 0 0 0 0 0 0 0 1 0,8451

penyu 1 0 0 0 0 0 0 0 0 1 0,8451

konsumsi 0 1 0 0 0 0 0 0 0 1 0,8451

buah 0 1 0 0 0 1 0 0 1 3 0,3680

mangga 0 1 0 0 0 0 0 0 0 1 0,8451

jeruk 0 1 0 0 0 0 0 0 0 1 0,8451

semangka 0 1 0 0 0 0 0 0 0 1 0,8451

melon 0 1 0 0 0 0 0 0 0 1 0,8451

cukup 0 1 0 0 0 0 0 0 0 1 0,8451

butuh 0 1 0 0 0 0 0 0 0 1 0,8451

vitamin 0 1 0 0 0 0 0 0 0 1 0,8451

tubuh 0 1 0 0 0 0 0 0 0 1 0,8451

taman 0 0 1 0 0 0 0 0 0 1 0,8451

penuh 0 0 1 0 0 0 0 0 0 1 0,8451

aneka 0 0 1 0 0 0 0 0 0 1 0,8451

pohon 0 0 2 0 0 0 0 0 0 2 0,5441

mangga 0 0 1 0 0 0 0 0 0 1 0,8451

cemara 0 0 1 0 0 0 0 0 0 1 0,8451

pak 0 0 0 1 0 0 0 0 0 1 0,8451

untung 0 0 0 1 0 0 0 0 0 1 0,8451

jenis 0 0 0 1 0 0 0 0 0 1 0,8451

olahraga 0 0 0 1 0 0 0 0 0 1 0,8451

sepak 0 0 0 1 0 0 0 0 0 1 0,8451

Page 48: query expansion pada sistem temu kembali informasi ...

Term TF df idf

d1 d2 d3 d4 d5 d6 d7 uji1 uji2 log(N/df)

bola 0 0 0 1 0 0 0 0 0 1 0,8451

voli 0 0 0 1 0 0 0 0 0 1 0,8451

basket 0 0 0 1 0 0 0 0 0 1 0,8451

tenis 0 0 0 1 0 0 0 0 0 1 0,8451

badminton 0 0 0 1 0 0 0 0 0 1 0,8451

gunung 0 0 0 0 1 0 0 0 0 1 0,8451

kidul 0 0 0 0 1 0 0 0 0 1 0,8451

jadi 0 0 0 0 1 0 0 0 0 1 0,8451

surga 0 0 0 0 1 0 0 0 0 1 0,8451

ragam 0 0 0 0 1 0 0 0 0 1 0,8451

pantai 0 0 0 0 4 0 0 0 0 4 0,2430

indah 0 0 0 0 1 0 0 0 0 1 0,8451

siung 0 0 0 0 1 0 0 0 0 1 0,8451

krakal 0 0 0 0 1 0 0 0 0 1 0,8451

kukup 0 0 0 0 1 0 0 0 0 1 0,8451

kecil 0 0 0 0 0 1 0 0 0 1 0,8451

cukup 0 0 0 0 0 1 0 0 0 1 0,8451

butuh 0 0 0 0 0 1 0 0 0 1 0,8451

makan 0 0 0 0 0 1 0 0 0 1 0,8451

vitamin 0 0 0 0 0 0 1 0 0 1 0,8451

hidup 0 0 0 0 0 0 1 0 0 1 0,8451

darat 0 0 0 0 0 0 1 0 0 1 0,8451

laut 0 0 0 0 0 0 1 0 0 1 0,8451

4.4.2.1.2. Menghitung Tf-Idf Weighting

Proses perhitungan Tf-Idf Weighting dilakukan dengan mengkalikan nilai Tf

dan Idf, proses perhitungan Tf-Idf Weighting. Pada tabel 18 menunjukkan hasil

perhitugan Tf-Idf Weighting.

𝑀𝑑,𝑑 = 𝑀𝑑𝑓𝑑,π‘‘βˆ— 𝑖𝑑𝑓𝑑

Contoh perhitungan Tf-Idf Weighting:

Selanjutnya menghitung nilai Tf-Idf dengan mengkalikan hasil Tf-Idf.

𝑀𝑑,𝑑 = 𝑀𝑑𝑓𝑑,π‘‘βˆ— 𝑖𝑑𝑓𝑑 = 1 βˆ— 0.8451 = 0.8451

Tabel 14. Perhitungan Wtd

Term Wtd

Page 49: query expansion pada sistem temu kembali informasi ...

d1 d2 d3 d4 d5 d6 d7 uji1 uji2

Contoh 0,8451 0 0 0 0 0 0 0 0

Hewan 0,5441 0 0 0 0 0 0,5441 0 0

golongan 0,8451 0 0 0 0 0 0 0 0

Kelas 0,8451 0 0 0 0 0 0 0 0

Reptil 0,3680 0 0 0 0 0 0,3680 0,3680 0

Ular 0,8451 0 0 0 0 0 0 0 0

Kadal 0,8451 0 0 0 0 0 0 0 0

Buaya 0,8451 0 0 0 0 0 0 0 0

Penyu 0,8451 0 0 0 0 0 0 0 0

konsumsi 0 0,8451 0 0 0 0 0 0 0

Buah 0 0,3680 0 0 0 0,3680 0 0 0,3680

mangga 0 0,8451 0 0 0 0 0 0 0

Jeruk 0 0,8451 0 0 0 0 0 0 0

semangka 0 0,8451 0 0 0 0 0 0 0

Melon 0 0,8451 0 0 0 0 0 0 0

Cukup 0 0,8451 0 0 0 0 0 0 0

Butuh 0 0,8451 0 0 0 0 0 0 0

vitamin 0 0,8451 0 0 0 0 0 0 0

Tubuh 0 0,8451 0 0 0 0 0 0 0

Taman 0 0 0,8451 0 0 0 0 0 0

Penuh 0 0 0,8451 0 0 0 0 0 0

Aneka 0 0 0,8451 0 0 0 0 0 0

Pohon 0 0 1,0881 0 0 0 0 0 0

mangga 0 0 0,8451 0 0 0 0 0 0

cemara 0 0 0,8451 0 0 0 0 0 0

Pak 0 0 0 0,845098 0 0 0 0 0

Untung 0 0 0 0,845098 0 0 0 0 0

Jenis 0 0 0 0,845098 0 0 0 0 0

olahraga 0 0 0 0,845098 0 0 0 0 0

sepak 0 0 0 0,845098 0 0 0 0 0

Bola 0 0 0 0,845098 0 0 0 0 0

Voli 0 0 0 0,845098 0 0 0 0 0

basket 0 0 0 0,845098 0 0 0 0 0

tenis 0 0 0 0,845098 0 0 0 0 0

badminton 0 0 0 0,845098 0 0 0 0 0

gunung 0 0 0 0 0,8451 0 0 0 0

kidul 0 0 0 0 0,8451 0 0 0 0

Jadi 0 0 0 0 0,8451 0 0 0 0

surga 0 0 0 0 0,8451 0 0 0 0

ragam 0 0 0 0 0,8451 0 0 0 0

pantai 0 0 0 0 0,9722 0 0 0 0

indah 0 0 0 0 0,8451 0 0 0 0

siung 0 0 0 0 0,8451 0 0 0 0

krakal 0 0 0 0 0,8451 0 0 0 0

kukup 0 0 0 0 0,8451 0 0 0 0

kecil 0 0 0 0 0 0,845098 0 0 0

cukup 0 0 0 0 0 0,845098 0 0 0

Page 50: query expansion pada sistem temu kembali informasi ...

Perhitungan pada tabel 17 merupakan perhitungan nilai tf-idf kemudian

tahap selanjutnya menghitung Wtd pada Tabel 18.

4.4.2.1.3. Normalisasi

Proses normalisasi ditunjukkan dari hasil perhitungan persamaan

Normalisasi Tf-Idf Weighting dibawah ini:

𝑀𝑑,𝑑 =𝑀𝑑,𝑑

βˆšβˆ‘ 𝑀𝑑,𝑑2𝑛

𝑑=1

Contoh perhitungan Normalisasi:

Setelah mendapatkan nilai Tf-Idf, nilai tersebut akan dinormalisasi:

𝑀𝑑,𝑑 = 𝑀𝑑,𝑑

βˆšβˆ‘ 𝑀𝑑,𝑑2𝑛𝑑=1

= 0,3626

Tabel 15. Normalisasi Akhir

Term Normalisasi

d1 d2 d3 d4 d5 d6 d7 uji1 uji2

contoh 0,3626 0 0 0 0 0 0 0 0

hewan 0,2335 0 0 0 0 0 0,2720 0 0

golongan 0,3626 0 0 0 0 0 0 0 0

kelas 0,3626 0 0 0 0 0 0 0 0

reptil 0,1579 0 0 0 0 0 0,1839 1 0

ular 0,3626 0 0 0 0 0 0 0 0

kadal 0,3626 0 0 0 0 0 0 0 0

buaya 0,3626 0 0 0 0 0 0 0 0

penyu 0,3626 0 0 0 0 0 0 0 0

konsumsi 0 0,3299 0 0 0 0 0 0 0

buah 0 0,1436 0 0 0 0,2438 0 0 1

mangga 0 0,3299 0 0 0 0 0 0 0

jeruk 0 0,3299 0 0 0 0 0 0 0

semangka 0 0,3299 0 0 0 0 0 0 0

melon 0 0,3299 0 0 0 0 0 0 0

cukup 0 0,3299 0 0 0 0 0 0 0

butuh 0 0 0 0 0 0,845098 0 0 0

makan 0 0 0 0 0 0 0,845098 0 0

vitamin 0 0 0 0 0 0 0,845098 0 0

hidup 0 0 0 0 0 0 0,845098 0 0

darat 0 0 0 0 0 0 0,845098 0 0

laut 0 0 0 0 0 0 0,845098 0 0

JUMLAH 6,8277 7,9739 5,3136 8,4510 8,5780 2,9033 5,1375 0,3680 0,3680

Page 51: query expansion pada sistem temu kembali informasi ...

Term Normalisasi

d1 d2 d3 d4 d5 d6 d7 uji1 uji2

butuh 0 0,3299 0 0 0 0 0 0 0

vitamin 0 0,3299 0 0 0 0 0 0 0

tubuh 0 0,3299 0 0 0 0 0 0 0

taman 0 0 0,3876 0 0 0 0 0 0

penuh 0 0 0,3876 0 0 0 0 0 0

aneka 0 0 0,3876 0 0 0 0 0 0

pohon 0 0 0,4990 0 0 0 0 0 0

mangga 0 0 0,3876 0 0 0 0 0 0

cemara 0 0 0,3876 0 0 0 0 0 0

pak 0 0 0 0,3162 0 0 0 0 0

untung 0 0 0 0,3162 0 0 0 0 0

jenis 0 0 0 0,3162 0 0 0 0 0

olahraga 0 0 0 0,3162 0 0 0 0 0

sepak 0 0 0 0,3162 0 0 0 0 0

bola 0 0 0 0,3162 0 0 0 0 0

voli 0 0 0 0,3162 0 0 0 0 0

basket 0 0 0 0,3162 0 0 0 0 0

tenis 0 0 0 0,3162 0 0 0 0 0

badminton 0 0 0 0,3162 0 0 0 0 0

gunung 0 0 0 0 0,3112 0 0 0 0

kidul 0 0 0 0 0,3112 0 0 0 0

jadi 0 0 0 0 0,3112 0 0 0 0

surga 0 0 0 0 0,3112 0 0 0 0

ragam 0 0 0 0 0,3112 0 0 0 0

pantai 0 0 0 0 0,3580 0 0 0 0

indah 0 0 0 0 0,3112 0 0 0 0

siung 0 0 0 0 0,3112 0 0 0 0

krakal 0 0 0 0 0,3112 0 0 0 0

kukup 0 0 0 0 0,3112 0 0 0 0

kecil 0 0 0 0 0 0,5599 0 0 0

cukup 0 0 0 0 0 0,5599 0 0 0

butuh 0 0 0 0 0 0,5599 0 0 0

makan 0 0 0 0 0 0 0,4224 0 0

vitamin 0 0 0 0 0 0 0,4224 0 0

hidup 0 0 0 0 0 0 0,4224 0 0

darat 0 0 0 0 0 0 0,4224 0 0

laut 0 0 0 0 0 0 0,4224 0 0

Page 52: query expansion pada sistem temu kembali informasi ...

4.4.2.2. Manualisasi menggunakan Query Expansion Manualisasi yang akan dilakukan berikut ini adalah proses klasifikasi tweet

pada Twitter tanpa menerapkan Query Expansion. Proses tahap perhitungan tanpa Query Expansion menggunakan data latih pada tabel 20. Tabel 21 menunjukkan data uji.

Tabel 16. Dokumen

Tabel 17. Query

Doc Isi

1 reptil

2 buah

Proses yang dilakukan adalah langsung menghitung tanpa menggunakan

query expansion pada dokumen diatas, namun sebelumnya dokumen tersebut

telah dilakukan proses preprocessing terlebih dahulu. Berikut merupakan

perhitungan manualisasi menggunakan query expansion pada Tabel 22.

4.4.2.2.1. Menghitung TF dan IDF

Perhitungan TF dan IDF dimulai dengan melakukan perhitungan pada

banyaknya kemunculan term (kata) pada dokumen dengan menggunakan

persamaan 2.1.

π‘Šπ‘‘π‘“π‘‘,𝑑= {

1 + π‘™π‘œπ‘”10𝑑𝑓𝑑,𝑑, π‘‘π‘–π‘šπ‘Žπ‘›π‘Ž 𝑑𝑓𝑑,𝑑 > 0

0, π‘‘π‘–π‘šπ‘Žπ‘›π‘Ž 𝑑𝑓𝑑,𝑑 = 0

Setelah itu melakukan perhitungan untuk mengetahuin banyaknya dokumen

d yang memiliki t (df), kemudian melakukan perhitungan IDF dengan

menggunakan persamaan 2.2. Pada Tabel 4.9 menunjukan hasil dari perhitungan

TF dan IDF.

Doc Isi

1 contoh hewan golong kelas reptil buaya cicak kadal komodo

2 konsumsi buah mangga jeruk semangka melon cukup butuh vitamin tubuh

3 taman penuh aneka macam pohon pohon mangga pohon cemara

4 pak untung jenis olahraga sepak bola voli basket tenis badminton

5 gunung kidul menjadi surganya beragam pantai indah pantai siung pantai krakal pantai kukup

6 kecil cukup butuh vitamin makan buah

7 hewan reptil hidup darat laut

Page 53: query expansion pada sistem temu kembali informasi ...

𝑖𝑑𝑓𝑑 = π‘™π‘œπ‘”10𝑁/𝑑𝑓𝑑

Contoh perhitungan Tf-Idf :

𝑀𝑑𝑓𝑑,𝑑= 1 + π‘™π‘œπ‘”10𝑑𝑓𝑑,𝑑 = 1 + π‘™π‘œπ‘”101 = 1

Setelah mendapatkan nilai Wtf (t,d), dilanjutkan dengan menghitung berapa banyak

dokumen d yang terdapat term t (df).

𝑖𝑑𝑓𝑑 = π‘™π‘œπ‘”10

𝑁

𝑑𝑓𝑑=

7

1= 0.8450

Tabel 18. Perhitungan Tf-Idf

Term TF df idf

d1 d2 d3 d4 d5 d6 d7 uji1 uji2 log(N/df)

contoh 1 0 0 0 0 0 0 0 0 1 0,845098

hewan 1 0 0 0 0 0 1 0 0 2 0,544068

golongan 1 0 0 0 0 0 0 0 0 1 0,845098

kelas 1 0 0 0 0 0 0 0 0 1 0,845098

reptil 1 0 0 0 0 0 1 1 0 3 0,367977

ular 1 0 0 0 0 0 0 1 0 2 0,544068

kadal 1 0 0 0 0 0 0 1 0 2 0,544068

buaya 1 0 0 0 0 0 0 1 0 2 0,544068

penyu 1 0 0 0 0 0 0 1 0 2 0,544068

konsumsi 0 1 0 0 0 0 0 0 0 1 0,845098

buah 0 1 0 0 0 1 0 0 1 3 0,367977

mangga 0 1 0 0 0 0 0 0 1 2 0,544068

jeruk 0 1 0 0 0 0 0 0 1 2 0,544068

semangka 0 1 0 0 0 0 0 0 1 2 0,544068

melon 0 1 0 0 0 0 0 0 1 2 0,544068

cukup 0 1 0 0 0 0 0 0 0 1 0,845098

butuh 0 1 0 0 0 0 0 0 0 1 0,845098

vitamin 0 1 0 0 0 0 0 0 0 1 0,845098

tubuh 0 1 0 0 0 0 0 0 0 1 0,845098

taman 0 0 1 0 0 0 0 0 0 1 0,845098

penuh 0 0 1 0 0 0 0 0 0 1 0,845098

aneka 0 0 1 0 0 0 0 0 0 1 0,845098

pohon 0 0 2 0 0 0 0 0 0 2 0,544068

mangga 0 0 1 0 0 0 0 0 0 1 0,845098

cemara 0 0 1 0 0 0 0 0 0 1 0,845098

pak 0 0 0 1 0 0 0 0 0 1 0,845098

untung 0 0 0 1 0 0 0 0 0 1 0,845098

jenis 0 0 0 1 0 0 0 0 0 1 0,845098

olahraga 0 0 0 1 0 0 0 0 0 1 0,845098

sepak 0 0 0 1 0 0 0 0 0 1 0,845098

Page 54: query expansion pada sistem temu kembali informasi ...

Term TF df idf

d1 d2 d3 d4 d5 d6 d7 uji1 uji2 log(N/df)

bola 0 0 0 1 0 0 0 0 0 1 0,845098

voli 0 0 0 1 0 0 0 0 0 1 0,845098

basket 0 0 0 1 0 0 0 0 0 1 0,845098

tenis 0 0 0 1 0 0 0 0 0 1 0,845098

badminton 0 0 0 1 0 0 0 0 0 1 0,845098

gunung 0 0 0 0 1 0 0 0 0 1 0,845098

kidul 0 0 0 0 1 0 0 0 0 1 0,845098

jadi 0 0 0 0 1 0 0 0 0 1 0,845098

surga 0 0 0 0 1 0 0 0 0 1 0,845098

ragam 0 0 0 0 1 0 0 0 0 1 0,845098

pantai 0 0 0 0 4 0 0 0 0 4 0,243038

indah 0 0 0 0 1 0 0 0 0 1 0,845098

siung 0 0 0 0 1 0 0 0 0 1 0,845098

krakal 0 0 0 0 1 0 0 0 0 1 0,845098

kukup 0 0 0 0 1 0 0 0 0 1 0,845098

kecil 0 0 0 0 0 1 0 0 0 1 0,845098

cukup 0 0 0 0 0 1 0 0 0 1 0,845098

butuh 0 0 0 0 0 1 0 0 0 1 0,845098

makan 0 0 0 0 0 1 0 0 0 1 0,845098

vitamin 0 0 0 0 0 0 1 0 0 1 0,845098

hidup 0 0 0 0 0 0 1 0 0 1 0,845098

darat 0 0 0 0 0 0 1 0 0 1 0,845098

laut 0 0 0 0 0 0 1 0 0 1 0,845098

4.4.2.2.2. Menghitung Tf-Idf Weighting

Proses perhitungan Tf-Idf Weighting dilakukan dengan mengkalikan nilai Tf

dan Idf, proses perhitungan Tf-Idf Weighting. Pada tabel 18 menunjukkan hasil

perhitugan Tf-Idf Weighting.

𝑀𝑑,𝑑 = 𝑀𝑑𝑓𝑑,π‘‘βˆ— 𝑖𝑑𝑓𝑑

Contoh perhitungan Tf-Idf Weighting:

Selanjutnya menghitung nilai Tf-Idf dengan mengkalikan hasil Tf-Idf.

𝑀𝑑,𝑑 = 𝑀𝑑𝑓𝑑,π‘‘βˆ— 𝑖𝑑𝑓𝑑 = 1 βˆ— 0.8451 = 0.8451

Tabel 19. Perhitungan Wtd

Term Wtd

d1 d2 d3 d4 d5 d6 d7 uji1 uji2

contoh 0,8451 0 0 0 0 0 0 0 0

Hewan 0,5441 0 0 0 0 0 0,5441 0 0

Page 55: query expansion pada sistem temu kembali informasi ...

Term Wtd

d1 d2 d3 d4 d5 d6 d7 uji1 uji2

golongan 0,8451 0 0 0 0 0 0 0 0

Kelas 0,8451 0 0 0 0 0 0 0 0

Reptil 0,3680 0 0 0 0 0 0,3680 0,3680 0

Ular 0,5441 0 0 0 0 0 0 0,5441 0

kadal 0,5441 0 0 0 0 0 0 0,5441 0

buaya 0,5441 0 0 0 0 0 0 0,5441 0

penyu 0,5441 0 0 0 0 0 0 0,5441 0

konsumsi 0 0,8451 0 0 0 0 0 0 0

buah 0 0,3680 0 0 0 0,3680 0 0 0,3680

mangga 0 0,5441 0 0 0 0 0 0 0,5441

jeruk 0 0,5441 0 0 0 0 0 0 0,5441

semangka 0 0,5441 0 0 0 0 0 0 0,5441

melon 0 0,5441 0 0 0 0 0 0 0,5441

cukup 0 0,8451 0 0 0 0 0 0 0

butuh 0 0,8451 0 0 0 0 0 0 0

vitamin 0 0,8451 0 0 0 0 0 0 0

tubuh 0 0,8451 0 0 0 0 0 0 0

taman 0 0 0,8451 0 0 0 0 0 0

penuh 0 0 0,8451 0 0 0 0 0 0

aneka 0 0 0,8451 0 0 0 0 0 0

pohon 0 0 1,0881 0 0 0 0 0 0

mangga 0 0 0,8451 0 0 0 0 0 0

cemara 0 0 0,8451 0 0 0 0 0 0

Pak 0 0 0 0,845098 0 0 0 0 0

untung 0 0 0 0,845098 0 0 0 0 0

jenis 0 0 0 0,845098 0 0 0 0 0

olahraga 0 0 0 0,845098 0 0 0 0 0

sepak 0 0 0 0,845098 0 0 0 0 0

bola 0 0 0 0,845098 0 0 0 0 0

Voli 0 0 0 0,845098 0 0 0 0 0

basket 0 0 0 0,845098 0 0 0 0 0

tenis 0 0 0 0,845098 0 0 0 0 0

badminton 0 0 0 0,845098 0 0 0 0 0

gunung 0 0 0 0 0,8451 0 0 0 0

kidul 0 0 0 0 0,8451 0 0 0 0

Jadi 0 0 0 0 0,8451 0 0 0 0

surga 0 0 0 0 0,8451 0 0 0 0

ragam 0 0 0 0 0,8451 0 0 0 0

pantai 0 0 0 0 0,9722 0 0 0 0

indah 0 0 0 0 0,8451 0 0 0 0

Page 56: query expansion pada sistem temu kembali informasi ...

Term Wtd

d1 d2 d3 d4 d5 d6 d7 uji1 uji2

siung 0 0 0 0 0,8451 0 0 0 0

krakal 0 0 0 0 0,8451 0 0 0 0

kukup 0 0 0 0 0,8451 0 0 0 0

kecil 0 0 0 0 0 0,845098 0 0 0

cukup 0 0 0 0 0 0,845098 0 0 0

butuh 0 0 0 0 0 0,845098 0 0 0

makan 0 0 0 0 0 0 0,845098 0 0

vitamin 0 0 0 0 0 0 0,845098 0 0

hidup 0 0 0 0 0 0 0,845098 0 0

darat 0 0 0 0 0 0 0,845098 0 0

Laut 0 0 0 0 0 0 0,845098 0 0

JUMLAH 5,6236 6,7697 5,3136 8,4510 8,5780 2,9033 5,1375 2,5442 2,5442

4.4.2.2.3. Normalisasi

Proses normalisasi ditunjukkan dari hasil perhitungan persamaan

Normalisasi Tf-Idf Weighting dibawah ini:

𝑀𝑑,𝑑 =𝑀𝑑,𝑑

βˆšβˆ‘ 𝑀𝑑,𝑑2𝑛

𝑑=1

Contoh perhitungan Normalisasi:

Setelah mendapatkan nilai Tf-Idf, nilai tersebut akan dinormalisasi:

𝑀𝑑,𝑑 = 𝑀𝑑,𝑑

βˆšβˆ‘ 𝑀𝑑,𝑑2𝑛𝑑=1

= 0.4359

Tabel 20. Perhitungan Normalisasi

Term Normalisasi

d1 d2 d3 d4 d5 d6 d7 uji1 uji2

contoh 0,4359 0 0 0 0 0 0 0 0

hewan 0,2807 0 0 0 0 0 0,2720 0 0

golongan 0,4359 0 0 0 0 0 0 0 0

kelas 0,4359 0 0 0 0 0 0 0 0

reptil 0,1898 0 0 0 0 0 0,1839 0,3203 0

ular 0,2807 0 0 0 0 0 0 0,4736 0

kadal 0,2807 0 0 0 0 0 0 0,4736 0

buaya 0,2807 0 0 0 0 0 0 0,4736 0

penyu 0,2807 0 0 0 0 0 0 0,4736 0

konsumsi 0 0,3822 0 0 0 0 0 0 0

buah 0 0,1664 0 0 0 0,2438 0 0 0,3203

Page 57: query expansion pada sistem temu kembali informasi ...

Term Normalisasi

d1 d2 d3 d4 d5 d6 d7 uji1 uji2

mangga 0 0,2460 0 0 0 0 0 0 0,4736

jeruk 0 0,2460 0 0 0 0 0 0 0,4736

semangka 0 0,2460 0 0 0 0 0 0 0,4736

melon 0 0,2460 0 0 0 0 0 0 0,4736

cukup 0 0,3822 0 0 0 0 0 0 0

butuh 0 0,3822 0 0 0 0 0 0 0

vitamin 0 0,3822 0 0 0 0 0 0 0

tubuh 0 0,3822 0 0 0 0 0 0 0

taman 0 0 0,3876 0 0 0 0 0 0

penuh 0 0 0,3876 0 0 0 0 0 0

aneka 0 0 0,3876 0 0 0 0 0 0

pohon 0 0 0,4990 0 0 0 0 0 0

mangga 0 0 0,3876 0 0 0 0 0 0

cemara 0 0 0,3876 0 0 0 0 0 0

pak 0 0 0 0,3162 0 0 0 0 0

untung 0 0 0 0,3162 0 0 0 0 0

jenis 0 0 0 0,3162 0 0 0 0 0

olahraga 0 0 0 0,3162 0 0 0 0 0

sepak 0 0 0 0,3162 0 0 0 0 0

bola 0 0 0 0,3162 0 0 0 0 0

voli 0 0 0 0,3162 0 0 0 0 0

basket 0 0 0 0,3162 0 0 0 0 0

tenis 0 0 0 0,3162 0 0 0 0 0

badminton 0 0 0 0,3162 0 0 0 0 0

gunung 0 0 0 0 0,3112 0 0 0 0

kidul 0 0 0 0 0,3112 0 0 0 0

jadi 0 0 0 0 0,3112 0 0 0 0

surga 0 0 0 0 0,3112 0 0 0 0

ragam 0 0 0 0 0,3112 0 0 0 0

pantai 0 0 0 0 0,3580 0 0 0 0

indah 0 0 0 0 0,3112 0 0 0 0

siung 0 0 0 0 0,3112 0 0 0 0

krakal 0 0 0 0 0,3112 0 0 0 0

kukup 0 0 0 0 0,3112 0 0 0 0

kecil 0 0 0 0 0 0,5599 0 0 0

cukup 0 0 0 0 0 0,5599 0 0 0

butuh 0 0 0 0 0 0,5599 0 0 0

makan 0 0 0 0 0 0 0,4224 0 0

vitamin 0 0 0 0 0 0 0,4224 0 0

hidup 0 0 0 0 0 0 0,4224 0 0

darat 0 0 0 0 0 0 0,4224 0 0

Page 58: query expansion pada sistem temu kembali informasi ...

Term Normalisasi

d1 d2 d3 d4 d5 d6 d7 uji1 uji2

laut 0 0 0 0 0 0 0,4224 0 0

4.4.3. Cosine Similarity Perhitungan cosine similiraty dihitung dengan mengkalikan data latih dengan

data uji yang ingin diketahui kategorinya. Adapun persamaan yang digunakan

untuk menghitung cosine similarity dapat dilihat pada persamaan 2.5. pada Tabel

4.26 ditunjukan hasil perhitungan nilai cosine similarity.

πΆπ‘œπ‘ π‘–π‘›π‘’ (𝑑𝑖, π‘žπ‘–) = π‘žπ‘– , 𝑑𝑖

|π‘žπ‘–||𝑑𝑖|=

βˆ‘ =𝑖 (π‘žπ‘–π‘— , 𝑑𝑖𝑗)𝑑𝑗

βˆšβˆ‘ =𝑖 (π‘žπ‘–π‘—)2. βˆ‘ =𝑖 (𝑑𝑖𝑗)2.𝑑𝑗

𝑑𝑗

Contoh perhitungan Cosine Similarity Unigram untuk d1 :

Setelah perhitungan normalisasi selesai, kemudian dilanjutkan dengan

menghitung nilai Cosine Similarity.

πΆπ‘œπ‘ πΆπ‘–π‘š (𝑑𝑗 , π‘ž) = 0.3052 βˆ— 0 = 0

Tabel 21. Hasil Cosine Similarity

Term Cosine Similarity

d1 x uji1 d2 x uji1

d3 x uji1

d4 x uji1

d5 x uji1

d6 x uji1 d7 x uji1

Contoh 0 0 0 0 0 0 0

Hewan 0 0 0 0 0 0 0

Golongan 0 0 0 0 0 0 0

Kelas 0 0 0 0 0 0 0

Reptil 0,157903 0 0 0 0 0 0,183934

Ular 0 0 0 0 0 0 0

Kadal 0 0 0 0 0 0 0

Buaya 0 0 0 0 0 0 0

Penyu 0 0 0 0 0 0 0

Konsumsi 0 0 0 0 0 0 0

Buah 0 0 0 0 0 0 0

Mangga 0 0 0 0 0 0 0

Jeruk 0 0 0 0 0 0 0

Semangka 0 0 0 0 0 0 0

Melon 0 0 0 0 0 0 0

Cukup 0 0 0 0 0 0 0

Butuh 0 0 0 0 0 0 0

Vitamin 0 0 0 0 0 0 0

Tubuh 0 0 0 0 0 0 0

Page 59: query expansion pada sistem temu kembali informasi ...

Term Cosine Similarity

d1 x uji1 d2 x uji1

d3 x uji1

d4 x uji1

d5 x uji1

d6 x uji1 d7 x uji1

taman 0 0 0 0 0 0 0

penuh 0 0 0 0 0 0 0

aneka 0 0 0 0 0 0 0

pohon 0 0 0 0 0 0 0

mangga 0 0 0 0 0 0 0

cemara 0 0 0 0 0 0 0

pak 0 0 0 0 0 0 0

untung 0 0 0 0 0 0 0

jenis 0 0 0 0 0 0 0

olahraga 0 0 0 0 0 0 0

sepak 0 0 0 0 0 0 0

bola 0 0 0 0 0 0 0

voli 0 0 0 0 0 0 0

basket 0 0 0 0 0 0 0

tenis 0 0 0 0 0 0 0

badminton 0 0 0 0 0 0 0

gunung 0 0 0 0 0 0 0

kidul 0 0 0 0 0 0 0

jadi 0 0 0 0 0 0 0

surga 0 0 0 0 0 0 0

ragam 0 0 0 0 0 0 0

pantai 0 0 0 0 0 0 0

indah 0 0 0 0 0 0 0

siung 0 0 0 0 0 0 0

krakal 0 0 0 0 0 0 0

kukup 0 0 0 0 0 0 0

kecil 0 0 0 0 0 0 0

cukup 0 0 0 0 0 0 0

butuh 0 0 0 0 0 0 0

makan 0 0 0 0 0 0 0

vitamin 0 0 0 0 0 0 0

hidup 0 0 0 0 0 0 0

darat 0 0 0 0 0 0 0

laut 0 0 0 0 0 0 0

JUMLAH 0,157903 0 0 0 0 0 0,183934

Setelah didapatkan hasil cosine similarity maka dilakukan pengurutan tingkat

kemiripan dari yang terbesar hingga yang terkecil. Tabel 25 menunjukkan tingkat

kemiripan terhadap data uji.

Page 60: query expansion pada sistem temu kembali informasi ...

Uji 1

Urutan Tingkat Kemiripan

1 2 3 4 5 6 7

d1 d7 d2 d3 d4 d5 d6

Page 61: query expansion pada sistem temu kembali informasi ...

BAB 5 IMPLEMENTASI

Bab ini menjelaskan implementasi yang dibangun berdasarkan metodologi dan perancangan yang telah dijelaskan pada bab sebelumnya.

5.1. Batasan Implementasi Batasan Implementasi merupakan sub bab yang menjelaskan batasan

proses yang dapat dilakukan oleh sistem berdasarkan perancangan yang telah diuraikan dari bab sebelumnya. Berikut merupakan batasan implementasi sistem pada penelitian ini sebagai berikut.

1. Penerapan Query Expansion Pada Sistem Temu Kembali Berbahasa Indonesia Dengan Metode Pembobotan Tf-Idf dan Algoritme Cosine Similarity Berbasis Wordnet dirancang dan dibangun menggunakan aplikasi desktop bahasa Java.

2. Metode yang digunakan untuk penyelesaian masalah adalah Pembobotan Tf-Idf dan Algoritme Cosine Similarity.

3. Data yang digunakan berupa tweets sebanyak 367 data. 4. Hasil keluaran aplikasi berupa query yang telah mendapatkan perluasan

hiponim dan dokumen tweets yang memiliki kemiripan.

5.2. Implementasi Algoritme Pada Sub-Bab Implementasi algoritme ini terdiri dari beberapa proses

yakni dari preprocessing, pembobotan kata, cosine similarity, dan query expansion. Berikut merupakan tahapan-tahapan tersebut.

5.2.1. Implementasi Algoritme Preprocessing Text Algoritme text preprocessing merupakan tahapan paling awal yang

terjadi pada sistem sebelum melangkah ke tahap berikutnya seperti query expansion dan cosine similarity. Tahapan tersebut terdapat 4 proses yang terdiri sebagai berikut.

1. Preprocessing Case Folding Proses pada tahap ini adalah mengubah berbagai huruf yang

berbentuk Uppercase atau huruf besar menjadi huruf kecil. Proses tersebut dapat dilihat pada Kode Program 1 beserta dengan penjelasannya.

Baris 1-4 : Proses untuk menghilangkan tanda baca dan angka Baris 5-7 : Proses untuk mengubah kata menjadi lowercase

1

2

3

4

5

6

7

8

public static String caseFolding(String kalimatAsli) {

String kalimatHasil = "";

kalimatHasil = kalimatAsli.replaceAll("\\W", "");

kalimatHasil = kalimatAsli.replaceAll("[0-9]", "");

kalimatHasil = kalimatAsli.toLowerCase();

return kalimatHasil;

}

Page 62: query expansion pada sistem temu kembali informasi ...

Kode Program 1. Implementasi Case Folding

2. Preprocessing Tokenizing Proses ini melakukan pemecahan kalimat menjadi kata per kata

dan menghilangkan beberapa simbol maupun karakter yang dianggap sistem sebagai tanda baca. Proses tersebut dapat dilihat pada kode program 2 beserta penjelasannya. Baris 1-4 : memecah kalimat menjadi kata per kata

1

2

3

4

5

public static String[] tokenizing(String kalimatAsli) {

String[] kata = kalimatAsli.split("\\s+");

return kata;

}

Kode Program 2. Implementasi Tokenizing

3. Preprocessing Filtering Tahap ini memproses pengambilan kata-kata yang dari hasil

tokenizing yang dianggap penting. Namun cara tersebut menggunakan algoritme stoplist (membuang kata yang tidak perlu digunakan atau menghapus kata tidak penting) dan menyimpan kata-kata yang telah dianggap penting (wordlist) (Insan,2013). Proses tersebut dapat dilihat pada Kode Program 3 beserta penjelasannya. Baris 1-9 : Digunakan untuk memanggil file stoplist berisi teks sebagai acuan Baris 10-17 : kode program untuk perulangan jika terdapat kata yang tidak penting pada term unik akan dihilangkan dan kata selain itu akan disimpan untuk proses berikutnya

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

public static String[] filtering(String[] kataAwal) throws

FileNotFoundException, IOException {

ArrayList<String> termUnik = new ArrayList<>();

for (int i = 0; i < kataAwal.length; i++) {

boolean kt = stopList(kataAwal[i]);

if (!kt) {

termUnik.add(kataAwal[i]);

}

}

String[] kataUnik = new String[termUnik.size()];

for (int i = 0; i < kataUnik.length; i++) {

kataUnik[i] = termUnik.get(i);

}

return kataUnik;

}

Kode Program 3. Implementasi Filtering

Page 63: query expansion pada sistem temu kembali informasi ...

4. Preprocessing Stemming Pada tahap ini dilakukan merubah berbagai kata-kata yang

terdapat pada tweet menjadi kata-kata yang berupa akanya atau kata aslinya dengan aturan tertentu dari sistem. Proses tersebut dapat dilihat pada kode program 4 beserta penjelasannya. Baris 1-9 : Digunakan untuk membaca file yang berisi teks root word sebagai kata asli yang tidak dapat di hilangkan setiap bagian kata maupun imbuhannya. Baris 10-17 : Untuk menyimpan kata baku yang telah dicari

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

public static String[] stemming (String[] kataAwal) throws

FileNotFoundException, IOException {

// mencari kata baku

ArrayList<String> katabaku = new ArrayList<>();

IndonesianStemmer baku = new IndonesianStemmer();

for (int i = 0; i < kataAwal.length; i++) {

String kb = baku.findRootWord(kataAwal[i]);

katabaku.add(kb);

}

String[] katabaku1 = new String[katabaku.size()];

for (int i = 0; i < kataAwal.length; i++) {

katabaku1[i] = katabaku.get(i);

}

return katabaku1;

}

Kode Program 4. Implementasi Stemming

5. Translate Pada tahap ini dilakukan translate dari API Google Translate.

Proses tersebut dapat dilihat pada kode program 5 beserta penjelasannya. Baris 1-8 : Kode program untuk koneksi URL API Google Baris 9-17 : kode program untuk mengirim teks yang akan di translate Baris 18-25 : kode program untuk pengambilan teks yang telah di translate

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

public static String translate (String text, String target,

String from) throws Exception{

//mentraslete bahasa

String urlStr =

"https://script.google.com/macros/s/AKfycbyIsqfApPRholA-

GXUSrIUD7mi89tev9TyhQLkrEGj1rUpXnLw/exec"

+ "?q=" + URLEncoder.encode(text, "UTF-8")

+ "&target=" + target

+ "&source=" + from;

URL url = new URL(urlStr);

StringBuilder response = new StringBuilder();

HttpURLConnection con = (HttpURLConnection)

url.openConnection();

con.setRequestProperty("User-Agent", "Mozilla/5.0");

BufferedReader in = new BufferedReader(new

Page 64: query expansion pada sistem temu kembali informasi ...

17

18

19

20

21

22

23

24

25

InputStreamReader(con.getInputStream()));

String inputLine;

while ((inputLine = in.readLine()) != null) {

response.append(inputLine);

}

in.close();

return response.toString();

}

Kode Program 5. Translate

6. Koneksi Database

Pada tahap ini dilakukan koneksi ke database My SQL. Proses tersebut dapat dilihat pada kode program 6 beserta penjelasannya.

Baris 1 : untuk pembuatan variable koneksi β€œconn”

Baris 3-29 : untuk koneksi ke database My SQL.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

public static Connection conn;

public static void koneksi() throws SQLException {

//koneksi ke database

try {

conn=null;

Class.forName("com.mysql.jdbc.Driver");

conn =

DriverManager.getConnection("jdbc:mysql://localhost/kamus?u

ser=root&password=");

} catch (ClassNotFoundException ex) {

Logger.getLogger(Query

Expansion.class.getName()).log(Level.SEVERE

, null, ex);

} catch (SQLException e) {

Logger.getLogger(Query

Expansion.class.getName()).log(Level.SEVERE

, null, e);

} catch (Exception es) {

Logger.getLogger(Query

Expansion.class.getName()).log(Level.SEVERE

, null, es);

}

}

Kode Program 6. Koneksi Database

7. Konfigurasi Wordnet

Pada tahap ini dilakukan konfigurasi Wordnet. Proses tersebut dapat dilihat pada kode program 7 beserta penjelasannya.

Baris 1-6 : Inisialisasi library wordnet

Baris 7-16 : Pemanggilan file XML untuk lokasi dictionary pada wordnet

Page 65: query expansion pada sistem temu kembali informasi ...

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

public static void configureJWordNet() {

//koneksi ke kamus wordnet

try {

// initialize JWNL (this must be done before JWNL

can be used)

// See the JWordnet documentation for details on

the properties file

JWNL.initialize(new

FileInputStream("C:\\Users\\User\\Documents\\NetBeansProjec

ts\\Skripsi\\src\\properties.xml"));

} catch (Exception ex) {

ex.printStackTrace();

System.exit(-1);

}

}

Kode Program 7. Koneksi Wordnet

8. Fungsi Wordnet Pada tahap ini merupakan fungsi wordnet. Proses tersebut

dapat dilihat pada kode program 8 beserta penjelasannya.

Baris 1-4 : memanggil konfigurasi wordnet Baris 5-20 : pencarian hiponim dalam kasus wordnet Baris 21-29 : untuk menyimpan hasil hiponim kedalam Array List

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

public static String[] wordnet (String kataAwal) throws

FileNotFoundException, IOException, JWNLException {

//fungsi untuk mencari hiponim di dalam wordnet

configureJWordNet();

Dictionary dictionary = Dictionary.getInstance();

ArrayList<String> hiponim = new ArrayList<>();

IndexWord word =

dictionary.lookupIndexWord(POS.NOUN, kataAwal);

//System.out.println("Senses of the word :");

Synset[] senses = word.getSenses();

for (int a=0; a<senses.length;a++){

Synset sense = senses[a];

Pointer[] holo2 =

sense.getPointers(PointerType.HYPONYM);

for (int k=0; k<holo2.length; k++){

Synset synset = (Synset) (holo2[k].getTarget());

Word synsetWord = synset.getWord(0);

//System.out.println("Hyponim :

"+synsetWord.getLemma());

String word2 = synsetWord.getLemma();

hiponim.add(word2);

}

}

String[] hiponim2 = new String[hiponim.size()];

for (int u = 0; u < hiponim2.length; u++) {

hiponim2[u] = hiponim.get(u);

}

return hiponim2;

} Kode Program 8. Koneksi Wordnet

Page 66: query expansion pada sistem temu kembali informasi ...

9. Fungsi pencarian

Pada tahap ini merupakan fungsi wordnet. Proses tersebut dapat dilihat pada kode program 9 beserta penjelasannya. Baris 1-21 : pencarian data tweet dalam database My SQL Baris 25-43 : menampilkan hasil pencarian tabel GUI

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

public String[] cari(String[] kata) throws SQLException{

//mencari data pencarian pada database

ArrayList<String> katacari = new ArrayList<>();

koneksi();

Statement statement=conn.createStatement();

DefaultTableModel tabelTampil1 = new

DefaultTableModel();

for(int i = 0; i<kata.length; i++){

String sql = "Select * from data tweet where

tweet like '%" + kata[i] + "%'" ;

ResultSet rs=statement.executeQuery(sql);

System.out.println("rs.next() : "+ rs.next());

while (rs.next()) {

tabelTampil1.addRow(new Object[]{

rs.getString(1),

rs.getString(2),

//rs.getString(3),

//rs.getString(4),

});

String kataku = rs.getString(2);

katacari.add(kataku);

}

}

String[] ketemu = new String[katacari.size()];

for (int i = 0; i < ketemu.length; i++) {

ketemu[i] = katacari.get(i);

System.out.println(i + " = " + ketemu[i]);

DefaultTableModel tabelTampil = new

DefaultTableModel();

tabelTampil.setColumnIdentifiers(new Object[]{

"Tweet"

});

List<Object> list = new ArrayList<>();

list.add(ketemu);

for(Object obj : list){

tabelTampil.addRow((Object[]) obj);

jTable1.setModel(tabelTampil);

}

}

return ketemu;

}

Kode Program 9. Pencarian

9. Query Expansion

Proses mengekspansi kata baru atau query expansion memiliki beberapa tahapan yang dilakukan. Pertama yaitu memproses data yang berbentuk kamus berita untuk dihitung kedekatan kata dengan

Page 67: query expansion pada sistem temu kembali informasi ...

setiap kata pada data uji dengan menghasilkan nilai terpendek. Proses tersebut dapat dilihat pada kode program 10 beserta penjelasannya.

Baris 1-3 : Pengambilan inputan String

Baris 4-84 : Penentuan Query

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

String kalimat = tx input.getText();

String output = caseFolding(kalimat);

String[] kata = tokenizing(output);

for (int i = 0; i < kata.length; i++) {

System.out.println("kata " + i + " : " +

kata[i]);

}

String[] kataUnik = null;

try {

kataUnik = filtering(kata);

} catch (IOException ex) {

Logger.getLogger(Query

Expansion.class.getName()).log(Level.SEVERE, null, ex);

}

for (int i = 0; i < kataUnik.length; i++) {

System.out.println("kata unik " + i + " : " +

kataUnik[i]);

}

String[] katabaku = null;

try {

katabaku = stemming(kataUnik);

} catch (IOException ex) {

Logger.getLogger(Query

Expansion.class.getName()).log(Level.SEVERE, null, ex);

}

for (int i = 0; i < katabaku.length; i++) {

System.out.println("kata baku " + i + " : " +

katabaku[i]);

}

String [] eng = new String [kataUnik.length];

try {

for (int i = 0; i < eng.length; i++){

eng[i] = translate (kataUnik[i], "en", "id");

System.out.println("eng :" + " " +eng[i]);

}

} catch (Exception ex) {

Logger.getLogger(Query

Expansion.class.getName()).log(Level.SEVERE, null, ex);

}

String[] hiponim = null;

try {

int i = 0;

hiponim = wordnet(eng[i]);

} catch (IOException ex) {

Logger.getLogger(Query

Expansion.class.getName()).log(Level.SEVERE, null, ex);

Page 68: query expansion pada sistem temu kembali informasi ...

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

} catch (JWNLException ex) {

Logger.getLogger(Query

Expansion.class.getName()).log(Level.SEVERE, null, ex);

}

for (int i = 0; i < hiponim.length; i++) {

System.out.println("hiponim" + i + " : " +

hiponim[i]);

}

String [] ind = new String [hiponim.length];

try {

for (int i = 0; i < ind.length; i++){

ind[i] = translate (hiponim[i], "id", "en");

System.out.println("id Hiponim :" + " "

+ind[i]);

}

} catch (Exception ex) {

Logger.getLogger(Query

Expansion.class.getName()).log(Level.SEVERE, null, ex);

}

tx output.setText(tx input.getText()+",

"+Arrays.deepToString(ind));

Kode Program 10. Query Expansion

10. Menentukan Term

Proses ini menentukan semua term dari setiap dokumen yang

akan digunakan. Algoritme tersebut dapat dilihat pada kode program

dibawah 11.

Baris 1-17 : Kode program untuk memetakan term data uji yang sudah

diekspansi dengan data latih.

Baris 18-24 : kode program untuk mencari frekuensi term yang dimiliki

setiap dokumen.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

ArrayList<List> frekuensi data latih = new ArrayList<>();

List<Tf Idf> tf Idfs = new ArrayList<Tf Idf>();

for (int i = 0; i < per kata.size(); i++) {

List<Integer> per kata2 = new ArrayList<>();

for (int j = 0; j < data term pre.size(); j++)

{

int ketemu1 = 0;

for (int k = 0; k < data term

pre.get(j).size(); k++) {;

if (per kata.get(i).matches(data term

pre.get(j).get(k).toString())) {

ketemu1++;

}

}

per kata2.add(ketemu1);

}

Tf Idf tf Idf = new Tf Idf(per kata.get(i));

Page 69: query expansion pada sistem temu kembali informasi ...

20

21

22

23

24

tf Idfs.add(tf Idf);

frekuensi data latih.add(per kata2);

}

Kode Program 11. Implementasi Penentuan Term Setiap Dokumen

11. Pembobotan

Pada tahap ini dilakukan pemboboan setiap kata pada antar

dokumen dengan menggunakan teknik Tf-Idf. Algoritme tersebut dapat

dilihat pada kode program 12.

Baris 1-24 : digunakan untuk menghasilkan jumlah df yang terhitung

Baris 25-37 : kode program untuk menghitung pembobotan dengan

menggunakan Tf-Idf

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

for (int i = 0; i < frekuensi data latih.size(); i++) {

System.out.print(frekuensi data latih.get(i) +

" ");

System.out.println();

}

for (int i = 0; i < frekuensi data latih.size();

i++) {

int df = 0;

double log tf = 0.0;

List<Double> tf = new ArrayList<>();

for (int j = 0; j < frekuensi data

latih.get(i).size(); j++) {

if (!frekuensi data

latih.get(i).get(j).equals(0)) {

df++;

log tf =

Math.log(Integer.parseInt(frekuensi data

latih.get(i).get(j).toString()));

}

tf.add(log tf);

tf Idfs.get(i).setTf(tf);

}

System.out.println("df = " + df);

double log idf = 0.0;

if (df > 0) {

log idf = Math.log(frekuensi data

latih.get(i).size() / df);

}

tf Idfs.get(i).setDf(df);

tf Idfs.get(i).setBobot(frekuensi data

latih.get(i));

tf Idfs.get(i).setLog idf(log idf);

Kode Program 12. Implementasi Pembobotan Tf-Idf

Page 70: query expansion pada sistem temu kembali informasi ...

12. Pemetaan Bobot

Pemetaan bobot yang dilakukan untuk menempatkan hasil tf-idf

atau bobot awal ke dalam setiap term yang memiliki nilai hasil tf-idf

tersebut, yang selanjutnya akan diproses pembobotan akhir dengan

normalisasi. Proses tersebut dapat dilihat pada kode program 13 beserta

penjelasannya.

Baris 1-15 : digunakan untuk memetakan setiap nilai term yang berhasil

dihitung dengan menyesuaikan setiap kolom dokumen yang dimiliki.

Baris 16-18 : kode program untuk menampilkan hasil perhitungan cosine.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

List<Double> pemetaan bobot = new ArrayList<>();

for (int j = 0; j < frekuensi data

latih.get(i).size(); j++) {

if (frekuensi data

latih.get(i).get(j).equals(1)) {

pemetaan bobot.add(log idf);

} else if (frekuensi data

latih.get(i).get(j).equals(0)) {

pemetaan bobot.add(0.0);

} else {

pemetaan bobot.add(log idf *

tf.get(j));

}

}

tf Idfs.get(i).setPemetaan bobot(pemetaan

bobot);

}

Kode Program 13. Implementasi Pemetaan Pembobotan Awal

13. Normalisasi

Normalisasi yang dimaksud merupakan perhitungan ketetapan

nilai bobot disetiap term pada masing-masing dokumen yang akan

digunakan untuk perhitungan jarak setelah normalisasi tersebut selesai.

Perhitungan tersebut dapat dilihat pada kode program 14 beserta

penjelasannya

Baris 1-20 : digunakan untuk menghasilkan perhitungan normalisasi dari

setiap term yang dimiliki dari perhitungan Tf-Idf

1

2

3

4

5

6

7

8

9

10

11

12

13

for (int i = 0; i < tf Idfs.size(); i++) {

List<Double> normalisasi = new

ArrayList<Double>();

for (int j = 0; j < data term pre.size(); j++)

{

double total pangkat = 0.0;

for (int k = 0; k < tf Idfs.size(); k++) {

double value = tf

Idfs.get(k).getPemetaan bobot().get(j);

double pk = value * value;

total pangkat = total pangkat + pk;

}

double pembilang = Math.sqrt(total

Page 71: query expansion pada sistem temu kembali informasi ...

14

15

16

17

18

19

20

pangkat);

double nilai normalisasi = tf

Idfs.get(i).getPemetaan bobot().get(j) / pembilang;

normalisasi.add(nilai normalisasi);

}

tf Idfs.get(i).setNormalisasi(normalisasi);

} Kode Program 14. Implementasi Normaliasasi Ketetapan Bobot

14. Perhitungan Cosine Similarity

Perhitungan tingkat kemiripan yang dilakukan menggunakan

teknik cosine similarity untuk menghasilkan nilai tertinggi sebagai tingkat

kemiripan untuk dijadikan sebagai kategori yang terdekat. Proses

tersebut dapat dilihat pada kode program 15 beserta penjelasannya.

Baris 1-27 : kode program digunakan untuk menghitung cosine similarity

dari hasil perhitungan normalisasi sebelumnya.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

for (int i = 0; i < tf Idfs.size(); i++) {

System.out.println(tf Idfs.get(i).getTerm() + "

= "

+ tf Idfs.get(i).getBobot().toString()

+ ", DF= "

+ tf Idfs.get(i).getDf() + ", log= " +

tf Idfs.get(i).getLog idf() + "|| pembobotan = "

+ tf Idfs.get(i).getPemetaan

bobot().toString() + ", ==normalisasi = "

+ tf

Idfs.get(i).getNormalisasi().toString());

}

List<List<Double>> cosine = hitungCosine(tf Idfs);

System.out.println("Cosine : ");

for (int i = 0; i < cosine.size(); i++) {

System.out.println(cosine.get(i).size());

System.out.println(cosine.get(i).toString());

int index kategori = 0;

double t jumlah cosine = 0;

for (int j = 0; j < cosine.get(i).size(); j++)

{

if (t jumlah cosine < cosine.get(i).get(j))

{

}

}

Kode Program 15. Implementasi Perhitungan Cosine Similarity

5.3. Implementasi Antarmuka Implementasi antarmuka yang dimaksud adalah tampilan sistem yang

digunakan untuk layar interaksi antar pengguna dengan sistem. Implementasi yang ditunjukkan adalah tampilan form pencarian dan tampilan form input database.

5.3.1. Implementasi Antarmuka Form Pencarian Halaman form pencarian ini digunakan untuk menginputkan quer sebelum mendapatkan query expansion. Halaman ini menampilkan perluasan

Page 72: query expansion pada sistem temu kembali informasi ...

query dengan hasil hiponim dari query yg di inputkan. Implementasi halaman tersebut dapat ditunjukkan pada gambar 9.

Gambar 1. Tampilan Form Pencarian

5.3.2. Implementasi Antarmuka Input Database Antarmuka yang ditampilkan pada halaman berikut merupakan form input database. Dimana form ini digunakan untuk menambahkan data pada database My SQL. Implementasi tersebut dapat dilihat pada gambar 5.2.

Page 73: query expansion pada sistem temu kembali informasi ...

Gambar 2. Tampilan Form Tambah Database

Page 74: query expansion pada sistem temu kembali informasi ...

BAB 6 PENGUJIAN

6.1. Evaluasi dengan Precision at K Precision at K digunakan dalam evaluasi untuk menghitung tingkat akurasi

sistem. Pengujian ini dilakukan untuk menentukan apakah query yang

dimasukkan relevan terhadap dokumen yang ditemukan kembali sebanyak top

K, lalu dihitung tingkat akurasinya. Jumlah dokumen yang akan dicoba sebanyak

376 dokumen dan jumlah query-nya sebanyak 10 query. Daftar query dan query

yang telah di query expansion yang akan diuji tertera pada Tabel 25 dan daftar

dokumennya terdapat pada lampiran A. Top K yang akan diuji untuk tiap query

adalah top 20.

Tabel 1. Daftar Query dan Query Expansion

No ID Query Query Query Expansion

1 Q-01 Reptil Anaspid,Diaspid,Sinaspid,Diaspida

2 Q-02 Kendaraan Bumper car, kerajinan, militer vehicle, roket, skibob, kereta luncur, penggilingan, wheeled vehicle

3 Q-03 Burung burungmalam,bird of passage, protoavis,Archaeopteryx,Sinornis,Iberomesornis,archaeornis,ratite,carikan,yg berkenaan dgn burung gereja, nonpasserine bird,burung pemangsa,gallinaceous bird,burung beo,cuculiform bird, coraciiform bird, apodiform bird, caprimulgiform bird, piciform bird,trogon,aquatic bird, twitterer,unggas,unggas liar

4 Q-04 Gunung Black Hills, puncak gunung, ben, gunung bawah laut, gunung berapi

5 Q-05 Manusia dunia, Homo erectus, Homo soloensis, Homo habilis, Homo sapiens, Neandertal man, Rhodesian man

6 Q-06 Memasak koki, Kue kering, fry cook, preserver, roaster, bumbu, Petani

7 Q-07 Serangga ephemeron, holometabola, defoliator, penyerbuk, gallfly, mecopteran, collembolan, proturan, kumbang, web spinner, kutu, bird

Page 75: query expansion pada sistem temu kembali informasi ...

louse, kutu, dipterous insect, leaf miner, hymenopterous insect, pekerja, rayap, orthopterous insect, phasmid, dictyopterous insect, bug, hemipterous insect, heteropterous insect, homopterous insect, psocopterous insect, ephemerid, stonefly, neuropteron, odonate, trichopterous insect, thysanuran insect, thysanopter, earwig, lepidopterous insect, kepompong, imago, ratu

8 Q-08 Kerja mencuci, tindakan, pekerjaan, pekerjaan, operasi, layanan, bersinar, angkat berat, rumah tangga, pekerjaan rumah, menyetrika, pekerjaan yang sibuk, penebangan, loose end, kerja malam, dokumen, welfare work, tenaga kerja, subbing, penyelidikan, peduli, tugas, misi, pekerjaan persiapan, waktu kerja, usaha, kursus, mengikuti, kerajinan, besi, lacework, vernis, pekerjaan kulit, hasil karya, kerja logam, kerawang, polikrom, pekerjaan perak, anyaman, kayu, work in progress, Benda kerja, publikasi, pelatihan, pertunangan, kementerian, pelayaran, beban kerja, piecework, layanan, telecommuting, jasa, pelayanan publik, paper route, penulisan, toko roti, sarang lebah, brokerage house, pusat, tambang batu bara, krim, drill site, bertukar, tanah pertanian, perikanan, fish farm, menempa, pabrik gas, barang pecah belah, besi, pekerjaan, laboratorium, cucian, lokasi, lumberyard, oyster bed, proving ground, ropewalk, bangsal lokomotif, galangan kapal, lantai toko, studio, studio, penyamakan, test bed, bangunan air, bengkel

Page 76: query expansion pada sistem temu kembali informasi ...

9 Q-09 Hewan hama, makhluk, creepy-crawly, pelempar anak panah, pengintip, homeotherm, poikilotherm, range animal, anak nakal, pemulung, work animal, binatang dalam negeri, pengumpan, migrator, penganiaya, membelai, orang tabah, pengganti, marine animal, wanita, pria, dewasa, muda, berdarah murni, raksasa, selamat, mutan, herbivora, insektivora, acrodont, pleurodont, zooplankton, embrio, chordate, invertebrata, metazoan, omnivora, predator, mangsa, permainan, hexapod, berkaki dua, larva, pembalap, fiksional animal, tawanan, pasangan

10 Q-10 Makanan kuning telur, comfort food, panganan, tarif, bahan makanan, makanan bergizi, komisariat, makan, miraculous food, minuman, air, makanan jiwa, chyme, sisa, makanan segar, kenyamanan food, cokelat, baked goods, daging, Semacam spageti, makanan sehat, makanan cepat saji, makanan sarapan, menghasilkan, kelapa, dika bread, ikan, makanan laut, mentega, yogurt, keju, air kotor, makan

6.2. Perbandingan Pengujian Tanpa Query Expansion dan Menggunakan Query Expansion

Pengujian menggunakan query expansion menghasilkan relevansi antara

dokumen dan query yang telah di query expansion dilakukan secara manual

terhadap 20 penilaian, masing-masing penilaian memasukkan query dan

menilai dokumen yang relevan hingga urutan ke-20. Sedangkan pengujian

tanpa menggunakan query expansion juga menghasilkan relevansi antara

dokumen dan query tanpa di query expansion dilakukan secara manual

terhadap 20 penilaian, masing-masing penilaian memasukkan query dan

menilai dokumen yang relevan hingga urutan ke-20. Hasil pengujiannya pada

Page 77: query expansion pada sistem temu kembali informasi ...

Tabel 26. Tabel hasil relevansi dari penguji ditampilkan secara lebih lengkap

dibagian Lampiran.

Tabel 2. Perbandingan Pengujian Tanpa Query Expansion dan Menggunakan Query Expansion

Query Dengan Query Expansion Tanpa Query Expansion

Q-1 P@20=16/20= 0.8 P@20=15/20= 0.75

Q-2 P@20=13/20= 0.6 P@20=15/20= 0.75

Q-3 P@20=16/20= 0.8 P@20=11/20= 0.55

Q-4 P@20=10/20= 0.5 P@20=11/20= 0.55

Q-5 P@20=12/20= 0.6 P@20=13/20= 0.65

Q-6 P@20=14/20= 0.7 P@20=8/20= 0.4

Q-7 P@20=16/20= 0.8 P@20=10/20= 0.5

Q-8 P@20=15/20= 0.75 P@20=5/20= 0.25

Q-9 P@20=14/20= 0.7 P@20=8/20= 0.4

Q-10 P@20=14/20= 0.7 P@20=8/20= 0.4

Rata-rata 0.7 = 70% 0.52 = 52%

6.2.1. Skenario Pengujian 2.

Pada skenario ini dilakukan beberapa pengujian pada Precision@20

Precision@15, Precision@10, Precision@5. Dimana pengujian ini digunakan

untuk mengukur treshold pada peringkat K. Query yang digunakan hanya query

Q-01. Dimana Q-01 telah di query expansion. Dokumen yang dihitung ialah

dokumen relevan teratas sejumlah K dan mengabaikan dokumen peringkat yang

berada dibawah K. Berikut hasil pengujian Precision@K yang di tunjukkan pada

tabel 27.

Tabel 3. Skenario Pengujian 2

Query Query+1 Query+2 Query+3 Query+4

P@20 0.75 0.65 0.65 0.7 0.8

P@15 0.733 0.6 0.66 0.733 0.933

P@10 0.9 0.9 0.9 0.9 0.9

P@5 0.8 0.8 0.8 0.8 1

6.3. Analisis

Berdasarkan hasil tabel Perbandingan Pengujian Tanpa Query Expansion dan Menggunakan Query Expansionmenggunakan precission@20, dari 10 query yakni Q-01, Q-02, Q-03, Q-04, Q-05, Q-06, Q-07, Q-08, Q-09, Q-10 didapatkan hasil rata-rata pengujian menggunakan query expansion sebesar 0.7 atau 70%. Sedangkan pada hasil pengujian tanpa menggunakan query expansion sebesar 0.52 atau 52%. Artinya dengan adanya query expansion maka dapat menaikkan nilai precision pada 10 query pencarian. Hal ini disebabkan adanya penambahan

Page 78: query expansion pada sistem temu kembali informasi ...

query menyebabkan dokumen relevan akan semakin naik peringkatnya, karena query yang dihasilkan semakin spesifik.

Pada skenario pengujian 2 dilakukan pengujian pada treshold pada nilai K. Pengujian ini dilakukan untuk menguji nilai precision, dimana peringkat perangkingan teratas dari K akan dihitung dan mengabaikan nilai perangkingan dibawah K. Pada Precision@5 mengalami kenaikan sebesar 0.2.

Dari 10 query, dapat disimpulkan bahwa query expansion berpengaruh cukup baik dalam menemukan dokumen relevan. Karena hasil dari perbandingan menggunakan query expansion dan tanpa menggunakan query expansion menghasilkan kenaikan sebesar 12%.

Page 79: query expansion pada sistem temu kembali informasi ...

BAB 7 KESIMPULAN DAN SARAN

7.1. Kesimpulan Pada bagian ini akan membahas tentang kesimpulan dari hasil penelitian

Query Expansion pada sistem temu kembali informasi berbahasa indonesia

dengan metode pembobotan tf-idf dan algoritme Cosine Similarity bebasis

WordNet, berikut diantaranya:

1. Berdasarkan pada hasil analisis serta pengujian pada penelitian Query

Expansion pada sistem temu kembali informasi berbahasa indonesia

dengan metode pembobotan tf-idf dan algoritme Cosine Similarity

bebasis WordNet, menggunakan Dokumen yang tersedia akan melalui

tahapan preprocessing, kemudian dilakukan perhitungan pada term

weighting dan cosine similarity. Hasil dari preprocessing disimpan di

dataset kemudian dilakukan proses query expansion dengan

menggunakan kamus Wordnet. Setelah mendapatkan query expansion

berupa hiponim maka query akan di translatekan menggunakan Google

Translate API dan menghasilkan query expansion berbahasa indonesia.

2. Pada proses query expansion menghasilkan hasil rata-rata pengujian

menggunakan query expansion sebesar 0.7 atau 70%. Sedangkan pada

hasil pengujian tanpa menggunakan query expansion sebesar 0.52 atau

52%. Artinya dengan adanya query expansion maka dapat menaikkan

nilai precision pada 10 query pencarian. Hal ini disebabkan adanya

penambahan query menyebabkan dokumen relevan semakin sedikit,

karena query yang dihasilkan semakin spesifik.

7.2. Saran Berdasarkan pada kesimpulan yang sudah diambil terkait dengan hasil

penelitian menerapkan Query Expansion pada sistem temu kembali informasi

berbahasa indonesia dengan metode pembobotan tf-idf dan algoritme

Cosine Similarity bebasis WordNet pengaruh Query Expansion pada sistem

temu kembali informasi berbahasa indonesia dengan metode pembobotan

tf-idf dan algoritme Cosine Similarity bebasis WordNet, maka saran yang akan

direkomendasikan adalah sebagai berikut:

Penelitian selanjutnya dapat dilakukan dengan metode lain, seperti

semantik yang dapat meningkatkan pemilihan kata-kata tambahan sehingga

dapat menjadi query yang semakin baik dan memiliki kesamaan yang tinggi

dibandingkan query awal pengguna.

Page 80: query expansion pada sistem temu kembali informasi ...

DAFTAR PUSTAKA

Google Cloud Platform. (2018). Cloud Translation API. Dipetik Maret 16, 2018,

dari https://cloud.google.com/translate/

Herwijayanti, B., Ratnawati D.Eka & Muflikhah, L., 2018. Klasifikasi Berita Online

dengan Menggunakan Pembobotan Tf-Idf dan Cosine Similarity,

Informatika, Universitas Brawijaya.

Imran H, Sharan A. 2009. Thesaurus and Query Ekspansion. Departement of

Computer Scienece, Jamia Hamdrad, New Delhi, India.

Librian, A. (2016). Stemming Bahasa Indonesia. Dipetik February 15, 2018, dari

https://github.com/sastrawi/sastrawi/wiki/Stemming-Bahasa-Indonesia

Manning, C. D., Raghavan, P. & Schutze, H., 2009. Introduction to Information

Retrieval. Online Edition penyunt. Cambridge, England: Cambridge

University Press.

Miller, G. A., Beckwith, R., & Fellbaum, C. (1993). Introduction to WordNet: An

On-line Lexical Database,Derek Gross, and Katherine Miller. International

Journal of Lexicography.

Nerald, J. Kowalski, 2000. Information Storange and Retrieval Systems: Theory

and Implementation, United States

Netty Laora Sitohang 2009. Ekspansi Kueri pada Sistem Temu Kembali Informasi

Berbahasa Indonesia Menggunakan Kamus Dwibahasa, Matematika dan

Ilmu Pengetahuan Alam, Institut Pertanian Bogor.

Nutri Rahayuni 2011. Ekspansi Kueri pada Sistem Temu Kembali Informasi

Berbahasa Indonesia Menggunakan Thesaurus, Matematika dan Ilmu

Pengetahuan Alam, Institut Pertanian Bogor.

Pamungkas, Z.Yoga., Indriati., Ridok, A, 2015. Query Expansion pada Sistem Temu

Kembali Informasi Dokumen Berbahasa Indonesia Menggunakan Pseudo

Relevance Feedback, Informatika, Universitas Brawijaya.

Rasywir, Errissya dan Ayu Purwarianti. 2015. Eksperimen pada Sistem Klasifikasi Berita Hoax Berbahasa Indonesia Berbasis Pembelajaran Mesin. Jurnal Cybermatika, (2)3, pp.1-8.

Rusidi. 2008. Ekspansi Kueri dalam Sistem Temu Kembali Informasi Berbahasa

Indonesia Menggunakan Peluang Bersyarat. [Skripsi]. Bogor: Fakultas

Matematika dan Ilmu Pengetahuan Alam, Institut Pertanian Bogor.

Page 81: query expansion pada sistem temu kembali informasi ...

Warsita, Bambang. 2008. Teknologi Pembelajaran : Landasan & Aplikasinya,

Jakarta: Rineka

Yugianus, P 2015. Pengembangan sistem penelusuran katalog perpustakaan

dengan metode rocchio relevance feedback. Universitas Brawijaya.

O’Reilly, T., & Milstein, S. (2009). What is Twitter ? Dalam J. Wikert (Penyunt.),

The Twitter Book (hal. 7). United States of America: O`Reilly Media , Inc.

Zhang, J., Deng, B., & Li, X. (2009). Concept Based Query Expansion Using

WordNet. Beijing: Dept. Electronic Engineering, Tsinghua Univ. Beijing,

100084, China.