• Tidak ada hasil yang ditemukan

Information Retrieval

N/A
N/A
Protected

Academic year: 2021

Membagikan "Information Retrieval"

Copied!
67
0
0

Teks penuh

(1)

Information Retrieval

Selayang Pandang

Husni.Trunojoyo.ac.id

(2)

Bagian I

Internet (Web) Mutakhir Apa itu Information Retrieval

Representasi Teks dalam IR Model Temu-Kembali Boolean

(3)

Retrieval dan Search

• Temu-Kembali

dan

Pencarian

• Hal apa yang terpikirkan saat mendengar “information retrieval”?

• Hal apa yang paling dekat dipikiran saat membahas kata “search” atau “search engine”?

(4)

Retrieval and Search

(5)
(6)

Ukuran Internet (per 27 Agustus 2017)

(7)
(8)
(9)
(10)

Update

Internet

(11)
(12)
(13)
(14)
(15)

6,586,013,574 Pencarian per-Hari...

Search Engine Pencarian per-Hari

Google 4,464,000,000

Bing 873,964,000

Baidu 583,520,803

Yahoo 536,101,505

(16)

Search Engine:

Google

(17)
(18)
(19)

Information Retrieval

• Information retrieval (IR) is finding material (usually documents) of an unstructured nature (usually text) that satisfies an information need from within large collections (usually stored on computers) [Manning, 2008].

• Information retrieval (IR) is the activity of obtaining information

resources relevant to an information need from a collection of information resources [Wikipedia].

(20)

Information Retrieval (IR)

=

(21)

IR itu…

Arsitektur Search Engine…

Inverted Index Crawler Halaman Tersimpan Statistika Situs & Halaman Internet Pembangkit Index

Pengurai Halaman Pembangkit Graf Web Graf Web

Analisa Tautan Pages Sisi Offline Sisi Online User Interface Caching Kemiripan & Ranking Query Ranking Halaman H al am an Ta ut an & An chor s Kata

(22)

Web Crawler

Inverted Index Crawler Halaman Tersimpan Statistika Situs & Halaman Internet Pembangkit Index

Pengurai Halaman Pembangkit Graf Web Graf Web

Analisa Tautan Pages Sisi Offline Sisi Online User Interface Caching

Indexing & Ranking

Query Ranking Halaman H al am an Ta ut an & An chor s Kata ➢ Fungsi

▪ Mengambil (Fetch) halaman web dengan mengikuti hyperlink

▪ Me-refresh halaman secara periodik

➢ Masalah Inti

▪ Bandwidth & storage terbatas vs. volume data sangat besar

▪ Frekuensi update halaman

➢ Solusi

▪ Prioritaskan crawling berdasarkan pada ranking halaman dan statistik lain

(23)

Page Parser:

Pengurai Halaman Web

Inverted Index Crawler Halaman Tersimpan Statistika Situs & Halaman Internet Pembangkit Index

Pengurai Halaman Pembangkit Graf Web Graf Web

Analisa Tautan Pages Sisi Offline Sisi Online User Interface Caching

Indexing & Ranking

Query Ranking Halaman H al am an Ta ut an & An chor s Kata ➢ Fungsi

▪ Mengekstrak aliran data untuk indexing

a. Title: kata-kata dalam <title>…</title> b. URL

c. Body

▪ Teks Anchor ▪ Teks Plain ▪ H1…6

▪ Bold, Italic, etc

▪ Large, Medium, Small

▪ Membangun peta link parsial

▪ Mengirim hyperlink yang ditemukan ke crawler

➢ Masalah Inti

(24)

Pembangkit Index

Inverted Index Crawler Halaman Tersimpan Statistika Situs & Halaman Internet Pembangkit Index

Pengurai Halaman Pembangkit Graf Web Graf Web

Analisa Tautan Pages Sisi Offline Sisi Online User Interface Caching

Indexing & Ranking

Query Ranking Halaman H al am an Ta ut an & An chor s Kata ➢ Fungsi

▪ Membangun inverted index berdasarkan pada data halaman yang telah diparse

➢ Masalah Inti

▪ Efisiensi vs. memory terbatas & terdistribusi

➢ Solusi

▪ Indexing terdistribusi

▪ Partisi berdasarkan dokumen, bukan partisi berdasarkan term

(25)

Relevansi & Ranking

Inverted Index Crawler Halaman Tersimpan Statistika Situs & Halaman Internet Pembangkit Index

Pengurai Halaman Pembangkit Graf Web Graf Web

Analisa Tautan Pages Sisi Offline Sisi Online User Interface Caching

Indexing & Ranking Query Ranking Halaman H al am an Ta ut an & An chor s Kata

➢ Masalah utama dalam IR dan telah dikaji puluhan tahun

➢ Fungsi

▪ Indexing: dengan cepat menemukan halaman yang mengandung term query

▪ Ranking: mengurutkan halaman sesuai dengan relevansi terhadap query

➢ Masalah Inti

▪ Kinerja: inverted list untuk suatu term hot mungkin ratusan megabyte.

▪ Akurasi: fungsi ranking dengan ratusan parameter:

▪ Teks Anchor ▪ Ranking halaman ▪ Term proximity ▪ TF*IDF ▪ … ➢ Solusi

▪ Kinerja: Top-K query & index pruning ▪ Akurasi: Tuning atau learning?

(26)

Caching

Inverted Index Crawler Halaman Tersimpan Statistika Situs & Halaman Internet Pembangkit Index

Pengurai Halaman Pembangkit Graf Web Graf Web

Analisa Tautan Pages Sisi Offline Sisi Online User Interface Caching

Indexing & Ranking

Query Ranking Halaman H al am an Ta ut an & An chor s Kata ➢ Fungsi

▪ Men-cache hasil dari query yang sering untuk menjawab ribuan query per detik dengan waktu respon interaktif

➢ Masalah Inti

▪ Apa yang dicache?

➢ Solusi

▪ Cahing banyak level ▪ Level Query

(27)

Tentang Saya

• Husni

• Web site : Husni.trunojoyo.ac.id • Email : husni@trunojoyo.ac.id • Ruang kerja:

• Lab. SisTer, Teknik Informatika, UTM. • Bidang Keahlian:

• Networking

• Web Application Development

(28)

Setelah Tutorial ini, Anda akan…

1. Memahami pentingnya information retrieval

2. Memperoleh pengetahuan mengenai prinsip-prinsip dari daris sistem temu-kembali informasi

3. Memahami proses pembangunan search engine sederhana, mulai dari pre-processing s.d penanganan query pengguna

4. Memperoleh pemahaman dasar dari tiga paradigm IR

(29)

Outline

• Apa itu IR?

• Representasi teks dalam sistem IR • Model temu-kembali Boolean

• Model ruang vektor

• Temu-kembali Probabilitas klasik

• Pemodelan Bahasa untuk Sistem Temu-Kembali • Perangkat (tools) IR

(30)

Referensi

• C. Manning, P. Raghavan and H. Schutze (2008) Introduction to Information Retrieval, Cambridge University Press

• Versi gratis tersedia di: https://nlp.stanford.edu/IR-book/

• Bruce Croft, Donald Metzler, Trevor Strohman (2010) Search Engines: Information Retrieval in Practice, Addison Wesley

• Edisi revisi (2015) tersedia gratis di: ciir.cs.umass.edu/downloads/SEIRiP.pdf

(31)
(32)
(33)

What is IR?

• Information retrieval (Wikipedia)

• The activity of obtaining information resources relevant to a user’s

information need from a collection of information resources.

• Elemen dari suatu sistem information retrieval:

• Kebutuhan informasi (need, diekspresikan oleh pengguna dalam bentuk

query)

• Sumber daya informasi (resources, biasanya tak terstruktur (unstructured):

text, images, video, audio, dll.

• Komponen untuk retrieval sumber daya relevan secara efisien terhadap

(34)

Kebutuhan Informasi

• Kebutuhan informasi tersebut diekspreskan melalui query

• Kata atau frasa dalam text information retrieval (misal: “serangan ISIS”) • Citra (image) dalam image content retrieval

Kebutuan informasi adalah kemauan individu atau kelompok untuk mencari dan mendapatkan informasi untuk memenuhi kebutuhan sadar atau bawah sadar. Kebutuhan dan ketertarikan terhadap informasi.

(35)

Mengapa Text Information Retrieval?

• Repositori besar sumber informasi tak-terstruktur

• Perusahaan: dokumen teknis, kontrak bisnis

• Pemerintah: dokumentasi, regulasi , undang-undang

• Materi ilmiah: naskah penelitian (seperti di Google Scholar) • Personal: buku, blog, email, file-file

• World Wide Web: paling membutuhakan IR karena skala terbesar dari semua

(36)

Text Information Retrieval

• Sistem yang memerlukan analisis teks fokus pada text

information retrieval dimana model-model berlainan:

• Dalam merepresetasikan daftar dokumen dan query

• Dalam cara menetapkan relevansi dari dokumen terhadap query

• Relevansi dari dokumen adalah skor yang paling sering dijadikan acuan (bukan keputusan biner)

• Daftar dokumen diranking sesuai dengan skor kedekatan (kemiripan) terhadap query

(37)

Area Kajian Disiplin IR

• Web Crawling: menghimpun data dari Web

• Esktraksi Data: mengambil informasi dan URL dari halaman web

• Preprocessing: menerapkan aturan bahasa untuk memudahkan proses IR

dan meningkatkan kualitas relevansi

• Indexing: membuat index (pemetaan term ke daftar dokumen)

• Penanganan Query: mendapatkan dokumen yang relevan dengan Query

(kebutuhan informasi pengguna)

• Klasifikasi dan Klasterisasi: kategorisasi secara terpandu dan tidak

• Rekomendasi: memberikan dokumen yang sesuai dengan kebutuhan/profil

pengguna, berdasarkan kemiripan dokumen atau kemiripan pengguna

(38)
(39)

Representasi Teks dalam IR

• Representasi Tak-Terstruktur (unstructured)

• Teks diwujudkan sebagai suatu himpunan term tak-berurut (sehingga disebut representasi bag-of-words)

• Cukup banyak penyederhanaan: mengabaikan sintaks dan semantik

• Meskipun terlalu sederhana, kinerja retrieval dapat memuaskan

• Representasi Semi Terstruktur

• Beberapa term tertentu dianggap lebih penting (term lain diturunkan atau diabaikan)

• Frasa benda (NP), entitas bernama (named entities), dll.

• Representasi Terstruktur

• Hampir tidak digunakan dalam konteks IR

• Teknik Information extraction (IE) tidak cukup akurat

(40)

Representasi Dokumen Tak-Terstruktur

One evening Frodo and Sam were walking together in the cool twilight.

Both of them felt restless again. On Frodo suddenly the shadow of parting had falling: the time to leave Lothlorien was near.

Potongan dokumen

{(One, 1), (evening, 1), (Frodo, 2), (and, 2), (Sam, 1) (were, 1), (walking, 1),

(together, 1), (in, 1), (the, 3), (cool, 1), (twilight, 1), (Both, 1), (of, 2), (them, 1), (felt, 1), (restless, 1), (again, 1), (On, 1), (suddenly, 1), (shadow, 1), (parting, 1), (had, 1), (falling, 1), (time, 1), (to, 1), (leave, 1), (Lothlorien, 1), (was, 1), (near,1)}

(41)

Representasi Dokumen Semi-Terstruktur

1. y

One evening Frodo and Sam were walking together in the cool twilight.

Both of them felt restless again. On Frodo suddenly the shadow of parting had falling: the time to leave Lothlorien was near.

Potongan dokumen

{(Frodo, 2), (Sam, 1), (Lothlorien, 1)}

Bag of named entity terms

{(evening, 1), (Frodo, 2), (Sam, 1), (twilight, 1), (shadow, 1), (parting, 1), (time, 1), (Lothlorien, 1)}

(42)

Preprocessing

• Dua langkah preprocessing paling umum

• Normalisasi morfologis: stemming atau lemmatization • Penghapusan stop-word

• Normalisasi morfologis

• Mengubah berbagai bentuk kata yang sama ke bentuk umum • Penting bagi Bahasa yang kaya morfologi, termasuk Indonesia

• Stemming (misal automation  automat) lebih sering digunakan daripada

lemmatization (misal automation  automate). Bahasa lebih sering lemmatization,

bukan stemming.

• Penghapusan stop words

• Penghapusan term-term yang miskin maknaseperti articles, prepositions, conjunctions, pronouns, dll.

• Cukup menyimpan kata berisi: nouns, verbs, adjectives, adverbs

• English stop words: http://www.ranks.nl/resources/stopwords.html

• Kedua metode mereduksi kardinalitas dari himpunan dokumen berbentuk bag-of-words dan secara umum meningkatkan kinerja IR

(43)

Formalisasi dari Model IR

• Model Retrieval Dasar adalah triple (fd , fq , r) dimana:

1. fd adalah fungsi yang memetakan dokumen ke representasi untuk retrieval, yaitu fd(d) = xd, dimana xd adalah representsi retrieval dari dokumen d,

2. fq adalah fungsi yang memetakan query ke representasi retrievalnya, yaitu

fq(q) = xq, dimana xq adalah wujud retrieval dari query q,

3. r adalah fungsi ranking (pemeringkatan)

• Melibatkan representasi dokumen pd dan query pq

• Menghitung bilangan real untuk menunjukkan relevansi potensial dari dokumen d untuk query q berdasarkan pd dan pq

relevansi(d, q) = r(fd(d), fq(q)) = r(xd, xq)

(44)

Term di Indeks & Bobotnya

• Index term adalah semua term dalam koleksi (atau kamus)

• Himpunan semua term K = {k1, k2, … , kt} , dimana t adalah jumlah dari term

• Untuk setiap dokumen dj , setiap term ki diberikan suatu bobot wij • Bobot dari term yang tidak muncul dalam dokumen adalah 0

• Dokumen dj direpresentasikan oleh vektor term [w1j ,w2j , : : : ,wtj ] • Misalnya g adalah fungsi yang menghitung bobot, yaitu wij = g(ki, dj) • Pilihan berbeda terhadap fungsi komputasi bobot g dan fungsi

(45)

Cara Kerja Sistem IR

C

ar

a

Ke

rj

a

Si

st

em

IR

(46)

Indexing

Dokumen Asli yang di-Index Aliran Token

Token hasil perubahan

Inverted Index

Tokenizer

Modul-modul Linguistik

Indexer

Friends, Romans, About, You, Caesar, Countrymen Friends You About Romans Caesar Countrymen friend roman caesar countryman friend roman caesar countryman 2 13 3 2 1 9 4 23 16 17

Perubahan ke huruf kecil Penghapusan stop-word sinonimisasi stemming Hapus tanda baca Ambil kata (term)

Petakan setiap term ke nomor dokumen

(47)

Paradigma IR

• Model Information retrieval secara garis besar dibagi ke dalam 3 paradigma:

• Model teori himpunan

• Boolean model

• Extended Boolean model

• Model aljabar

• Vector space model

• Latent semantic indexing

• Model probabilistik

• Classic probabilistic model • Language model

• Selain itu, ada model IR yang memanfaatkan algoritma analisis tautan (misalnya PageRank, HITS di Google)

(48)
(49)

Model Retrieval Boolean

• Dokumen direpresentasikan sebagai bags of words

• Bobot term semuanya biner - wij  {0, 1}

• wij = 1 iff term kidapat ditemukan di dalam bag of words dari dokumen dj

• Query q diberikan sebagai formula logika proporsional terhadap term • Term-term dihubungkan oleh operator Boolean (, ), dapat dinegasikan () • Setiap query q dapat diubah menjadi disjunctive normal form (DNF), q = qc1

qc2  …  qcn, dimana qcl adalah komponen ke-l dari DNF q

(50)

Contoh Temu-Kembali Boolean

• Perhatikan himpunan term berikut:

• K = {Frodo, Sam, blue, sword, orc, Mord}

• Seandainya kita mempunyai dokumen berikut:

• d1: “Frodo stabbed the orc with the red sword"

• d2: “Frodo and Sam used the blue lamp to locate orcs"

• d3: “Sam killed many orcs in Mordor with the blue sword"

• Dokumen mana yang relevan dengan query berikut?

• q1: (Frodo  orc  sword)  (Frodo  blue) {d1, d2}

(51)

Boolean Retrieval - Inverted Index

• Struktur data untuk komputasi retrieval yang efisien

• Inverted file berisi daftar rujukan ke dokumen untuk semua term • Untuk koleksi D berisi dokumen berikut:

• d1: “Frodo and Sam stabbed orcs."

• d2: “Frodo stabbed the orc with the sword." • d3: “Sam stole Frodo's sword."

• Kita mempunyai inverted index berikut:

• L(“Frodo") = {d1, d2, d3} • L(“Sam") = {d1, d3} • L(“orc") = {d1, d2} • L(“stab") = {d1, d2} • L(“sword") = {d2, d3} • L(“stole") = {d3}

(52)

Boolean Retrieval - Inverted Index

• Full inverted index juga menyimpan posisi setiap term dalam suatu dokumen

• Contoh “Frodo": {(d1, 1), (d2, 1), (d3, 3)}

• Inverted index memungkinkan penanganan query Boolean via irisan dan gabungan himpunan

• q: (Frodo  stab)  (Sam  orc)

• Hasilnya diperoleh dengan kpmputasi:

rel (D, q) = (L(“Frodo")  L(“stab"))  (L(“Sam")  L(“orc")) = ({d1, d2, d3}  {d1, d2})  ({d1, d3}  {d1, d2})

= {d1, d2}  {d1} = {d1, d2}

(53)

Model Temu-Kembali Boolean

• Kelebihan

• Hanya satu: kesederhanaan (efisiensi komputasi) • Popular di awal sistem IR komersil (seperti Westlaw)

• Kekurangan

• Mewujudkan kebutuhan informasi sebagai ekspresi bolean tidak intuitif • Model murni (asli)

• No ranking: dokumen dihukumi relevan atau tak-relevan • Kepentingan relative dari term diabaikan

• Model Extended Boolean: varian model Boolean yang melibatkan pengerjaan parsial dari ekspresi Boolean

(54)

Model Ruang Vektor

(55)

Model Ruang Vektor

• Dokumen dan query direpresentasikan sebagai vektor dari term-term • Bobot adalah bilangan pecahan > 0

dj = [w1j, w2j, …, wtj ] q = [w1q, w2q,, …, wtq]

• Relevansi dari dokumen terhadap query diestimasi dengan menghitung jarak atau kemiripan antara dua vektor

• Metrik jarak: Euclidean, Manhattan, dll.

• Lebih relevan saat jarak semakin kecil

• Metrik kemiripan: Cosine, Dice, dll.

(56)

Model Ruang Vektor: Metrik Jarak

1. Euclidean distance

(57)

Model Ruang Vektor: Metrik Kemiripan

3. Cosine similarity

(58)

Model Ruang Vektor: Pembobotan Term

• Berapa bobot w

ij

dari term-term untuk dokumen yang

dihitung?

• Dua asumsi intuitif:

1. Relevansi dari suatu term terhadap dokumen adalah sebanding dengan frekuensinya dalam dokumen tersebut (komponen term

frequency = tf)

• Lebih sering lebih relevan

2. Relevansi suatu term terhadap suatu dokumen berbanding terbalik dengan jumlah dokumen dalam koleksi yang dirinya hadir (komponen inverse document frequency = idf)

• Makin umum di lintas dokumen makin kurang relevan (contoh stopwords seperti “the")

(59)

VSM: Skema Pembobotan

• Skema pembobotan Biner

• Tidak benar-benar sekema pembobotan • Mengabaikan dua asumsi tersebut

• wij = 1 iff dokumen dj mengandung term ki • Skema pembobotan TF-IDF

• Bobot dihitung sebagai perkalian dari komponen term frequency dan inverse

document frequency-nya

(60)

Latihan: Perhitungan Kemiripan dalam SVM

• Koleksi terdiri dari N=3 dokumen: • d1: “new york times”

• d2: “new york post” • d3: “los angeles times”

• Suatu saat, ada query: “new new times”.

• Dokumen mana yang paling relevan dengan query tersebut? Rankingkan!       otherwise 0, 0 tf if , tf log 1 10 t,d t,d t,d w t t log N/df idf  10

(61)

Gunakan Skema Popular

• Pembobotan term: • Normalisasi panjang:

• Kemiripan query q dengan dokumen d, dalam model ruang vektor, menggunakan cosine similarity:

i ix x 2 2  t d t

N

d t

(

1

log

tf

)

log

/

df

w

, ,

  

V i i V i i V i i i

d

q

d

q

d

d

q

q

d

q

d

q

d

q

1 2 1 2 1

)

,

cos(

(62)

Contoh Pencarian Dokumen Relevan

Koleksi dokumen (corpus):

d1 = “Three quarks for Master Mark”

d2 = “The strange history of quark cheese” d3 = “Strange quark plasmas”

(63)

Terbentuk Inverted Index Sederhana

Lexicon dan inverted index:

three → {d1} quark → {d1, d2, d3, d4} master → {d1} mark → {d1} strange → {d2, d3, d4} history → {d2} cheese → {d2} plasma → {d3} xpress → {d4} problem → {d4}

(64)

Dokumen Mana Paling Relevan

• Jika terdapat Query:

“strange” AND “quark” AND NOT “cheese”

• Himpunan hasil:

(65)

Latihan Menghitung Bobot Term: tf.idf

• Jika terdapat koleksi 8 dokumen berikut:

d1 = “Introduction to Expert Systems”

d2 = “Expert System Software: Engineering and Applications” d3 = “Expert Systems: Principles and Programming”

d4 = “The Essence of Expert Systems”

d5 = “Knowledge Representation and Reasoning” d6 = “Reasoning About Uncertainty”

d7 = “Handbook of Knowledge Representation” d8 = “Expert Python Programming”

(66)

Contoh VSM: Cosine Similarity

• Q: “gold silver truck”

• D1: “Shipment of gold damaged in a fire”

• D2: “Delivery of silver arrived in a silver truck” • D3: “Shipment of gold arrived in a truck”

(67)

Referensi

Dokumen terkait

Glavni sistem drugog broda je od punih profila.Veza glavnog stuba i krovnog vezača je kruta.. III

Similarity, Parent Brand Reputation, Perceived Risk, dan Consumer Innovation terhadap Attitude Toward Product of Brand Extension. 2) Sedangkan objek penelitian ini hanya

bahwa untuk melaksanakan Peraturan Daerah kabupaten Ogan /Iir Nomor 04 Tahun 2008 tentang Pembentukan Organisasi Lembaga Teknis Daerah Kabupaten Ogan IIir maka untuk tertib

Dari wawancara diatas dapat diketahui bahwa masih belum optimalnya peningkatan realisasi investasi tersebut.Untuk meningkatkan investasi di Sumatera Barat salah satu

Secara khususnya kajian ini bertujuan menentukan perbezaan Indeks Jisim Badan dalam kalangan murid di sekolah rendah, kaitan obesiti dengan faktor-faktor gaya hidup yang

Djuarni (2011) menjabarkan tentang pembiayaan pada bank syariah, dijelaskan bahwa sistem pembiayaan musyarakah pada Bank Jabar Syariah sama dengan siatem pemberian kredit

Yang dimaksud dengan Rencana Anggaran Biaya (RAB) suatu bangunan atau proyek adalah perhitungan banyaknya biaya yang diperlukan untuk bahan dan upah, serta biaya- biaya lain

Tujuan penulisan ini adalah untuk mendeskripsikn konsep, tema, proses visualisasi, teknik, dan bentuk lukisan dengan judul Kelemahan Penulis dalam berinteraksi dengan Teman