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%