Sistemi di supporto alle decisioni di acquisto
3.2 Il filtraggio automatico delle informazion
Il termine “filtraggio delle informazioni” può riferirsi sia alla ricerca di informazioni che si desiderano (filtering in), sia all’eliminazione di informazioni non desiderate (filtering out); termini analoghi sono information retrieval (sistema di recupero delle informazioni) e selective
dissemination of information (diffusione selettiva delle informazioni).
Mediante il filtraggio delle informazioni si cerca di estrarre da una grande quantità di informazioni quelle più importanti per una persona, escludendo quelle irrilevanti; in altre parole si cerca di selezionare alcune opzioni da un insieme più vasto, presentandole in ordine d’importanza. Tipicamente, l’insieme delle informazioni è dinamico, mentre le esigenze sono stabili e suscettibili di essere sintetizzate in un profilo personalizzato. Mediante il filtraggio si cerca di capire quali profili di preferenze possono, con più elevata probabilità, essere soddisfatti da una certa opzione, selezionata da un ampio insieme di opzioni.
Già Linch aveva messo in evidenza che internet ha innescato un processo di crescita esponenziale delle informazioni disponibili, poiché ognuno può diventare facilmente l’editore di se stesso; di conseguenza la quantità di informazioni disponibili è tendenzialmente pressoché infinita, e la loro qualità è estremamente variabile (information overload o sovraccarico di informazioni) [Linch, 1997] .
Con la crescita esplosiva delle informazioni disponibili, la preoccupazione principale delle persone è diventata quella di come selezionare le informazioni rilevanti e corrette per ciascuno, anche in considerazione del fatto che informazioni molto importanti per una persona possono essere del tutto irrilevanti per un’altra; secondo Bowman già nei primi anni novanta del secolo scorso il 99 per cento delle informazioni disponibili non aveva alcuna rilevanza per il 99 per cento dei potenziali utenti [Bowman et al, 1994] .
69 Le prime intuizioni sull’importanza prospettica del filtraggio delle informazioni può farsi risalire al 1945, quando Vanner Bush, costruttore della prima calcolatrice analogica e presidente del Carnegie Institute di Washington, pubblicò un saggio dal titolo “as we may think”, in cui descrisse le caratteristiche di un meccanismo per il recupero delle informazioni (Memex), che avrebbe potuto consentire di consultare i documenti presenti in un archivio secondo relazioni associative (non sequenziali), tipiche della mente umana, lungo sentieri caratterizzati da affinità tematica. Il progetto Memex non fu mai attuato concretamente, ma l’intuizione di Vanner Bush fu ripresa dopo 20 anni da Ted Nelson, che nel 1965 introdusse il termine “ipertesto” per indicare una modalità di accesso alle informazioni del tipo di quella ipotizzata da Vanner Bush, e nel 1967 progettò un ambiente letterario globale online consultabile da tutti con modalità associative e interattive (Xanadu). Il primo ipertesto online fu realizzato nel 1968 da Douglas Engelbart, un ricercatore americano che aveva inventato anche il mouse, che consente di passare da un documento all’altro, secondo le modalità associative tipiche della mente umana39.
Le reti di computer consentono la formazione di gruppi d’interesse che oltrepassano le frontiere geografiche; invece di inviare un articolo a un insieme specifico di persone, l’autore può collocarlo in un newsgroup di usenet, vale a dire una collocazione pubblica disponibile a chiunque sia interessato all’argomento. Usenet (abbreviazione di user network = rete di utenti) è una rete mondiale di server interconnessi in cui sono collocati articoli (news) inviati liberamente e consultabili da tutti gli abbonati; essa è articolata per temi in circa 50.000 newsgroup. Fondata nel 1979 da un neolaureato della Università americana di Duke, Usenet può essere considerata il precursore degli attuali web forum; gli articoli sono distribuiti sequenzialmente attraverso un insieme di moltissimi server interconnessi, Con lo sviluppo di internet, funzioni analoghe a quelle tradizionali di Usenet sono state gradualmente svolte dai “community forum; tuttavia, mentre gli articoli collocati in Usenet vengono resi disponibili sui server di questa rete in tutto il mondo, gli articoli collocati in un community forum non sono di solito disponibili al di fuori di esso; anche se relativamente meno utilizzato che in passato, Usenet rimane ancora oggi un importante strumento di comunicazione.
L’esempio più importante di information retrieval è senza dubbio rappresentato dai motori di ricerca per il World Wide Web, dove un utente può inserire un quesito (query), e ottenere una lista di pagine rilevanti. Quindi un sistema di information retrieval, comprende una collezione di documenti (paragrafi, pagine, ecc,), una query che specifica ciò che l’utente vuole conoscere, un insieme di risultati, vale a dire il sottoinsieme di documenti che il sistema giudica rilevanti per il quesito, una modalità di presentazione dei risultati (una semplice lista di documenti, una mappa colorata, ecc.). Gran parte dei sistemi di information retrieval utilizzano modelli basati sulle statistiche dei conteggi delle parole; alcuni documenti hanno una maggiore probabilità di essere rilevanti per qualsiasi interrogazione, in virtù della loro qualità intrinseca; per esempio, per gli articoli accademici si può stimare la qualità in base al numero di citazioni da parte di altri autori; nel caso delle pagine web si può utilizzare come indicatore di qualità intrinseca il numero di collegamenti che puntano alle diverse pagine.
La performance di un sistema di information retrieval era spesso misurata in passato tenendo conto principalmente di due parametri: la copertura e la precisione; la precisione misura
39Un ipertesto è composto da documenti accessibili da un interfaccia elettronica in maniera non sequenziale,
mediante collegamenti ipertestuali (hyperlink); il sistema di ipertesti di gran lungo più vasto è il world wide web di Internet, che impiega il linguaggio HTML (Hyper Text Mark-Up Language) per descrivere i documenti ipertestuali disponibili sul Web. Sviluppato verso la fine degli anni ottanta presso il CERN di Ginevra, HTML è un linguaggio pubblico, la cui sintassi è stata standardizzata e progressivamente migliorata dal Word Wide Web Consortium (W3C); nonostante sia in corso la sua sostituzione con XHTML, che dovrebbe facilitare la trasmissione di file verso i telefoni cellulari, W3C, raccomanda ancora anche l’uso di HTML4, e ne sta anche sviluppando una versione più aggiornata (HTML5) . Ogni documento ipertestuale scritto in HTML deve essere contenuto in un file di estensione
.htm oppure .html, che inizia con l’indicazione della DTD, che dice al browser l’URL delle specifiche html utilizzate
70 la percentuale di documenti effettivamente rilevanti fra quelli selezionati; la copertura misura la percentuale di documenti effettivamente rilevanti che sono presenti nell’insieme dei risultati; Precisione e copertura sono spesso in contrapposizione, selezionando un insieme molto grande aumenta in genere la percentuale di copertura ma diminuisce la precisione, e viceversa, se si punta a selezionare un insieme ristretto, aumenta probabilmente la precisione ma diminuisce la copertura. Attualmente gran parte delle ricerche di informazioni provengono da utenti di Internet40, ai quali spesso interessa molto anche l’immediatezza di una risposta rilevante; in questo caso una misura di efficacia può essere il reciproco della posizione del primo risultato rilevante (1 se il primo risultato che si ottiene è quello rilevante; ½ se il primo risultato non è rilevante ma lo é il secondo, e così via). Inoltre, un altro indicatore di efficacia può essere il tempo necessario per ottenere la risposta desiderata.
Sistemi raffinati di information retrieval cercano di tener conto delle correlazioni fra le parole, per esempio mediante il case folding, vale a dire la conversione automatica maiuscole/minuscole, oppure utilizzando gli algoritmi di stemming (estrazione delle radici delle parole); in questo modo la copertura tende ad aumentare, la precisione, però, di solito diminuisce; effetti analoghi si ottengono con le tecniche di riconoscimento dei sinonimi. Le tecniche di information retrieval possono essere potenziate anche considerando i “metadati”, vale a dire dati esterni al testo del documento, come parole chiave e collegamenti ipertestuali forniti dalle persone.
Un criterio di presentazione dei risultati molto diffuso è costituito da liste ordinate per probabilità di rilevanza decrescente, eventualmente eliminando i risultati molto simili. Alcuni sistemi consentono all’utente di fornire “feedback sulla rilevanza”, indicando quali documenti sono particolarmente rilevanti in un insieme inizialmente proposto, e proponendo poi un insieme di documenti simili a quelli indicati come rilevanti. I risultati a volte sono presentati nella forma di “alberi etichettati” anziché di liste ordinate; oppure classificati per argomenti; il clustering dei documenti comporta la creazione di un albero delle categorie per ogni insieme di risultati; la classificazione è più appropriata quando la collezione contiene un piccolo numero di argomenti, il clustering è più opportuno nel caso di insiemi di documenti molto ampi, come quelli tipici del
World Wide Web.
La classificazione è un problema di apprendimento supervisionato che può essere impostato anche utilizzando gli alberi di decisione; dato un insieme di addestramento di documenti etichettati con le categorie corrette, è possibile costruire un singolo albero le cui foglie classificano ciascun documento; in questo modo è possibile raggiungere percentuali di accuratezza superiori al 90 per cento.
Il clustering dei documenti è più difficile, poiché lo spazio ha molte più dimensioni e non si sa in anticipo se i dati sono stati generati da un modello gaussiano. All’inizio, ogni documento è considerato come un cluster separato, poi si cercano i due cluster più vicini che vengono fusi, ripetendo il processo fino a quando rimane un solo cluster. La misura della distanza tra due cluster potrebbe corrispondere alla distanza fra le mediane, oppure considerare la distanza media tra i componenti dei cluster. Per la classificazione clustering dei documenti è necessario un algoritmo che tenga conto sia del loro contenuto, sia delle valutazioni degli utenti, e che possa fornire anche una misura del grado di similarità, in assenza di feedback, deve trattarsi di un algoritmo di apprendimento automatico unsupervised.
Le tipologie di algoritmi di clustering più studiate negli anni duemila sono state probabilmente le mappe auto-organizzantesi (self-organizing map o SOM), proposte da Kohonen [Kohonen, 1995, 1997, 2001], della Helsinki University of technology, la cui efficacia applicativa è anche dovuta alle loro ottime capacità di organizzazione e visualizzazione di masse di dati di elevate dimensioni. Le mappe auto-organizzantesi sono state utilizzate in diversi
40 In una collezione di documenti molto grande come il World Wide Web è spesso praticamente impossibile
71 progetti industriali, e in diverse discipline scientifiche (statistica, analisi finanziarie, fisica, chimica, medicina), oltre che nell’organizzazione di vastissime quantità di documenti. Esse sono essenzialmente degli algoritmi reticolari neurali di apprendimento senza supervisione (unsupervised), e sono state proposte come uno dei modelli più realistici del funzionamento biologico del cervello. L’obiettivo dell’apprendimento è perseguito specializzando parti diverse della rete neurale artificiale a rispondere a particolari pattern d’ingresso, in analogia con il fatto che le informazioni sensoriali, visive, e uditive sono gestite da parti separate della corteccia cerebrale nel cervello umano.
Così come gran parte delle reti neurali artificiali, le mappe auto-organizzantesi hanno due modalità di funzionamento: 1) durante il processo di addestramento la rete neurale si organizza sulla base dei vettori d’ingresso ricevuti, che dovrebbero essere molti, e rappresentativi dei vettori attesi per la seconda fase; 2) durante il processo di mapping, i nuovi vettori d’ingresso vengono classificati; vincerà il neurone il cui vettore dei pesi è più vicino al vettore d’ingresso. Una mappa auto-organizzantesi può essere interpretata in due modi: 1) nella fase di addestramento i pesi di tutto il vicinato sono spostati nella stessa direzione, ed elementi simili tendono ad eccitare neuroni adiacenti; di conseguenza le mappe auto-organizzantesi formano una mappa semantica in cui opzioni simili sono vicine e quelle dissimili sono distanti; 2) i pesi neurali possono essere pensati come punti distribuiti nello spazio degli ingressi; più neuroni si dirigono verso regioni con una elevata concentrazione di campioni di addestramento e meno verso zone dove i campioni di addestramenti sono pochi.
L’algoritmo di apprendimento delle mappe auto-organizzanti elaborate da Teuvo Kohonen dell’Università Tecnologica di Helsinki è una brillante formulazione di apprendimento non supervisionato, ed è stato ampiamente utilizzato per la classificazione di elevate quantità di informazioni. Una mappa auto-organizzante si basa su una griglia di neuroni artificiali, i cui pesi sono continuamente adattati ai vettori forniti per l’addestramento, di solito di dimensione elevata; la dimensione dei vettori in uscita è invece di solito non superiore a 3, così da ottenere mappe visualizzabili a due o tre dimensioni. Le reti neurali lavorano in parallelo, e possono quindi elaborare moltissime informazioni in breve tempo; anche se alcune unità dovessero funzionare male, il sistema non dovrebbe bloccarsi. Una rete neurale é una sorta di “scatola nera”, nel senso che le indicazioni da essa fornite difficilmente possono essere spiegate.
Le reti neurali sono di solito utilizzate quando i dati possono contenere diversi errori, oppure non sono disponibili modelli analitici adeguati; esse sono molto utilizzate nelle analisi di
data mining (che saranno presentate più avanti), per le previsioni finanziarie e meteorologiche,
nel campo della bio-informatica. Dopo una fase di apprendimento che può anche essere molto lunga, esse sono in genere in grado di indicare i risultati più probabili [Oja e altri, 2003]. Il principale motivo del successo delle mappe neurali auto-organizzantesi è che esse sono in grado di trasformare delle masse di informazioni multidimensionali in rappresentazioni visuali comprensibili; le opzioni simili sono raggruppate, così che esse appaiono vicine nella mappa dei risultati, così che esse evidenziano le relazioni esistenti fra opzioni caratterizzate da una elevata molteplicità di dimensioni anche quando la quantità dei dati è così elevata che le relazioni non possono essere evidenziate con altre metodologie. Poiché operano su vettori multidimensionali, esse possono essere facilmente utilizzabili per la classificazione dei documenti poiché sono in grado di sintetizzare le loro molteplici caratteristiche in una mappa a due dimensioni [Kohonen et al, 1996].
Le due strutture dati fondamentali in qualsiasi sistema di information retrieval sono il lessico, che elenca tutte le parole nella collezione di documenti, e l’indice inverso, che elenca tutti i punti in cui compare ogni parola nella collezione. Il lessico è una struttura dati che supporta una singola operazione: data una parola, restituisce la posizione dell’indice inverso che memorizza le sue occorrenze; il lessico deve essere implementato attraverso una struttura dati che consenta una ricerca veloce, eventualmente omettendo parole con poco contenuto informativo o “parole di stop” (il, di, a, e, un, ecc.). L’indice inverso, o semplicemente indice, è
72 costituito da un insieme di liste di occorrenze, che sono i punti in cui compare ogni parola; per il modello booleano a parole chiave una lista di occorrenze (“hit list”) consiste in una lista di documenti, nel modello a unigrammi è una lista di coppie documento-conteggio; per la ricerca di frasi intere la lista di occorrenze deve contenere le posizioni in cui la parola compare all’interno di ogni documento. Quando la query è composta da una singola parola (circa un quarto dei casi), l’elaborazione è molto veloce; con un solo accesso al lessico si ottiene l’indirizzo della lista di occorrenze. In concreto, i motori di ricerca che operano sul web suddividono l’indice in k segmenti, ognuno memorizzato su un computer diverso; le query sono inviate in parallelo a tutti i computer, e i k insiemi di risultati sono fusi in un unico insieme mostrato all’utente; i motori di ricerca gestiscono sul web diverse migliaia di query ogni secondo.
L’impresa che con maggior successo ha utilizzato gli agenti intelligenti per il filtraggio delle informazioni presenti su internet è stata probabilmente finora Google. Google è diventata leader della ricerca su internet facendo leva sulle valutazioni collettive degli utenti; la sua tecnologia PageRank è basata sull’idea che il modo migliore per trovare informazioni rilevanti sia di mettere in ordine di priorità i risultati di ricerca non in base alle caratteristiche dei documenti, ma al numero di siti che contengono un link ai diversi documenti. Secondo Tapscott e Williams “Questi esempi dimostrano come le persone possano “filtrare”, grazie alla collaborazione, la pletora di varietà e di scelte a loro disposizione sulla rete … in assenza di una guida esperta [Tapscott, Williams, 2007] . Oggi, grazie alle iniziative pionieristiche di una serie di servizi web, le applicazioni dell’intelligenza collettiva stanno arrivando a cambiare le modalità tramite di organizzazione e classificazione del contenuto sulla Rete, attraverso l’utilizzo di un sistema di classificazione “popolare” chiamato tagging”. Questo sistema consente agli utenti di apporre “etichette” descrittive al contenuto di documenti, video, ecc.; probabilmente le persone che usano tag simili hanno interessi in comune.