6
1. Introduzione
In questa tesi, ci siamo occupati dell’ideazione,
analisi, progetto, implementazione e sperimentazione di
un prototipo completo del motore di ricerca di News
“Toc Toc News”; scopo principale del progetto è la
sperimentazione di algoritmi proposti nel contesto
della recente ricerca scientifica riguardo alle
problematiche di assegnazione automatica di uno score
di Ranking alle News, così come reperite da uno stream
dinamico costantemente aggiornato da un certo numero di
sorgenti, sottoscritte per mezzo di canali di feed RSS,
in modo da poter visualizzare sulla homePage del motore
le News clusterizzate per storia trattata e con un
ordine decrescente per il proprio valore di rank; altra
problematica principale sperimentata, è relativa a
recentissime tecniche di Opinion Mining, che permettano
all’utente di visualizzare, assieme alla normale
informativa sulla News, anche una etichetta che
evidenzi l’eventuale soggettività espressa dal testo
della News ed uno score, che ne indichi il maggiore o
minor grado, in base alla classificazione tripartita
{Positive, Negative, Objective}: qualora il testo di
una News, manifesti un orientamento semantico positivo,
rispetto al subject di riferimento per essa,
l’etichetta associata dall’algoritmo di Opinion Mining
sarà, con una certa probabilità di errore, che abbiamo
provveduto a minimizzare, Positive, e mostrando in
aggiunta uno score indicatore del grado di positività,
altrimenti sarà Negative, o Objective, a seconda se
manifesti un orientamento inverso, o se si limiti a
descrivere un fatto privo di orientamento per il
Subject di riferimento.
7
A livello dell’interfaccia Web, siamo interessati a
dare all’utente la potenzialità di scegliere tra una
varietà di modalità di ricerca, in base alle proprie
esigenze:
1. keywords search:
ricercare per mezzo dell’inserimento di
particolari parole chiave, tutte le News che
presentano il matching per almeno una di esse,
ordinate in base al loro grado di matching, e
clusterizzate per storia trattata;
2. phrase search:
ricercare tutte le News che abbiano nel loro
titolo, o nella descrizione, o nel loro testo
completo, il matching esatto con la frase
inserita dall’utente, clusterizzate per storia
trattata;
3. subject search:
ricercare tutte le News relative ad un
particolare Subject, assieme alla visualizzazione
di alcune statistiche sulla soggettività da esso
riscontrata su scala temporale, e in base alla
differenziazione per singola categoria, ma anche
riguardo alla popolarità di quest’ultimo (numero
di notizie postate relative al subject di
riferimento nell’unità di tempo giornaliera);
4. ranking search:
effettuare la visualizzazione delle Top News
ordinate in base al loro valore di Ranking,
specificando una categoria di riferimento, e il
8
numero delle Top News da visualizzare,
clusterizzate per storia trattata;
5. source info and Statistics:
visualizzare per una particolare sorgente di News
tra quelle sottoscritte, informazioni storiche
sulla sorgente, e statistiche sul numero di
postings di News che essa effettua per categoria,
su scala totale, e su scala giornaliera.
2. L’ Information Retrieval
L' Information retrieval (IR) è una disciplina nata
appena negli anni ’40 dello scorso secolo,
dall'incrocio di discipline molto diverse tra loro,
quali la psicologia cognitiva, la linguistica e
l'informatica, verso cui si è osservato un interesse
crescente negli ultimi decenni; essa si occupa dei
problemi relativi a memorizzazione, rappresentazione e
reperimento di informazioni disponibili in una certa
collezione di documenti, e ci sono tutta una
molteplicità di tecniche per il reperimento efficace
ed efficiente di informazione disponibile in formato
elettronico.
L’informazione da ricercare può essere di diversa
tipologia, ma nella maggior parte dei casi, quando si
parla di IR, si è interessati al recupero di
informazione eterogenea disponibile in grandi
collezioni di documenti testuali, e quindi non
strutturati (se non per la loro latente struttura
grammaticale); All’estremo opposto del ricercare
informazione di tipo non strutturato, vi è l’esempio
canonico delle ricerche di informazioni strutturate per
9
mezzo di tabelle relazionali, tipiche dei DB
convenzionali.
Le informazioni da ricercare possono essere distribuite
su scala differente, ed essere disponibili in locale
sul proprio PC, o, più tipicamente, nella totalità
delle pagine html del World Wide Web, come accade nei
Search Engine commerciali.
L’interesse dell’ IR a documenti espressi in linguaggio
naturale, e quindi per loro natura non strutturati,
comporta tutta una serie di problematiche per le
ricerche di contenuto:
• Ambiguità, polisemia: lo stesso termine può avere più
significati;
• Sinonimia: un certo “concetto” semantico può essere
espresso con termini sintatticamente diversi;
• Imprecisione: il linguaggio naturale è spesso vago;
chi saprebbe dire quanto “abbastanza largo” dista da
“relativamente stretto”?
Il recupero dell'informazione avviene per mezzo di
linguaggi di query testuali, che permettono di
reperire tutti i documenti che riscontrino un certo
score di matching con i termini ricercati, ordinati in
ordine decrescente di esso.
La ricerca di una particolare pagina Web, ma più in
generale di un documento scritto da un autore cui
finalità di intenti sono più generali di quelle
relative all’esclusivo recupero di informazione, può
riferirsi alla ricerca nell’intero testo (full text
retrieval), o a sue sottoporzioni più brevi
normalizzate(abstract, ”bag of Words”, keyWords,
10
intestazioni, titolo, subject di riferimento, ecc.)
creati più miratamente per facilitare il retrieval; in
questo secondo caso il problema è che l’estrazione di
particolari keywords dai documenti dipende
dall’esperienza e dall’ opinione personale che chi le
estrae ha, e studi condotti dalla comunità scientifica
affermano che ci sarebbe mediamente il 20% di
differenza tra i termini che due esperti sceglierebbero
come rappresentativi per un documento; questo accade
poichè un particolare concetto può risultare centrale
per un utente in un documento, ma insignificante per un
altro.
Per questa ragione i maggiori sforzi negli anni sono
stati rivolti verso lo studio delle tecniche di full
text retrieval, e relativa ottimizzazione per ovviare
alle maggiori esigenze di memorizzazione e ai maggiori
limiti delle performance temporali che un sistema di IR
di tal tipo ha rispetto ad uno che adotti un approccio
bag of words.
L’Information Retrieval non è rivolto solo alle
tecniche di reperimento di informazioni prelevate da
larghe collezioni di dati, infatti ci sono numerosi
altri compiti su cui la ricerca scientifica degli
ultimi decenni si è soffermata ottenendo notevoli
risultati, quali ad esempio il noto problema del
clustering, il cui scopo è di raggruppare sottoinsiemi
di documenti in base al loro contenuto, o l’attività
dei semi-supervised-learning classifier, il cui compito
è quello di classificare in modo automatico documenti
in base alle loro caratteristiche, previa una
classificazione manuale di un certo set di documenti
iniziale(Seed Set).
11
I domini applicativi che possono giovarsi dell’utilizzo
delle tecniche di IR sono molto eterogenei; molte
biblioteche pubbliche, ad esempio, utilizzano sistemi
di IR per fornire accesso a pubblicazioni scientifiche,
libri ed altri documenti, ma quello dei motori di
ricerca del web, tra cui spiccano nomi di incontrastato
successo quali Google Search o il celebre Yahoo Search,
è senza dubbio l’ambito applicativo di maggior rilievo.
Con l’aumento della mole dei dati consultabili in
Internet però, a causa dell’enorme quantità di
informazioni da controllare, una conseguente
inevitabile difficoltà principale per un motore di
ricerca risulta essere quello del reperimento esclusivo
di informazioni di interesse per l’utente (information
overload), cercando di ridurre al minimo la quantità di
informazioni da esso reperite che non risultino
rilevanti per l’utente, riguardo alla intenzione
semantica che con la query si intendeva esprimere: per
venire incontro a tale esigenza sono stati definiti
molteplici tecniche di IR, e misure per valutare quanto
esse siano efficaci nel rispondere alle specifiche
esigenze della applicazione.
2.1. Principali Misure di prestazione e di valutazione di
efficacia per un sistema di IR
Posto che l’interesse delle tecniche di IR è rivolto al
recupero di informazione di interesse per un utente, ci
sono due importanti misure per valutare l’efficacia di
un sistema di IR in un particolare dominio applicativo:
1) Precision
12
Misura di proporzione P fra i documenti recuperati, che
risultano rilevanti per la ricerca, e la totalità dei
documenti recuperati:
P =
) recuperati documenti di tot. (numero
) recuperati rilevanti documenti di (numero
2)Recall
Misura di proporzione R fra il numero di documenti
recuperati, che risultano rilevanti per la ricerca, e
il numero totale dei documenti che, all’interno della
collezione di documenti di riferimento, sono rilevanti
per la ricerca:
R =
) collezione della rilevanti documenti dei (totale
) recuperati rilevanti documenti di (numero
Tipicamente le tecniche di IR che aumentano la
Precision diminuiscono il grado di Recall, e si osserva
tra queste due misure un rapporto inversamente
proporzionale, quindi occorre volta per volta, in base
al dominio applicativo, operare delle scelte sulla
tecnica da adottare a seconda delle particolari
esigenze di IR.
Nei Motori di ricerca accade spesso che venga
privilegiato il grado di Recall, a discapito di un
degrado della Precision, fenomeno che porta spesso a
trovare i documenti rilevanti restituiti frapposti ad
un numero più o meno ampio di documenti non
interessanti, a ragione di ovvie limitazioni dovute
alla semantica dell’informazione.
13
Ci sono tuttavia molteplici altre misure applicabili
per valutare la bontà di una particolare tecnica di IR:
3)F-measure
Media armonica F pesata fra P ed R, la cui versione
bilanciata F
1
è data da:
F
1
=
) R P (
) R * P * 2 (
Ove P ed R hanno peso 1, da cui la denominazione F
1
.
Per F-measure generali F
n
, invece, la formula di
riferimento è:
F
n
=
R P) * (n
R * P * ) n (1
2
2
Un'altra importante misura che si può effettuare per
valutare l’ efficacia di un sistema di IR è quella
relativa a:
4)Accuracy
Data una query, il motore classificherà i documenti
della collezione come rilevanti o non rilevanti per
essa, e l’accuratezza è la misura della frazione dei
documenti che sono classificati in modo corretto.
A =
collezione della totali documenti di numero
nte correttame ti classifica documenti di numero
Specificatamente all’ambito di un sistema di tipo News
Search Engine, il giudizio di rilevanza di una News
14
rispetto ad una query utente, è abbastanza soggettivo,
e può includere criteri quali:
Riguardare il subject appropriato;
Essere una informazione fresca, recente, e quindi
dall’interesse ancora attuale;
Provenire da una sorgente autorevole, importante;
Soddisfare gli obiettivi dell’utente (information
need);
…
Ad ogni modo per poter effettuare delle misure
dell’efficacia di un sistema di IR generico è
necessario:
1. Un benchmark di documenti di una collezione;
2. Un set di query di benchmark;
3. Una classificazione a priori sia dei documenti
rilevanti che di quelli irrilevanti per ogni
coppia documento-query di benchmark.
2.2 Tassonomia dei modelli di IR
I documenti della collezione su cui effettuare le
ricerche con l’applicazione delle tecniche dell’IR,
vanno rappresentati secondo un modello di riferimento,
scelto fra vari possibili, che nell’immagine a seguire
sono classificati in base ad uno fra tre criteri
matematici, e in base alla presenza o meno di
15
interdipendenza tra i termini che in essi
compaiono[IRModels]:
Seguendo la classificazione matematica distinguiamo tra:
Modelli Set-theoretic:
Rappresentano i documenti mediante insiemi, e deducono
lo score di matching con la query mediante operazioni
su tali insiemi.
o Standard Boolean Model
o Extended Boolean Model
o Fuzzy Set Model
Modelli Algebraic:
Rappresentano i documenti e le query per mezzo di
vettori, matrici o tuple e, utilizzando operazioni
algebriche, calcolano una misura numerica che esprima
lo score di matching dei documenti con la query.