PENGINDEKSAN
PROSES PEROLEHAN INFORMASI
INDEKS Pengorganisasian berkas atau indeks digunakan untuk meningkatkan unjuk kerja dari sistem perolehan informasi Pengindeksan teks adalah proses yang memutuskan apa yang akan digunakan untuk merepresentasikan dokumen tertentu Indeks kata ini yang digunakan untuk mengindeks dokumen
Pengindeksan Manual vs Otomatis Pengindeksan secara manual (dilakukan oleh manusia) Pengindeks menentukan kata kunci yang diberikan kepada suatu dokumen berdasarkan perbendaharaan kata yang terkontrol (controlled vocabulary) Biaya mahal Pengindeksan secara otomatis Program pengindeks menentukan kata atau frase tertentu dari teks pada dokumen Prosesnya cepat
Pengindeksan Manual vs Otomatis Hasil dari eksperimen: Pengindeksan secara otomatis sama efektifnya dengan pengindeksan secara manual Penggunaan indeks manual dan otomatis meningkatkan performance dari sistem perolehan informasi
Tahapan Pengindeksan Lihat dokumen untuk mengenali strukturnya Mis. Judul, tanggal, dll. Tokenisasi Pembuangan stopwords Proses pemotongan imbuhan (stemming) Pembobotan kata Pembuatan indeks
Tahap 1 LIHAT & KENALI STRUKTUR DOKUMEN
Lihat dan kenali struktur dokumen Perlu dilihat strukturnya Contoh: Dokumen dimulai dengan <DOC> dan diakhiri dengan </DOC> Bagian dokumen yang dihitung kalimatnya adalah yang dalam <TEXT> ... </TEXT> dan <TITLE> ... </TITLE> Mempengaruhi apa-apa yang harus dihilangkan saat akan melakukan tokenisasi
Tahap 2 TOKENISASI kampus retrieval belajar pergi
Pengertian Tokenisasi adalah suatu tahap pemrosesan di mana teks input dibagi menjadi unit-unit yang disebut token yg merupakan suatu kata atau suatu angka atau suatu tanda baca. Perlu mengenali unit secara otomatis Apakah kata itu? Bagaimana dengan frase kata?
KonsepTokenisasi Hilangkan karakter yang tidak penting / tandatanda (mis. HTML tags, tanda baca, karakter khusus), huruf besar, nomor Potong menjadi token Bahasa seperti non-latin perlu segmentasi Query dan dokumen perlu dinormalisasi ke bentuk yang sama
Tokenisasi Frase Indeks sederhana berdasarkan pada kata atau kata yang sudah di-stem Indeks yang kompleks dapat berisi frase dan kelas kelas thesaurus (buku berisi daftar kata dengan sinonimnya) Retrieval yang berdasarkan konsep sering digunakan untuk memperoleh sesuatu yang lebih dari indeks kata Konsep adalah suatu nama yang digunakan untuk suatu set aturan atau kriteria ditentukan Sama dengan kelas pada thesaurus
Tokenisasi Frase Mis. Konsep ‘information retrieval’ dapat ditunjuk karena adanya kata ‘information’ dan ‘retrieval’, frase ‘information retrieval’ Metode statistik dan sintaksis telah digunakan untuk menemukan frase yang baik Teknik yang telah terbukti berhasil : Menemukan pasangan kata yang muncul lebih dari n kali pada koleksi atau menggunakan ‘Part-of-speech tagger’ untuk mengidentifikasi frase nomina yang sederhana.
Tokenisasi Frase Frase dapat berdampak pada efisiensi dan efektivitas Pengindeksan frase dapat mempercepat query yang mengandung frase Mis. menemukan dokumen yang berisi ‘lagu kebangsaan’ lebih baik daripada dokumen yang berisi dua kata tersebut Contoh frase : united states, los angeles, hong kong, north korea, long times, new york, jawa timur
Segmentasi kata Bagaimana dengan frase “panjang tangan”, “tusuk jarum”? Kata-kata lain: No telp (024) 7600954 Daerah Istimewa Yogyakarta Jurusan Semarang Solo Bahasa daerah Jawa: Nyuwun sewu Menjadi topik penelitian di bidang ekstraksi informasi
Tahap 3 PEMBUANGAN STOPWORDS itu dan yang
Pembuangan Stopwords Semua kata yang termasuk dalam daftar stopwords, yaitu daftar kata yg umum (kata yang mempunyai fungsi tapi tidak mempunyai arti) mis.: dan, atau, sebuah, yang Jumlahnya bisa ratusan kata Perhatikan kata yang menjadi bagian dari frase: Yang Maha kuasa, vitamin A, gerbang dan-atau (and-or gate) Berguna untuk menghemat penyimpanan indeks (efisiensi)
Tahap 4 PROSES PEMOTONGAN IMBUHAN (STEMMING) ber kan me
Proses Pemotongan Imbuhan (Stemming) Pemrosesan morfologi terhadap sekelompok variasi kata: perubahan kata berimbuhan menjadi kata dasar Misalnya: diberikan beri Bisa salah tetapi banyak digunakan pada IR system Tidak digunakan oleh sebagian besar web search engines
Stemming Proses stemming (lemmatization): Contoh: proses untuk menghilangkan imbuhan pada kata membentuk kata dasar Contoh: minum, diminum, minuman→ minum Ambigu: lying → lie- lay atau lie- lied Business → busy Dalam bidang IR, stemming dapat mempengaruhi dokumen yang diperoleh
Stemming Stem adalah bagian dari kata yang tertinggal setelah imbuhannya dihilangkan Makan : dimakan, memakan, termakan, pemakan, makan … Adi memberikan makanan itu kepada kucingnya Adi beri makan itu kepada kucing Biasanya stemmer terdiri dari sekumpulan aturan dan atau kamus Mis. Porter Stemmer untuk bahasa Inggris terdiri dari berbagai aturan
Porter stemmer Pemotong imbuhan untuk Bahasa Inggris yang dikembangkan oleh Martin Porter Algoritme berdasarkan pada sekelompok aturan bersyarat:
Porter stemmer
Contoh Porter stemmer
Penggunaan Stemmer Menimbulkan Masalah Stemmer dapat menyebabkan tidak diperolehnya dokumen yang relevan karena kurangnya konteks dari kata yang sudah di-stem Kadang terlalu banyak melakukan pemotongan Mis. policy/police; execute/executive; university/universe; organization/organ Adanya pemotongan yang tidak dilakukan Mis. Porter tidak melakukan pemotongan untuk machine/machinery Hasil pemotongan kadang-kadang bukan kata sehingga sukar bagi pemakai untuk menginterpretasikan Mis. Hasil dari Porter : general gener; iteration iter
Stemmer lain Pengembangan stemmer untuk memperbaiki Porter stemmer Lovins stemmer: http://www.comp.lancs.ac.uk/computing/research/stemming/general/lovins.htm Menghilangkan imbuhan yang terpanjang Berdasarkan analisa morfologi (linguistik) K-stem Menggunakan kamus kata dasar dan aturan imbuhan Corpus-based stemmer Berdasarkan asumsi bahwa suatu kata dan variasi imbuhannya akan sering muncul bersama dalam korpus Contoh : racial, racism, racist, racists race, racer, racetrack, racers, racing
Stemmer untuk bahasa Inggris
Efek Penggunaan Stemmer Apakah penggunaan Stemmer dapat meningkatkan unjuk kerja dari sistem perolehan informasi? Hasil penelitian penggunaan stemmer sangat beragam Ada yang dapat membantu meningkatkan jumlah dokumen pada suatu koleksi tapi pada koleksi yang lain dapat menurunkan jumlah dokumen yang diperoleh KuKurang berguna untuk koleksi Web yang sangat besar
Stemmer Untuk Bahasa Selain Inggris Pengembangan algoritma Porter untuk bahasa lain Mis. Bahasa Melayu Perlu mengerti morfologi karena setiap bahasa mempunyai kekhususan sendiri Mis. Bahasa Arab, Jepang, Jerman, Perancis
Stemmer untuk Bahasa Indonesia Bahasa Indonesia (BI) mempunyai kata berimbuhan yang lebih kompleks daripada bahasa Inggris Akhiran / Infleksional: Partikel : kah, lah, tah Kepunyaan : ku, mu, nya Algoritma stemmer : Kata dasar Kata berakhiran – infleksional Kata berimbuhan Tidak ada Menggunakan kamus yang berisi daftar kata dasar
Stemmer untuk Bahasa Indonesia Kata berakhiran – infleksional Akhiran ku, mu, nya harus mendahului kah, lah, tah Hasil : kata dasar atau kata berimbuhan Kata berimbuhan Lihat apakah prefiks & sufiks sudah sesuai aturan Mis. Prefiks ber tidak dapat digabung dengan sufiks i Setelah dihilangkan konfiksnya, teliti apakah fonemnya perlu diubah (mis. meng + ambil mengambil ; meng + satukan menyatukan)
Stemmer untuk Bahasa Indonesia Imbuhan (afiks): Prefiks / awalan (meng, di, ber, peng, ke, se, ter) Mis. di + beri diberi Sufiks / akhiran (i, kan, an) Mis. makan + an makanan Confiks / gabungan prefiks & sufiks (me-kan, ber-an) Mis. meng + beli + kan membelikan Prefiks & Sufiks dapat ditambahkan pada kata yang telah mempunyai prefiks atau confiks Mis. mem + per + hati + kan memperhatikan
Stemmer untuk Bahasa Indonesia Evaluasi: Dari 18,590 kata berimbuhan, 95 % bisa diperoleh kata dasarnya dengan benar dan 5 %-nya diperoleh kata yang salah Kesalahan: Salah melakukan perubahan fonem Mis: mengawani = meng + awan + i atau meng+ kawan + i Mis-stemming (salah melakukan pemotongan kata) Mis. berikan = beri + kan atau ber-ikan
Stemmer untuk Bahasa Indonesia Understemming (kata terlalu sedikit yang dipotong) Mis. beruangkah = beruang + kah atau ber + uang + kah Overstemming (kata terlalu banyak yang dipotong)
Tahap 5 PEMBOBOTAN KATA retrieval information
Pembobotan kata Kata yang penting seharusnya diberi bobot yang lebih berat Menggunakan frekuensi dalam dokumen dan koleksi
Metode pembobotan Beberapa pendekatan untuk memberikan bobot pada suatu kata: TF TF . IDF Term Discrimination Model 2 Poisson Model Language Model BM25
Bobot kata tf x idf
Bobot kata tf x idf (tf.idf) Ket: tft,d = frekuensi kata t pada dokumen d N = jumlah seluruh dokumen dft = jumlah dokumen yang mengandung kata t
Contoh tf*idf
Lanjutan Contoh tf*idf
Contoh tf*idf
Tahap 6 PEMBUATAN INDEKS retrieval information
Pembuatan indeks Struktur dari berkas inverted terdiri dari: 1. Vocabulary (perbendaharaan kata): adalah set dari semua kata-kata yang berbeda pada teks 2. Occurrences (kemunculan): daftar yang berisi semua info yang perlu dari setiap kata pada perbendaharaan kata (posisi kata / karakter, frekuensi, dokumen di mana kata tsb. muncul, dsb.)
Inverted Files Prosedur untuk membuat inversed word list Daftar kata awal adalah suatu kata yang bukan stopword, kata yang tidak di-stem, lokasi kata (nama dokumen) Daftar kata awal diurutkan sehingga mendapatkan daftar kata dengan mempertahankan duplikasi kata. Jika perlu terapkan stemmer. Duplikasi pada daftar kata dihilangkan untuk menghasilkan statistik frekuensi dalam dokumen Tambahkan informasi bobot kata
Inverted Files
Tahap Pengindeksan
URUTKAN KATA
Hitung Frekuensi Kata
HASIL PELACAKAN
Mengindeks Frase Frase : gabungan dua atau lebih kata yang mempunyai arti berbeda dengan masing-masing kata Mis. universitas indonesia, jawa timur Query : Saya tinggal di pulau jawa bagian timur Indeks kata tidak cukup (kata:dok) untuk menemukan frase
Lanjutan Salah satu caranya adalah dengan mengindeks Biword Mis. dokter, jalan, jawa, timur maka akan menghasilkan biword : dokter jalan, jalan jawa, jawa timur Biword sekarang menjadi kata indeks Pencarian frase yang terdiri dari 2 kata dapat ditemukan dengan mudah
Lanjutan Bagaimana dengan frase yang lebih panjang? Dapat dipecah dengan menggunakan operator Boolean Mis. kampus tembalang universitas diponegoro kampus tembalang AND tembalang universtas AND universitas diponegoro Kemudian diproses dengan indeks biword
Indeks Berisi Posisi Kata Simpan untuk setiap kata, dalam bentuk: <jumlah dok yang berisi kata; dok1: posisi1, posisi2 … ; dok2: posisi1, posisi2 … ; dll.>
Indeks Berisi Posisi Kata
Memproses Query dengan Frase
Isu Pemrosesan Query Pemeriksa Ejaan Kesalahan penulisan query Mis. Information retrival Did you mean “Information retrieval”? because no docs matched the query phrase. Teknik NLP terlalu berat untuk menangani masalah ini
Isu Pemrosesan Query Penyelesaian kesalahan ejaan Perlu melakukan menemukan cara untuk menentukan yang terbaik dari sedikit pilihan pada user Menggunakan heuristics Berikan alternatif dok yang paling banyak dipilih Analisa log query Terutama untuk query yang populer dan topik tertentu Penggunaan pemeriksa ejaan sangat mahal
Isu Pemrosesan Query Thesaurus: daftar sinonim kata yang biasadigunakan pada query mobil → kendaraan, dll. baju → pakaian, dll. Soundex Query diperluas dengan kata-kata yang bunyinya sama (fonetik) chebyshev → tchebycheff You’re your Terutama untuk nama orang, kota dll.
Isu Pemrosesan Query