Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan...

22
Search Engines Information Retrieval in Practice All slides ©Addison Wesley, 2008

Transcript of Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan...

Page 1: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Search Engines

Information Retrieval in Practice

All slides ©Addison Wesley, 2008

Page 2: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Search Engine Architecture

• Arsitektur dari mesin pencari ditentukan oleh2 persyaratan

– efektivitas (kualitas hasil)

– efisiensi (waktu respon dan throughput)

Page 3: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Indexing Process

Page 4: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Indexing Process

• Text acquisition

– mengidentifikasi dan menyimpan dokumen untukmengindeks

• Text transformation

– mengubah dokumen ke dalam istilah indeks atau fitur

• Index creation

– mengambil istilah indeks dan menciptakan strukturdata (indeks) untuk mendukung pencarian cepat

Page 5: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Query Process

Page 6: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Query Process

• User interaction– mendukung penciptaan dan perbaikan query,

menampilkan hasil

• Ranking– menggunakan query dan indeks untuk

menghasilkan daftar peringkat dokumen

• Evaluation– memonitor dan mengukur efektivitas dan efisiensi

(terutama offline)

Page 7: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Details: Text Acquisition

• Crawler

– Mengidentifikasi dan memperoleh dokumen

– Web crawler mengikuti link untuk menemukandokumen

– Efisien harus menemukan sejumlah besarhalaman web (coverage) dan menjaga mereka up-to-date (kesegaran)

Page 8: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Text Acquisition

• Conversion

– Mengkonversi berbagai dokumen ke dalam teksyang konsisten ditambah Format metadata

• misalnya HTML, XML, Word, PDF, dll → XML

– Mengkonversi pengkodean teks untuk bahasayang berbeda

• Menggunakan standar Unicode seperti UTF-8

Page 9: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Text Acquisition

• Menyimpan data Dokumen

– Stores teks, metadata, dan konten terkait lainnyauntuk dokumen

• Metadata adalah informasi tentang dokumen sepertitipe dan tanggal pembuatan

• Konten lain termasuk link, anchor text

– Bisa menggunakan sistem database relasional

Page 10: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Text Transformation• Parser

– Pengolahan urutan token teks dalam dokumenuntuk mengenali elemen struktur

– Tokenizer mengakui "kata" dalam teks• harus mempertimbangkan isu-isu seperti kapitalisasi,

tanda hubung, apostrof, karakter non-alpha, pemisah

– Bahasa markup seperti HTML, XML seringdigunakan untuk menentukan struktur• Tag digunakan untuk menentukan elemen dokumen

– Misalnya, <h2> Ikhtisar </ h2>

• Dokumen parser menggunakan sintaks bahasa markup (atau format lainnya) untuk mengidentifikasi struktur

Page 11: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Text Transformation

• Stopping

– Hapus kata-kata umum

• misalnya, "dan", "atau", "yang", "di“

• Stemming

– Kata kelompok berasal dari batang umum

• e.g., “computer”, “computers”, “computing”, “compute”

Page 12: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Text Transformation

• Link Analysis

– Memanfaatkan link dan anchor teks dalamhalaman web

– Anchor teks secara signifikan dapat meningkatkanrepresentasi halaman ditunjukkan oleh link

Page 13: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Text Transformation

• Information Extraction– Identifikasi kelas istilah indeks yang penting untuk

beberapa aplikasi

– misalnya, recognizers bernama entitasmengidentifikasi kelas seperti orang, lokasi, perusahaan, tanggal, dll

• Classifier– Mengidentifikasi metadata kelas terkait untuk

dokumen• yaitu, memberikan label ke dokumen

• mis., topik, tingkat membaca, sentimen

Page 14: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Index Creation

• Document Statistics

– Mengumpulkan jumlah dan posisi kata-kata dan fitur lainnya

– Digunakan dalam algoritma peringkat

• Weighting

– Menghitung bobot untuk istilah indeks

– Digunakan dalam algoritma peringkat

Page 15: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Index Creation

• Inversion

– Inti dari proses pengindeksan

– Mengubah informasi dokumen panjang untukistilah-dokumen untuk mengindeks

• Sulit untuk jumlah yang sangat besar dokumen

Page 16: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Index Creation

• Index Distribution

– Salurkan indeks di beberapa komputer dan / ataubeberapa situs

– Penting untuk pemrosesan query cepat dengansejumlah besar dokumen

Page 17: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

User Interaction

• Query input

– Menyediakan antarmuka dan parser untuk bahasaquery

– Kebanyakan query web sangat sederhana, aplikasilain dapat menggunakan form

– Bahasa query yang digunakan untukmenggambarkan pertanyaan lebih kompleks

Page 18: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

User Interaction

• Query transformation

– Spell checking dan saran permintaan memberikanalternatif untuk query

– Ekspansi permintaan dan umpan balik relevansimemodifikasi query asli

Page 19: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

User Interaction

• Results output

– Membangun tampilan dokumen peringkat untukquery

– Highlight kata-kata penting

– Mengambil iklan yang sesuai dalam berbagaiaplikasi

Page 20: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Ranking

• Scoring

– Menghitung skor untuk dokumen menggunakanalgoritma peringkat

– Komponen inti dari search engine

Page 21: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Ranking

• Performance optimization

– Merancang algoritma peringkat untuk proses yang efisien

• Distribution

– Pengolahan Query dalam lingkungan terdistribusi

Page 22: Search Engines Process •User interaction –mendukung penciptaan dan perbaikan query, menampilkan hasil •Ranking –menggunakan query dan indeks untuk menghasilkan daftar peringkat

Evaluation

• Logging– Logging permintaan pengguna dan interaksi sangat

penting untuk meningkatkan efektivitas dan efisiensi pencarian

– Query logs dan data klik per tayang yang digunakanuntuk saran query, memeriksa ejaan, query caching, peringkat, pencarian iklan, dan komponen lainnya

• Ranking analysis– Mengukur efektivitas dan tuning peringkat

• Performance analysis– Mengukur dan efisiensi sistem tuning