• Non ci sono risultati.

Personalizzazione attraverso i Recommendation Systems

CAPITOLO 5. SULLA PERSONALIZZAZIONE

5.9 Personalizzazione attraverso i Recommendation Systems

A partire dagli inizi degli anni ottanta, la nascita e l’evoluzione dei sistemi software interattivi hanno spinto molti ricercatori a focalizzare i loro studi sul miglioramento della qualità dell’interazione uomo-computer, cercando di sviluppare delle applicazioni in grado di adattarsi automaticamente alle esigenze individuali delle persone che interagiscono con le applicazioni stesse.

L’obiettivo di questo nuovo filone di ricerca nell’informatica, denominato “Modellizzazione dell’utente”, è stato quello di costruire in modo esplicito ed automatico un modello dell’utente nel momento in cui l’interazione con il sistema avesse luogo.

In un modello dell’utente devono essere rappresentate tutte le sue carat- teristiche rilevanti per la specifica applicazione interattiva considerata, in modo che sia possibile predirne gli interessi.

Le informazioni utili sono tipicamente relative a:

• caratteristiche anagrafiche, socioeconomiche, demografiche • abitudini e preferenze

• obiettivi • valori • capacità

Il processo di modellazione è generalmente caratterizzato da una fase di acquisizione, una di estensione ed una di mantenimento , delle informazio- ni. Per quanto riguarda i dati dell’utente, essi possono essere ottenuti e- splicitamente, se l’utente dice quali sono i suoi interessi, ed implicitamente, se i dati vengono dedotti dal suo comportamento.

La modellizzazione d’utente si è sviluppata ben presto in molti campi dell’informatica: nei sistemi di accesso all’informazione, nei sistemi softwa- re in grado di aiutare uno studente nell’apprendimento di una data materia, nei sistemi di dialogo automatico in linguaggio naturale, ed in altri ancora.

Alla fine degli anni ottanta la modellizzazione d’utente si è affermata co- me area abbastanza matura e sono comparsi i primi sistemi applicativi pro- totipali.

Le tecniche che più delle altre e fin dall’inizio sono state utilizzate per rea- lizzare tali sistemi sono state quelle dell’intelligenza artificiale, ed in parti- colare della rappresentazione della conoscenza, del ragionamento e del- l’apprendimento automatico.

La nascita dei sistemi di raccomandazione automatica, in particolare, è legata al rapido sviluppo che ha riguardato il web nella prima metà degli anni novanta. A partire da quegli anni, infatti, i ricercatori impegnati a stu- diare la modellizzazione d’utente si sono resi conto immediatamente che era forse arrivato il momento giusto per applicare le loro tecniche: l’enorme numero di utenti e la possibilità di accedere a vastissime quantità di informazione, di acquistare moltissimi prodotti e di fruire dei servizi più vari, faceva emergere chiaramente come l’interazione utente-web non po- tesse essere basata su un approccio rigido ed uguale per tutti.

E’ proprio da questa consapevolezza che è nata l’idea di personalizzare i contenuti, intendendo con ciò la possibilità di proporre a ciascun utente i contenuti che più si avvicinano ai suoi specifici interessi e preferenze.

Sulla personalizzazione abbiamo già avuto modo di soffermarci in manie- ra piuttosto articolata, ma in questo contesto vogliamo sottolineare l’im- portanza rivestita dalla capacità di selezionare in modo automatico i conte- nuti, sulla base di una specifica rappresentazione (costruita appunto auto- maticamente) degli interessi e delle caratteristiche del singolo utente.

Il concetto di personalizzazione, difatti, ha riscosso molto successo fin da quegli anni, in cui conobbero un grande sviluppo l’e-commerce e i sistemi di accesso all’informazione.

Abbiamo già sottolineato le grosse potenzialità in essa racchiuse; un ‘al- tra importante applicazione della personalizzazione consiste nella possibilità di risolvere, nei sistemi di accesso all’informazione (i-access), il problema del sovraccarico informativo (information overload), ossia quel tipico feno- meno che assilla tutti coloro che cercano abitualmente informazioni sul web, venendo letteralmente sommersi da una quantità enorme di dati, do- cumenti, testi, e così via, che spesso poco hanno a che fare con il loro reale bisogno informativo (cfr. par. 5.6).

Un’analoga situazione di sovraccarico di informazioni si presenta nei si- stemi per la gestione e la condivisione delle conoscenze aziendali e nei por- tali delle stesse, strumenti che stanno assumendo un ruolo sempre più es- senziale per affrontare la complessa realtà della società dell’informazione.

In entrambi i settori del commercio elettronico e dell’i-access, la persona- lizzazione ha permesso quindi di realizzare sistemi di raccomandazione au- tomatica, in grado di aiutare l’utente, suggerendogli come navigare nell’enorme quantità di prodotti e informazioni disponibili.

Quanto detto non fa altro che ribadire l’importanza di capire cosa sia me- glio offrire e a chi offrirlo, in un processo di personalizzazione, in modo tale da massimizzare i risultati, ovvero il valore per il cliente e per l’azienda stessa.

I sistemi di raccomandazione automatica (Recommendation System o RS) ai quali abbiamo accennato poc’anzi hanno proprio l’obiettivo di risol- vere questo problema.

Essi, infatti, rappresentano il risultato degli studi di modellizzazione dell’utente e sono sistemi capaci di predire l’interesse di quest’ultimo per un certo item, ovvero per un qualsiasi oggetto, fisico o digitale.

Tali sistemi associano ad ogni coppia utente-item un punteggio (score): Rec : U × I → S

Fra gli item disponibili, all’utente viene suggerito quello (o quelli) con lo score più alto. Un recommender, in pratica, confronta gli interessi dell’utente con gli item disponibili e cerca il migliore accoppiamento, usan- do determinati criteri di similarità e dissimilarità (Ciaramella, 2004).

L’origine dei sistemi di raccomandazione automatica è legata, in realtà, alla “raccomandazione” di documenti testuali (nell’ambito dell’Information Re- trieval (IR)). L’obiettivo è sempre lo stesso, e cioè quello di aiutare l’utente con il sovraccarico delle informazioni.

La principale differenza rispetto ai sistemi di IR consiste nel fatto di provare ad imparare qualcosa in più circa gli utenti, piuttosto che formarsi solo a poche parole in una query (interrogazione dell’utente).

Inoltre, essi si differenziano dai sistemi di IR anche perché: a) prendono in considerazione ogni tipo di item disponibile

b) provano ad anticipare bisogni degli utenti e possono essere usati come strumenti decisionali in assenza dell’utente.

L’’idea principale è comunque la stessa: ridurre la quantità di dati disponibi- li e gettare via gli item meno interessanti.

E’ stata proprio la proliferazione dell’informazione ad indirizzare le ricer- che degli studiosi sulla possibilità di rimuovere le informazioni irrilevanti, obiettivo nettamente opposto a quello di estrarre le informazioni rilevanti, fino a quel momento perseguito dall’Information Retrivial (Salton e McGill, 1983).

E’ così che l’informazione, la categorizzazione dell’informazione e il filtrag- gio (filtering) sono diventate attività di enorme importanza.

I RS possono essere classificati in tre grandi categorie, sulla base delle in- formazioni che usano per il suggerimento degli item.

Certamente ogni sistema di raccomandazione usa dati relativi all’utente al quale si propone di consigliare qualcosa.

I sistemi che raccomandano elementi (siano essi pagine web, film, can- zoni, articoli o altro) basandosi sulle opinioni delle persone con gusti simili sono detti di filtraggio collaborativi. Essi superano le difficoltà proprie dei sistemi di filtraggio di informazioni tradizionali, eliminando la necessità per i computer di analizzare e comprendere il contenuto dell’elemento.

Il termine collaborativi rappresenta il fatto che l’unica cosa che conta nel processo di raccomandazione sono gli altri utenti e i loro gusti. Tali sistemi, infatti, memorizzano le recensioni che gli utenti danno di un certo item per poi successivamente consigliare ad un utente gli item che hanno avuto buone recensioni da utenti simili a lui. In altri termini, si ipotizza quale sa- rebbe la sua recensione dell’item se ne fruisse e quale sarebbe il suo gra- dimento. L’ipotesi viene formulata in base alle recensioni degli altri utenti e in base alla similarità fra gli altri utenti e questo. Il metodo si basa quindi sull’assunto che se due persone hanno mostrato gli stessi gusti in passato, tendenzialmente li manterranno simili anche in futuro.

I sistemi che invece valutano il gradimento dell’utente per un certo item in base alle feature dell’item stesso sono detti basati sul contenuto (con- tent-based) (Balabanovic, 1997).

Il termine contenuto deriva dall’uso per documenti testuali, ma si potreb- be parlare in generale di filtraggio delle caratteristiche (feature filtering).

Solo negli ultimi anni sono stati proposti dai ricercatori alcuni sistemi ad approccio misto (Pazzani, 1999; Melville, Mooney e Nagarajan, 2001), con

l’obiettivo di sfruttare i vantaggi di entrambi i metodi e per ridurne gli svantaggi e i problemi.

Ad oggi, tali approcci sembrano riservare la maggiori sorprese e rappre- sentano infatti lo stato dell’arte dei task di raccomandazione automatica.

Ad ogni modo, in tale contesto ci limitiamo a fornire solo un accenno alle tecniche in uso, esulando dal nostro obiettivo un ulteriore approfondimen- to.