Studio Tuning Ricerce per Documenti Simili nell'Applicazione ItalgiureWeb

Autore:
Tirabassi Roberto

Introduzione

Lo studio prefissato da questo documento ha lo scopo di comprendere quali siano le più opportune configurazioni da impostare nelle applicazioni ItalgiureWeb al fine di rendere la funzionalità di ricerca dei documenti simili (ad uno o più documenti di partenza) quanto più rispondente a tale esigenza limitando il più possibile l’effetto di “rumore” dato da documenti non corrispondenti a quanto richiesto. La valutazione è empirica per definizione in quanto solo una base di test particolarmente ampia potrebbe dare risultati approssimativamente attendibili. Ciò nonostante, le indicazioni che anche pochi chiari test possono dare sono da prendere in considerazione.

L’obiettivo dei test effettuati, quindi, è quello di identificare i più opportuni valori di configurazione per ottenere quanto di meglio eXtraWay Server può offrire in termini di ricerca per documenti simili.

Per ottenere risultati di diversa natura si sottopongono a questa verifica esempi basati su un solo documento e su più documenti (sempre in numero ragionevolmente contenuto) purché sensibilmente simili tra loro. Test effettuati sulla base di documenti particolarmente eterogenei darebbero risultati di scarso significato.

La somiglianza dei documenti

Per dire se i documenti rilevati siano effettivamente simili al documento di partenza si dovrebbe prendere in considerazione si possono “leggere” tutti i documenti selezionati e dar loro una valutazione personale. Esistono inoltre formule in grado di dare un indice di somiglianza tra documenti. Dando una libera interpretazione ad una di esse (Vds. http://open.cineca.it/datamining/dmCineca/param.htm) possiamo dire che un documento assume somiglianza in rapporto diretto a quanti termini vengono rilevati ma con un rapporto inverso al numero di termini che non vi vengono trovati, senza interessare i termini rappresentativi del documento identificato che non risultano essere presenti nel documento (o nei documenti) d’origine.

La formula, in una prima approssimazione, va intesa quindi come il numero dei termini rilevati nel documento diviso lo stesso numero al quale viene sommata una frazione (che varia da ½ a ¼ a seconda dello studioso che la propone) del numero dei termini non rilevati.

I test effettuati: effetti sui risultati

I test effettuati interessano alcuni documenti o insiemi di documenti degli archivi civile, penale e lexs dell’applicazione ItalgiureWeb. Essi sono stati scelti per mettere sotto esame divese condizioni: in particolare documenti in grado di dare ottimi risultati in quanto a documenti simili, documenti in grado di dare risultati “medi” e documenti o insiemi di documenti destinati a dare risultati poco attendibili.

La prima osservazione che possiamo fare è che la pesatura dei documenti da risultati disomogenei sulla base di una serie di fattori:

Di questi parametri, solo il terzo ha senso di essere preso in esame per dare una scalatura dei pesi mentre i primi due tendono a dare risultati non confrontabili. Ad esempio: documenti molto simili ad un documento dato possono risultare “poveri” in quanto a volto finale se il numero delle chiavi selezionate per eseguire la ricerca dei documenti simili è molto elevato. Parimenti, documenti non particolarmente somiglianti al documento di partenza possono avere un voto molto elevato qualora il numero dei termini esca risulti particolarmente contenuto. Quanto detto si applica, allo stesso modo, alla rilevanza delle chiavi coinvolte oltre al semplice numero di hit riscontrato. Quello che serve, quindi, è una sorta di normalizzazione dei rapporto tra numero e rilevanza dei termini trovati e termini ricercati, normalizzazione che consenta di dare una lettura il più possibile uniforme dei pesi determinati.

L’applicazione della formula di somiglianza

La normalizzazione viene data, se pure non in forma assoluta, dalla formula che rappresenta l’indice di somiglianza di due documenti. La formula originaria, in merito alle hits ad esempio, ha il seguente aspetto…

A / (A + ((B+C)/D))

…dove A è il numero dei termini effettivamente rilevati nel documento che dobbiamo stabilire essere o meno somigliante al documento di partenza, B è il numero totale dei estratti dal documento di partenza che sono stati usati in ricerca e non sono stati rilevati nel documento determinato, C è il numero dei termini significativi presenti nel documento trovato che non sono elencati tra quelli significativi del documento di origine e D è una costante (che varia da 2 a 4), atta ad abbattere il peso dei termini non trovati (B+C) rispetto a quelli trovati. Questa formula da sicuramente risultati molto validi ma ha una pecca: a run timeli è impossibile determinare il valore di C in modo performante. La formula viene quindi ritoccata sulla base dei dati in nostro possesso con la consapevolezza che l’indice ricavato sarà meno efficiente e meno preciso. Essa assume quindi la forma…

X / (X + ((Y-X)/Z))

…dove X corrisponde ad A, Y corrisponde al totale dei termini estratti dal documento originario per la ricerca, indipendentemente dal fatto che essi siano stati rilevati o meno nel documento simile. Sottraendo ad esso X, la formula Y-X corrisponde in pratica a B mente Z corrisponde a D. Più semplicemente potremmo dire che la formula corrisponde a…

A / (A + (B/D))

…e quindi non risente dell’impatto degli altri termini presenti nei documenti trovati che non abbiano una rispondenza con il documento di origine. Risulta infatti intuitivo che se il valore di C è elevato, il documento perde di somiglianza con quello d’origine. Come detto, il valore di C non è facilmente (o meglio velocemente) ottenibile quindi si è costretti a rinunciare ad esso. Il peso ottenuto, comunque, è più uniforme perché la formula riesce a rapportate tali valori tra 0 ed 1 mentre le precedenti metodiche di calcolo del peso avevano, sostanzialmente, un valor massimo variabile e quindi un impatto sui pesi effettivamente calcolati.

La stessa formula viene analogamente applicata alla rilevanza dei termini in gioco (termini usati in ricerca e termini rilevati nei documenti simili selezionati).

L’applicazione della formula alle due componenti del peso complessivo dei documenti da un primo risultato ma non soddisfa a pieno l’esigenza di ottenere risultati significativi.

Altre influenze sul voto finale

Le altre influenze sul voto finale sono date, principalmente, dal numero dei termini che viene selezionato dal set iniziale (rappresentato da una porzione di testo, un documento o una selezione). Come abbiamo detto, se questo numero è particolarmente vasto o particolarmente ristretto i risultati non sono veritieri, non sono credibili. I documenti risulteranno molto somiglianti in virtù di pochi termini, facendo quindi risultare simili documenti che possono trattare tutt’altro argomento, o scarsamente simili in base al fatto che molti sono i termini selezionati e quindi molti di essi rischiano di essere scarsamente selettivi. In questo caso, come può risultare facile intuire, non è facile stabilire due soglie (massima e minima) oltre le quali non ha senso spingere la ricerca di termini simili quindi ci si è dovuti basare su esperienze empiriche. I test effettuati ci dicono che, ragionevolmente, un numero di chiavi compreso tra 10 e 50 può dare risultati ragionevolmente significativi. Alla valutazione sin ora compiuta va aggiunta la scelta della soglia minima di rappresentatività dei termini. Tale soglia rappresenta la porzione di archivio che dev’essere selezionabile per mezzo di una particolare chiave perché essa venga considerata pertinente, valida, rappresentativa del documento di partenza. Tale soglia si esprime con un divisore. Per intenderci meglio, la soglia di rappresentatività di default è 100 ad indicare che un termine deve selezionare sino ad un massimo di 100/100=1 ovvero l’1% dell’archivio per essere un termine valido. Se la soglia fosse 25 il termine sarebbe meno selettivo selezionando ben 25/100=4 ovvero il 4% dell’archivio.

Sulla base del valore di default vengono scelte le chiavi rappresentative del documento dal quale si parte per effettuare la ricerca per documenti simili. Applicando il taglio minimo e massimo indicato sopra, ovvero non meno di 10 chiavi e non più di 50, il server si comporta come segue:

Si fa notare che il server segue due procedimenti diversi in caso di uno o pochi (fino a 5) documenti oppure per un numero maggiore di documenti. Nel primo caso l’elaborazione dei documenti comporta l’analisi del loro contenuto e la selezione di tutte le chiavi. Di esse verranno poi assunte solo quelle che rispettano la soglia di rappresentatività. Per le selezioni oltre i 5 documenti si fa uso invece di un estensione dell’analisi spettrale, estensione che ci da sin da subito un set di termini sufficientemente rappresentativi e su di essi si svolge poi il successivo filtro sulla rappresentatività. Questo secondo stile è dettato dall’esigenza di ottenere risultati in tempi accettabili, ottenibili appunto con l’analisi spettrale, poiché l’accesso ai singoli documenti richiederebbe un tempo improponibile se pure un set di termini di partenza che, pur stando nei limiti, potrebbe risultare più piccolo (mai più grande) di quanto si sarebbe ottenuto con un accesso diretto.

Conclusioni

Lo stato attuale del server eXtraWay prevede interventi sul calcolo della pesatura definitiva dei documenti, sulle metodiche per la scelta dei termini che concorrono alla ricerca dei documenti simili in materia di soglia di rilevanza e numero massimo di termini. Le varie componenti della ricerca pesata (massima e minima dimensione della lista, voto sotto al quale non vale la pena di procedere nella ricerca) sono state quanto più possibile profilate. Avendo un singolo documento come punto di partenza ovvero una parte di testo tratta da qualche documento, i documenti ad esso simili, se il testo non è eccessivamente ampio, danno voti di somiglianza superiori al 25-35%. Avendo un set di documenti ed assumendo che esso sia ragionevolmente concentrato (i documenti dovrebbero risultare mediamente simili tra loro) la soglia si avvicina al 20%.

Dettagli sull’implementazione sono reperibili in RightWay alla scheda RW0023304

Date
2006/10/05 14:14:15

Torna a Indice delle voci


HighWay/eXtraWay Project - Frequently Asked Questions (Doxygen 1.6.1)