Ανάκτηση Πληροφοριών
Download
Report
Transcript Ανάκτηση Πληροφοριών
Ανάκτηση Πληροφοριών
Χρήστος Παπαθεοδώρου
Τμήμα Αρχειονομίας - Βιβλιοθηκονομίας
Ιόνιο Πανεπιστήμιο
1
Ανάκτηση Πληροφορίας
ΠΩΣ εκφράζουμε ανάγκες πληροφόρησης
(queries)
ΠΩΣ εντοπίζουμε και ανακτούμε
πληροφορίες που ικανοποιούν τις ανάγκες
ΠΩΣ αξιολογούμε τα αποτελέσματα της
αναζήτησης
2
Από την αρχή…Αφαίρεση
Ο πραγματικός κόσμος εκφράζεται από
δεδομένα (data) που συλλέγονται από
παρατηρήσεις του πραγματικού κόσμου
Οι ανάγκες πληροφόρησης (queries)
εκφράζονται (εξαρτώνται) από τη δομή,
τη λειτουργία και το περιεχόμενο του
Πληροφοριακού συστήματος
3
Πληροφοριακό Σύστημα
Εισαγωγή δεδομένων
Εξαγωγή πληροφορίας
Πληροφορία = σύνολο δεδομένων που
καλύπτουν μια ανάγκη πληροφόρησης
(query)
4
Συστατικά Πληροφοριακού
Συστήματος
Εσωτερικά συστατικά
– μέσα (media) αποθήκευσης δεδομένων
– συσκευές (devices) επεξεργασίας
δεδομένων
– αλγόριθμοι (algorithms)
Εξωτερικά
– χρήστες (users)
– χρηματοδότης (funder)
– λειτουργοί (servers)
5
Μέτρα αξιολόγησης
Αποτελεσματικότητα (effectiveness,
user)
Αποδοτικότητα (efficiency, server)
Οικονομικότητα (economy, funder)
6
Information Retrieval System
I
n
p
u
t
Documents
queries
Document
classification
Output
Processor
Search strategy
feedback
7
Information retrieval process
ranked docs
User Interface
user feedback
user need
Text Operations (tokenization,
stopwords, stemming, etc.)
Query operations
Indexing
text
DB manager
query
Searching
Retrieved docs
Ranking
Index
Docs
database
8
Ανακεφαλαίωση
IR = < D, Q, F, R(qi, dj)>
D: documents
Q: queries
F: πλαίσιο αναπαράστασης κειμένων
R: συνάφεια query qi με κείμενο dj αριθμός 0-1
9
Ανάγκες, πληροφορίες =
documents
Τι είναι documents?
Είναι documents τα queries?
– Τα queries εκφράζονται σαν topics
– Τα documents είναι πρότυπα για τα queries
Matching queries = documents
Mapping queries documents
10
Κατηγορίες Documents
Δομημένα (structured)
– εγγραφές, πεδία (Βάσεις Δεδομένων)
Πλήρως αδόμητα
– ελεύθερο κείμενο
Προεπεξεργασία (pre-processing)
– Metadata
– Stemming
11
Παρελκόμενα
Document identifier
Ταξινομικό πεδίο
Λέξεις - φράσεις κλειδιά (keywords)
Περίληψη (abstract)
Εξαγωγές (extraction) - εκτός συγγραφέα
Ανασκοπήσεις (reviews)- εκτός
συγγραφέα
12
Documents
Multilingual documents - searching
– Character encoding (Unicode 16-bit)
Multimedia Documents
– αναπαράσταση, περιγραφή, αναζήτηση
(query) και ανάκτηση
Structured Documents
– metadata descriptions
Distributed Collections
– Federated search
13
Βασικό Παράδειγμα
Query: restaurants AND (Mideastern
OR vegeterian) AND inexpensive
Απάντηση: κείμενα που περιλαμβάνουν
τις λέξεις restaurants, Mideastern,
inexpensive ή τις λέξεις restaurants,
vegeterian, inexpensive
14
Restaurants
Mideastern
Inexpensive
restaurants,
mideastern,
inexpensive
OR
Restaurants
Vegeterian
Inexpensive
restaurants,
vegetarian,
inexpensive
15
Query Languages
Βοηθούν το χρήστη στην υποβολή ερωτημάτων και
στην κατάταξη των αποτελεσμάτων (οι data retrieval
γλώσσες δεν κάνουν ranking)
Πρωτόκολλα: γλώσσες που δεν απευθύνονται στο
χρήστη αλλά χρησιμοποιούνται από συστήματα (π.χ.
για υποβολή queries σε CD-ROM archive ή σε online databases, Ζ39.50, CCL, WAIS)
Δυνατότητες γλωσσών υποβολής ερωτημάτων:
– Keywords (Single words, Context, boolean, natural
language)
– Pattern matching (Λέξεις, προθέματα, επιθέματα, διαχείριση
λαθών, διαστήματα, τυπικές εκφράσεις και επεκτάσεις)
– Structural queries (Forms, hypertext, hierarchical)
16
Keyword based querying (1/2)
Υποβολή απλών λέξεων
Υποβολή φράσεων
Μέτρηση εγγύτητας (proximity)
Υποβάλλονται λέξεις ή φράσεις και μια
μέγιστη επιτρεπτή απόσταση μεταξύ τους
Ερωτήματα σε φυσική γλώσσα
– ερωτήματα και κείμενα μετατρέπονται σε
διανύσματα όρων με βάρη για κάθε όρο
– αναζήτηση κειμένων που «μοιάζουν»
περισσότερο με τα ερωτήματα
– «εξαγωγή» αντιπροσωπευτικών λέξεων –
κλειδιών από τα ερωτήματα
17
Keyword based querying (2/2)
Boolean queries: αποτελούνται από
– απλά queries (atoms) που ανακτούν κείμενα
– boolean τελεστές (operators, AND, OR, NOT
BUT) που εφαρμόζονται σε σύνολα κειμένων
– Ορίζεται δέντρο ερωτήματος που τα φύλλα είναι
στα queries και οι εσωτερικοί κόμβοι στους
τελεστές
– Παράδειγμα: μετάφραση AND (σύνταξη OR
συντακτικό)
AND
μετάφραση
σύνταξη
OR
συντακτικό
18
Αναγνώριση προτύπων (pattern
matching) (1/3)
Αναζήτηση λεκτικών προτύπων (patterns)
μέσα σε κείμενα
Τα πρότυπα συνδυάζονται μεταξύ τους με
boolean operators για το σχηματισμό
keyword queries
Substrings
– π.χ. any flow many flowers
Διαστήματα (ranges): αλφαβητική αναζήτηση
λέξεων ανάμεσα σε ένα διάστημα από strings
– π.χ. αναζήτηση σε λεξικά
19
Αναγνώριση προτύπων (2/3)
Ερωτήματα με λάθη (allowing errors): δίνεται
string το οποίο μεταβάλλεται για να βρεθούν
παρόμοιες λέξεις
– Μεταβολή: εισαγωγή διαγραφή, αντικατάσταση γραμμάτων
και θέσης τους
– Threshold στις μεταβολές (edit distance): το ελάχιστο
πλήθος των μεταβολών που απαιτούνται για να γίνουν ίδια
δύο strings.
Τυπικές εκφράσεις (regular expressions): strings ή
οι ακόλουθοι συνδυασμοί από strings:
–
–
–
–
Concatenation (σύζευξη) strings (τη λε) τηλε
Union (εναλλακτική χρήση) (με|σε)
Επανάληψη ενός string e*
π.χ. pro (tein|blem) (ε|0|1|2)* protein ή problem02, ε το
κενό string
20
Αναγνώριση προτύπων (3/3)
Extended patterns
– Classes of characters: συνδυασμός
συνόλου χαρακτήρων ανάμεσα στις θέσεις
ενός patterns (π.χ. εισαγωγή αριθμών στις
θέσεις ενός pattern)
– Wild characters (π.χ. τηλε* τηλεόραση,
τηλε-εκπαίδευση, τηλε-διάσκεψη κ.λπ.)
– Conditional expressions: αναζήτηση ή όχι
ενός μέρους από ένα pattern.
21
Structural queries (1/3)
Επιτρέπουν την αναζήτηση
συνδυάζοντας το περιεχόμενο των
documents με τη δομή τους
Forms
– Τα documents είναι δομημένα σε πεδία
που δεν επικαλύπτονται, ούτε είναι
φωλιασμένα
– Αναζήτηση patterns σε συγκεκριμένο πεδίο
22
Structural queries (2/3)
Υπερκείμενα
– Κείμενα που έχουν συνδέσεις είτε
• μεταξύ τους
• σε συγκεκριμένα σημεία του κειμένου
– Αναζητούνται patterns σε σελίδες ή σε γειτονικές
τους
Ιεραρχική δομή
– Αναζητούνται patterns σε συγκεκριμένες δομές
– Οι δομές κωδικοποιούνται από tags (όπως στην
HTML), τα οποία καθορίζουν περιοχές στο κείμενο
– Οι περιοχές μπορεί να ακολουθούν η μία την άλλη,
να είναι επικαλυπτόμενες, ή να είναι φωλιασμένες
– Γίνεται indexing όχι μόνο στους όρους αλλά και
στις περιοχές
23
Structural queries (3/3)
Παράδειγμα ιεραρχικής δομής και ερωτήματος
Κεφάλαιο 4
κεφάλαιο
4.1 Εισαγωγή
Σε αυτό το κεφάλαιο
…
4.4 Δομημένα ερωτήματα
παράγραφος
τίτλος
παράγραφος
τίτλος
σχήμα
Query: το σχήμα μιας
παραγράφου με τίτλο
«δομημένα»
24
Αξιολόγηση Ανάκτησης
Precision
– Relevant answers (Ra)/ Total answers (A)
Recall
– Relevant answers / Relevant documents
Documents
R
Ra A
25
Παράδειγμα
Σε ένα ερώτημα q, τα σχετικά κείμενα είναι:
d3, d5, d9, d25, d39, d44, d56, d71, d89, d123
Η μηχανή αναζήτησης επέστρεψε με σειρά
σχετικότητας τα κείμενα: d123, d84, d56, d6, d8,
d9, d511, d129, d187, d25, d38, d48, d250, d113, d3
Ακρίβεια (precision) = Ra/A = 5/15= 33,3%
Ανάκληση (recall) = Ra/R = 5/10 = 50%
26
Καμπύλη ακρίβειας / ανάκλησης
Απάντηση
Ακρίβεια
Ανάκληση
1
1/1
1/10
2/3
2/10
2
3
120,0
4
100,0
6
3/6
3/10
7
8
80,0
60,0
40,0
20,0
9
10
Ακρίβεια
5
0,0
4/10
4/10
5/15
5/10
10,0
20,0
30,0
40,0
50,0
60,0
Ανάκληση
11
12
13
14
15
27
Αξιολόγηση ανάκτησης
Μέτρα συνδυασμού precision – recall
– Μέσοι αρμονικοί
– Άλλα στατιστικά
Μέτρα βασισμένα στο χρήστη
– V σχετικά κείμενα, γνωστά στο χρήστη
– Rk,απαντημένα και γνωστά (AV)
– Ru, απαντημένα και άγνωστα στο χρήστη
– Κάλυψη αναγκών (coverage) χρήστη = |Rk | / |V|
– Καινοτομία (novelty) ποσοστό νέων σχετικών
κειμένων = |Ru| / (|Rk | + |Ru| )
Συλλογές κειμένων για αξιολόγηση μεθόδων
– TREC
– ISI
28
Αρχές Σχεδιασμού Interfaces
Offer informative feeback
– relationship among retrieved documents
– retrieved documents and collection
metadata
Reduce working memory load
– track the choices
– return to abandoned strategies
– suggestions of related terms, metadata
Alternative interfaces for novice and
experts
29
Εξέλιξη
Command Lines and Boolean queries
Forms and menus
«Τμηματικά queries» και συνδυασμός
τους
Φράσεις και απόσταση όρων
Ελεύθερο κείμενο
30
Context
Abstract
Query Term Hits within document
– keyword-in-context
Query Term Hits between documents
– υποσύνολα των όρων του query στα
κείμενα
Hyperlinks και πίνακες για συσχέτιση
αποτελεσμάτων
31
Web searching
Search Engines
Web directories
Hyperlink structure exploitation
32
Προβλήματα
Κατανεμημένα δεδομένα
Ασταθή δεδομένα
Μεγάλος όγκος δεδομένων
Ποιότητα
Ανομοιογενή δεδομένα - πολυμέσα
33
Search Engines
Διαφορά από IR:
– Δεν γίνεται αναζήτηση σε κείμενα αλλά σε
(κεντρικό) index
Indexing: inverted files
Query
Engine
User
Index
Interface
Crawler
Web
Indexer
34
Query Engine
Boolean, proximity, stemming, stop
words
– Alta-vista: ένωση σελίδων που
περιλαμβάνουν τουλάχιστον ένα όρο
– Hot Bot: ένωση σελίδων που
περιλαμβάνουν ΟΛΟΥΣ τους όρους
Πολλές search engines με το ίδιο query
engine (Magellan, Excite)
35
Crawling
Στόχος: ενημέρωση κεντρικού
καταλόγου για νέες σελίδες
Περιοδική ενημέρωση (μέχρι 2 μήνες),
ενημέρωση και από διαχειριστές των
σελίδων
Τεχνικές:
– Depth first: επέκταση σε βάθος ενός link
– Breadth first: όλα τα links μιας σελίδας
36
Harvesting
Distributed architecture
Πλεονεκτήματα (μειονεκτήματα
crawlers)
– Επιβάρυνση λειτουργίας web servers
– Κυκλοφοριακό πρόβλημα: ανάκτηση
σελίδων, το περιεχόμενο «πετάγεται»
– Ανεξαρτησία engines: χωρίς συντονισμό
Μειονεκτήματα: απαίτηση πολλών
servers
37
Αρχιτεκτονική
Replication
Manager
User
Broker
Object
cache
Broker
Gatherer
Web site
38
Brokers - Gatherers
Gatherers: συλλογή πληροφοριών σε
τακτά χρονικά διαστήματα
– Πληροφορίες σε πολλούς brokers
– Τρέχει για ένα server (no traffic)
Brokers: User Interface και indexing
από gatherers και brokers
– Θεματικοί και Κεντρικοί brokers
– Συνεργασία brokers (filtering)
39
Replicator - Cache
Replicator:
– Αντιγραφή brokers ανάλογα με τη ζήτηση
και το μέγεθος
– Ανάθεση gatherers σε brokers
Object cache:
– μείωση φόρτου server, κυκλοφορίας
40
Web directories - Browsing
Ιεραρχικές ταξινομήσεις ανθρώπινης
γνώσης (Yahoo)
Πλεονέκτημα: Ακρίβεια ανάκτησης
Μειονέκτημα: ταξινόμηση
Συνδυασμός searching – browsing
(WebGlimpse, επιτρέπει αναζήτηση στο
site – page indexing)
Meta-searchers
41
Hyperlink searching
Web Query Languages
– Συνδυασμός content με link structure
Software Agents
– Ψάχνουν στα Web pages ακολουθώντας τα
links
– Heuristics για επιλογή προτεραιότητας
σελίδων
42
Βιβλιογραφικά Συστήματα
Διαφορές από IR
– Καταγωγή
– Περιεχόμενο - δομή
– Χρήστες
IR σε Βάσεις Δεδομένων Κειμένων
Διαφορές Παραγωγών - Πωλητών
– Data - Search mechanisms
43
Βάσεις Δεδομένων
19ος αι.: Abstracting & indexing tools
Επιστημονικές εταιρίες - Κυβερνητικοί
Οργανισμοί
Προϊόντα που καλύπτουν ανάγκες
πληροφόρησης
Δομή και πλήρες κείμενο
CCL, Z39.50, ISO 8777, boolean &
proximity operators, index, thesaurus,
natural language
44
OPACs
1η γενεά
– μικρές, non-stadard εγγραφές
– αναζήτηση με τίτλο, συγγραφέα
2η γενεά
– αναζήτηση με θεματικές κεφαλίδες, λέξεις κλειδιά
3η γενεά
– λεξιλόγιο αναζήτησης,
– αυξημένης πληροφορίας εγγραφές,
– GUI, Z39.50, metadata
45
Τυπικός ορισμός document
Λεξιλόγιο V, ελεγχόμενο (controlled) ή όχι
όροι wi,
document α c( ) f (wi , )w V
i
f ( wi , ) συχνότητα όρου wi στο α
46
Boolean model
f (wi , ) {0,1}
Βασισμένο στη θεωρία συνόλων
– Οι όροι του query συνδέονται με τους τελεστές
AND, OR, NOT
Παράδειγμα:
– Query: restaurants AND (Mideastern OR
vegeterian) AND inexpensive
– Απάντηση: κείμενα που περιλαμβάνουν τις λέξεις
restaurants, Mideastern, inexpensive ή τις λέξεις
restaurants, vegeterian, inexpensive
47
Restaurants
Mideastern
Inexpensive
restaurants,
mideastern,
inexpensive
OR
Restaurants
Vegeterian
Inexpensive
restaurants,
vegetarian,
inexpensive
48
Boolean model (συνέχεια)
Το query μεταγράφεται σε κανονική διαζευκτική
μορφή
q = ka (kb ¬ Kc) DNF= (ka kb )(ka ¬ Kc) (1,1,1)(1,1,0)(1,0,0)
Similarity query - documents: όταν τουλάχιστον μία
συνιστώσα της κανονικής διαζευκτικής μορφής του
query form ταυτίζεται με ένα document
– Τιμές similarity 0 ή 1
Παράδειγμα:
– q = ka (kb ¬ Kc) (1,1,1)(1,1,0)(1,0,0)
– d = (0,1,0)
– Similarity = 0
49
Disjunctive normal form
Το query μεταγράφεται σε Disjunctive normal form (συνιστώσα είναι όπου
υπάρχει αληθής τιμή στον πίνακα αληθείας)
q = ka (kb ¬ Kc) DNF= (ka kb )(ka ¬ Kc) (1,1,1)(1,1,0)(1,0,0)
ka
kb
Kc
¬ Kc
ka kb
ka ¬ Kc
(ka kb )(ka ¬ Kc)
1
1
1
0
1
0
1
1
1
0
1
1
1
1
1
0
1
0
0
0
0
1
0
0
1
0
1
1
0
1
1
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
0
50
Μειονεκτήματα Boolean model
Δεν ορίζεται η Αξία κάθε όρου
Σειρά εμφάνισης του κάθε όρου
Ο παράγοντας NOT
Δυσκολία σύνταξης boolean expressions
Data retrieval και όχι information retrieval
Δεν προβλέπει
– Ranking
– Partial match
Επιστρέφει είτε πολύ λίγα είτε πάρα πολλά
51
Vector Model (1/2)
c( ) f ( wi , )wi V , f ia Z
Similarity: Συνημίτονο γωνίας δύο documents
dk, dj
Υπολογίζεται από το εσωτερικό γινόμενο των
διανυσμάτων των documents
f
i
k
i
f k2
fj
f j2
i
52
Vector model (2/2)
Επιλογή με κατώφλι (threshold) στο
βαθμό ομοιότητας (similarity)
Πρόβλημα η μέτρηση των συχνοτήτων
των όρων:
αντιπροσωπευτική μέτρηση της βαρύτητας
των όρων
53
Πλεονεκτήματα - μειονεκτήματα
Πλεονεκτήματα
– Κατάταξη – αξιολόγηση κειμένων με βάση
τους όρους τους
– Partial matching
– Καλύτερη απόδοση
Μειονέκτηματα
– Θεώρηση ανεξαρτησίας των index terms
– Οι όροι που λείπουν
54
TFIDF Model
N documents, ni πλήθος documents με
τον όρο ki, freqij η συχνότητα του όρου
στο document dj.
freq
f
Term frequency
max freq
N
Inverse document frequency idf i log
n
i
Term weighting: tf * idf
ij
ij
lj
55
Πλεονεκτήματα – μειονεκτήματα
Καλύτερη απόδοση
Προσέγγιση partial matching
Ranking με βάση την τιμή του
συνημίτονου
Μειονέκτημα: θεώρηση ότι οι index
terms είναι ανεξάρτητοι
56
Web search engines Ranking
Tf-idf model
Boolean spread: Επέκταση του boolean model
1. Πόσοι όροι ανήκουν σε κάθε σελίδα της απάντησης
2. Πόσοι όροι ανήκουν σε κάθε σελίδα στην οποία υπάρχουν
links από τις σελίδες της απάντησης
Vector spread: Επέκταση του vector model
υπολογίζοντας το similarity και με τις σελίδες στις οποίες
υπάρχουν links από τις σελίδες της απάντησης
Most cited: μόνο όροι των σελίδων που έχουν links στις
σελίδες της απάντησης
Web query: πόσο συνδεδεμένες είναι οι web pages
HITS: hubs & authorities
57
Η έννοια της ομαδοποίησης
κειμένων (document clustering)
Συλλογή C από κείμενα (index terms)
Query: Σύνολο Α από index terms
Ποια κείμενα ανήκουν στο Α:
– Ποια χαρακτηριστικά στοιχεία περιγράφουν
τους όρους του Α (intra – cluster similarity,
tf)
– Ποια χαρακτηριστικά στοιχεία διακρίνουν τα
μέλη του Α (inter-cluster similarity, idf)
58
Latent Semantic Indexing
Στόχος:
– Η απεικόνιση του πίνακα documents-terms
σε ένα μικρότερων διαστάσεων πίνακα που
αντιστοιχεί σε έννοιες (concepts)
Όχι λεξική ομοιότητα αλλά εννοιολογική
Μαθηματικά πολύπλοκο μοντέλο
Πολύ καλές αποδόσεις
59
Άλλα μοντέλα
Θεωρία συνόλων
– Fuzzy set
Αλγεβρικά
– Generalised Vector model
– Neural networks
Θεωρία Πιθανοτήτων
– Bayesian networks
– Inference networks
– Belief networks
60
Τεχνικές Βελτίωσης (expansion)
Query
Ο χρήστης υποδεικνύει τα σχετικά κείμενα
(User relevance feedback)
Χωρίς ανάμιξη του χρήστη
– Πληροφορίες από τα επιστραφέντα κείμενα
(automatic local analysis)
– Πληροφορίες από τη συλλογή κειμένων (automatic
global analysis)
61
User Relevance Feedback (1/2)
Ο χρήστης αξιολογεί τα επιστραφέντα
κείμενα (relevant, non-relevant clusters)
Υπόθεση: τα σχετικά κείμενα έχουν
«παρόμοιους όρους»
Στόχος: Τροποποίηση του ερωτήματος
με συναφείς όρους
Τεχνικές:
– query expansion,
– term reweighting
62
User Relevance Feedback (2/2)
query expansion
– αναζήτηση εκείνου του query vector που
διακρίνει καλύτερα τα relevant από τα
irrelevant documents
– Χρησιμοποιείται στο vector model.
term reweighting
– αναπροσδιορισμός των συντελεστών
βαρύτητας στους όρους του query
– Χρησιμοποιείται στα vector και probabilistic
models
63
Automatic Global Analysis
Similarity thesaurus
– Index terms, similarity query-index term
Statistical Thesaurus
– Ομαδοποίηση κειμένων με κριτήριο το
similarity
– Επιλογή των όρων για κάθε ομάδα
64
Relevance feedback interfaces
Σημαντικά σε επίπεδο στρατηγικής
Συστατικό collaborative filtering
Interface:
– Check the relevant
– Select a value
Πρόβλημα: 2ο judgment
– Λύση: more links
65
Recommendation systems
Social recommendation ή collaborative
filtering:
– Relevance feedback by many users for
information ranking
Μέθοδος:
– k-nearest neighbors (case-based
reasoning)
Εφαρμογές:
– User actions prediction
– User profile learning
– Links evaluation – recommendation
(Letizia, Syskil & Webert)
66