Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoGinevra Marchetti Modificato 10 anni fa
1
Information Retrieval Definizioni e metodi
2
Definizioni IR tratta problemi di rappresentazione, memorizzazione, organizzazione e accesso ad informazioni Obiettivo: facilitare laccesso alle informazioni cui un utente è interessato Un testo libero non può direttamente essere usato per interrogare gli attuali motori di ricerca su Web. Una descrizione degli interessi dellutente va trasformata in una query, una struttura di dati (usualmente un vettore) adatta allelaborazione da parte di un motore di ricerca.
3
Caratterizzare linteresse dellutente Caratterizzare linteresse di un utente non è facile: trova tutte le pagine che contengono informazioni su squadre di tennis di Università Americane, e che partecipino alle gare NCAA. Mi interessano solo documenti che riportino anche la qualifica di queste squadre negli ultimi 3 anni e la email o telefono del loro allenatore Rosso: irrilevante per la query Blu: necessitano una qualche forma di ragionamento induttivo, es: MIT is_a Università_Americana march_2002 january_2000 january_2003
4
..Tuttavia anche in casi più semplici cè il problema del silenzio-rumore Esempio: chi ha inventato il web? http://www.google.it
5
Se si cerca sulla base di parole-chiave le risposte possono essere molto diverse Se si cerca sulla base di parole-chiave le risposte possono essere molto diverse
6
Dati e informazioni: che differenza? Data retrieval: trovare oggetti che soddisfino condizioni chiaramente specificate mediante una espressione regolare o di algebra relazionale: FIND person WHERE age>40 AND…OR... Un errore è segnale di totale fallimento del sistema (la risposta non esiste) Information retrieval: richiede una interpretazione della richiesta dellutente. I documenti recuperati non possono essere classificati tout court come buoni o cattivi, ma vanno associati ad una misura di rilevanza rispetto alla richiesta dellutente (o meglio: allinterpretazione della richiesta!) La nozione di rilevanza è centrale in IR
7
Perché IR è importante –IR aveva una ristretta nicchia di interesse (bibliotecari ed esperti di informazioni, es. agenzie di stampa) –Lavvento del Web ha cambiato radicalmente le cose Una sorgente di informazioni virtualmente illimitata Accesso universale ed a basso costo Non esiste un controllo editoriale centralizzato Molti nuovi problemi si pongono: IR è vista come una area chiave per identificare soluzioni appropriate
8
Le azioni dellutente in un sistema di IR Una sessione di Retrieval comporta la specifica degli interessi dellutente e la sua trasformazione in una query (usualmente, un insieme di parole chiave o keywords) Se linteresse dellutente è mal specificato, o è molto vasto, lutente può utilizzare una interfaccia interattiva (es. finestre a scelta multipla), visualizzare alcuni documenti proposti, seguire hyperlinks a partire da documenti che più lo interessano, o dettagliare meglio la sua query. Si parla allora di una sessione di Browsing. Retrieval Browsing Database
9
Information retrieval session: digita la query e ottieni i risultati
10
Browsing Session: seguendo gli hyperlinks, esplora i documenti
11
Pulling vrs pushing Retrieval e Browsing vengono classificate come azioni di pulling: lutente tira fuori le informazioni richieste Alcuni sistemi sono in grado di prendere iniziative, cioè di sospingere (push) documenti verso lutente. Ad esempio, filtrando notizie periodicamente sulla base di profili di utente (web assistant, information filtering and extraction).
12
Fasi di un processo di IR Lutente esprime un interesse La query viene confrontata con i documenti dellarchivio I documenti ritenuti rilevanti vengono presentati allutente Lutente può raffinare la sua query, o navigare a partire dai risultati della ricerca
13
Problemi legati al processo di retrieval Interessi dellutente e documenti sono espressi in linguaggio naturale: perché un programma di IR possa analizzarli occorre generare una rappresentazione formale Come confrontare una query ed un documento? Occorre un modello, o schema, di confronto Poiché, al contrario di un sistema di interrogazione di basi dati, il risultato di un confronto non è binario, occorre definire una misura di rilevanza come risultato di un confronto, e presentare allutente le risposte in ordine di rilevanza
14
Una caratterizzazione formale del task IR Def. Un modello di IR è una quadrupla [D,Q, F, R (q i,d j )] dove: –D è un insieme di viste logiche, o rappresentazioni dei documenti nella collezione –Q è un insieme di viste logiche, o rappresentazioni dei bisogni informativi dellutente, dette query –F è uno schema per modellare le rappresentazioni dei documenti, le query, e le inter-relazioni fra query e documenti –R (q i,d j )] è una funzione di rilevanza, o ranking R : Q D che definisce un ordine fra i documenti, in relazione alla query q i
15
Query Quanto è corretta la rappresentazione del documento ? Quanto è corretta la rappresentazione della query ?? Quanto esattamente corrisponde il documento alla query? Collezione documenti Rappresentazione Documenti Rappresenta zione query Risposta PROBLEMI NEI SISTEMI DI IR Quanto sono rilevanti i risultati ?
16
Architettura di un sistema di IR Modulo per il trattamento dei testi (trasformare query e documenti secondo una rappresentazione formale) Document management system: inserimento cancellazione, aggiornamento dellarchivio di documenti Modulo di indicizzazione: puntatori ad elementi atomici dei documenti, che ne definiscono il contenuto (es. parole- chiave) Modulo di ricerca: data una query seleziona i documenti (sulla base del sistema di indici) che sono rilevanti Modulo di ranking: ordina le risposte sulla base di una misura di rilevanza
17
Il processo di retrieval (più in dettaglio) Interfaccia utente Operazioni sui testi Operazioni sulla query Indicizzazi one ricerca ranking Indici Testi query user need user feedback Documenti pesati Doc. recuperati Vista logica inverted file DB Manager Module Database dei testi Testi Cerco curricula di personale esperto nella progettazione di siti web Personal espert progettazion sit web (espert conosc) (realizzaz progettaz) sit web
18
3 fasi fondamentali Operazioni sui testi (query e documenti) Generazione di indici (strutture di puntamento) Ricerca e ranking
19
Operazioni sui testi Un sistema di IR genera una rappresentazione più generale e astratta dei documenti e delle richieste degli utenti (query), detta logical view, o rappresentazione. Quando la rappresentazione di un documento comprende lintero insieme delle parole che lo compongono, si parla di full text logical view. Tuttavia, anche nei moderni computers sono necessarie alcune operazioni di compressione dellinformazione Queste operazioni possono essere finalizzate non solo alla compressione (es. eliminazione di articoli, congiunzioni., lemmatizzazione...) ma anche alla generalizzazione (non rappresentare termini (ambigui) ma concetti )
20
Rappresentazione e Indicizzazione dei documenti Nei sistemi di IR ogni documento viene rappresentato mediante un insieme di parole-chiave o termini indice Un termine-indice è una parola ritenuta utile per rappresentare il contenuto del documento In genere, nei sistemi di IR classici, gli indici sono nomi, perché maggiormente indicativi del contenuto Tuttavia, nei motori di ricerca vengono considerati tutti i termini (full text representation) Gli indici vengono utilizzati per generare strutture di puntamento ai documenti della collezione, facilitandone il recupero a fronte di una query.
21
Ranking (ordinamento) Un ranking è un ordinamento dei documenti recuperati che dovrebbe riflettere gli interessi dellutente Ebasato su : –Identificazione di gruppi di termini comuni –Condivisione di termini pesati –Probabilità di rilevanza La classificazione dei modelli di IR è basata si diversi criteri di ranking
22
Termini indice documenti query match ranking Operazioni sui testi Documenti Bisogni Informativi
23
Trattamento dei testi, strutturazione e metodi di Ricerca
24
1. Trattamento dei testi e generazione della rappresentazione formale Si estraggono dal documento le parole ritenute rilevanti per caratterizzarne il contenuto Questo elenco di parole o keywords viene comunemente rappresentato come un vettore Il vettore ha tante dimensioni quanti sono i termini indice (se V è il vocabolario, n=|V|) Se v j (w 1,w 2..w n ) è il vettore estratto dal documento j, w i indica la presenza o assenza del termine i nel documento. A seconda del modello di IR utilizzato, w i è un booleano o un reale.
25
d i =(..,..,…after,..attend,..both,..build,.before,..center, college,…computer,.dinner,………..university,..work)
26
Operazioni sui testi La fase di trattamento dei testi ha come scopo individuare gli elementi caratterizzanti un testo, e generare una rappresentazione formale (in genere un vettore). Il trattamento può essere da molto semplice a molto complesso: –Tokenizzazione: identificazione dei singoli elementi (parole, spazi, punteggiatura..) –Lemmatizzazione: identificazione della radice dei termini (vadano andare) –Identificazione di stringhe terminologiche (consiglio di amministrazione) nomi propri (Presidente Giorgio Napolitano), date e numeri (3-06-08, 3 giugno 2008..) –Analisi strutturale (sintassi) e semantica (piano pianoforte /progetto/ripiano/piano di edificio..)
27
Operazioni sui testi Struttura (parag, titoli, tags html XML...) Full textTermini indice struttura Spaziature, accenti stopwords lemmatizzazione Operazioni+ complesse Doc. Nomi propri, semantica 1.Identificazione delle keywords o tokens rilevanti Estrazione indici 2.Definizione di una struttura di memorizzazione dei documenti efficiente ai fini del recupero
28
Tokenizzazione Un testo va trasformato in una lista di elementi significativi detti token. A volte, la punteggiatura, i numeri, e la differenza fra maiuscole e minuscole possono essere elementi significativi. Anche le etichette html (o xml) possono o meno essere eliminate. Generalmente, più superficiale è lanalisi del testo, più dettagli vengono eliminati. Lapproccio più semplice –quello usato dai motori di ricerca- consiste nellignorare numeri e punteggiatura e considerare solo stringhe contigue di caratteri alfabetici come tokens.
29
Tokenizzazione di simboli HTML Cosa fare del testo racchiuso nei comandi html che tipicamente non vengono visualizzati? Alcune di queste stringhe sono indicative del contenuto del testo: –Le parole contenute negli URLs (www.acquistionline.it) –Le parole contenute nei meta testi delle immagini. Lapproccio più semplice esclude dalla tokenizzazione tutte le informazioni contenute fra tag HTML (fra ).
30
Tipi di documenti Documenti Stringhe di testoDocumenti su files Files Testo Files HTML (per le query digitate da tastiera) (ASCII files)(HTML files) Documenti web: immagini, audio, filmati, ma anche sofware, dati strutturati..
31
Stopwords Tipicamente vengono eliminate parole ad elevata frequenza in un linguaggio, dette stopwords (es. parole funzionali, in inglese: a, the, in, to; o pronomi: I, he, she, it, ecc.). Le Stopwords sono ovviamente dipendenti dalla lingua. Vector Space Retrieval (VSR) utilizza un set standard di circa 500 parole inglesi. http://bll.epnet.com/help/ehost/Stop_Words.htm Le stringhe di stopwords vengono memorizzate in una hashtable per essere riconosciute in tempo costante.
32
Stemming Si intende per stemming il processo di riduzione di un termine al lemma o alla radice, in modo da riconoscere variazioni morfologiche della stessa parola. –comput-er,comput-ational, comput-ation compute Lanalisi morfologica è specifica di ogni lingua, e può essere molto complessa (ad esempio in Italiano ben più che in Inglese) I sistemi di stemming più semplici si limitano ad identificare suffissi e prefissi e ad eliminarli.
33
Porter Stemmer E una procedura semplice, che iterativamente riconosce ed elimina suffissi e prefissi noti senza utilizzare un dizionario (lemmario). Può generare termini che non sono parole di una lingua: –computer, computational, computation diventano tutti comput Vengono unificate parole che in effetti sono diverse (matto e mattone) Non riconosce deviazioni morfologiche (vado e andiamo). http://www.mozart-oz.org/mogul/doc/lager/porter- stemmer/
34
Errori del Porter Stemmer Errori di raggruppamento: –organization, organ organ –police, policy polic –arm, army arm –matto, mattone matt Errori di omissione: –cylinder, cylindrical –create, creation –Europe, European
35
Operazioni più complesse sui testi Analisi morfosintattica –I have been be Analisi dei Nomi Propri, date, espressioni monetarie e numeriche, terminologia –Medical Instrument inc –April 15th, 2003. 15-4-03… –5 millions euros –Consiglio di amministrazione, week end,.. Analisi della struttura del testo –Es: I termini nel titolo o nei paragrafi hanno un peso maggiore, i termini in grassetto o sottolineati.. Analisi semantica: associare a parole singole o a porzioni di testo dei concetti di una ontologia o dizionario semantico (..più avanti nel corso) –Lalbergo dispone di piscina.. swimming_pool hotel_facility –Lalbergo si trova a Corvara.. Val_Badia Dolomiti.. is_a is_in
36
Strumenti per lanalisi morfosintattica di testi Treetagger On-line version su: http://www.cele.nottingham.ac.uk/~ccztk/treetagg er.php http://www.cele.nottingham.ac.uk/~ccztk/treetagg er.php Supporta diverse lingue (inglese tedesco italiano..) Analisi delle parti del discorso e analisi dei gruppi sintattici (gruppi nominali, verbali, preposizionali..)
37
Sir Timothy John Berners-Lee OM KBE FRS FREng FRSA (born 8 June 1955) is an computer scientist and MIT professor credited with inventing the World Wide Web. On 25 December 1990 he implemented the first successful communication between an HTTP client and server via the Internet with the help of Robert Cailliau and a young student staff at CERN. He was ranked Joint First alongside Albert Hofmann in The Telegraphs list of 100 greatest living geniuses.[2] Berners-Lee is the director of the World Wide Web Consortium (W3C), which oversees the Webs continued development, the founder of the World Wide Web Foundation and he is a senior researcher and holder of the 3Com Founders Chair at the MIT Computer Science and Artificial Intelligence Laboratory (CSAIL).
39
Sir/NNP Timothy/NNP John/NNP Berners-Lee/NNP OM/NNP KBE/NNP FRS/NNP FREng/NNP FRSA/NNP (/( born/VBN 8/NNP June/NNP 1955/CD )/) is/VBZ an/DT computer/NN scientist/NN and/CC MIT/NNP professor/NN credited/VBN with/IN inventing/VBG the/DT World/NNP Wide/JJ Web/NN./. On/IN 25/CD December/NNP 1990/CD he/PRP implemented/VBN the/DT first/JJ successful/JJ communication/NN between/IN an/DT HTTP/NNP client/NN and/CC server/NN via/IN the/DT Internet/NNP with/IN the/DT help/NN of/IN Robert/NNP Cailliau/NNP and/CC a/DT young/JJ student/NN staff/NN at/IN CERN/NNP./. He/PRP was/VBD ranked/VBN Joint/NNP First/JJ alongside/IN Albert/NNP Hofmann/NNP in/IN The/DT Telegraph's/NNP list/NN of/IN 100/CD greatest/JJS living/VBG geniuses/NNS./. [/( 2/CD ]/) Berners-Lee/NNP is/VBZ the/DT director/NN of/IN the/DT World/NNP Wide/JJ Web/NNP Consortium/NNP (/( W3C/NNP )/),/, which/WDT oversees/VBZ the/DT Web's/NNP continued/VBD development/NN,/, the/DT founder/NN of/IN the/DT World/NNP Wide/JJ Web/NN Foundation/NN and/CC he/PRP is/VBZ a/DT senior/JJ researcher/NN and/CC holder/NN of/IN the/DT 3Com/NNP Founders/NNPS Chair/NN at/IN the/DT MIT/NNP Computer/NNP Science/NNP and/CC Artificial/NNP Intelligence/NNP Laboratory/NNP (/( CSAIL/NNP )/)./. POS tagging & chunking
40
Terminology (multi-word) extraction
41
2. Indicizzazione dei documenti Come identificare i documenti che contengono le stesse parole della query? Una semplice alternativa consiste nello scandire lintero testo sequenzialmente Una opzione migliore è quella di costruire strutture di dati chiamate indici per velocizzare la ricerca
42
Indicizzazione: come memorizzare e recuperare i documenti rappresentati mediante keywords Tecniche di indicizzazione: –Inverted files –Array di suffissi –Signature files
43
Notazione n: il numero di tokens nel testo (tokens: output del processo tokenizzazione - stopwords- stemming) m: lunghezza di un vettore V: taglia del vocabolario (quante parole diverse) M: memoria a disposizione
44
Inverted Files Definizione: un inverted file è un meccanismo orientato alla manipolazione di parole, per indicizzare una collezione di documenti in modo da velocizzare il processo di ricerca. Struttura di un inverted file: –Vocabolario: linsieme di parole diverse nel testo (NOTA: la taglia di V dipende dalle operazioni effettuate sui testi) –Occorrenze: liste che contengono tutte le informazioni necessarie per ogni parola del vocabolario (posizione nel testo, frequenza, documenti nei quali appaiono, ecc.)
45
Esempio Testo: Inverted file 1 6 12 16 18 25 29 36 40 45 54 58 66 70 That house has a garden. The garden has many flowers. The flowers are beautiful beautiful flowers garden house 70 45, 58 18, 29 6 Vocabolario Occorrenze Posizione dei caratteri Le occorrenze identificano la posizione del termine nel testo
46
Spazio di memoria Lo spazio necessario per memorizzare il vocabolario non è eccessivo. Secondo la legge di Heap il vocabolario cresce come O(n ), dove è una costante compresa fra 0.4 e 0.6 nei casi reali Viceversa, le occorrenze richiedono uno spazio molto maggiore. Poiché vi è un riferimento per ogni occorrenza della parola nel testo, lo spazio necessario è O(n) per ogni riga. Per ridurre lo spazio necessario, si può utilizzare una tecnica detta indirizzamento di blocco (block addressing)
47
Indirizzamento di blocco Il testo viene suddiviso in blocchi Le occorrenze puntano ai blocchi in cui appare la parola Vantaggi: –Il numero dei puntatori di blocco è minore del numero dei puntatori di posizione –Tutte le occorrenze di una parola allinterno di uno stesso blocco hanno un solo puntatore Svantaggi: –Se è richiesta lidentificazione esatta del termine, è necessario scandire online i blocchi di interesse
48
That house has a garden. The garden has many flowers. The flowers are beautiful Esempio Testo: Inverted file: Block 1Block 2 Block 3 Block 4 beautiful flowers garden house 43214321 VocabolarioOccorrenze
49
In alcuni modelli IR vengono memorizzate solo le coppie D k,tf ik system computer database science D 2, 4 D 5, 2 D 1, 3 D 7, 4 Termini indice df 3 2 4 1 D j, tf j File Indice Lista delle Occorrenze df i = numero di documenti in cui compare il termine t i tf ik = frequenza del termine t i nel documento D k
50
Dimensioni di un Inverted Index File in termini di % (approssimate) della taglia dellintera collezione 45% 19% 18% 73% 26% 25% 36% 18% 1.7% 64% 32% 2.4% 35% 26% 0.5% 63% 47% 0.7% In % delle parole In % dei documenti~10k In % di blocchi da 256 K Percentuale di riduzione Piccole collezioni (1Mb) Collezioni medie (200Mb) Collezioni grandi (2Gb)
51
Ricerca su inverted indexes Lalgoritmo di ricerca basato su indici inversi opera in tre fasi successsive: –Ricerca nel vocabolario: le parole presenti nella query vengono ricercate nel vocabolario –Recupero delle occorrenze: viene estratta la lista delle occorrenze di tutte le parole incluse nella query e presenti nel vocabolario –Manipolazione delle occorrenze: la lista delle occorrenze viene elaborata, per generare una risposta alla query
52
Ricerca su inverted indexes(2) La ricerca parte sempre dal vocabolario, che dovrebbe essere memorizzato separatamente I vocabolari vengono memorizzati in strutture di tipo hashing, tries o B-trees Alternativamente, le parole possono essere memorizzate in ordine alfabetico (si risparmia in spazio, maggior tempo di ricerca)
53
Costruzione del vocabolario Il vocabolario viene generato scandendo i testi del repository Vengono effettuate operazioni preliminari sui testi, di cui abbiamo parlato, al fine di limitare la taglia del vocabolario (stemming e stop words) Ad ogni parola del vocabolario, quale che sia la struttura dati utilizzata, viene associata la lista delle occorrenze nei documenti Ogni parola incontrata in un testo viene prima cercata nel vocabolario: se non viene trovata, viene aggiunta al vocabolario, con una lista inizialmente vuota di occorrenze.
54
Costruzione del vocabolario (2) Una volta che si siano esaminati tutti i testi, il vocabolario viene memorizzato con la lista delle occorrenze. Vengono generati due files: –Nel primo file, vengono memorizzate in locazioni contigue le liste delle occorrenze –Nel secondo file, il vocabolario è memorizzato in ordine lessicografico (alfabetico), e viene generato per ogni parola un puntatore alla sua lista di occorrenze nel primo file. Lintero processo ha un costo O(n) nel caso peggiore. La ricerca (binaria) ha un costo O(log n )
55
Memorizzazione del vocabolario in un trie 1 6 12 16 18 25 29 36 40 45 54 58 66 70 That house has a garden. The garden has many flowers. The flowers are beautiful b f g h... beautiful:70 flowers:45 a o garden:18,29 has: 12,36 house: 6 n. ordine dei caratteri
56
Modelli strutturati del testo La ricerca e indicizzazione per parole-chiave considera il documento come una struttura piatta Se cerco consiglio di amministrazione potrei trovare documenti in cui queste parole compaiono ma non sono correllate Inoltre, il peso di una parola è lo stesso sia che la parola compaia nel testo che, ad es. nel titolo
57
Modelli strutturati (2) Definizioni: –Match point: la posizione nel testo in cui occorre una parola o sequenza di parole –Regione: una porzione contigua di testo (frase, paragrafo..) –Nodo: un componente strutturale del testo, ad esempio un capitolo, una sezione..
58
Esempio NODO MATCH POINT REGIONE
59
Proximal Nodes Il testo viene rappresentato con una struttura gerarchica Gli indici vengono definiti mediante gerarchie multiple Ogni struttura di indicizzazione è una gerarchia composta da: capitoli, sezioni, sottosezioni, paragrafi, linee Ognuno di questi componenti è un NODO Ad ogni nodo è associata una regione di testo
60
Proximal Nodes Capitolo Sezione Sottosezione Paragrafo consiglio10 25648,324
61
Proximal Nodes Ogni nodo può essere contenuto in un altro nodo Due nodi sullo stesso livello non si possono sovrapporre Linformazione fornita dagli inverted indexes complementa quella degli indici gerarchici
62
Proximal Nodes E possibile fare query del tipo: Trova una sezione in cui compaiono le parole semantic e annotation Le query sono espressioni regolari, è possibile cercare stringhe e far riferimento a componenti strutturali
63
Conclusioni sui metodi di archiviazione-indicizzazione Il meccanismo inverted file è il più adeguato nel caso di archivi testuali statici Altrimenti, se la collezione è volatile (ad esempio il web) la sola opzione è una ricerca online (Spiders, nel seguito di questo corso). In questo caso i metodi di trattamento dei testi devono essere semplici per garantire rapidità (li vedremo nella seconda parte: Web information retrieval)
64
3. Metodi di Ranking: Come ordinare i documenti per rilevanza rispetto ad una query
65
Ranking Supponiamo di avere a disposizione una visione logica, e questa sia data da un insieme di parole-chiave o keywords. Un banale matching di parole chiave fra documenti e query spesso fornisce risultati modesti, gli utenti sono insoddisfatti. Inoltre, spesso gli utenti non sono in grado di esprimere i loro interessi mediante un elenco appropriato di keywords Il problema è resto più grave se siamo nellambito Web IR Un ranking appropriato dei documenti ha un effetto notevole sulle prestazioni (vedi i motori di ricerca)
66
Una tassonomia dei modelli di ranking Non-Overlapping Lists Proximal Nodes Modelli strutturali Retrieval: Ad-hoc Filtering Browsing U s e r T a s k Modelli Classici booleano vettoriale probabilistico Teoria degli insiemi Fuzzy Extended Boolean Probabilistici Inference Network Belief Network Algebrici Generalized Vector Lat. Semantic Index Neural Networks Browsing Flat Structure Guided Hypertext
67
Modelli classici: concetti base Non tutti i termini sono ugualmente importanti per la rappresentazione di un testo (o query). Nella selezione di termini indice è importante assegnare un peso di rilevanza alle varie parole. Limportanza di un termine indice è rappresentata da un valore che ad esso viene associato Sia –k i un termine indice –d j un documento della collezione –w ij un peso associato a (k i,d j ) Il peso w ij quantifica limportanza dellindice k i per descrivere il contenuto del documento
68
Modelli classici: concetti base (2) –k i è un termine indice –d j è un documento –N è il numero totale di documenti in D –K = (k1, k2, …, kt) è linsieme dei termini indice –t=|K| è la taglia del vocabolario –w ij >= 0 è un peso associato con (ki,dj) –w ij = 0 indica che un termine non appartiene al documento –v(d j ) =dj=(w1j, w2j, …, wtj) è un vettore pesato associato a dj –gi(dj) = wij è una funzione che restituisce il peso associato alla coppia (ki,dj)
69
Modelli basati sulla teoria degli insiemi: Modello Booleano Un modello molto semplice basato sulla set theory Le query vengono rappresentate mediante espressioni booleane –La semantica è precisa –Il formalismo è elegante –q = k a (k b k c ) Es: (automobili (vendita fabbricazione) I termini sono presenti o assenti. Dunque, wij {0,1}
70
Esempio q = k a (k b k c ) Forma normale disgiuntiva (DNF): Trasformazione della query in componenti congiuntivi componenti congiuntivi
71
Modello Booleano q = ka (kb kc) (1,1,1) (1,0,0) (1,1,0) kakb kc sim=1 se esiste almeno un componente congiuntivo della query per il quale il peso delle relative keywords nel documento è lo stesso del componente congiuntivo.
72
Esempio Query: golf (automobile abbigliamento) qcc1:golf,automobile,abbigliamento (1,1,1) qcc2:golf,automobile, abbigliamento (1,1,0) qcc3: golf, automobile, abbigliamento (1,0,0) d1:Scheda dettagli tecnici Volkswagen GOLF 2004 automobili usate a Arezzo:diesel,cambio manuale,.. d2: Negozio on-line specializzato nella vendita di attrezzatura, accessori e abbigliamento delle migliori marche per la pratica del gioco del golf.. d3: L'azienda Newmar produce da anni una sua linea di golf in cachemire e capi di abbigliamento di alta qualità Per d1, i pesi delle parole: golf, automobile e abbigliamento coincidono con qcc2: (1,1,0), invece per d2 e d3 i pesi non coincidono con nessuna delle qcc della query, perché i pesi delle tre parole sono, per entrambi i documenti: (1,0,1)
73
Problemi del modello Booleano Il retrieval è basato su criteri di decisione binari, non esiste la nozione di corrispondenza parziale Non viene fornito un ordinamento parziale dei documenti (non cè ranking), poiché sim vale 0 o 1!! Gli utenti non esperti trovano difficile trasformare le loro richieste informative in una espressione booleana Gli utenti formulano spesso query booleane troppo semplicistiche (congiunzioni di termini) Di conseguenza, le query booleane restituiscono o troppo pochi (silenzio) o troppi (rumore) documenti
74
Modello vettoriale Definisci: –wij > 0 ogni volta che ki dj –wiq 0 associato alla coppia (ki,q) – = (w 1j, w 2j,..., w tj ) = (w 1q, w 2q,..., w tq ) –Ad ogni termine ki è associato un vettore unitario –I vettori unitari si assumono essere ortonormali (Cioè si assumono occorrere indipendentemente luno dallaltro nei documenti) I t vettori unitari formano una base ortonormale in uno spazio t-dimensionale In questo spazio, query e documenti sono rappresentati mediante vettori pesati
75
Lo spazio ha una dimensionalità pari al numero di termini nel vocabolario. Lo spazio vettoriale t1t1 t2t2 t3t3 d1d1 d2d2
76
Rappresentazione grafica Esempio: D 1 = 2T 1 + 3T 2 + 5T 3 D 2 = 3T 1 + 7T 2 + T 3 Q = 0T 1 + 0T 2 + 2T 3 T3T3 T1T1 T2T2 D 1 = 2T 1 + 3T 2 + 5T 3 D 2 = 3T 1 + 7T 2 + T 3 Q = 0T 1 + 0T 2 + 2T 3 7 32 5 E D 1 o D 2 + simile a Q? Come misurare il grado di similarità? Nota: i coefficienti w ij qui sono le frequenze dei termini Ti nei documenti
77
Misura della similarità del coseno Si misura il coseno dellangolo fra due vettori. Il prodotto scalare (al numeratore) è normalizzato con la lunghezza dei vettori. D 1 = 2T 1 + 3T 2 + 5T 3 CosSim(D 1, Q) = 10 / (4+9+25)(0+0+4) = 0.81 D 2 = 3T 1 + 7T 2 + 1T 3 CosSim(D 2, Q) = 2 / (9+49+1)(0+0+4) = 0.13 Q = 0T 1 + 0T 2 + 2T 3 t3t3 t1t1 t2t2 D1D1 D2D2 Q D 1 è 6 volte migliore di D 2 usando la misura del coseno. CosSim(d j, q) =
78
Similarità nel modello vettoriale i j dj q
79
Pesatura dei termini nel modello vettoriale Una misura del peso di un termine in un documento deve tenere conto di due fattori : –Quantificazione del peso che il termine ha nel documento: Fattore tf (term frequency) –Quanto il termine aiuta a discriminare il documento dj dagli altri documenti in D Fattore idf (inverse document frequency) Dove: N numero di doc. nella collezione, n i numero dei documenti in cui il termine ki appare –wij = tf(i,j) * idf(i)
80
Pesatura tf- idf Il peso di un termine in un documento è tanto più alto quanto più il termine ricorre molte volte nel documento, e invece ricorre poco negli altri documenti della collezione Tf viene normalizzato per non penalizzare documenti corti Anche idf viene normalizzato
81
Peso dei termini nella query Salton e Buckley suggeriscono:
82
Vantaggi e svantaggi del modello vettoriale Vantaggi: –Il peso dei termini migliora la qualità delle risposte –Poiché possono verificarsi matching parziali fra documenti e query, è possibile ottenere risposte che approssimino le richieste dellutente –La formula del coseno dellangolo consente di ordinare i documenti rispetto al grado di similarità con la query Svantaggi: –Si basa sullassunzione che i termini siano fra loro indipendenti. Ma non è provato che questo sia un vero svantaggio..
83
Il modello vettoriale: Esempio I d1 d2 d3 d4d5 d6 d7 k1 k2 k3 idf(k 1 )=log(7/5)=0,146 idf(k 2 )=log(7/4)=0,243 idf(k 3 )=log(7/3)=0,367 tf coincidenze
84
Esempio 1 (continua) Calcolo sim(d1,q): w 1,1 =1 0,145=0,145 w 2,1 =0 w 3,1 =0,367 w 1,q = (0,5+0,5 1) 0,145=0,145 w 2,q =0,243 w 3,q =0,367
85
Il modello vettoriale: Esempio 2 d1 d2 d3 d4d5 d6 d7 k1 k2 k3
86
Il modello vettoriale: Esempio 3 d1 d2 d3 d4d5 d6 d7 k1 k2 k3
87
Extended Boolean Model Il modello booleano è semplice ed elegante Ma non consente ranking Il modello booleano può essere esteso mediante la nozione di corrispondenza parziale e di pesatura dei termini Combina le caratteristiche del modello vettoriale con le proprietà dellalgebra booleana
88
Extended Boolean Model Il modello extended Boolean (introdotto da Salton, Fox, e Wu, 1983) si basa su una critica di una assunzione-base dellalgebra booleana Sia: –q = k x k y o q = k x k y la query (queri or oppure and) –w xj = f xj * idf(x) peso associato a [k x,d j ] max(idf(i)) –f xj è la frequenza normalizzata di k x in d j – 0 w xj 1 –Inoltre, indichiamo w xj = x and w yj = y
89
q or = k x k y ; w xj = x and w yj = y dj dj+1 y = w yj x = w xj (0,0)kxkx kyky sim(q or,d j ) = x e y sono i pesi normalizzati di k x e k y in dj: dj è tanto più simile a q quanto più il punto di coord (x,y) è distante da (0,0) k x k y (1,1) k x.k y distanza normalizzata 1) OR
90
q and = k x k y ; w xj = x e w yj = y dj dj+1 y = w yj x = w xj (0,0) (1,1) kxkx kyky AND Nel caso di un and, il punto ottimale è 1,1 che corrisponde a k x k y
91
Extended Boolean Model Se esistono t termini indice, il modello può essere esteso ad uno spazio t-dimensionale Espressioni and-or es: (k1 k2) k3
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.