Hubungi melalui Slack:
PISA adalah mesin pencari teks yang mampu menjalankan koleksi dokumen berskala besar. Hal ini memungkinkan para peneliti untuk bereksperimen dengan teknik-teknik canggih, sehingga menciptakan lingkungan yang ideal untuk perkembangan pesat.
Beberapa fitur PISA tercantum di bawah ini:
PISA adalah mesin pencari teks, meskipun "Proyek PISA" adalah seperangkat alat yang membantu bereksperimen dengan pengindeksan dan pemrosesan kueri. Dengan adanya kumpulan teks, PISA dapat membuat indeks terbalik pada korpus ini, sehingga korpus tersebut dapat dicari. Indeks terbalik, sederhananya, adalah struktur data efisien yang mewakili korpus dokumen dengan menyimpan daftar dokumen untuk setiap istilah unik (lihat di sini). Pada waktu query, PISA menyimpan indeksnya di memori utama untuk pengambilan cepat.
Secara sederhana, PISA adalah mesin pencari teks. Dimulai dengan kumpulan dokumen, misalnya Wikipedia, PISA dapat membuat indeks terbalik yang memungkinkan kita mencari koleksi Wikipedia dengan cepat. Pada tingkat paling dasar, kueri Boolean AND
dan OR
didukung. Bayangkan kita ingin menemukan semua dokumen Wikipedia yang cocok dengan kueri "teh oolong" - kita dapat menjalankan konjungsi Boolean ( oolong AND
tea ). Kita mungkin tertarik untuk menemukan dokumen yang berisi oolong atau tea (atau keduanya), dalam hal ini kita dapat menjalankan disjungsi Boolean ( oolong OR
tea ).
Selain pencocokan Boolean sederhana, seperti dibahas di atas, kita sebenarnya dapat menentukan peringkat dokumen. Tanpa menjelaskan secara rinci, dokumen diurutkan berdasarkan fungsi yang mengasumsikan semakin jarang suatu istilah, semakin penting kata tersebut. Pemeringkatan ini juga berasumsi bahwa semakin sering sebuah kata muncul dalam sebuah dokumen, semakin besar kemungkinan dokumen tersebut berisi kata tersebut. Terakhir, dokumen yang lebih panjang mengandung lebih banyak kata, sehingga lebih berpeluang mendapatkan skor lebih tinggi dibandingkan dokumen yang lebih pendek, sehingga normalisasi dilakukan untuk memastikan semua dokumen diperlakukan sama. Pembaca yang tertarik mungkin ingin membaca artikel Wikipedia TF/IDF untuk mempelajari lebih lanjut tentang metode pemeringkatan ini.
Misalnya, ini bukan jenis pencarian grep
yang sama. Hal ini lebih terkait erat dengan mesin pencari Lucene yang populer, meskipun saat ini kami tidak mendukung jenis kueri sebanyak Lucene. Seperti yang telah dibahas sebelumnya, struktur data utama yang mendasari PISA adalah indeks terbalik . Indeks terbalik menyimpan, untuk setiap istilah, daftar dokumen yang berisi istilah tersebut. Daftar ini dapat dengan cepat ditelusuri untuk menemukan dokumen yang cocok dengan istilah kueri, dan dokumen ini kemudian dapat dinilai, diberi peringkat, dan dikembalikan ke pengguna.
Kasus penggunaan utama PISA adalah melakukan eksperimen untuk lebih memahami bidang Information Retrieval (IR). Dalam bidang IR, terdapat berbagai arah penelitian penting yang menjadi fokus, mulai dari peningkatan kualitas hasil (efektivitas), hingga peningkatan skalabilitas dan efisiensi sistem pencarian. PISA sebagian besar berfokus pada skalabilitas dan efisiensi penelitian IR, dan itulah sebabnya PISA adalah singkatan dari "Performant Indexes and Search for Academia". Singkatnya, PISA adalah platform untuk mengembangkan inovasi baru dalam pencarian yang efisien.
Meskipun PISA difokuskan sebagai dasar eksperimen, PISA juga sangat cocok untuk digunakan sebagai sistem pengindeksan dan pencarian tujuan umum yang sederhana.
PISA dapat menangani koleksi teks yang besar. Misalnya, PISA dapat dengan mudah mengindeks korpora ClueWeb09B atau ClueWeb12B, yang masing-masing berisi lebih dari 50 juta dokumen web dan hampir 500 GiB data tekstual terkompresi , sehingga menghasilkan indeks dalam kisaran 10-40 GiB, bergantung pada codec kompresi digunakan. Indeks ini, bergantung pada beberapa detailnya, dapat dibuat dari awal dalam waktu sekitar 10-20 jam. Selain itu, koleksi yang lebih besar dapat ditangani melalui indeks sharding yang memecah korpora besar menjadi subset (pecahan) yang lebih kecil. Namun kami mencatat bahwa PISA adalah sistem dalam memori , yang bertujuan untuk melayani kueri berdasarkan indeks yang berada seluruhnya di memori utama. Dengan demikian, skala yang mungkin akan dibatasi oleh memori utama.
Beberapa karya terbaru telah membandingkan PISA. Misalnya, Studi Eksperimental tentang Kompresi Indeks dan Metode Pemrosesan Kueri DAAT oleh Antonio Mallia, Michal Siedlaczek, dan Torsten Suel, yang muncul di ECIR 2019, menunjukkan bahwa PISA mampu mengembalikan 10 dokumen teratas dan 1000 dokumen teratas dengan latensi rata-rata dalam kisaran masing-masing 10-40 dan 20-50 milidetik , pada koleksi yang berisi 50 juta dokumen web.
PISA juga termasuk dalam game benchmark mesin pencari Tantivy, yang juga memiliki Tantivy, Lucene, dan Rucene sebagai pesaingnya.
PISA adalah cabang dari proyek ds2i yang dimulai oleh Giuseppe Ottaviano. Proyek ds2i berisi kode sumber untuk sejumlah inovasi efisiensi penting dalam IR, termasuk metode kompresi "Partitioned Elias-Fano".
Bagi mereka yang tertarik untuk bekerja dengan PISA, kami menyarankan untuk mempelajari sumber daya berikut:
Jika Anda ingin terlibat dengan PISA, silakan lihat halaman Kontribusi kami.
Jika Anda menggunakan PISA dalam makalah penelitian, harap mengutip referensi berikut:
@inproceedings{MSMS2019,
author = {Antonio Mallia and Michal Siedlaczek and Joel Mackenzie and Torsten Suel},
title = {{PISA:} Performant Indexes and Search for Academia},
booktitle = {Proceedings of the Open-Source {IR} Replicability Challenge co-located
with 42nd International {ACM} {SIGIR} Conference on Research and Development
in Information Retrieval, OSIRRC@SIGIR 2019, Paris, France, July 25,
2019.},
pages = {50--56},
year = {2019},
url = {http://ceur-ws.org/Vol-2409/docker08.pdf}
}