Tokenizing Vector Space Model

��� � = log � �� � 5 Dimana df i adalah frekuensi dokumen dari term i dan sama dengan jumlah dokumen yang mengandung term i. Log digunakan untuk memperkecil pengaruhnya relatif terhadap tf ij . Bobot dari term i di dalam sistem IR w ij dihitung menggunakan ukuran tf-idf yang didefinisikan sebagai berikut Lee D. L., 1997: � �� = �� �� × ��� � 6

2.6. Tokenizing

Tokenizing adalah proses membagi deretan kalimat menjadi kalimat, dan kalimat menjadi token – token. Token tidak hanya terdiri dari kata – kata, tetapi juga angka – angka, tanda kutip, tanda kurung, dan tanda baca lainnya. Proses tokenizing pada gambar 2. 4 masukan input berupa sebuah kalimat “Ada riwayat infeksi saluran napas”. Proses tokenizing memisah kalimat tersebut menjadi potongan – potongan kata penyusunnya. Potongan kata seperti “riwayat”, “infeksi”, “saluran”, dan “napas” akan digunakan untuk proses selanjutnya. Gambar 2. 3 Proses tokenizing

2.7. Stemming

Stemming merupakan suatu proses yang terdapat dalam sistem IR yang mentransformasi kata-kata yang terdapat dalam suatu dokumen ke kata – kata dasarnya root word dengan menggunakan aturan – aturan tertentu. Sebagai contoh, kata bersama, kebersamaan, menyamai, akan di– stem ke root word–nya yaitu “sama”. Proses stemming pada teks berbahasa Indonesia berbeda dengan stemming pada teks berbahasa Inggris. Pada teks berbahasa Inggris, proses yang diperlukan hanya proses menghilangkan sufiks. Sedangkan pada teks berbahasa Indonesia, selain sufiks, prefiks, dan konfiks juga dihilangkan Agusta, 2009. Stemming khusus bahasa Inggris yang ditemukan oleh Martin Porter. Mekanisme algoritma dalam mencari kata dasar suatu kata berimbuhan dengan membuang imbuhan – imbuhan atau lebih tepatnya akhiran pada kata–kata bahasa Inggris karena dalam bahasa Inggris tidak mengenal awalan. Karena bahasa Inggris datang dari kelas yang berbeda, beberapa modifikasi telah dilakukan untuk membuat Algoritma Porter sehingga dapat digunakan sesuai dengan bahasa Indonesia. Implementasi Porter Stemmer for Bahasa Indonesia berdasarkan English Porter Stemmer yang dikembangkan oleh W.B. Frakes pada tahun 1992. Karena bahasa Inggris datang dari kelas yang berbeda, beberapa modifikasi telah dilakukan untuk membuat algoritma Porter dapat digunakan sesuai dengan bahasa Indonesia. Gambar 2. 4 Desain dari Porter Stemmer for Bahasa Indonesia

2.7.1. Porter Stemmer Algorithm

Algoritma atau langkah – langkah stemming pada teknik Porter Stemmer adalah sebagai berikut: 1. Menghapus partikel seperti: -kah, -lah, -tah 2. Mengapus kata ganti Possesive Pronoun, seperti –ku, -mu, -nya 3. Mengapus awalan pertama. Jika tidak ditemukan, maka lanjut ke langkah 4a, dan jika ada maka lanjut ke langkah 4b. 4. a. Menghapus awalan kedua, dan dilanjutkan pada langkah ke 5a b. Menghapus akhiran, jika tidak ditemukan maka kata tersebut diasumsikan sebagai kata dasar root word. Jika ditemukan maka lanjut ke langkah 5b. 5. a. Menghapus akhiran dan kata akhir diasumsikan sebagai kata dasar root word. b. Menghapus awalan kedua dan kata akhir diasumsikan sebagai kata dasar root word Agusta, 2009.

2.7.2. Aturan Algoritma Porter untuk Bahasa Indonesia

Terdapat 5 aturan pada Algoritma Porter untuk Bahasa Indonesia. Dasar dari aturan ini adalah membagi kata berdasarkan imbuhan yang diberikan pada kata tersebut. Aturan tersebut dapat dilihat pada tabel berikut Tala, 2003: Tabel 2. 6 Kelompok rule pertama: inflectional particles Suffix Replacement Meassure Condition Additional Condition Contoh -kah NULL 2 NULL bukukah  buku -lah NULL 2 NULL adalah  ada -pun NULL 2 NULL bukupun  buku Tabel 2. 7 Kelompok rule kedua: inflectional possesive pronouns Suffix Replacement Meassure Condition Additional Condition Contoh -ku NULL 2 NULL bukuku  buku -mu NULL 2 NULL bukumu  buku -nya NULL 2 NULL bukunya  buku Tabel 2. 8 Kelompok rule ketiga: first order of derivational prefixes Prefix Replacement Meassure Condition Additional Condition Contoh meng- NULL 2 NULL mengukur  ukur meny- s 2 V... menyapu  sapu men- NULL 2 NULL menduga  duga mem- p 2 V... memilah  pilah mem- NULL 2 NULL membaca  baca me- NULL 2 NULL merusak  rusak peng- NULL 2 NULL pengukur  ukur peny- s 2 V... penyapu  sapu pen- NULL 2 NULL pendosa  dosa pem- p 2 V... pemilah  pilah pem- NULL 2 NULL pembaca  baca di- NULL 2 NULL diukur  ukur ter- NULL 2 NULL tersapu  sapu ke- NULL 2 NULL kekasih  kasih Tabel 2. 9 Kelompok rule keempat: second order of derivational prefixes Prefix Replacement Meassure Condition Additional Condition Contoh ber- NULL 2 NULL berlari  lari bel- NULL 2 ajar belajar  ajar be- NULL 2 ker... bekerja  kerja per- NULL 2 NULL perjelas  jelas pel- NULL 2 ajar pelajar  ajar pe- NULL 2 NULL pekerja  kerja Tabel 2. 10 Kelompok rule kelima: derivational suffixes Suffix Replacement Meassure Condition Additional Condition Contoh -kan NULL 2 Prefix ∉ {ke-, peng-} tarikkan  tarik mengambilkan  ambil -an NULL 2 Prefix ∉ {di-, ter-, meng-} makanan  makan perjanjian  janji -i NULL 2 V|K...c 1 c 1 , c 1 ≠ s, c 2 ≠ i dan prefix ∉ {ber-, ke-, peng-} tandai  tanda mendapati  dapat Pantai  panta

2.8. Vector Space Model

Vector Space Model VSM menganalogikan dokumen sebagai vektor yang memiliki besaran. Gambar 2.6 menunjukkan perlakuan yang diterapkan VSM terhadap query pencarian. Gambar 2. 5 Vector Space Model Sebagai vektor yang memiliki besaran, jarak antar dokumen dapat dihitung menggunakan persamaan cosine similarity Manning, et al, 2008. ��� � 1 , � 2 = � →� 1 . � →� 2 � � →� 1 �� � →� 2 � 7 Dimana: • ��� � 1 , � 2 adalah jarak kedekatan dokumen 1 dan dokumen 2. • D 1 adalah dokumen 1. • D 2 adalah dokumen 2. • � → � 1 adalah reperentasi vektor dokumen 1. • � → � 2 adalah reperentasi vektor dokumen 2. Salah satu cara untuk mengukur jarak antar vektor adalah dengan menggunakan persamaan Euclidian Distance. Dengan berasumsi bahwa t adalah komponen dari vektor, maka Euclidian Distance untuk vektor � → � dapat ditulis sebagai berikut: �∑ � � 2 � �⎯⎯� � �=1 8 Dand hasil dari perkalian dot product antara 2 dua vektor � → dan � → dapat ditulis sebagai berikut: ∑ � � → . � � → � �=1 9 Dengan melihat persamaan 8 dan 9, persamaan 7 dapat ditulis ulang menjadi: cos ��� � 1 , � 2 = ∑ � 1 . � 2 � �=1 �∑ � � 2 � 1 . � � 2 � 2 � �=1 10 Nilai cos ��� � 1 , � 2 menunjukkan jarak kedekatan dokumen D 1 dan D 2 . Besaran cos ��� � 1 , � 2 memiliki rentang dari 0,0 – 1,0. Semakin besar nilai yang diperoleh, tingkat kemiripan dokumen yang dibandingkan akan semakin tinggi. Sebaliknya, semakin kecil nilai yang diperoleh, tingkat kemiripan dokumen yang dibandingkan semakin rendah. Dalam membentuk model hasil pencarian, VSM membandingkan nilai kesamaan antara query pencarian terhadap setiap dokumen yang tersedia. Dengan melihat persamaan 7, perhitungan jarak antara query pencarian dengan dokumen yang tersedia dapat ditulis seperti berikut: ��� �, � � = � →�. � →� � � � →��� � →� � � 11 Dimana: • ��� �, � � adalah jarak kedekatan query dan dokumen i. • Q adalah query pencarian. • Di adalah dokumen i. • � → � adalah reperentasi vektor query pencarian. • � → � � adalah reperentasi vektor dokumen i. Dengan melihat pada persamaan 10 dan 11, dapat ditulis ulang menjadi: cos ��� ��, � � � = ∑ �� � . � �� � � �=1 �∑ � � 2 � � . � � 2 � � � �=1 12 VSM akan mengurutkan dokumen berdasarkan nilai jarak kesamaan masing – masing dokumen dengan query pencarian. Semakin dekat jarak dokumen dengan query pencarian, posisi dokumen akan berada semakin atas.

2.9. Extended Boolean Model