Indicizzazione di documenti testuali
Transcript
Indicizzazione di documenti testuali
Indicizzazione di documenti testuali Generazione di un archivio di Documenti Testuali •E’ eseguita off-line •necessaria per accelerare il reperimento dei documenti E’ un processo che esegue le seguenti attività: Localizzazione : •inserimento dei documenti nella collezione •manuale, semiautomatica, automatica Decodifica Formato: •Riduzione del documento a stringhe Indicizzazione : •Produce una sintesi del contenuto informativo dei documenti Generazione di struttura dati opportuna : •Memorizza in una struttura dati gli indici e i riferimenti ai documenti Come rappresentare i documenti? Tipicamente l’indicizzazione genera un insieme di termini indice (possibilmente pesati) come elementi base della rappresentazione formale di un documento (o di una query). Nell’IR testuale gli indici possono essere: 1. parole automaticamente estratte dal documento; 2. radici di parole (per esempio class-) automaticamente estratte dal documento. Questa opzione è la più frequente; 3. frasi (ad esempio “classificazione di processi industriali”) automaticamente estratte dal documento. Questo tipo di indici non hanno dato risultati migliori di 1 e 2; 4. parole (o frasi) estratte da un vocabolario controllato; 5. (in modo addizionale) metadati (ad esempio titolo, autori, data di creazione ecc. ) Indicizzazione automatica di documenti testuali L’indicizzazione automatica (automatic indexing) di un documento testuale è il processo che esamina automaticamente gli oggetti informativi che compongono il documento e, utilizzando degli algoritmi appositi, produce una lista di termini indice (index terms). Questa lista può essere utilizzata per una rappresentazione più compatta del contenuto informativo del documento di partenza. Tipicamente: indicizzazione full-text. I termini indice sono utilizzati come surrogati per la rappresentazione del documento originale e, quindi, possono essere utilizzati al suo posto durante la fase di recupero. L’uso degli indici semplifica e accelera il recupero (esempio: indice analitico di un libro). Schema del processo di indicizzazione automatica di documenti testuali INPUT Documenti testuali originali OUTPUT Documenti in formato digitale Indicizzazione automatica MODULO DI INDICIZZAZIONE Termini indice Documenti in formato digitale Indicizzazione: output Matrice sparsa! (presenza di molti 0 in ogni colonna) I pesi w possono essere binari o valori reali o interi positivi: sono calcolati in fase di indicizzazione Indicizzazione: esaustività e specificità Finalità: Rappresentare il contenuto semantico di un documento con due obbiettivi: • esaustività: •assegnare un grande numero di termini indice • specificità : •termini generici: non sono adatti a distinguere i documenti rilevanti da quelli irrilevanti • termini specifici: permettono di reperire pochi documenti, ma la maggior parte di questi è rilevante Modalità: •estrazione diretta dal documento intero (full text) o mediante l’utilizzo di fonti esterne (es: dizionari controllati) •Tecniche associative (tesauri, pseudo-tesauri, clustering) Linguaggio di indicizzazione E’ il linguaggio usato per descrivere i documenti e le query è definito su un insieme di simboli (Vocabolario) Termini indice – sottoinsiemi di parole selezionate per rappresentare i contenuti del documento Derivate dal testo o associate indipendentemente Analisi statistica dei documenti basata sulla frequenza delle occorrenze dei termini nel testo dei documenti Pro automatizzata, efficiente Contro potenzialmente inaccurata Ricerca basata su parole chiave liberamente specificate dall’utente Ricerca basata su un vocabolario controllato Considerazioni sulla frequenza dei termini Termini funzionali es., "and", "or", "of", "but", … la frequenza di questi termini è alta in tutti i documenti Termini indicatori del contenuto parole che identificano i contenuti del documento hanno frequenza variabile nei documento della collezione la loro frequenza è indicativa dell’importanza del termine nel rappresentare il contenuto del documento Frequenza dei termini in relazione a Richiamo e Precisione favoriscono il richiamo: i termini ad alta frequenza Tecniche associative di espansione degli indici (tesauri, clustering) la precisione alta è data dalla capacità dell’indicizzazione di distinguere i contenuti dei documenti i termini con frequenza elevata servono a favorire la precisione quando la loro frequenza non è alta in tutti i documenti della collezione. Fasi del Processo di Indicizzazione Documenti Analisi Lessicale Eliminazione Stopwords stemming Le fasi del processo di indicizzazione automatica che devono essere attuate in sequenza: 1. Analisi lessicale e selezione delle parole Termini indice 2. Rimozione delle parole molto comuni o stop-words 3. Riduzione delle parole originali alle rispettive radici semantiche 4. Eventuale pesatura degli elementi dell’indice (significatività) 5. Creazione dell’indice I sistemi commerciali per il recupero delle informazioni non implementano necessariamente tutte queste funzionalità. Analisi lessicale e selezione delle parole E’ il processo di trasformazione di un flusso di caratteri di input (il testo originario del documento) in un flusso di parole (o tokens ), ovvero in una sequenza di caratteri portatore di uno specifico significato. Nel testo le parole possono essere facilmente identificate grazie alla presenza di spazi, a capo, segni di interruzione, ecc… Collezione di documenti: un esempio ID documento Contenuto testuale del documento D 1 Università degli Studi di Bologna. Facoltà di Lettere e Filosofia Corso di laurea in SCIENZE della COMUNICAZIONE D2 Libera Università di Lingue Comunicazione IULM; Facoltà di SCIENZE della COMUNICAZIONE e dello Spettacolo Corso di laurea in SCIENZE della COMUNICAZIONE D3 Università degli Studi di Padova Facoltà di Lettere e Filosofia: Corso di laurea: SCIENZE della COMUNICAZIONE Collezione di documenti: un esempio Es: Parole estratte dai documenti (spazi ; : .) •D 1 : università degli studi di bologna facoltà di lettere e filosofia corso di laurea in scienze della comunicazione •D 2 : libera università di lingue e comunicazione iulm facoltà di scienze della comunicazione e dello spettacolo corso di laurea in scienze della comunicazione •D 3 : università degli studi di padova facoltà di lettere e filosofia corso di laurea scienze della comunicazione Riconoscimento di parole (token) Es: Parole estratte dai documenti (spazi ; : . – “ “) Scelte euristiche: aren’t aren t, arent, ? O’Neill Oneill, O Neill? coeditor coeditor, co editor? Hewlett-Packard HewlettPackard, Hewlett Packard? lower case = lowercase ? Particolari sequenze: email address: [email protected] URL:http://www.disco.unimib.it Progr. Languages: C++, FORTRAN 90 IP addresses: 10.123.154.231 nomi composti: Volo Los Angeles-San Francisco Volo Los AngelesSan Francisco? - co-editor coeditor NB: si usa lo stesso criterio anche per le query Dipende dalla lingua ad esempio in cinese le parole non sono separate da blank segmentazione di parole mediante uso di vocabolario NORMALIZZAZIONE Conversione in lettere minuscole eliminazione simboli diacritici Normalizzazione date Normalizzazione nomi : Usa usa naïve naive March 1st 200703/01/07 Bejing peking Rimozione delle Stopword Le parole molto frequenti nell’insieme di tutti i documenti portano poca informazione sul contenuto dei singoli documenti. Ad es: computer in una collezione di informatica Tali parole, stop-word, possono essere eliminate dalla lista dei token. Metodi: 1.Analisi statistica frequenza dei termini nella collezione e eliminazione dei termini con basso potere discriminante 2.Termini funzionali (articoli, preposizioni, verbi ausiliari) sono Parole molto frequenti nella lingua in cui sono scritti i documenti 3.note a priori indipendentemente dalla collezione e raccolte in una tabella (stop list per l’inglese 200-300 termini) Ad es: “been", “a", “about", “otherwise“, “the” L’eliminazione delle stopword permette una riduzione tra il 30% e il 50% dei token Può diminuire la recall es: “to be or not to be” “let it be” vengono eliminate NB: La maggior parte dei WEB search engine non identificano le stopword Rimozione delle Stopwords Per la lingua inglese è stata messa a punto una lista di circa 250 parole che sono considerate stop- word. stop- word dell’esempio : DEGLI DI E IN DELLA DELLO Parole dell’esempio che vengono considerate dopo l’eliminazione delle stop-words D 1 : università studi bologna facoltà lettere filosofia corso laurea scienze Comunicazione D 2 : libera università lingue comunicazione iulm facoltà scienze comunicazione spettacolo corso laurea scienze comunicazione D 3 : università studi padova facoltà lettere filosofia corso laurea scienze comunicazione Stemming: Riduzione delle parole alle rispettive radici semantiche L’efficacia del retrieval aumenta se la query è espansa con i termini che hanno lo stesso significato di quelli contenuti in essa. Gli algoritmi di Stemming sono procedure di conflation (fusione) che riducono tutte le parole con stessa radice a una singola radice In molte lingue, parole che iniziano allo stesso modo (o che hanno delle sequenze di caratteri in comune) possono avere la stessa origine etimologica. Tali parole hanno un contenuto informativo molto simile. Generalmente rimuovono la parte finale delle parole riducendo tutte le parole affini ad un’unica “ radice” (in inglese stem). Es computer, computational, computing e computed comput Is are being am be paint painting painted painter paint Colour colours color different difference differ Computers are painted different colours comput be paint differ color Altri approcci sono basati sulla lemmatizzazione mediante sull’uso di dizionari Relazioni tra i termini indice Indicizzazione basata su termini singoli i termini singoli sono spesso ambigui. molti termini singoli sono o troppo specifici o troppo generici. Individuazione di indici composti esperti indicizzatori analisi linguistica (NLP) metodi di espansione dei termini mediante tesauri o clustering dei termini Uso di tesauri per la risoluzione di sinonimia Un tesauro può essere: – tematico; in questo caso è una “mappa” del lessico specifico di un certo dominio della conoscenza in un dato linguaggio; questo è il caso più frequente; – generale; in questo caso è una “mappa” di un intero linguaggio. Per applicazioni di IR, sono stati sviluppati vari tipi di tesauro, tra cui tesauri gerarchici, tesauri clustered, e tesauri associativi. Tesauri Gerachici Elenco classificato dei termini usati in un dato dominio della conoscenza RELAZIONI: •sinonimia (RT) Related Term •quasi-sinonimia: (UF) Use For Ex UF(hg, mercury (metal)), UF(planet Mercury,mercury (planet)). RELAZIONI DI GERARCHIA •generalizzazione (BT) Broader Term •specializzazione (NT) Narrower Term I tesauri gerarchici sono stati oggetto di standardizzazioni ISO e ANSI e sono quasi sempre tematici. Clustered tesauri Un tesauro clustered è un grafo di gruppi (o cluster, o synset) di parole. Tra due gruppi collegati da un ramo esiste una correlazione semantica (tipicamente generica, cioè non tipizzata); ogni gruppo e’ un insieme di parole tra cui esiste una forte correlazione semantica (quasi-sinonimia). In WordNet, il più conosciuto tesauro «clustered» (costruito manualmente), la quasi-sinonimia è l’unione di un insieme di relazioni: – sinonimia (“stesso nome”; per esempio usa/utilizza); – antonimia (“nome opposto”; per esempio pesante/leggero); – iponimia (“sotto-nome”; per esempio elefante/animale); – meronimia (“parte-nome”; e.g. orecchio/testa); – troponimia (“maniera-nome”; e.g. correre/camminare); – entailment, anche conosciuto come presupposizione (e.g. divorzio/sposare). I tesauri clustered possono essere generati automaticamente, ma solo nel caso in cui non è fatta alcuna distinzione tra i tipi differenti di relazioni semantiche; Tesauri associativi Vantaggi: Possono essere costruiti in modo completamente automatico, a partire da una collezione di documenti. In questo caso la relazione semantica tra ti e tj rispecchia le caratteristiche della collezione, ed è basata sulla relazione di cooccorrenza (o co-assenza) tra ti e tj . Costruzione di un tesauro associativo : 1. Generazione di una matrice di similarità tra termini sij , usando una funzione appropriata; 2. Applicazione di una soglia z a questa matrice, in modo tale che sij è posto a 0 quando sij ≤ z; Il passo critico è ovviamente il Passo 1, per realizzare il quale sono state definite varie tecniche. Analisi statistica dei testi: aumento della precisione Non tutte le parole di un documento lo descrivono con la stessa precisione. I termini indice possono essere assegnati ai documenti della collezione con un dato peso. Associando ai termini un peso si intende tenere conto della significatività (importanza) del termine nel documento . La funzione di pesatura tiene conto della frequenza del termine nel documento e nella collezione. Quando il peso è binario, ai termini viene assegnato: • un peso = 1 se presenti in un documento e • un peso = 0 se assenti; non si tiene conto della frequenza effettiva del termine nel documento, ma solo della sua eventuale presenza. Indicizzazione con pesatura binaria documenti parole bologna comunicazione corso facoltà filosofia iulm laurea lettere libera lingue padova scienze spettacolo studi università D1 1 1 1 1 1 0 1 1 0 0 0 1 0 1 1 D2 0 1 1 1 0 1 1 0 1 1 0 1 1 0 1 D3 0 1 1 1 1 0 1 1 0 0 1 1 0 1 1 Indice con pesatura in base alla frequenza documenti parole bologna comunicazione corso facoltà filosofia iulm laurea lettere libera lingue padova scienze spettacolo studi università D1 1 1 1 1 1 0 1 1 0 0 0 1 0 1 1 D2 0 3 1 1 0 1 1 0 1 1 0 2 1 0 1 D3 0 1 1 1 1 0 1 1 0 0 1 1 0 1 1 Distribuzione della frequenza in funzione del rank Per ogni parola w f(w) è la frequenza con cui w compare nella collezione r(w) è l’indice rank (posizione) di w nella lista ordinata in funzione decrescente di frequenza, es, la parola che appare più comunemente ha un indice di rank uguale a 1 f w ha un rank r e e frequenza f 6 r Legge di Zipf Se le parole w, in una collezione vengono ordinate r(w), in ordine decrescente di frequenza f(w), soddisfano la seguente relazione: r(w) * f(w) = c Collezioni differenti hanno costanti c diverse. Nei testi in lingua inglese, c tende a circa n / 10, ove n è il numero di parole nella collezione. vedi Zipf, G. K., Human Behaviour and the Principle of Least Effort. Adison-Wesley, 1949 8 Analisi di Luhn Potere discriminante delle parole significative (curva di Zipf): capacità delle parole di discriminare il contenuto dei documenti è massima nella posizione intermedia tra i due livelli di cut-off Criteri di indicizzazione basati sull’analisi di Luhn Pesatura dei Termini indice: le parole più frequenti assumono un peso di significatività più basso Stop list: Le parole più frequenti vengono eliminate dagli indici (cut-off superiore) Parole significative: Le parle più frequenti e meno frequenti vengono eliminate dagli indici (cut-off superiore e inferiore) 10 Significatività dei termini indice E’ una funzione composta da due fattori: wtd= ftd * Discr-valuet ftd frequenza del termine t in d è in relazione alla esaustività, fattore di recall Discr-valuet è in relazione alla specificità, fattore di precisione Inverse Document Frequency Inverse Document Frequency (IDF) del termine tj N idf j = log df j ove dfj (frequenza del termine tj nei documenti) è il numero di documenti in cui tj appare e N il numero di documenti nella collezione Favorisce la precisione è alta se il termine appare in pochi documenti della collezione Significatività dei termini indice Il peso wtd del termine t in un documento d N w td = tf td × log df t Dopo aver eliminato le parole funzionali si calcola wtd per ogni termine t in ogni documento d Si assegnano ai documenti della collezione tutti i termini con valori alti di wtd Significatività dei termini indice normalizzazione rispetto alla lunghezza dei documenti La frequenza assoluta tftd di un termine t cresce con la lunghezza del documento dPer questo il peso witd del termine t in un documento d viene normalizzato tf td N w td = × log max tf d df t maxtfd è la frequenza massima dei termini nel documento d Il primo fattore è la frequenza relativa del termine t in d Conclusione: efficacia dei metodi di indicizzazione automatica Base: indicizzazione automatica basata su singoli termini Utilizzo di un tesauro tematico per raggruppare termini in un settore specifico +10% al +20% Uso di tesauri associativi (pseudo-tesauri) derivati automaticamente in una sottocollezione campione 0% al +10% Uso di frasi di termini ottenute sulla base delle cooccorrenze nei testi +5% al +10%