Information retrieval: differenza tra “cercare” ed “aggregare”

Pubblicato: 23 gennaio 2009 in Tecnico

Lo scenario web che si presenta a qualcuno completamente a digiuno di strumenti informatici sembra a prima vista desolante. In ogni istante una mole gigantesca di informazioni viene prodotta e memorizzata in maniera virtualmente indelebile, ad ogni click si ha la sensazione di allontanarsi sempre di più da quello che può suscitare interesse.

Total Sites Across All Domains August 1995 – January 2009
site_count_history

Non è una novità. Termini oggi considerati obsoleti come “portale” indicano che fin da subito è sorta la necessità di trovare un “ingresso” a questo universo apparentemente convulso e mutevole. A ciascuno il suo: oggi i punti di ingresso alla rete sono molteplici e si possono grossomodo catalogare in quattro categorie principali: i motori di ricerca, i portali (o quello che resta di loro, rapidamente sostituiti dai social networks), i blog e gli aggregatori. Lascio per ultimi gli aggregatori, di cui mi occupo e non ne faccio mistero, perché qui in Italia non hanno lo stesso successo che invece riscuotono oltreoceano, pur essendocene alcuni molto buoni (oltre ai miei, naturalmente :-)), ad esempio la pagina dei libri citati di BlogBabel.

Di social networks e di blog non parleremo in questa sede, lo sviluppo di Facebook in Italia lo ha reso certamente un punto di ingresso per molte persone così come molte persone in cerca di una fetta di rete più “isolata” si limitano a leggere pochi blog che vengono utilizzati come lente di ingrandimento su quello che giorno per giorno viene reputato interessante.

Ci concentriamo invece sui motori di ricerca e sugli aggregatori che condividono alcuni principi di funzionamento e che sono, come vedremo, complementari alla fruizione mirata ed il meno possibile dispersiva delle risorse presenti in rete.

Motori di ricerca

Un po’ ipocritamente si parlerà di “motori” quando invece è chiaro, anche dalle cifre, che in questo periodo c’è praticamente solo un motore di ricerca, Google.

jc-searchsharejan07-11

Google è certamente un ottimo motore di ricerca, le quote di mercato lo dimostrano, eppure non è raro trovare campi specifici nei quali i risultati delle ricerche appaiono agli utenti quasi completamente inutili. Questo succede perché un motore di ricerca come Google, che ha l’obiettivo di indicizzare TUTTE le pagine presenti sulla rete, per sua natura non può essere preciso.

Precisione e recupero

Facciamo un passo indietro. Quando si studiano le performances dei sistemi di information retrieval si utilizzano due parametri che chiameremo “precisione” e “recupero” (traduzione dell’inglese recall).

Fissato un topic (ad esempio una chiave di ricerca ma anche un più generico argomento, come vedremo più avanti quando parleremo di aggregatori) chiamiamo “Scaricati” i documenti che il motore possiede e che considera inerenti a quel topic e chiamiamo “Rilevanti” i documenti che in effetti sono inerenti al topic:

  Rilevanti Non rilevanti
Scaricati Rilevante e scaricato o Vero positivo (Vp) Non rilevante e scaricato o Falso positivo (Fp)
Non scaricati Rilevante e non scaricato o Falso negativo (Fn) Non rilevante e non scaricato o Vero negativo (Vn)

Ebbene si definisce precisione il rapporto tra i documenti rilevanti e tutti quelli scaricati:
[pmath]pi = Vp/{Vp+Fp}[/pmath]

Questo è il punto debole dei motori di ricerca che si prefiggono di scaricare TUTTI i documenti. Il rumore di fondo si alza e la percentuale di rilevanti inevitabilmente si abbassa.

Ma perché si ostinano? perché semplicemente non si limitano ad una fetta dell’intera rete? a parte le questioni di come operare la scelta che ovviamente sono fondamentali, questo certamente aumenterebbe la precisione. Questo è il motivo per cui i tanti motori di ricerca usciti con titoli come “Nasce l’Anti-Google” a prima vista davano risultati fenomenali. Perché erano tarati per risultare molto precisi su alcuni topics. Ma, purtroppo per loro, al crescere delle pagine scaricate dovevano arrendersi al fatto che pian piano la precisione andava alle ortiche, senza riuscire comunque a competere con Goggle.

Perché, ed anche questo è innegabile, Google generalmente fornisce, fissato un topic, un’ottima panoramica sulle pagine che trattano di questo topic. Con Google si ha comunque la sensazione di aver trovato qualcosa. C’è in effetti un altro parametro che ci indica quanto buona è la fotografia della rete ritornata da una ricerca, si chiama recupero, ed è il rapporto dei documenti rilevanti scaricati su tutti i possibili documenti rilevanti esistenti:
[pmath]rho = Vp/{Vp+Fn}[/pmath]

Google in questo è imbattuto (e forse imbattibile). Se esiste un documento che parla di una certa cosa state certi che lui ce l’ha. Ecco perché si ostinano a volere tutto, è una precisa strategia. Un grande indice implica un recupero molto alto.

Questo è così il dilemma dei motori di ricerca. Riuscire ad avere una buona precisione senza rinunciare al recupero. Limitando le dimensioni dell’indice, come abbiamo visto, si perde recupero a volte in maniera drammatica tanto che alcuni motori di ricerca minori non hanno alcun documento scaricato su molti topics, e a quel punto la precisione non conta più nulla. Ingrandendo le dimensioni dell’indice, a patto di poterselo permettere, la precisione, senza scampo, si abbassa.

Il motivo profondo per cui questo succede dipende dal basso valore semantico contenuto mediamente nelle chiavi di ricerca. Ho trovato una dimostrazione elegante di questo enunciato che non mi entra però nei margini di questo blog.

Ma per fortuna di tutti c’è una soluzione.

Aggregatori

Gli aggregatori sono oggetti funzionalmente molto simili ai motori di ricerca, perlustrano la rete (autonomamente o seguendo le segnalazioni degli utenti, come nel primo esempio seguente), scaricano documenti, li salvano da qualche parte, ci fanno operazioni in qualche misura analoghe all’indicizzazione. La differenza fondamentale è che non “rispondono” ad una ricerca ma spontaneamente “offrono” risultati. In questo contesto il topic non è più una chiave di ricerca ma un argomento specifico. Un esempio dovrebbe spiegarlo bene, questa è l’attuale pagina di Reddit, uno dei più importanti aggregatori multitematici del mondo, che riguarda l’ateismo (si possono valutare precisione e recupero già così, mi sa):


immagine-1

Vediamo anche uno screenshot di rr_news, il mio aggregatore di news italiane:

immagine-2

Un aggregatore, al contrario di un motore di ricerca, punta tutto sulla precisione. I suoi indici non raggiungono le dimensioni mastodontiche di quelli dei motori di ricerca perché su questi indici deve fare molto più lavoro, deve cercare gli articoli che parlano “della stessa cosa”. Inoltre gli aggregatori come rr_news devono fare l’ulteriore lavoro di correlare tra loro gli articoli che sono semanticamente vicini. Così ad esempio nel topic “politica” in questo istante rr_news si occupa di aggregare tra loro gli articoli che parlano del piano carceri come nel topic “esteri” aggrega tra loro quelli che parlano del Congo (eccetera).

Ovviamente questa precisione, che spesso è notevole, va a scapito della pluralità delle voci. Un indice piccolo significa molte fonti lasciate al di fuori e quindi un recupero basso. Ma anche qui, come sopra, non c’è scelta. L’indice non può crescere più di tanto, la precisione inizierebbe subito a risentirne senza miglioramenti percepibili del recupero.

Conclusioni

Motori di ricerca ed aggregatori sono, ora si capisce perché, strumenti complementari di ingresso alla rete. L’aggregatore ci offre i documenti da una selezione di fonti ma non è in grado di essere esaustivo, il motore di ricerca è potenzialmente in grado di scovare, e per quanto riguarda Google questa è una responsabilità che ha nei confronti di tutti, voci che altrimenti rimarrebbero per sempre sommerse nelle maree dell’informazione sulla rete. Strumenti complementari ma non antagonisti, strumenti da utilizzare assieme, istante per istante, per ottenere una vista precisa e completa delle informazioni disponibili su un certo argomento.

I commenti sono chiusi.