Inverted Index dengan Google Colab – Python

Beberapa buku teks memiliki index yang diletakan di akhir buku. Isi index adalah kata-kata penting beserta halaman dimana kata tersebut berada. Biasanya kata-kata tersebut disebutkan lebih dari satu halaman.

Sementara itu ketika seseorang mengetikan kata di mesin Google, misalnya “American Revolution”, maka Google akan mencari di mana saja kata tersebut berada, misalnya pada Index di gambar di atas di halaman 84,98, dan 166. Karena diletakan di muka yang mirip daftar isi, maka di situlah kata “inverted” bermula, yang seharusnya di belakang tapi di muka sebagai alat pencari. Sebagai contoh, puisi “Aku” karya Chairil Anwar berikut. Anggap saja satu line/baris merupakan satu berkas dokumen, atau kalau dalam satu buku adalah halaman.

  • Doc 1.Kalau sampai waktuku
  • Doc 2.’Ku mau tak seorang ‘kan merayu
  • Doc 3.Tidak juga kau
  • Doc 4.Tak perlu sedu sedan itu
  • Doc 5.Aku ini binatang jalang
  • Doc 6.Dari kumpulannya terbuang
  • Doc 7.Biar peluru menembus kulitku
  • Doc 8.Aku tetap meradang menerjang
  • Doc 9.Luka dan bisa kubawa berlari .. Berlari
  • Doc 10.Hingga hilang pedih peri
  • Doc 11.Dan aku akan lebih tidak peduli
  • Doc 12.Aku mau hidup seribu tahun lagi!

Aslinya sih satu dokumen itu satu berkas berupa buku pdf, postingan internet, jurnal, dll, tapi di sini dianggap satu baris/line saja. Atau bisa juga sih, satu berkas tersebut dijadikan satu baris dengan doc-id sebagai penunjuk line/baris berkas itu. Kalau forward index membuat index dari konten, inverted index memetakan kata/istilah ke konten. Kita memanfaatkan inverted index Google yang setiap hari membuat index (forward index) dari data yang di crawler di seluruh dunia. Berikutnya, untuk praktik siapkan sebuah file txt yang berisi puisi di atas, atau contoh sembarang. Buka Google Colab dan upload file tersebut.

Silahkan lihat kode di referensi di akhir postingan ini. Jika dijalankan, dihasilkan inverted index seperti di bawah ini. Cek apakah benar beberapa kata tepat berada di dokumen/line pada file “Aku.txt” di atas.

Di sini kita tinggal memasukan frekuensi, misalnya ‘berlari’ itu ada dua kali. Untuk jelasnya silahkan lihat video tutorial saya berikut ini.

Ref:

Link: geeksforgeeks.org/create-inverted-index-for-file-using-python/