NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità D3.4 Modelli e soluzioni di profilazione degli utenti Il deliverable D3.4 fornisce una relazione sui modelli di riferimento e specifiche architetturali e funzionali di soluzioni dinamiche di profilazione dei comportamenti e delle preferenze degli utenti. 1 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Indice generale 1Concetti di User Modeling............................................................................... 11 2Processo di Modellazione Utente...................................................................... 12 3Dimensioni del Modello Utente......................................................................... 13 3.1Conoscenza................................................................................................ 14 3.2Obiettivo....................................................................................................14 3.3Esperienze................................................................................................. 15 3.4Interessi e Preferenze.................................................................................. 16 3.5Tratti Individuali..........................................................................................17 3.6Interazioni Sociali....................................................................................... 19 4Approcci di Modellazione ................................................................................ 20 4.1Knowledge-based........................................................................................20 4.2Behavioral-based........................................................................................ 21 5Acquisizione Dati Utente................................................................................. 23 5.1Explicit Profiling.......................................................................................... 23 5.2Implicit Profiling..........................................................................................23 6Creazione Iniziale del Profilo Utente.................................................................26 6.1Manual...................................................................................................... 27 6.2Training Set................................................................................................27 6.3Rating-based ............................................................................................. 27 6.4Social Network........................................................................................... 28 6.5Mediator-based Profiling.............................................................................. 29 7Metodologie di User Modeling.......................................................................... 31 7.1Stereotypes .............................................................................................. 31 7.2Feature-based............................................................................................ 32 7.3 Keyword-based ......................................................................................... 34 7.4List of Item-based....................................................................................... 35 7.5Modelli statistici predittivi............................................................................. 35 1Le ontologie.................................................................................................. 38 1.1Semantic Web............................................................................................ 40 2Modellazione Utente basata su Ontologie..........................................................45 2.1Ontologie per la modellazione utente ............................................................ 46 2 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 1Introduzione ................................................................................................ 56 2Integrazione con Interfaccia Grafica................................................................. 59 3Classificazioni................................................................................................ 60 3.1Tecniche di Raccomandazione....................................................................... 62 4Approcci Content-Based..................................................................................64 5Approcci Collaborative-Based..........................................................................67 5.1Memory-Based........................................................................................... 67 5.2Model-Based.............................................................................................. 70 6Approcci Hybrid............................................................................................. 72 7Cold start problem ........................................................................................ 74 7.1Cold start problem per nuovi materiali .......................................................... 74 7.2Cold start problem per nuovi utenti ..............................................................74 8Importanza dell’evoluzione temporale...............................................................76 9Importanza della serendipità........................................................................... 77 10Mobile Recommender System........................................................................ 78 11Valutazione delle prestazioni..........................................................................81 11.1Metodologie numeriche.............................................................................. 81 11.2Metriche.................................................................................................. 82 11.3Metodologie comportamentali..................................................................... 85 11.4Metodologie di valutazione diretta...............................................................85 1Definizione attributi modello utente.................................................................. 90 1.1Dimensioni Base......................................................................................... 91 1.2Dimensioni Preferenze................................................................................. 92 1.3Dimensioni Avanzate................................................................................... 93 1.4Dimensioni Di Contesto................................................................................ 94 1.5Dimensioni di Gruppo.................................................................................. 95 1.6Dimensioni di Interessi................................................................................ 95 1.7Dimensioni Social Networking....................................................................... 96 1.8Dimensioni Stereotipi.................................................................................. 97 2Dettagli Caratteristiche visitatore NeoLuoghi.....................................................98 1RS per modulo Storytelling Authoring............................................................. 107 2RS per modulo Storytelling Player.................................................................. 108 1Acronimi..................................................................................................... 109 3 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Indice delle figure Figura 1......................................................................................................... 12 Figura 2......................................................................................................... 39 Figura 3......................................................................................................... 42 Figura 4......................................................................................................... 49 Figura 5......................................................................................................... 52 Figura 6......................................................................................................... 53 Figura 7......................................................................................................... 54 Figura 8......................................................................................................... 87 Figura 9......................................................................................................... 88 Figura 10....................................................................................................... 89 Figura 11....................................................................................................... 89 Figura 12....................................................................................................... 90 Figura 13....................................................................................................... 91 Figura 14....................................................................................................... 92 Figura 15....................................................................................................... 93 Figura 16....................................................................................................... 94 Figura 17....................................................................................................... 95 Figura 18....................................................................................................... 95 Figura 19....................................................................................................... 96 Figura 20....................................................................................................... 97 Figura 21....................................................................................................... 98 Figura 22...................................................................................................... 103 Figura 23...................................................................................................... 104 Indice delle tabelle Tabella 1. Profilo utente basato su keyword......................................................... 34 Tabella 2. Matrice di Utilità per un RS di film.......................................................57 Tabella 3- Proprietà del modello utente in Neoluoghi.............................................99 4 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 5 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Introduzione al documento Uno degli obiettivi fondamentali che il progetto Neoluoghi vuole perseguire è quello dell’immersività. La sostanziazione di tale concetto prevede come condizione necessaria il rendere le esperienze coinvolgenti ed emozionanti, anticipando le aspettative dell’utente tramite il suggerimento di modalità fruitive affini alle sue peculiarità. Il primo tassello nella costruzione di funzionalità che permettano la realizzazione delle suddette prerogative è quello di un’attenta e minuziosa gestione della profilazione degli utenti. Il profilo utente consiste di una modellazione di tutti gli elementi che caratterizzano le varie tipologie di utenti del sistema. La modellazione dell’utente è, quindi, una componente fondamentale del progetto, perché ha lo scopo di riconoscere e rappresentare elementi caratteristici del visitatore e simularne i processi comportamentali utili per rendere interessante la visita del Neoluogo. La modellazione adottata consta di un insieme di un insieme prefigurato di dimensioni, ossia caratteristiche degli utenti correlate funzionalmente. Sulla base di quanto presente in letteratura e delle analisi del dominio di riferimento, oltre che degli scopi peculiari del progetto, sono state individuate delle dimensioni caratterizzanti, sulla base delle quali è possibile catalogare con precisione ogni singolo utente nel novero completo delle sue caratteristiche comportamentali, educative e attitudinali. Entrando nell’ambito della presente trattazione, il Capitolo Approcci alla modellazione dei profili utente contiene uno stato dell’arte sugli approcci più appropriati al dominio di riferimento per la modellazione dei profili utente. In particolare, è stato innanzitutto analizzato il processo che porta alla modellazione dell’utente a partire dai dati dell’utente e sono state esaminate le tassonomie più consolidate per la definizione delle suddette dimensioni (sezione Dimensioni del Modello Utente), soffermandosi sui seguenti elementi: • Caratteristiche personali (o demografiche): informazioni di base, generalità dell’utente; • Interessi e preferenze: interessi dell’utente in relazione a un determinato dominio di conoscenza; • Obiettivi: scopi per cui l’utente utilizza il sistema; • Capacità fisiche: caratteristiche fisiche di un utente ed eventuali difficoltà e limitazioni di cui tenere conto; • Conoscenza e background: informazioni che un generico utente possiede ancor prima di utilizzare il sistema; • Comportamento: modalità con cui l’utente agisce nell’atto della fruizione; • Contesto: ambiente complesso in cui sono calati gli utenti che utilizzano un sistema; 6 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità • Tratti individuali: aspetti cognitivi specifici dell’utente. È stata, di seguito, effettuata un’analisi degli approcci di modellazione maggiormente idonei, soffermandosi su approcci knowledge-based e behavioural-based (sezione Approcci di Modellazione). Il primo prevede l’utilizzo di questionari da presentare agli utenti. Tale tecnica di profilazione è la più semplice e trasparente in quanto è lo stesso utente a fornire le informazioni necessarie, col vantaggio di poter reperire direttamente le informazioni necessarie alla profilazione, senza mediazioni esterne. Inoltre le informazioni raccolte sono considerate altamente affidabili proprio perché direttamente fornite dall’utente stesso, a meno di una scarsa motivazione dello stesso (sezione Explicit Profiling). La modellazione behavioural-based utilizza, invece, un’analisi del comportamento dell’utente durante l’interazione con il sistema. In questo caso la raccolta dei dati non comporta un’azione diretta da parte dell’utente, ma si basa sul monitoraggio dei feedback espressi dall’utente durante le fruizioni e del suo comportamento complessivo nell’ambito dell’utilizzo del sistema (sezione Implicit Profiling). Per quanto concerne la rappresentazione delle informazioni in un modello utente, sono stati analizzati diversi approcci, ognuno dei quali mira a riunire gli utenti in diversi gruppi caratteristici e a predirne il comportamento durante la fruizione (sezione Metodologie di User Modeling). Per permettere l’adozione dei modelli e delle metodologie nel novero delle funzionalità offerte dal sistema prototipale da implementare, è stata prevista una verticalizzazione al dominio di riferimento, selezionando gli approcci che meglio possano adattarsi a quanto richiesto (Sezione Sistema di profilazione). In particolare sono stati definiti gli attributi del modello utente, definendo le dimensioni che saranno utilizzate per la profilazione, ottenendo un modello dinamico del profilo utente che prenda in considerazione l’evoluzione e il cambiamento di alcune caratteristiche relative al comportamento e alla conoscenza dell’utente. Nel modello utente di Neoluoghi, si prevede di mantenere dati sia di tipo knowledge-based che behavioral-based e di prendere in considerazione degli stereotipi, come quelli legati allo stile di apprendimento. Infine si considera la conoscenza relativa alle entità del Neoluogo da scoprire grazie a ontologie di dominio attraverso le quali saranno annotati semanticamente le entità del Neoluogo. Il secondo elemento funzionale analizzato nel presente rapporto di ricerca è quello dei sistemi di raccomandazione. La necessità di anticipare le possibili scelte degli utenti è una caratteristica fondamentale per migliorare l’esperienza fruitiva, individuando dei meccanismi che permettano di filtrare in maniera adattiva le informazioni offerte agli utenti. I Recommender System (RS) sono dei sistemi che cercano di ridurre il numero delle possibili scelte degli utenti, suggerendo loro solo quelle risorse che hanno una maggiore affinità con le preferenze espresse e i comportamenti osservati. Un Recommender System può essere utilizzato in tutti i contesti in cui per effettuare una ricerca è selettivo l’uso delle preferenze degli utenti. Nel contesto di riferimento, il coinvolgimento dell’utente viene indubbiamente stimolato dal suggerire contenuti 7 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità esperienziali agli utenti, i quali vengono invogliati e stimolati nel proseguire e aggiungere elementi al proprio itinerario immersivo. Il suggerimento, inoltre, può essere guidato da fini di carattere maggiormente commerciale, suggerendo esperienze da favorire o, più semplicemente, più redditizie per l’organizzazione promuovente. In ogni caso diversi possono essere i parametri per definire la raccomandazione, quali il tipo di suggerimenti proposto, il modo attraverso cui i suggerimenti vengono erogati o il loro processo di generazione. Nel processo di raccomandazione i passi attraverso si costruisce la raccomandazione sono tipicamente tre: 1. acquisizione delle preferenze dell’utente; 2. computazione della raccomandazione utilizzando specifiche tecniche; 3. presentazione della raccomandazione all’utente. In riferimento a quanto contenuto nel presente documento, sono state analizzate nel Capitolo Recommender System le tecniche per computare la raccomandazione maggiormente applicabili al dominio di riferimento. In particolare sono state esaminate le seguenti tecniche: • Content-Based: per generare una raccomandazione sono considerati gli elementi, definiti dalle caratteristiche a essi associati e la valutazione(rating) fatta dall’utente. Il sistema suggerisce gli elementi che sono simili a quelli che sono piaciuti in passato. • Collaborative-Filtering: si riconosce la comunanza tra gli utenti sulla base delle loro valutazioni e per un singolo utente, si suggeriscono gli elementi che sono valutati positivamente dagli utenti simili a lui. • Demographic: gli utenti vengono classificati in base ad attributi personali (profilo demografico) e le raccomandazioni sono costruite basandosi su queste classi di utenti. • Knowledge-based: tali sistemi suggeriscono basandosi sulla conoscenza, legata ad uno specifico dominio, di come certe caratteristiche degli elementi soddisfano le preferenze di un utente. • Community-Based: similmente a quanto accade nei Social Network, si raccomandano gli item che sono valutati positivamente dagli amici e conoscenti di un utente. • Hybrid: tali sistemi attuano una combinazione di due o più sopraelencate. L’affidabilità è certamente un aspetto molto rilevante nella valutazione di un sistema di raccomandazione. La fiducia e il coinvolgimento dell’utente è assolutamente funzione della qualità dei suggerimenti. Qualora le raccomandazioni fornite non risultino essere attendibili, si creerebbe un'insoddisfazione nei confronti del sistema, con derivante diminuzione del numero delle fruizione. A tal scopo sono state oggetto di studio le metodologie e le metriche atte alla valutazione di questo tipo di sistemi, sia durante la fase di creazione che durante l’utilizzo dello stesso (sezione Valutazione delle prestazioni). 8 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Nell’ottica dell’integrazione di metodologie di raccomandazione in quello che sarà il prototipo funzionale del sistema Neoluoghi, sono state individuate due principali categorie di utenti cui fornire le raccomandazioni. Oltre l’utente fruitore, cui bisogna raccomandare nuovi contenuti esperienziali potenzialmente interessanti, è stata individuata la figura dell’utente Park Manager. Quest’ultimo, durante l’ideazione e assemblaggio dei contenuti che saranno disponibili agli utenti finali, può ricevere suggerimenti in base a statistiche sulle visite e feedback associate ai POI e conoscere quali altri POI simili sono stati visitati dal tipo di visitatore che si sta considerando. 9 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità PARTE I Approcci alla modellazione dei profili utente Molto spesso i termini profilo utente e modello utente vengono utilizzati in modo interscambiabile. In realtà, il profilo utente rappresenta le preferenze di interazione con il sistema (ad esempio, gli obiettivi, lo stile di apprendimento) e sono memorizzati nel sistema, ma possono anche cambiare nel tempo. Il modello utente, invece, è come il sistema percepisce l’utente attraverso l’interazione con l’interfaccia. Esso rappresenta le caratteristiche necessarie dell’utente nel contesto dell’applicazione e viene costruito a partire dalle informazioni del profilo. Wahlster e Kobsa in [1] definiscono il modello utente come “una fonte di conoscenza […] che contiene esplicite assunzioni su tutti gli aspetti dell’utente che possono essere rilevanti per il comportamento del sistema”. La modellazione dell’utente è una parte fondamentale del progetto, perché ha lo scopo di riconoscere e rappresentare elementi caratteristici del visitatore e simularne i processi comportamentali utili per rendere interessante la visita del Neoluogo. 10 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 1 Concetti di User Modeling Come discusso in A. Kobsa, «User modeling and user-adapted interaction,» Conference companion on Human factors in computing systems, pp. 415-416, 1994.P. Brusilovsky, «Methods and Techniques of Adaptive Hypermedia,» User Model. UserAdapt. Interact., vol. 6, n. 2-3, pp. 87-129, 1996., lo studio della modellazione utente riguarda molte aree di ricerca, tra cui il Natural-Language Dialogue Systems, la Knowledge Representation e l’Human Computer Interaction (i.e., HCI). La modellazione utente è stata principalmente utilizzata nei sistemi interattivi e adattivi e, più in generale, nei Recommender System, ossia nei sistemi che suggeriscono le risorse in base al profilo degli utenti. In generale questi sistemi hanno la necessità di modificare il loro comportamento in base alle caratteristiche dell’utente (interessi, obiettivi, motivazione, livelli di competenze, capacità, preferenze, etc.). Attraverso la profilazione è possibile individuare le caratteristiche da utilizzare nei moduli software che creano i suggerimenti personalizzati in linea con il profilo dell’utente. Tra gli aspetti caratterizzanti un utente, quelli maggiormente considerati in letteratura possono essere distinti nelle seguenti categorie: • Conoscenza; • Interessi; • Goals e Tasks; • Background; • Caratteristiche peculiari; • Contesto. Inoltre, un modello utente può essere: 1. Implicito o esplicito: se l’utente fornisce esplicitamente informazioni riguardo al suo profilo, si ha una modellazione esplicita. Quando, invece, la modellazione deriva dall’osservazione del comportamento dell’utente che interagisce con il sistema si ha una modellazione implicita. 2. Statico o dinamico: il modello utente è statico quando esso rimane tale per tutto il periodo durante il quale l’utente utilizza il sistema. Quando invece, il modello cambia adattandosi ai cambiamenti del sistema o delle caratteristiche dell’utente, si ha un modello dinamico. 3. Breve termine o lungo termine: se il modello utente è memorizzato solo per il corrente uso del sistema da parte dell’utente, si ha un modello a breve termine. Mentre, se il modello utente è memorizzato ed è valido per eventuali interazioni successive e cioè mantenuto nel tempo, allora abbiamo un modello a lungo termine. 11 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 2 Processo di Modellazione Utente Il modello utente rappresenta le caratteristiche dell’utente utili alla personalizzazione dell’interazione con il sistema. Brusilovsky in P. Brusilovsky, «Methods and Techniques of Adaptive Hypermedia,» User Model. User-Adapt. Interact., vol. 6, n. 2-3, pp. 87129, 1996. individua il ciclo di vita di un modello utente come una sequenza di passi compiuti durante l’interazione dell’utente con il sistema. In Figura 1 abbiamo ricostruito il processo di modellazione utente individuato da Brusilovsky, il quale può essere suddiviso in tre fasi: • Raccolta Dati: in questa fase il sistema raccoglie tutte le informazioni, concernenti l’utente, utili a profilarlo. • Inferenza: in questa fase il sistema elabora i dati precedentemente raccolti ed effettua una profilazione classificando le caratteristiche utente in interessi, preferenze o obiettivi. • Adattamento: in questa fase si ha l’utilizzo reale del modello utente per fornire all’utente esperienze personalizzate. Raccolta Modalità Raccolta dati Modello Utente dati Inferenza Adattamento Caratteristiche del Modello Utente Figura 1. Ciclo di vita del modello utente Come si evince dalla figura, il sistema in modo ciclico acquisisce nuovi dati riguardo all’utente e continuamente raffina il modello utente per meglio riflettere la realtà e fornire una più solida base per una migliore personalizzazione. 12 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 3 Dimensioni del Modello Utente Una fase fondamentale nel processo di modellazione utente è di determinare le dimensioni, cioè l’insieme delle caratteristiche che il modello utente deve coprire in relazione al dominio di applicazione. Diverse sono le dimensione indicate e discusse in letteratura non tutte necessarie allo scopo del progetto Neoluoghi A. Kobsa, «User modeling and user-adapted interaction,» Conference companion on Human factors in computing systems, pp. 415-416, 1994.S. Sosnovsky e D. Dicheva, «Ontological technologies for user modelling,» Int. J. Metadata Semant. Ontologies, vol. 5, n. 1, pp. 32-71, 2010.A. Jameson, «Modelling both the context and the user,» Personal and Ubiquitous Computing, vol. 5, pp. 29-33, 2001.A. Kobsa, «Generic user modeling systems,» User Modeling and User-Adapted Interaction, vol. 5, pp. 29-33, 2001.P. Brusilovsky e E. Millan, «User models for adaptive hypermedia and adaptive educational systems,» in In: Brusilovsky, P., Kobsa, A., Nejdl, W. (eds.) The Adaptive Web: Methods and Strategies of Web Personalization, chap. 1, pp. 3-53 Springer-Verlag, Berlin Heidelberg New York, 2007.A. Kobsa, J. Koenemann e W. Pohl, «Personalized Hypermedia Presentation Techniques for Improving Online Customer Relationships,» The Knowledge Engineering Review, vol. 16, n. 2, pp. 111-155, 2001.. Di seguito presentiamo una tassonomia consolidata che fornisce un’ottima base per la selezione delle dimensioni necessarie al nostro modello: • Caratteristiche personali (o demografiche): si riferiscono alle informazioni di base come le generalità; • Interessi e preferenze: in generale descrivono gli interessi dell’utente in relazione a un determinato dominio di conoscenza; • Obiettivi: riguarda lo scopo o gli scopi per cui l’utente utilizza il sistema; • Capacità fisiche: riguarda le caratteristiche fisiche di un utente, come capacità di vedere, la capacità di camminare; • Conoscenza e background :la conoscenza denota il possesso di informazioni relazionate tra loro e appartenenti a un dominio di conoscenza. Il background in genere riguarda la conoscenza che un generico utente possiede ancor prima di utilizzare un sistema informativo; • Comportamento: il comportamento è una caratteristica molto importante perché attraverso di esso è possibile dedurre altre caratteristiche dell’utente, inoltre permette in alcuni situazioni di ottenere un adattamento immediato del sistema attraverso le interfacce; • Contesto: in genere per contesto ci si riferisce all’ambente circostante gli utenti che utilizzano un sistema, come il tempo, la località, il dispositivo fisico con cui l’utente interagisce con il sistema; • Tratti individuali: tale dimensione si riferisce ad aspetti cognitivi. Kobsa in [8] classifica le seguenti dimensioni utente: 13 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità • User data: “si riferiscono a informazioni riguardo caratteristiche personali/individuali dell’utente. […], in particolare: conoscenza, obiettivi, attività, background, ambito delle esperienze, preferenze, interessi e tratti individuali (stile cognitivo, stile di apprendimento).” [8]. • Usage Data: “riguardano informazioni sul comportamento interattivo dell’utente che non può essere risolto con le caratteristiche elencate precedentemente. Esempi di interazioni di questo tipo sono: azioni selettive (selezionare un link, operazioni di controllo audio, ecc.), valutazione del comportamento in base alla frequenza temporale. Queste interazioni possono essere osservate direttamente e immediatamente utilizzate nel processo di adattamento. In molti casi alcune interazioni utente osservabili non possono determinare direttamente l’adattamento in quanto si rende necessaria un’ulteriore elaborazione dei dati di utilizzo.” [8]. • Environment Data: “comprende aspetti dell’ambiente in cuoi agisce l’utente ma che non è legato allo stesso utente. Le decisioni di adattamento possono dipendere dalla posizione spazio-temporale dell’utente e dalla piattaforma utente (software, hardware, PDA; cellulare, ecc.).” A. Kobsa, J. Koenemann e W. Pohl, «Personalized Hypermedia Presentation Techniques for Improving Online Customer Relationships,» The Knowledge Engineering Review, vol. 16, n. 2, pp. 111-155, 2001.. Di seguito riportiamo alcune delle caratteristiche che riteniamo meglio possono modellare in modo adattabile un potenziale visitatore del “Neoluogo”. 3.1 Conoscenza La conoscenza è la principale caratteristica ad essere presa in considerazione nei sistemi di personalizzazione. Questa caratteristica è fondamentale per inquadrare l’utente all’interno di uno specifico dominio di conoscenza in modo da potergli fornire una personalizzazione in linea con il suo livello di competenze. Si tratta di una caratteristica variabile nel tempo che necessita quindi di un continuo aggiornamento. La conoscenza individuale dell’utente è fondamentale per poter costruire una interazione con il sistema che non comporti un sovraccarico cognitivo e quindi il rischio di noia e insofferenza verso il sistema. In generale, nell’ambito della modellazione utente , tale caratteristica, è rappresentata dall’overly model, il quale utilizza modelli strutturati del dominio di conoscenza attraverso cui è possibile misurare la distanza della conoscenza dell’utente da quella del dominio su diversi argomenti. Il modello Overlay sarà introdotto e discusso nella sezione relativa alle Metodologie Di User Modeling. 3.2 Obiettivo L’obiettivo è il motivo, lo scopo per cui un utente utilizza un sistema. Tale caratteristica è mutevole e ha senso distinguere obiettivi a breve termine, più mutevoli, da obiettivi a lungo termine P. Brusilovsky, «Methods and Techniques of Adaptive Hypermedia,» User Model. User-Adapt. Interact., vol. 6, n. 2-3, pp. 87-129, 1996. . Un obiettivo a 14 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità breve termine è un obiettivo da raggiungere dopo un breve periodo di interazione con il sistema. Invece, quello a lungo termine è legato all’utilizzo complessivo del sistema. La modellazione dell’obiettivo può permettere di avere una maggiore adattività e flessibilità della visita di un Neoluogo. Usualmente l’obiettivo di un utente è modellato come la conoscenza dal modello Overly, tramite il quale gli obiettivi di un visitatore sono un sottoinsieme dei concetti del dominio rappresentato dal Neoluogo. Gli obiettivi, inoltre, possono essere classificati in elementari e complessi. Sono elementari gli obiettivi semplici immediatamente raggiungibili; sono complessi quelli costituiti da diversi obiettivi elementari che vengono raggiunti in modo progressivo. Una possibile rappresentazione degli obiettivi di un visitatore può essere costituito da un insieme di coppie “obiettivo-valore”, dove il valore indica la probabilità che l’obiettivo corrisponda a quello corrente dell’utente A. Kobsa, «User modeling and user-adapted interaction,» Conference companion on Human factors in computing systems, pp. 415-416, 1994.P. Brusilovsky, «Methods and Techniques of Adaptive Hypermedia,» User Model. User-Adapt. Interact., vol. 6, n. 2-3, pp. 87-129, 1996. P. Brusilovsky e E. Millan, «User models for adaptive hypermedia and adaptive educational systems,» in In: Brusilovsky, P., Kobsa, A., Nejdl, W. (eds.) The Adaptive Web: Methods and Strategies of Web Personalization, chap. 1, pp. 3-53 SpringerVerlag, Berlin Heidelberg New York, 2007.. 3.3 Esperienze Brusilovsky in P. Brusilovsky, «Methods and Techniques of Adaptive Hypermedia,» User Model. User-Adapt. Interact., vol. 6, n. 2-3, pp. 87-129, 1996. considera l’esperienza una caratteristica simile alla conoscenza, ma differente da un punto di vista funzionale. Le esperienze sono caratterizzate da circostanze articolate e sono legate ad altre caratteristiche dell’utente, quali la professione, il punto di vista, le conoscenze acquisite nel lavoro e nella vita in generale. L’esperienza mette in evidenza la consuetudine con cui un utente interagisce di fronte ad una situazione che presenta delle caratteristiche conosciute [3]. Un visitatore può trovare confidenziale un tratto di un percorso di un Neoluogo rispetto all’intero percorso, in altri contesti può invece trovare familiare un intero percorso. Tra i diversi studi che si sono basati sul concetto di esperienza per classificare il turismo culturale vanno citati gli studi di Stebbins R. A. Stebbins, «Cultural tourism as serious leisure,» Annals of Tourism Research, vol. 23, n. 4, pp. 948-950, 1993. R. A. Stebbins, «Casual leisure: A conceptual statement,» Leisure Studies, vol. 16, n. 1, pp. 17-25, 1997. e di McKercher e Du Cros [11]. Stebbins introduce il concetto di Serious Tourism, delineando il profilo del turista serio appartenente alla categoria dei “city users”, il ceto medio caratterizzato da un’avanzata conoscenza scientifico culturale.. In C. Nicolò, «Un piano strategico della città ospitale per accogliere i serious tourists del ceto medio internazionale,» in Produzione e consumo dell amemoria. Città, immagine, turismo, Firenze, 2008. sintetizzando ricerche di vari studi vengono proposti sette elementi caratterizzanti i “turisti seri”: 1. La necessità di credere e di perseverare tenacemente nelle attività intraprese, in modo da generare feeling positivi con il superamento delle avversità; 15 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 2. Il sentirsi realizzati non con la carriera lavorativa, ma collezionando punteggi che segnano le tappe dell’auto-realizzazione attraverso il pieno coinvolgimento nell’attività; 3. L’essere consapevoli e fieri che le attività svolte sono il frutto della propria conoscenzacome naturale conseguenza di conoscenze, di allenamenti e di competenze acquisite; 4. L’influenza positiva sulla propria personalità derivante dalle attività svolte; acquisizione di durevoli benefici nella realizzazione del proprio sé, che viene liberato, rigenerato e rinnovato dalle attività, con conseguenze sull’immagine personale; 5. La creazione di legami sociali con le persone che partecipano alle stesse attività; la formazione di un ethos sociale all’interno dei gruppi che partecipano alle attività, delineando rapporti di complicità molto soft che delineano reti amicali ‘lasche’; 6. L’identificarsi con convinzione con gli obiettivi raggiunti, liberamente scelti; 7. Il perseguire l’esperienza del ‘gioco’ , del decontrollo controllato delle emozioni all’interno di regole che fanno parte del corso principale della vita (cfr. Guiotto, 2005, per le concezione del turismo come ‘gioco dei giochi’). In base all’esperienza che i turisti cercano, gli autori in [11] classificano i turisti culturali nelle cinque tipologie seguenti, caratterizzate dall’intensità dell’esperienza ricercata: • Turista intenzionale: è mosso dal desiderio di conoscenza e da fattori culturali e vive la visita con un’esperienza profonda; • Turista incidentale: non è mosso da fattori culturali, è caratterizzato da un comportamento tipico delle persone appassionate, ma in realtà vive l’esperienza della visita con un’esperienza superficiale; • Turista sightseeing: è spinto da una buona conoscenza del patrimonio culturale ma, rispetto ad essa ha un’esperienza meno profonda; • Turista casuale: nella scelta del luogo hanno poca importanza i fattori culturali e durante la visita ha un’esperienza che lo coinvolge marginalmente; • Turista serendipitous: la scelta del luogo non è determinata da fattori culturali, ma una volta in loco viene attratto e coinvolto fino ad avere una profonda esperienza. 3.4 Interessi e Preferenze Le caratteristiche maggiormente tenute in considerazione nella modellazione utente sono gli interessi e le preferenze A. Kobsa, «User modeling and user-adapted interaction,» Conference companion on Human factors in computing systems, pp. 415-416, 1994.P. Brusilovsky, «Methods and Techniques of Adaptive Hypermedia,» User Model. User-Adapt. Interact., vol. 6, n. 2-3, pp. 87-129, 1996.A. Kobsa, «Generic user modeling systems,» User Modeling and User-Adapted Interaction, vol. 5, pp. 2933, 2001.P. Brusilovsky e E. Millan, «User models for adaptive hypermedia and 16 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità adaptive educational systems,» in In: Brusilovsky, P., Kobsa, A., Nejdl, W. (eds.) The Adaptive Web: Methods and Strategies of Web Personalization, chap. 1, pp. 3-53 Springer-Verlag, Berlin Heidelberg New York, 2007.A. Kobsa, J. Koenemann e W. Pohl, «Personalized Hypermedia Presentation Techniques for Improving Online Customer Relationships,» The Knowledge Engineering Review, vol. 16, n. 2, pp. 111-155, 2001., che a seconda del contesto corrente in un sistema possono essere assoluti o relativi P. Brusilovsky, «Methods and Techniques of Adaptive Hypermedia,» User Model. UserAdapt. Interact., vol. 6, n. 2-3, pp. 87-129, 1996.. Una particolarità di tali caratteristiche è quella di essere generalmente individuate in modo esplicito perchè dichiara liberamente al sistema le proprie preferenze e i propri interessi. In generale, viene utilizzata una rappresentazione in formato numerico che permette di combinare diversi modelli e di definire gruppi con caratteristiche simili (ossia data una preferenza, è possibile affermare se un utente appartiene o meno a un gruppo ). La rappresentazione degli interessi e preferenze segue due possibili modalità di rappresentazione P. Brusilovsky e E. Millan, «User models for adaptive hypermedia and adaptive educational systems,» in In: Brusilovsky, P., Kobsa, A., Nejdl, W. (eds.) The Adaptive Web: Methods and Strategies of Web Personalization, chap. 1, pp. 3-53 Springer-Verlag, Berlin Heidelberg New York, 2007.. La prima utilizza vettori di parole chiavi pesate (weighed vector of keywords), mentre la seconda è il modello Overlay (precedentemente citato e che sarà approfondito nei paragrafi successivi). Va osservato che i modelli Overlay usati in genere per rappresentare gli interessi si differenziano da quelli utilizzati per la rappresentazione della conoscenza. La differenza è nel modo in cui caratterizzano i concetti, dato che essi consentono una rappresentazione più dettagliata degli aspetti diversi degli interessi. 3.5 Tratti Individuali I tratti individuali sono le caratteristiche che “insieme definiscono un utente come individuo” P. Brusilovsky e E. Millan, «User models for adaptive hypermedia and adaptive educational systems,» in In: Brusilovsky, P., Kobsa, A., Nejdl, W. (eds.) The Adaptive Web: Methods and Strategies of Web Personalization, chap. 1, pp. 3-53 Springer-Verlag, Berlin Heidelberg New York, 2007.. Essi sono percorsi di pensieri consistenti, di sentimenti e azioni che caratterizzano le persone e consentono di distinguere le une dalle altre. In generale, queste caratteristiche hanno la tendenza a rimanere stabili per un lungo periodo (talvolta non mutano mai nel tempo), ma il loro comportamento può cambiare seguendo i processi di adattamento che gli individui seguono. Le dimensioni comportamentali degli individui sono innumerevoli e un tratto individuale è una caratteristica interna che corrisponde ad una posizione estrema su una di queste dimensioni. I tratti individuali impattano a livello psicologico e comportamentale e spesso è anche difficile individuare i limiti di competenza delle caratteristiche. Per individuare queste caratteristiche è necessario predisporre test psicologici appositamente progettati. Nel caso del progetto Neoluoghi, riconoscere i diversi stili di apprendimento permette una diversificazione dei modi di fruizione delle esperienze nel Neoluogo e permette di migliorare gli aspetti qualitativi del processo di apprendimento nel suo svolgersi. 17 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Tra i possibili tratti individuali, si considerano in particolare i seguenti: • Personality (Personalità); • Cognitive Style (Stile Cognitivo); • Learning styles (Stile di apprendimento); Per quanto riguarda la personalità, molti teorici e psicologi nel corso degli anni hanno suggerito una tassonomia di diverse caratteristiche della personalità, in particolare una delle più note è quella conosciuta come quella del “Big Five” P. Costa e R. McCrae, «Revised NEO Personality Inventory (NEO-PI-R) and NEO Five-Factor Inventory (NEOFFI) manual.,» in FL: Psychological Assessment Resources, Odessa, 1992., un modello teorico che individua in cinque tratti base i blocchi per costruire la personalità (Estroversione, Gradevolezza, Coscienziosità, Nevroticismo, Apertura all'esperienza).Secondo Gordon Allport, invece, esistono 4500 tratti di personalità organizzati in tre livelli di classificazione, mentre Raymond Cattell ne individua sedici Wikipedia. [Online]. Available: http://en.wikipedia.org/wiki/Raymond_Cattell.. Per lo Stile Cognitivo, gli autori in [16] affermano che si ha “uno stile cognitivo tutte le volte in cui si manifesta una tendenza costante e stabile nel tempo a usare una determinata classe di strategie, nell’ambito di una serie di strategie tutte ugualmente applicabili per affrontare il compito specifico”. Utilizzando le parole di Cornoldi in [17] “lo stile cognitivo è una modalità di elaborazione adottata naturalmente, si manifesta in maniera identica nel tempo, si estende a compiti diversi ed è altresì in grado di influenzare anche aspetti della personalità, le interazioni sociali, gli atteggiamenti e le reazioni emotive”. Per quanto riguarda lo stile di cognitivo, in letteratura esistono diverse classificazioni che variano a seconda dell’autore, Klob [18], Antonietti M. Antonietti e E. Cantoia, La mente che impara, Milano: La nuova Italia, 2000. Sternberg R. Sternberg, Stili di pensiero. Differenze individuali nell’apprendimento e nella soluzione di problemi, Trento: Erickson, 1998., Crispiani P. Crispiani, Didattica cognitivista, Roma: Armandi, 2004., Felder [22], Cornoldi [23]. Di seguito riportiamo un raggruppamento che si basa sulle contrapposizioni e su cui c’è maggiore accordo tra gli studiosi: • Sistematico / Intuitivo; • Globale / Analitico; • Impulsivo / Riflessivo; • Verbale / Visuale; • Convergente / Divergente. Per intercettare gli stili cognitivi, gli studiosi hanno elaborato degli opportuni indicatori basati sui comportamenti osservabili, che consentono di individuare con maggiore facilità lo stile cognitivo.Lo stile di apprendimento, infine, è un sottoinsieme dello stile cognitivo perché ha a che fare prettamente con l’apprendimento umano. Esso riguarda le attitudini cognitive che vanno dalla percezione alle capacità operative del discente utilizzate per immagazzinare ed elaborare le informazioni recepite. Esistono differenti stili di apprendimento, alcuni di quelli più conosciuti e utilizzato sono i seguenti [24]: 18 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità • Il modello sensoriale – Visivo, Uditivo, Verbale/Non verbale, Cinestesico; • Multimodale; • Lo stile di apprendimento della dominanza emisferica; • Il modello sociale solitario; • Il ciclo dell’apprendimento di Kolb; • Il modello Honey e Mumfords; • La tassonomia di Blooms. 3.6 Interazioni Sociali Un visitatore di un Neoluogo può effettuare una visita esperienziale da solo, oppure con in un gruppo di persone e, in entrambi i casi, si troverà in contatto con altri individui. Per tale ragione, va considerata una dimensione molto importante, che è quella della Social Interaction (Interazione Sociale). Nedelmann in [25] definisce questa dimensione come: “Un processo di durata più o meno lunga, tra due o più attori che orientano reciprocamente il proprio agire l'uno verso l'altro influenzando le motivazioni e lo svolgimento di tale agire e producendo effetti di associazione più o meno intensi”. Inoltre, l’autrice caratterizza l’Interazione Sociale attraverso i seguenti cinque descrittori: 1. Gli attori; 2. La frequenza; 3. La durata; 4. Il grado di attività; 5. Il grado di prevedibilità. Il termine gruppo denota un insieme di persone che si trovano a vivere una esperienza comune in uno stesso contesto, indipendentemente dal rapporto di conoscenza tra di essi. Le interazioni sociali concernono l’influenza del comportamento del gruppo sul singolo individuo G.S.Becker, «A Theory of Social Interactions,» The Journal of Political Economy, vol. 82, n. 6, pp. 1063-1093, 1974.J. A. Scheinkman, «Social Interactions,» The New Palgrave Dictionary of Economics, 2008.. Particolare significato hanno le interazioni sociali con i bambini, soprattutto quando costituiscono un gruppo, come nel caso di una scolaresca. Birney in B. Birney, A comparative study of children’s perceptions and knowledge of wildlife and conservation as they relate to field trip experiences at the Los Angeles County Museum of Natural History and the Los Angeles Zoo, University of California, 1986. osserva che i bambini preferiscono apprendere attraverso la condivisione di informazioni con i loro coetanei, soddisfacendo anche la loro esigenza di divertimento e tendendo a distaccarsi dagli insegnanti, genitori o chi fa da guida. In tal senso, le interazioni sociali tendono a condizionare l’apprendimento tramite il comportamento. 19 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 4 Approcci di Modellazione Come evidenziato in A. Scime, Web Mining: Applications and Techniques, Hershey PA United States of America: Idea Group Publisching, 2004.S. Gauch, M. Speretta, A. Chandramouli e A. Micarelli:, «User Profiles for Personalized Information,» Lecture notes in computer science, Springer Verlag, vol. 4321, pp. 54-89, 2007.A. Kobsa, «User modeling in dialog systems: Potentials and hazards,» AI & Society:The Journal of Human and Machine Intelligence, vol. 4, n. 3, pp. 214-231, 1990.S. E. MIDDLETON, N. R. SHADBOLT e D. C. D. ROURE, «Ontological User Profiling in Recommender Systems,» ACM Transaction on Information System , vol. 22, n. 1, pp. 54 - 88, 2004., esistono due tipi di approcci di modellazione utente, behavioral-based e knowledgebased. L’approccio knowledge-based per la modellazione considera il livello della conoscenza dell’utente individuabile tramite questionari da presentare agli utenti [29] [31]. L’approccio behavioral-based invece considera il comportamento dell’utente osservato durante l’interazione con il sistema A. Scime, Web Mining: Applications and Techniques, Hershey PA United States of America: Idea Group Publisching, 2004.. Nel seguito è presentata una descrizione dettagliata dei due approcci. 4.1 Knowledge-based L’approccio knowledge-based è molto utile nei sistemi in cui bisogna modellare le competenze e il livello di conoscenza degli utenti, cosa che tipicamente avviene con gli ITS (Intelligent Tutoring System) S. Sosnovsky e D. Dicheva, «Ontological technologies for user modelling,» Int. J. Metadata Semant. Ontologies, vol. 5, n. 1, pp. 32-71, 2010.. Infatti, una corretta modellazione della conoscenza degli utenti permette di strutturare il dialogo dell’utente con il sistema nel miglior modo possibile. Nell’HCI (Human Computer Interaction) sono stati utilizzate diverse tecniche di inferenza per individuare e quantificare la conoscenza dell’utente. Ad esempio, la tecnica del“tracciamento della conoscenza”S. Sosnovsky e D. Dicheva, «Ontological technologies for user modelling,» Int. J. Metadata Semant. Ontologies, vol. 5, n. 1, pp. 32-71, 2010. utilizza l’inferenza bayesiana per calcolare la probabilità che l’utente sia in possesso di una specifica conoscenza a priori, a partire da soluzioni e risposte fornite dall’utente come soluzione di un certo problema. La modellazione utente knowledge-based ha fatto ampiamente uso degli studi derivanti dagli ambienti AES (Adaptive Educational System) e ITS (Intelligent Tutoring System), in cui si è utilizzato il meccanismo dell’inferenza. Sosnovsky in [4] fa notare che un’azione tipica degli utenti è quella di dare risposte a un problema e progredire verso la sua soluzione. Il sistema utilizza tali risposte e, confrontandole con il dominio di conoscenza in cui è definito il problema, fa uso dell’inferenza per aggiornare progressivamente il modello utente utilizzato per le azioni di adattamento. In generale, per individuare le competenze e le conoscenze in relazione ad uno specifico dominio di conoscenza sono utilizzate delle interfacce amichevoli tipicamente text-based attraverso cui l’utente può liberamente interagire S. Sosnovsky e D. Dicheva, «Ontological technologies for user modelling,» Int. J. Metadata Semant. Ontologies, vol. 5, n. 1, pp. 32-71, 2010.. 20 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Uno dei sistemi che in letteratura ha fatto scuola e, a cui spesso ci si riferisce quando si tratta della modellazione utente basato sulla conoscenza, è il sistema GRUNDY E. Rich, «User Modeling via Stereotypes,» Cognitive Science, vol. 3, pp. 329-354, 1979.. Tale sistema permette di suggerire dei libri, simulando un bibliotecario, in base a informazioni personali individuate attraverso un dialogo interattivo con l’utente. Le risposte dell’utente sono confrontate poi con un insieme predefinito di stereotipi. Il dialogo interattivo è utilizzato per costruire gradualmente il modello utente, in base al quale il sistema elabora il suggerimento. 4.2 Behavioral-based Con la modellazione Behavioral-Based il modello utente viene costruito osservando il comportamento dell’utente. Si tratta di un approccio non intrusivo che riduce il carico cognitivo e diminuisce il numero delle interazioni. Per estrarre le informazioni dal comportamento utili alla creazione del modello utente, in letteratura si è fatto ampiamente uso di tecniche di Machine Learning ,anche se non adeguate a modellare i rapidi cambiamenti dei parametri che descrivono le informazioni modellateG. Webb, M. Pazzani e D. Billsus, «Machine learning for user modelling,» Int. J. User Modelling and User-Adapted Interaction, vol. 11, n. 1-2, pp. 19-29, 2001.. L’attività di modellazione dei comportamenti è molto complessa, sia per le difficoltà nell’individuare i comportamenti da osservare sia per registrare il loro cambiamento nel tempo. Infatti, il comportamento spesso è caratterizzato nel tempo da cambiamenti che ne mutano il significato, per cui è necessario elaborare un opportuno modello di calcolo per tenere adeguatamente traccia di tali variazioni S. Sosnovsky e D. Dicheva, «Ontological technologies for user modelling,» Int. J. Metadata Semant. Ontologies, vol. 5, n. 1, pp. 32-71, 2010.. Per modellare comportamenti dinamici Y. Hafri, C. Djeraba, P. Stanchev e B. Bachimont, «A Web User Profiling Approach,» in In X. Zhou, Y. Zhang and M.E. Orlowska, editors, Web Technologies and Applications: 5th Asia-Pacific Web Conference, APWeb 2003, Xian, China, April 23- 25, 2003, volume 2642 of LNCS, Springer-Verlag, 2003.J. Tang, L. Yao, D. Zhang e J. Zhang, «A Combination Approach to Web User Pro¯ling,» ACM Transactions on Knowledge Discovery from Data, vol. 5, n. N, pp. 1-38, 2010. sono impiegati gli Hidden Markov Models (HMM). Nel caso di comportamenti statici, invece, sono maggiormente usate distribuzioni di probabilità Z. INGRID e W. A. DAVID, «Predictive Statistical Models for User Modeling,» User Modeling and User-Adapted Interaction, vol. 11, pp. 5-18, 2001.. Tenendo anche conto che esistono comportamenti previsti e imprevisti, in entrambi i casi sia i modelli statici che dinamici sono utili nell’individuare gli scostamenti dalla previsione Y. Dit-Yan e D. Yuxin, «User Profiling for Intrusion Detection Using Dynamic and Static Behavioral Models,» in In M.-S. Chen, P.S. Yu, and B. Liu, editors, 6th Pacific-Asia Conference PAKDD 2002 , Taipel, Taiwan, May 6-8, 2002, Springer-Verlag, 2002, p. volume 2336 of LNCS.. Siccome questo approccio consente di costruire un profilo efficiente se non si hanno a disposizione dati sufficienti sul comportamento, spesso per modellare il comportamento degli utenti sono usati modelli che si basano sulla massima entropia E. Manavoglu, D. Pavlov e C. L. Giles, «Probabilistic User Behavior Models,» In 21 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Proceedings of the Third IEEE International Conference on Data Mining (ICDM’03)., vol. IEEE Computer Society, 2003.. Un approccio siffatto permette di combinare differenti fonti d’informazione, ognuna delle quali apporta dei vincoli sul modello. L’intersezione di tutti i vincoli contiene un insieme di funzioni di probabilità che soddisfano tutte le condizioni. Il principio di massima entropia permette di selezionare tra queste funzioni quella con la massima entropia d’informazione. 22 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 5 Acquisizione Dati Utente La raccolta delle informazioni utente utilizzate per la personalizzazione di un servizio rappresenta il processo di profilazione. Le principali modalità attraverso cui effettuare la profilazione sono due, quella esplicita e quella implicita. Nel seguito descriveremo nei dettagli tali modalità di profilazione utente. 5.1 Explicit Profiling La profilazione esplicita consiste nella raccolta di dati personali sulle preferenze dell’utente che, in genere, avviene mediante la compilazione di questionari al momento della registrazione nel sistema o in altre occasioni in cui l’utente interagisce con il sistema X. Shen, B. Tan e C. Zhai, «Implicit User Modeling for Personalized Search,» Proceeding CIKM 05 Proceedings of the 14th ACM international conference on Information and knowledge management, Vol. %1 di %2ACM New York, NY, USA 2005, pp. 824-831.G. Stermsek, M. Strembeck e G. Neumann, «User Profile Refinement using explicit User Interest Modeling,» in Lecture Notes in Informatics (LNI 109), pp. 289-293, 2007.M. Pannu, R. Anane, M. Odetayo e A. James, «Explicit User Profiles in Web Search Personalisation,» Proceedings of the 2011 15th International Conference on Computer Supported Cooperative Work in Design.P. Zigoris e Y. Zhang, «Bayesian Adaptive User Profiling with Explicit & Implicit Feedback,» CIKM’06, November 5–11, 2006, Arlington, Virginia, USA. Copyright 2006 ACM 1-59593-433-2/06/0011.. Tale tecnica di profilazione è la più semplice e trasparente in quanto è lo stesso utente a fornire le informazioni di profilazione. Solitamente, si fanno inserire le informazioni direttamente dall’utente in apposite maschere, proposte dal sistema stesso. Il vantaggio di poter reperire direttamente dall’utente le informazioni necessarie alla profilazione, senza mediazioni esterne, rende tali informazioni altamente affidabili, a meno di una scarsa motivazione dell’utente. Ovviamente, una tale attendibilità potrebbe venire a mancare quando le informazioni riguardano le competenze, che un utente stesso può sopravvalutare o sminuire. Affinché l’utente non sia demotivato e/o infastidito, è importante che le schermate destinate alla raccolta dei dati di profilazione siano strutturate in modo tale che l’inserimento delle informazioni non sia complicato. 5.2 Implicit Profiling L’approccio di modellazione implicita, detta anche comportamentale, offre una soluzione più complicata del problema della costruzione iniziale di un profilo utente, perchè comporta una profilazione non intrusiva senza un ulteriore carico cognitivo per l’utente. Nell’ambito del progetto Neoluoghi, ad esempio, attraverso l’osservazione delle azioni compiute da un utente durante la visita del Neoluogo, la profilazione implicita porta alla costruzione di un profilo dinamico sulla base del percorso fatto e, quindi, degli interessi dimostrati nel corso della visita. 23 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Punto fondamentale per la realizzazione di tale approccio è il fatto di poter osservare il comportamento dell’utente, con il conseguente costante mantenimento e aggiornamento dello stesso modello. Gli approcci fondamentali per la crezione del modello utente nel caso della profilazione implicita sono i seguenti F. Gasparetti e A. Micarelli, «Exploiting web browsing histories to identify user needs,» in Proceedings of the 12th international conference on Intelligent user interfaces: ACM, 2007.M. Claypool, P. Le, M. Wased e D. Brown, «Implicit interest indicators. In IUI ’01: Proceedings of the 6th international conference on Intelligent user interfaces,» New York, NY, USA, 2001. ACM Press, p. 33–40.J. Goecks e J. Shavlik, «Learning users’ interests by unobtrusively observing their normal behavior,» In IUI 00: Proceedings of the 5th international conference on Intelligent user interfaces,, pp. 129-132, 2000.D. Nichols, «Implicit rating and filtering,» In Proceedings of 5th DELOS Workshop on Filtering and Collaborative Filtering, pp. 31-36, 1998.S. Fox, K. Karnawat, M. Mydland, S. Dumais e T. White, «Evaluating implicit measures to improve web search,» ACM Trans. Inf. Syst., 23(2):147–168,, 2005.T. Joachims, «Optimizing search engines using clickthrough data,» In Proceedings of SIGKDD 2002, p. 133–142, 2002.K. Sugiyama, K. Hatano e M. Yoshikawa, «Adaptive web search based on user profile constructed without any effort from users,» In Proceedings of WWW 2004, pages 675–684,2004.: il primo basato sul monitoraggio dei feedback (user feedback), il secondo basato sul monitoraggio del comportamento (user behaviour). Analizziamoli in maniera più approfondita. User Feedback I feedback, riguardanti i contenuti proposti dal sistema, in base alla modalità di acquisizione possono essere impliciti o espliciti. • Feedback Espliciti: questo tipo di feedback è intercettato quando il contenuto proposto dal sistema è esplicitamente valutato assegnandogli un valore. Le caratteristiche da considerare per valutare un contenuto possono essere diverse, come la percezione dell’utilità che si ha dello stesso contenuto. È importante che la valutazione del contenuto avvenga tramite meccanismi di valutazione e interfacce non troppo complesse. • Feedback Impliciti: sono quelli che nascono dall’osservazione dell’interazione dell’utente con il sistema. In particolare, questo tipo di feedback è necessario poiché spesso quelli espliciti non sono facilmente individuabili. Tali feedback vengono acquisiti osservando le azioni che l’utente compie durante il normale uso del sistema. Ad esempio, un utente che fruisce di un giornale online e che tende a visitare la sezione relativa alle notizie di economia, permette di dedurre implicitamente che tale utente sia interessato all’economia, senza una sua dichiarazione esplicita in tal senso. In genere un parametro molto utilizzato come feedback è il tempo di lettura, che dovrebbe però considerare le diverse velocità di lettura degli utenti. User Behavior Come detto precedentemente nell’ambito dell’approccio di modellazione behavioralbased, un tale approccio tiene traccia del comportamento dell’utente durante 24 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità l’interazione con il sistema. L’osservazione del comportamento serve per acquisire dati che sono utilizzati sia per valutare i contenuti proposti dal sistema che per effettuare una stima probabilistica di altre caratteristiche individuabili con meccanismi di inferenza. Un tale approccio risulta particolarmente adatto in spazi aperti e mutevoli in cui sia possibile attuare percorsi non lineari, caratteristiche proprie di un Neoluogo. Nell’ambito dei beni culturali, il progetto CHIP Y. Wang, N. Stash, L. Aroyo, P. Gorgels, L. Rutledge e G. Schreiber, «Recommendations based on Semantically-enriched Museum Collections,» J. Web Semant, vol. 6, n. 4, pp. 283-290, 2008. ha fatto uso di un modello di visitatore museale costruito dall’osservazione implicita del comportamento dell’utente. Nello specifico sono stati monitorati specifici parametri quali la posizione all’interno del museo, il tempo di permanenza a cospetto di determinate opere come anche i feedback di gradimento rilasciati durante il percorso museale. Questi parametri hanno permesso di stimare e valutare gli interessi dell’utente senza distrarre l’utente con quesiti. 25 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 6 Creazione Iniziale del Profilo Utente Un profilo utente è una collezione d’informazioni personali, che sono conservate senza aggiungere nuove descrizioni o interpretazioni. Tra queste ci sono, ad esempio, lo skill cognitivo, abilità intellettuali, intenzioni, stile di apprendimento (learning style), preferenze e interazioni con il sistema. Tali caratteristiche sono memorizzate dopo avergli assegnato dei valori che possono cambiare nel tempo. Come abbiamo già detto, un utente può essere modellato sulla base del contenuto e della quantità di informazioni memorizzata nel profilo dell’utente. Il comportamento di un sistema che fornisce un adattamento all’utente varia secondo i dati che sono presenti nel profilo. Infatti, senza alcuna conoscenza dell’utente, il sistema dovrebbe comportarsi esattamente allo stesso modo con tutti gli utenti. Kock in N. Koch, «Software Engineering for Adaptive Hypermedia Systems,» 2000. [Online]. Available: http://www.pst.informatik.uni-muenchen.de/personen/kochn/PhDThesisNoraKoch.pdf. [Consultato il giorno 13 09 2012]. afferma: “Users are different: they have different background, different knowledge about a subject, different preferences, goals and interests. To individualise, personalise or customise actions a user model is needed that allows for selection of individualised responses to the user “. Nell’ambito degli Intelligent Tutoring Systems (ITS) esistono differenti standard che specificano gli elementi per descrivere le caratteristiche degli individui e i loro interessi, i principali standard internazionali per la profilazione degli utenti sono l’IEEE PAPI (Public and Private Information) «IEEE PAPI. IEEE P1484.2.5/D8,(2002).,» in Draft standard for learning technology. public and private information (papi) for learners (papi learner). Available at: http://edutool.com/papi/ . e l’IEEE LIP (Learner Information Package) «IMS - LIP Learner Information Package (LIP) http://www.imsproject.org/profiles/».. Tali standard propongono una nutrita serie di descrittori con l’obiettivo di raccogliere tutte le informazioni sull’utente che sono utili a tracciarne le caratteristiche anagrafiche, cognitive, motivazionali e di competenza.Affinchè un sistema sia in grado di fornire dei suggerimenti utili agli utenti è necessario che i dati presenti nel profilo siano quanto più numerosi possibile, in modo da poter avere una rappresentazione dell’utente che sia molto vicino alla realtà. Infatti, se le informazioni del profilo sono scarse e non coprono gli aspetti necessari alla creazione di un modello utente consistente, il sistema fornirà dei suggerimenti di scarsa qualità che non daranno nessun supporto all’utente. Questo problema è spesso conosciuto come il problema della partenza a freddo (cold-start problem) G. Shaw, Y. Xu e S. Geva, «Using Association Rules to Solve the Cold-Start Problem in Recommender Systems,» PAKDD'10 Proceedings of the 14th Pacific-Asia conference on Advances in Knowledge Discovery and Data Mining - Volume Part I, pp. 340-347, 2010.: quando un nuovo visitatore si registra nel sistema, è costruito un nuovo profilo utente che inizialmente è vuoto, perciò la personalizzazione dei contenuti e dell’interazione non può avvenire; per utilizzare il sistema è importante inizializzare il profilo quanto prima. Esistono diverse tecniche che permettono di collezionare ed analizzare informazioni degli utenti per poter inizializzare il profilo. Di seguito introdurremo gli approcci più significativi che, relativamente al processo di acquisizione dei dati, rientrano nell’approccio di profilazione esplicito di cui abbiamo precedentemente parlato. Solo il training set è riconducibile ad un approccio di profilazione implicito. 26 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 6.1 Manual Seguendo l’approccio manual (manuale) il sistema richiede all’utente di fornire direttamente le informazioni demografiche, sui propri interessi, preferenze o informazioni che permettono di individuarli. In realtà si tratta di una forma di feedback esplicito che è utilizzata al momento della registrazione di un nuovo utente presso il sistema. È importante porre attenzione alle domande proposte dal sistema per individuare le caratteristiche dell’utente, affinché non carichino eccessivamente l’utente da un punto di vista cognitivo. In genere, la raccolta delle informazioni avviene con l’inserimento dei dati in form in cui sono presenti appositi questionari. 6.2 Training Set Questa tecnica riguarda l’insieme delle informazioni che sono usate per costruire un classificatore per una categoria M. Miquel, L. Beatriz e J. L. d. l. Rosa, «A Taxonomy of Recommender Agents on the Internet,» Artif. Intell. Rev., vol. 19, n. 4, p. 285–330, 2003.. Nel meccanismo d’inizializzazione basato su un insieme di elementi di training, è l’utente stesso che segnala gli esempi che possono essere utilizzati dal sistema per costruire il profilo. Ad esempio, in un sistema di ricerca sul Web l’utente può segnalare un feedback su dei documenti giudicati d’interesse. Per mezzo di tecniche di IR (Information Retrieval) o ML (Machine Learning) è possibile determinare un profilo iniziale degli interessi partendo da un insieme minimo di dati (esempi) forniti dall’utente. Questa tecnica ha il vantaggio di lasciare all’utente la scelta delle informazioni o oggetti d’interesse. 6.3 Rating-based In molteplici applicazioni dopo che un utente ha ricevuto delle raccomandazioni o contenuti, è solito fornire dei feedback che esprimono la valutazione per i contenuti o suggerimenti che gli sono stati proposti. Tali feedback detti anche Relevance Feedback M. Miquel, L. Beatriz e J. L. d. l. Rosa, «A Taxonomy of Recommender Agents on the Internet,» Artif. Intell. Rev., vol. 19, n. 4, p. 285–330, 2003., vengono intercettati proponendo all’utente una scala graduata di valori destinata alla valutazione degli elementi che gli sono stati proposti. Seguendo l’approccio Rating-Based A. M. Rashid, I. Albert, D. Cosley, S. K. Lam, S. M. McNee, J. A. Konstan e J. Riedl, «IUI’02, January 13-16, 2002, San Francisco, California, USA,» Copyright 2002 ACM 1-58113-459-2/02/0001.A. M. Rashid, I. Albert, D. Cosley, S. K. Lam, S. M. McNee, J. A. Konstan e J. Riedl, «Getting to Know You: Learning New User Preferences in Recommender Systems,» In Proceedings of the International Conference on Intelligent User Interfaces, 2002.H. J. Ahn, «A new similarity measure for collaborative filtering to alleviate the new user cold-starting problem,» Information Sciences, vol. 178, pp. 37-51, 2008.B. Marlin, «Modeling User Rating Profile for Collaborative Filtering,» Advances in Neural Information Processing Systems 16, Cambridge, MA, MIT Press, (2004). l’obiettivo è predire la valutazione che l’utente assocerà all’elemento. In tal modo possono essere generati dei suggerimenti personalizzati per qualsiasi utente predicendo la prima valutazione per tutti gli elementi che l’utente non ha valutato e suggerendo gli elementi che hanno il 27 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità valore di predizione più alto B. Marlin, «Modeling User Rating Profile for Collaborative Filtering,» Advances in Neural Information Processing Systems 16, Cambridge, MA, MIT Press, (2004).. La scala dei valori può essere sia “interessante” sia “non interessante” o una scala con più gradi d’interesse. La rappresentazione di Relevance Feedback è quindi un insieme di elementi e valori relativi associati agli interessi che sono forniti da ciascun utente. Va osservato che questi feedback spesso sono incompleti perché gli utenti sono riluttanti a investire tempo e sforzi per fornire i feedback. 6.4 Social Network Un Social Network (rete sociale) è una rete in cui gli individui sono interconnessi tra di loro attraverso diversi strumenti di comunicazione grazie ai quali è possibile condividere informazioni e conoscenza attraverso discussioni e scambio di opinioni. Il ruolo centrale è dato dall’utente e dalle relazioni che stabilisce con gli altri attraverso la comunicazione. Un esempio di rete sociale è dato dai moderni social network, tipo Facebook o Twitter. Si tratta quindi di reti estese e in continua espansione. Il continuo aumento delle interazione e degli scambi di informazioni rendepiù difficile il meccanismo di controllo e visualizzazione che consente di trovare delle informazioni utili per gli utenti. Uno dei modi di affrontare questo problema è il tagging1 (annotazioni sociali) che tramite i tag, cioè etichette poste sulle informazioni della rete, consente facilmente di ricercare informazioni di interesse. In una rete sociale il profilo di un utente è rappresentato dalle annotazioni e si parla di tag-based profile. L’enorme mole di dati presenti in una rete sociale richiede l’utilizzo di un meccanismo di classificazione, che permette di apporre dei tag ai dati e di condividerli, quindi fare in modo che possano essere individuati correttamente da tutti gli utenti. A tale scopo i ricercatori hanno ampiamente fatto uso di ontologie P. De Meo, G. Quattrone e D. Ursino, «A query expansion and user profile enrichment approach to improve the performance of recommender systems operating on a folksonomy,» In User Modeling and User-Adapted Interaction, vol. 20, n. 1 (2010), pp. 41-86, 2010.C. Firan, W. Nejdl e R. Paiu, «The Benefit of Using Tag-based Profiles,» In Proc. of 2007 Latin American Web Conference (LA-WEB '07), pp. 32-41, 2007.E. Michlmayr e S. Cayzer, «Learning User Profiles from Tagging Data and Leveraging them for Personal(ized) Information Access,» In Proc. of the Work-shop on Tagging and Metadata for Social Information Organization 16th Int.World Wide Web Conference, 2007.F. Abel, Q. Gao, G. Houben e K. Tao, «Semantic Enrichment of Twitter Posts for User Profile Construction on the Social Web,» In Proceedings of ESWC (2). Springer, pp. 375-389, 2011.Y. Cai e Q. Li, «Personalized Search by Tag-based User Profile and Resource Profile in Collaborative Tagging Systems,» In Proceeding CIKM '10 Proceedings of the 19th ACM international conference on Information and knowledge management, pp. 969-978, 2010.. 1 Il Social Tagging permette a una comunità di utenti di assegnare parole chiave (keyword) scelte liberamente a determinate tipologie di risorse Web. Il social tagging consente di associare e collegare diverse parole chiavi ognuna della quali apporta la propria conoscenza nella rete. 28 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità I tag sono utili alla costruzione di un profilo sociale utente perchè è possibile dedurre gli interessi degli utenti dall’analisi dei tag P. De Meo, G. Quattrone e D. Ursino, «A query expansion and user profile enrichment approach to improve the performance of recommender systems operating on a folksonomy,» In User Modeling and UserAdapted Interaction, vol. 20, n. 1 (2010), pp. 41-86, 2010., evidenziano il parere e/o giudizio degli utenti attraverso cui è possibile stabilire un primo nucleo di profilazione. In letteratura si trovano molti lavori in cui è stata fatta una profilazione tag-based che coinvolgono applicazioni per reti sociali C. Firan, W. Nejdl e R. Paiu, «The Benefit of Using Tag-based Profiles,» In Proc. of 2007 Latin American Web Conference (LA-WEB '07), pp. 32-41, 2007.E. Michlmayr e S. Cayzer, «Learning User Profiles from Tagging Data and Leveraging them for Personal(ized) Information Access,» In Proc. of the Work-shop on Tagging and Metadata for Social Information Organization 16th Int.World Wide Web Conference, 2007.F. Abel, Q. Gao, G. Houben e K. Tao, «Semantic Enrichment of Twitter Posts for User Profile Construction on the Social Web,» In Proceedings of ESWC (2). Springer, pp. 375-389, 2011.Y. Cai e Q. Li, «Personalized Search by Tag-based User Profile and Resource Profile in Collaborative Tagging Systems,» In Proceeding CIKM '10 Proceedings of the 19th ACM international conference on Information and knowledge management, pp. 969-978, 2010.F. Carmagnola, F. Cena, L. Console, O. Cortassa, C. Gena, A. Goy, A. T. I. Torre e F. Vernero, «Tag-based user modeling for social multi-device adaptive guides,» In User Modeling and User-Adapted Interaction (UMUAI), vol. 18, n. 5, pp. 497-538, 2008.. Le principali tecniche utilizzate per la rappresentazione delle informazioni di profilazione di un utente sociale sono vettori e grafi. Le rappresentazioni più diffuse basate su grafi fanno uso delle ontologie, in particolare di FOAF Ontology e di Tag Ontology (che saranno trattate successivamente nel nel capitolo relativo alle tecnologie semantiche abilitanti). Per quanto riguarda la rappresentazione tramite vettore, in generale i dati del profilo vengono inseriti in un vettore di tag pesati. In C. Firan, W. Nejdl e R. Paiu, «The Benefit of Using Tag-based Profiles,» In Proc. of 2007 Latin American Web Conference (LA-WEB '07), pp. 32-41, 2007., ad esempio, un utente k è rappresentato dal seguente vettore: k =<f(t1), f(t2), ...,f(ti) > dove f(ti) denota il peso del tag ti dell’utente k. 6.5 Mediator-based Profiling Berkovsky in S. Berkovsky, T. Kuflik e F. Ricci, «Mediation of user models for enhanced personalization in recommender systems,» User Modeling and User-Adapted Interaction, vol. 18, n. 3, pp. 245-286, 2008. definisce la mediazione come “a process of importing the user modeling data collected by other (remote) […] systems, integrating them and generating an integrated user model for a specific goal within a specific context”. Tale approccio di profilazione ha lo scopo di facilitare la profilazione di utenti in applicazioni cross-system; infatti, l’integrazione di cui parla Berkovsky riguarda i diversi generi di informazioni che le applicazioni presentano. L’approccio Mediator prevede un modulo che svolge funzione di mediatore tra differenti sistemi che propongono diversi modelli utente S. Berkovsky, T. Kuflik e F. Ricci, «Mediation of user models for enhanced personalization in recommender 29 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità systems,» User Modeling and User-Adapted Interaction, vol. 18, n. 3, pp. 245-286, 2008.L. Hella e J. Krogstie, «A Profile Ontology for Personalised Mobile Shopping Support,» in 1st International Workshop on Adaptation Personalization and REcommendation in the Social-semantic Web (APRESW 2010), Heraklion, Greece, 2010.. La mediazione viene fatta attraverso l’uso di regole scalabili e adattabili che consentono di mappare in modo efficiente i diversi modelli. Lo scopo del mediatore è facilitare l’integrazione di diverse porzioni eterogenee di modelli utente che derivano dai diversi sistemi analizzando le incoerenze dei dati. 30 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 7 Metodologie di User Modeling Esistono diverse metodologie di rappresentazione delle informazioni in un modello utente. I principali approcci che verranno descritti successivamente sono: quelloStereotype-based e quello feature-based P. Brusilovsky e E. Millan, «User models for adaptive hypermedia and adaptive educational systems,» in In: Brusilovsky, P., Kobsa, A., Nejdl, W. (eds.) The Adaptive Web: Methods and Strategies of Web Personalization, chap. 1, pp. 3-53 Springer-Verlag, Berlin Heidelberg New York, 2007.«User Modeling,» Wiki, DL.org Working Groups, [Online]. Available: https://workinggroups.wiki.dlorg.eu/index.php/User_Modeling. [Consultato il giorno 17 12 2012].. 7.1 Stereotypes La modellazione basata su stereotipo è uno dei più vecchi approcci usati nella modellazione utente. Essa permette la rappresentazione delle caratteristiche degli utenti attraverso descrizioni incomplete dei suoi interessi e delle sue preferenze P. Brusilovsky e E. Millan, «User models for adaptive hypermedia and adaptive educational systems,» in In: Brusilovsky, P., Kobsa, A., Nejdl, W. (eds.) The Adaptive Web: Methods and Strategies of Web Personalization, chap. 1, pp. 3-53 SpringerVerlag, Berlin Heidelberg New York, 2007.G. Shani., L. Rokach, A. Meisles, L. Naamani, N. Piratla e D. Ben-Shimon, «Establishing User Profiles in the MediaScout Recommender System,» Proceedings of the 2007 IEEE Symposium on Computational Intelligence and Data Mining (CIDM 2007).Q. Chen, A. F. Norcio e J. Wang, «Neural Network Based Stereotyping for User Profiles,» Neural Comput & Applic (2000)9:259– 265 Springer-Verlag London.T. Kuflik, B. Shapira e P. Shoval, «Stereotype-Based versus Personal-Based Filtering Rules in Information Filtering Systems,» JOURNAL OF THE AMERICAN SOCIETY FOR INFORMATION SCIENCE AND TECHNOLOGY, vol. 54, n. 3, pp. 243-250, 2003.S. Schiaffino e A. Amandi, «Intelligent User Profiling - M. Bramer (Ed.): Artificial Intelligence, LNAI 5640, pp. 193 – 216, 2009,» © IFIP International Federation for Information Processing 2009.G. Brajnik e C. Tasso, «A shell for developing non-monotonic user modeling systems,» International Journal of Human-Computer Studies, vol. 4, pp. 1-19, 1994.A. Kobsa e W. Pohl, «The BGP-MS user modeling system,» User Modeling and User Adapted Interaction, vol. 4, n. 2, pp. 59-106, 1995.J. Kay, «Lies, damned lies and stereotypes: pragmatic approximations of users,» In: Kobsa A., Litman, D. (eds.) Proc. of Fourth International Conference on User Modeling. MITRE, pp. 175-184, (1994) .. Tale modellazione mira a riunire gli utenti in diversi gruppi chiamati stereotipi, che sono definiti in A. Kobsa, «Generic user modeling systems,» User Modeling and UserAdapted Interaction, vol. 5, pp. 29-33, 2001. “come la rappresentazione delle più rilevanti caratteristiche in comune degli utenti che costituiscono sottogruppi di utenti di un sistema”. Gli utenti che appartengono allo stesso stereotipo vengono trattati dal sistema allo stesso modo. Le caratteristiche comuni ad ogni stereotipo sono chiamate “facets”: per poter assegnare un utente ad uno stereotipo è necessario determinare un numero minimo di facets che permettano una tale assegnazione. In generale, quelle contenute in uno stereotipo sono solo un sottoinsieme delle caratteristiche complessive dell’utente e, 31 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità solitamente, sono diverse da quelle contenute in altri stereotipi. La struttura degli stereotipi è gerarchica e, quindi, inizialmente lo stereotipo è generico e man mano si realizzano stereotipi sempre più specifici. Quando la classe di un utente si discosta da uno stereotipo è necessario individuare un altro stereotipo. Sono definite delle regole di attivazione chiamate trigger, il cui soddisfacimento permette l’attivazione di specifici stereotipi. La passata attivazione di un trigger può condizionarne le attivazioni future e ogni stereotipo tiene traccia dei trigger che l’hanno attivato. Particolare importanza hanno le informazioni raccolte in modo esplicito dal sistema, in quanto sono il modo più immediato di assegnazione di un utente ad uno stereotipo. Inoltre consentono di individuare uno stereotipo senza che vi siano l’analisi di interazioni implicite tramite feedback. Quest’approccio risulta particolarmente vantaggioso per la creazione iniziale di un profilo utente: classificare un utente come appartenente ad uno stereotipo consente di dedurre ulteriore conoscenza basandosi sullo stereotipo senza tediare l’utente con ulteriori richieste. Se cambia il profilo associato ad un utente, in base alle regole di associazione cambia anche lo stereotipo di appartenenza dell’utente. Il sistema Grundy, utilizzato per suggerire libri, è stato tra i primi sistemi che hanno proposto di utilizzare gli stereotipi come meccanismo per costruire modelli utente basati su un numero limitato d’informazioni per ogni singolo utente E. Rich, «User Modeling via Stereotypes,» Cognitive Science, vol. 3, pp. 329-354, 1979.. Esso utilizza uno stereotipo costituito da un insiemi di triple: • Facet: nome della caratteristica; • Value: valore numerico; • Rating: valore numerico. 7.2 Feature-based L’approccio feature-based mira a rappresentare le caratteristiche utente (come interessi, conoscenza, obiettivi, informazioni personali, ecc.) ed è quello principalmente usato nei sistemi adattivi. Con l’approccio basato su stereotipi, al mutare delle caratteristiche utente c’è il cambiamento dello stereotipo. L’approccio feature-based, invece, consente di tenere il profilo aggiornato modellandone gli aspetti dinamici legati ai cambiamenti di preferenze e interessi , perché utilizza delle strutture che consentono di modellare e tracciare tali cambiamenti. In letteratura sono presenti lavori che utilizzano in combinazione gli approcci featurebased e Stereotype-based P. Brusilovsky e E. Millan, «User models for adaptive hypermedia and adaptive educational systems,» in In: Brusilovsky, P., Kobsa, A., Nejdl, W. (eds.) The Adaptive Web: Methods and Strategies of Web Personalization, chap. 1, pp. 3-53 Springer-Verlag, Berlin Heidelberg New York, 2007.. In genere si utilizza prima uno stereotipo per individuare la tipologia di utente e poi si passa ad 32 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità una metodologia feature-based per definire e quantificare gli interessi e le preferenze degli untenti. In base alla metodologia feature-based, è possibile avere differenti approcci in base alle caratteristiche considerate e al modo di rappresentarle. Di seguito presentiamo gli approcci più significativi: l’overly-based, Keyword-based, list-of-item-based.overlybased In generale la conoscenza di un utente è rappresentata dall’overly model S. Sosnovsky e D. Dicheva, «Ontological technologies for user modelling,» Int. J. Metadata Semant. Ontologies, vol. 5, n. 1, pp. 32-71, 2010.P. Brusilovsky e E. Millan, «User models for adaptive hypermedia and adaptive educational systems,» in In: Brusilovsky, P., Kobsa, A., Nejdl, W. (eds.) The Adaptive Web: Methods and Strategies of Web Personalization, chap. 1, pp. 3-53 Springer-Verlag, Berlin Heidelberg New York, 2007.P. Brusilovsky, «Student model centered architecture for intelligent learning environments,» Proceedings of the Fourth International Conference on User Modeling. August, Hyannis, MA, pp. 31-36, 1994. che si basa su modelli di dominio strutturati della conoscenza del soggetto. Un modello di dominio è rappresentato da una rete:ogni elemento (detto concetto) rappresenta un frammento elementare di conoscenza per un dato dominio di conoscenza. In altre parole, un insieme di concetti del dominio formano un modello di dominio. In particolare, se i concetti sono indipendenti si ha un semplice modello di dominio, mentre se i concetti sono interconnessi tra di loro si creauna rete semantica (come mostrato nella Errore: sorgente del riferimento non trovata P. Brusilovsky e E. Millan, «User models for adaptive hypermedia and adaptive educational systems,» in In: Brusilovsky, P., Kobsa, A., Nejdl, W. (eds.) The Adaptive Web: Methods and Strategies of Web Personalization, chap. 1, pp. 3-53 Springer-Verlag, Berlin Heidelberg New York, 2007.). Questo modello di rappresentazione della conoscenza nasce nell’ambito degli AES (Adaptive Education System) per rappresentare la conoscenza degli studenti. Differenti tipi di link rappresentano diversi tipi di relazione tra i concetti. Ad esempio esistono link di prerequisiti tra concetti che rappresentano il fatto che uno dei concetti collegati non può essere appreso prima di un altro. Altri tipi di link molto diffusi sono i link semantici “is-a” e “part-of”. Il principio fondamentale dell’Overlay model è che per ogni concetto del modello del dominio, il modello di conoscenza del singolo utente memorizza alcuni dati che sono una stima del livello di conoscenza dell’utente su questo concetto. Nella forma più semplice si tratta di un valore binario (conosciuto/non conosciuto) che consente al modello di rappresentare la conoscenza dell’utente di un concetto usando un valore quantitativo come mostrato in rosso nella seguente Errore: sorgente del riferimento non trovata. I concetti possono avere valori qualitativi o anche di probabilità. Nel caso dell valore di probabilità, esso indica la probabilità che un utente conosca o meno un dato concetto. La potenza e la flessibilità di questo modello è nella capacità di misurare indipendentemente la conoscenza dell’utente di differenti concetti. La modellazione con il modello Overlay permette di rappresentare non solo la conoscenza, ma anche gli interessi di un utente, anche sevengano utilizzati dei modelli 33 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità di dominio differenti in quanto si tratta di differenti strutture di concetti P. Brusilovsky e E. Millan, «User models for adaptive hypermedia and adaptive educational systems,» in In: Brusilovsky, P., Kobsa, A., Nejdl, W. (eds.) The Adaptive Web: Methods and Strategies of Web Personalization, chap. 1, pp. 3-53 Springer-Verlag, Berlin Heidelberg New York, 2007.. 7.3 Keyword-based In molti sistemi in cui sono presenti informazioni espresse dagli utenti su diversi oggetti, il profilo è legato ai diversi oggetti attraverso un insieme di keywords pesate. Le keywords possono essere estratte in modo automatico dai documenti o forniti direttamente dall’utente come parere o giudizio sugli oggetti. I pesi, usualmente associati alle keyword, sono rappresentazioni numeriche degli interessi (Tabella 1). Ogni keyword può rappresentare un interesse per un argomento oppure possono essere raggruppate in categorie in modo da riflettere una rappresentazione standard degli interessi utenti. Le keyword del profilo sono estratte dai documenti visitati dall’utente durante l’interazione con il sistema, possono essere dedotte dal suo comportamento oppure segnalate esplicitamente dall’utente. Solitamente, a ogni parola è associato un valore numerico che ne rappresenta il peso, ovverosia l’importanza nel profilo. Tabella 1. Profilo utente basato su keyword Arte Ritratto Scultura … Dipinto 0.26 0.89 … 0.98 Orchesta Leggera … Sinfonia 0.62 0.81 … 0.46 Mosaico 0.52 Musica Pop 0.17 Riguardo tale approccio uno studio interessante è presentato in S. Gauch, M. Speretta, A. Chandramouli e A. Micarelli:, «User Profiles for Personalized Information,» Lecture notes in computer science, Springer Verlag, vol. 4321, pp. 5489, 2007. dove gli autori confrontano tre sistemi che in ambito web effettuano la profilazione basata su keyword estratte da pagine web. In particolare lo studio mette a confronto i seguenti sistemi: Amalthaea A. Moukas, «Amalthaea: Information Discovery And Filtering Using A Multiagent Evolving Ecosystem,» Applied Artificial Intelligence, vol. 11, n. 5, pp. 437-457, 1997., WebMate L. Chen e K. Sycara, «A Personal Agent for Browsing and Searching.,» in Proceedings of the 2nd International Conference on Autonomous Agents, Minneapolis/St. Paul, May 9-13,, 1998). e Alipes D. Widyantoro, J. Yin, M. El Nasr, L. Yang, A. Zacchi e J. Yen, «Alipes: A Swift 34 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Messenger In Cyberspace,» in AAAI Spring Symposium Workshop on Intelligent Agents in Cyberspace, Stanford, March 22-24 (1999) 62-67, 1999..Ogni profilo è rappresentato nella forma di un vettore di parole chiave e i documenti che sono estratti dal sistema come risposta a una ricerca sono convertiti in vettori di parole chiave pesate. Tali vettori sono, quindi, confrontati con il profilo, usando la formula del coseno nello spazio vettoriale; all’utente sono restituiti solo i corrispondenti documenti che sono per quei vettori il più possibile simili S. Gauch, M. Speretta, A. Chandramouli e A. Micarelli:, «User Profiles for Personalized Information,» Lecture notes in computer science, Springer Verlag, vol. 4321, pp. 54-89, 2007. 7.4 List of Item-based Nei sistemi in cui sono presenti informazioni di profilazione su utenti che hanno mostrato interessi simili all’utente corrente, la profilazione viene effettuata considerando algoritmi di tipo Item-Based che si basa su utenti con caratteristiche simili all’utente corrente. La lista di elementi (vettore) è un semplice modo di rappresentare l’attitudine di un utente per tutti gli elementi o concetti usati del dominio. Volendo esprimere più attitudini abbiamo bisogno di vettori multipli e quindi di una matrice, dove sia le righe sia le colonne rappresentano le caratteristiche di un utente. In tal modo, abbiamo un vettore V = {v 1 , v2 ,… vk }, dove vi è una caratteristica dell’utente relativa all’i-esimo elemento del dominio. I valori degli elementi del vettore possono essere di tipo booleano, interi o possono appartenere ad una scala di valori indicando così il livello di conoscenza relativo a quel concetto P. De Bra e L. Calvi, «AHA: a generic adaptive hypermedia system.,» in In 2nd Workshop on Adaptive Hypertext and Hypermedia, Pittsburgh, USA., 1998.. Questo approccio permette di cogliere anche delle piccole differenze tra gli utenti, infatti proponendo agli utenti una lista di elementi a cui un utente deve una valutazione è possibile assegnare dei valori che permettono di cogliere delle sfumature che altrimenti sarebbe difficile cogliere. 7.5 Modelli statistici predittivi Diversi modelli statistici sono stati utilizzati per la costituzione e il mantenimento del modello utente. Di seguito accenniamo ai più significativi, vale a dire Markov Models, Neural Network e Bayesian Networks. • Markov Models: tali modelli si basano sulle catene di Markov le quali per la rappresentazione degli eventi assumo che il verificarsi di un dato evento dipende esclusivamente dall’evento corrente e non da quelli passati A. Ramesh, «Link prediction and path analysis using markov chain,» In: Proceedings of the 9th World Wide Web conference, March 1999.J. Zhu, J. Hong e J. G. Hughes, «Using markov chains for link prediction in adaptive web site,» In LNCS, 2002.. Questo tipo di modello è stato molto usato in ambito web laddove c’è la necessità di prevedere le azioni di un utente che si trova a visitare una determinata pagina, in tal caso il profilo è costruito in base all’ultimo evento osservato e cioè l’ultima pagina visitata. • Neural Networks: sempre in ambito web, per la modellazione utente, in diverse applicazioni sono state utilizzate le reti neurali. A tale scopo le reti 35 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità neurali sono state utilizzate per essere addestrate ad apprendere gli interessi osservando le azioni degli utenti. Una volta appresi tali interessi con tali informazioni è possibile instanziare il profilo utente A. Jennings e H. Higuchi, «A User Model Neural Network for a Personal News Service,» User Modeling and User-Adapted Interaction, vol. 3, n. 1, pp. 1-25, 1993.L. M. Manevitz e M. Yousef, «A web navigation system based on a neural network user-model trained with only positive web documents,» Web Intelligence and Agent Systems, vol. 2, n. 2, pp. 137-144, 2004.. • Bayesian Networks: le Reti Bayesiane (BNs) sono state spesso usate per la modellazione utente J. Pearl, Probabilistic Reasoning in Intelligent Systems, SanMateo, California: Morgan Kaufmann Publishers, 1988.A. Jameson, «Numerical Uncertainty Management in User and Student Modeling: An Overview of Systems and Issues,» User Modeling and User-Adapted Interaction, vol. 5, n. 3-4, pp. 193-251, 1995.. Una rete Bayesiana è rappresentata da un grafo orientato in cui i nodi rappresentano degli eventi, gli archi sono delle relazioni probabilistiche e deterministiche che collegano gli eventi. Gli eventi insieme alle frecce che le congiungono formano un grafico aciclico, ovvero un grafico in cui non esiste nessun cammino che permetta di partire da una variabile e tornare sulla stessa seguendo le direzioni delle frecce. Tali reti si prestano bene a rappresentare modelli che hanno delle incertezze. Ad ogni nodo figlio, diverso dalla radice, è associata una tabella di probabilità condizionate che quantifica la dipendenza del nodo ‘figlio’ dai nodi genitori. Nel grafo ogni nodo è condizionalmente indipendente da ogni nodo che non sia suo figlio. Un interessante esempio di utilizzo di rete bayesiana per la costruzione di profili utente la si trova in F. SPARACINO, «The Museum Wearable – real-time sensor-drive understanding of visitors’ interests for personalized visuallyaugmented museum experiences,» MIT Media Lab http://alumni.media.mit.edu/~flavia/Papers/flavia_mw2002.pdf (22 Novembre 2012). nell’ambito del progetto Wearable Museum del MIT. L’idea di base del progetto è categorizzare i visitatori di un museo in base a specifiche caratteristiche come il tipo di percorso e il tempo speso per visitare determinate opere e di conseguenza proporre all’utente dei contenuti adeguati al tipo di categoria a cui è stato associato. In questo contesto è stata sviluppata una Rete Bayesiana attraverso cui è costruita una stima di probabilità per ogni utente di appartenerne ad una categoria piuttosto che a un’altra, ciò consente di profilare il visitatore. 36 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità PARTE II Tecnologie Semantiche In questo capitolo vengono trattati standard, linguaggi e metodologie applicabili alla costruzione semantica del profilo utente per Neoluoghi. L’utilizzo di tali tecnologie per la creazione e gestione del profilo permette, grazie al meccanismo dell’inferenza, di ottenere nuova conoscenza e quindi di ampliare e consolidare il profilo. 37 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 1 Le ontologie L’Ontologia è una branca della filosofia che studia l’essere e cerca di darne una spiegazione sistematica N. Guarino, D. Oberle e S. Staab, «What Is an Ontology?,» in Handbook on Ontologies - International Handbooks on Information Systems, Berlin, Springer Berlin Heidelberg, 2009, pp. 1-17.. Il termine ontologia è stato introdotto in ambito informatico agli inizi degli anni ‘90 nel campo dell’intelligenza artificiale per facilitare la condivisione e il riutilizzo della conoscenza. In particolare sono utilizzate per classificare concetti e fare una gerarchizzazione in uno specifico dominio di conoscenza. Molteplici sono le definizioni di ontologia che si trovano in letteratura, tra queste riportiamo due delle più indicative, e cioè quella di Gruber che in T. R. Gruber, «A Translation Approach to Portable Ontology Specification,» Knowledge Acquisition, vol. 5, n. 2, pp. 199-220, 1993. definisce l’ontologia come “una specificazione di una concettualizzazione”, e quella di Swartout che in [91] afferma: “Un'ontologia è un insieme di termini descriventi un dominio strutturato in maniera gerarchica che può essere usato come fondamento di una base di conoscenza”. Per concettualizzazione s’intende una rappresentazione astratta di uno specifico dominio. Un’ontologia permette di definire tutti i predicati che caratterizzano un soggetto e di identificare i termini che codificano in modo univoco la conoscenza in un dato dominio. In Figura 2 è rappresentato quello che è chiamato Ontology Spectrum M. C. Daconta, J. L. Obrst e T. K. Smith, «The Semantic Web: A Guide to the Future of XML, Web Services, and Knowledge Management,» Wiley, 2003.[93], un diagramma che mostra i più importanti concetti e metodi utilizzati per classificare e disambiguare i contenuti semantici al fine di estrarre la conoscenza. Il diagramma mette in relazione e confronta in un comune spazio ontologico tutti questi concetti, basandosi sulla loro ricchezza semantica. Ciò che definiamo come ontologia può spaziare dalla semplice nozione di tassonomia (conoscenza con una struttura gerarchica minimale), thesauri 2 (parole e sinonimi), modello concettuale (contenente una conoscenza più complessa) e teorie logiche come la logica modale e logica del primo ordine (possiedono conoscenza complesse). Dopo aver introdotto il concetto di Spectrum Ontolgoy, è più chiaro come un’ontologia definisce delle parole comuni riguardo concetti che sono utilizzati per descrivere e rappresentare un dominio di conoscenza e fissarne in modo univoco il significato. Da ciò deriva che le ontologie sono utilizzate da persone, computer e tutte le applicazioni che hanno bisogno di condividere le informazioni di un dominio di conoscenza. 2 Secondo la definizione ISO, il thesaurus è "un vocabolario di un linguaggio di indicizzazione controllato in maniera formalizzata in modo che le relazioni a priori tra i concetti sono rese esplicite" (ISO 2788-1986). 38 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Figura 2. Ontology Spectrum Esistono differenti tipi di ontologia G. Nicolas, «Semantic matching: formal ontological distinctions for information organization, extraction and integration,» In M.T. Pazienza, Information Extraction: a Multidisciplinary Approach to an Emerging Information Technology, Vol. %1 di %2Springer-Verlag, pp. 139-170., 1997.: • Top-level Ontologies: descrivono concetti generali che sono indipendenti dal dominio di conoscenza; • Domain Ontologies: descrivono la conoscenza riguardo ad un particolare dominio (knowledge base); • Task Ontologies: conoscenza; • Application Ontologies: descrivono la conoscenza che deriva combinazioni o specializzazioni di Domain Ontology e Task Ontology. descrivono le attività generiche di un dominio di dalle Gli elementi che caratterizzano un’ontologia generalmente sono: 39 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità • Concetti: insieme delle entità oggetto dell’interesse di conoscenza. • Relazioni: collegamenti che intercorrono tra le entità. • Funzioni: sono relazioni in base a cui un’entità dipende da più entità. • Assiomi: asserzioni che modellano proposizioni sempre vere. • Istanze: rappresentano gli oggetti del mondo reale. 1.1 Semantic Web Il Semantic Web M. C. Daconta, L. J. Obrst e K. T. Smith, The Semantic Web:A Guide to the Future of XML, Web Services, and Knowledge Management, Indianapolis, Indiana: Published by Wiley Publishing, 2003.T. Berners-Lee, J. Hendler e O. Lassila, «The Semantic Web,» Scientific American, vol. 284, pp. 34-43, 2001.G. Antoniou e F. v. Harmelen, A semanticWeb primer, Printed and bound in the United States of America: Library of Congress Cataloging-in-Publication Data, 2007.L. Yu, Introduction to the Semantic Web and Semantic Web Services, Printed in the United States of America on acid-free paper: Chapman & Hall/CRC Taylor & Francis Group, 2007. è una naturale evoluzione del web tradizionale che è fortementelimitato nell’esprimere e gestire la semantica contenuta dalle risorse. L’inventore del World Wide Web, BernersLee, in T. Berners-Lee, J. Hendler e O. Lassila, «The Semantic Web,» Scientific American, vol. 284, pp. 34-43, 2001. afferma: “The Semantic Web is an extension of the current Web in which information is given well-defined meaning, better enabling computers and people to work in cooperation. [...] a web of data that can be processed directly and indirectly by machines”. L’idea di base è che con il Semantic Web le risorse siano comprensibili e utilizzabili oltre che dagli umani anche dalle macchine attraverso le applicazioni software. Per ottenere ciò è necessario definire e strutturare le risorse del Web in un modo diverso affinché tali risorse possano essere gestite e comprese in modo automatico dalle macchine e non solo da utenti umani. Per ottenere questo passaggio è necessario che i collegamenti tra le risorse nel web esprimano una semantica. Nel web tradizionale, date due risorse (pagine web) R1 e R2 diciamo che esiste un link tra di esse, nel Web semantico due risorse R1 e R2 sono legate da un predicato P il quale ha una semantica definita. Nella seguente Errore: sorgente del riferimento non trovata riportiamo un esempio rappresentativo di quanto appena detto. 40 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Le ontologie sono una componente fondamentale del Web semantico in quanto permette di definire le relazioni tra le risorse in modo formale e rigoroso senza porre limitazioni su come utilizzare tali risorse. Esistono diversi “ontology languages”, di seguito riportiamo i più importanti RDF, RDFS e OWL tutti basati su XML. XML XML è l’acronimo di “Extensible Markup Language” T. Berners-Lee, J. Hendler e O. Lassila, «The Semantic Web,» Scientific American, vol. 284, pp. 34-43, 2001.G. Antoniou e F. v. Harmelen, A semanticWeb primer, Printed and bound in the United States of America: Library of Congress Cataloging-in-Publication Data, 2007.L. Yu, Introduction to the Semantic Web and Semantic Web Services, Printed in the United States of America on acid-free paper: Chapman & Hall/CRC Taylor & Francis Group, 2007.«XML,» [Online]. Available: http://www.w3.org/XML/. ed è un linguaggio di markup (marcatore) creato dal W3C. Nasce dall’esigenza di archiviare e condividere i dati nel Web, per poter permettere alle applicazioni di scambiarsi informazioni. Il linguaggio consente di archiviare i dati in forma testuale racchiudendo le sezioni informative dei documenti all’interno di tag di metadatazione di apertura e chiusura di sezione. Ogni sezione informativa può contenere coppie attributo/valore. Tale standard che consente facilmente la conservazione di dati strutturati è indipendente dal software e dalle architetture hardware. Un documento si dice ben formato quando la sintassi è corretta, grazie alle sue regole sintattiche è la base per lo sviluppo del nuovo web ed è un punto di riferimento per tutti gli altri linguaggi utilizzati nel semantic web. XML riesce a gestire dati strutturati anche molto complessi, ma il suo limite è nella gestione dei metadati. Infatti, XML attraverso la sua struttura riesce perfettamente a rendere i dati “machine readable” ma non “machine understandable”, cioè a dare un significato da un punto di vista semantico. La risposta a tale problema è l‘RDF a cui di seguito accenniamo. RDF L’XML descrive le risorse del web tramite metadati strutturati consentendo di rendere tali risorse comprensibili alle macchine, ciò viene fatto definendo una sintassi e una struttura per i metadati. Per una gestione completa dei metadati manca una semantica che è possibile gestire tramite RDF (Resource Description Framework) la cui sintassi è basata su XML M. C. Daconta, L. J. Obrst e K. T. Smith, The Semantic Web:A Guide to the Future of XML, Web Services, and Knowledge Management, Indianapolis, Indiana: Published by Wiley Publishing, 2003.T. Berners-Lee, J. Hendler e O. Lassila, «The Semantic Web,» Scientific American, vol. 284, pp. 34-43, 2001.G. Antoniou e F. v. Harmelen, A semanticWeb primer, Printed and bound in the United States of America: Library of Congress Cataloging-in-Publication Data, 2007.L. Yu, Introduction to the Semantic Web and Semantic Web Services, Printed in the United States of America on acid-free paper: Chapman & Hall/CRC Taylor & Francis Group, 2007.«RDFResource Description Framework,» [Online]. Available: http://www.w3.org/RDF/.. RDF permette che anche la codifica e lo scambio dei metadati strutturati sia comprensibile 41 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità alle macchine e indipendenti dal dominio di applicazione. Per individuare le relazioni, proprietà ed entità LRDF utilizza indirizzi URI3. Le strutture di base dell’RDF sono T. Berners-Lee, J. Hendler e O. Lassila, «The Semantic Web,» Scientific American, vol. 284, pp. 34-43, 2001.L. Yu, Introduction to the Semantic Web and Semantic Web Services, Printed in the United States of America on acid-free paper: Chapman & Hall/CRC Taylor & Francis Group, 2007.«RDFResource Description Framework,» [Online]. Available: http://www.w3.org/RDF/.: • Resource: rappresenta una qualsiasi entità d’interesse, che può essere una pagina web, un insieme di pagine o un oggetto reale. Le risorse sono identificate da URI. • Property: è una risorsa che consente di rappresentare e descrivere una relazione tra risorse. Le proprietà sono identificate URI e assumono dei valori. • Statement (tripla o asserzione): è una tripla costituita dai seguenti elementi: o soggetto: risorsa; o predicato: proprietà della risorsa; o oggetto: rappresenta il valore della proprietà e può essere una qualsiasi espressione di tipo stringa o tipo di dato XML, oppure un’altra risorsa. Da un punto di vista grafico, (Figura 3) un documento RDF è raffigurato da un grafo etichettato e orientato in cui le risorse sono identificate da nodi (ellissi), le proprietà (archi etichettati) e i valori (rettangoli). Ad esempio lo statement “Giovanni è il creatore del sito http://www.giovanniverdi.it” può essere rappresentato come nella seguente Figura 3: Figura 3: Esempio di statement RDFS RDF permette agli utenti di descrivere le risorse senza alcuna considerazione riguardo allo specifico dominio di applicazione e non definisce alcuna semantica. Per risolvere questo problema ci viene in soccorso l’RDFS (RDF Schema). RDFS è un’estensione semantica di RDF, si tratta di un insieme di risorse e proprietà RDF standard per abilitare le persone a creare i propri loro vocabolari RDF M. C. Daconta, L. J. Obrst e K. T. Smith, The Semantic Web:A Guide to the Future of XML, Web Services, and 3 URI Uniform Resource Locator, sono riferimenti utilizzati per identificare in modo univoco le risorse. 42 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Knowledge Management, Indianapolis, Indiana: Published by Wiley Publishing, 2003.T. Berners-Lee, J. Hendler e O. Lassila, «The Semantic Web,» Scientific American, vol. 284, pp. 34-43, 2001.G. Antoniou e F. v. Harmelen, A semanticWeb primer, Printed and bound in the United States of America: Library of Congress Cataloging-inPublication Data, 2007.L. Yu, Introduction to the Semantic Web and Semantic Web Services, Printed in the United States of America on acid-free paper: Chapman & Hall/CRC Taylor & Francis Group, 2007.«RDF Vocabulary Description Language,» [Online]. Available: http://www.w3.org/TR/rdf-schema/.. Il modello di dati espresso dall’RDFS è come quello dei linguaggi di programmazione a oggetti, permette di creare delle classi di dati e proprietà che caratterizzano tali classi. RDF descrive le relazioni che sussistono tra le risorse in termini di relazioni e delle loro proprietà che sono rappresentate da coppie di attributi temine/valore. RSFS permette di definire le proprietà e le relazioni che ci sono tra le proprietà e altre risorse di dati. In RDF le risorse sono viste come classi e sottoclassi, dove le relazioni tra le risorse sono relazioni tra classi. Per creare e distribuire una semantica che sia comprensibile anche alle macchine, è necessario che ci sia un vocabolario comune, RDFS è uno schema utilizzato per creare un tale vocabolario. In sostanza RDFS è un linguaggio che può essere usato per descrivere classi, sottoclassi e proprietà delle risorse RDF. RSFS aggiunge semantica alle risorse e ai predicati RDF specificando per ogni termine le proprietà e i tipi di oggetti che possono essere il valore di queste proprietà. RDFS è un’estensione di RDF perché è scritto in RDF e usa lo stesso modello di dati. Le componenti principali dell’RDF Schema sono di seguito riportate. Classi principali: • rdfs:Resource: la classe di tutte le risorse; • rdfs:Class: la classe di tutte le classi; • rdf:Property: la classe delle proprietà; • rdfs:Literal: la classe di tutte le stringhe; Proprietà principali per descrivere le relazioni: • rdf:type: relaziona una risorsa alla propria classe; • rdfs:subClassOf: relaziona una classe alla superclasse; • rdfs:subPropertyOf: relaziona una proprietà alla classe della proprietà. OWL OWL (Ontology Web Language) è il linguaggio ontologico per il web semantico più diffuso e utilizzato M. C. Daconta, L. J. Obrst e K. T. Smith, The Semantic Web:A Guide to the Future of XML, Web Services, and Knowledge Management, Indianapolis, Indiana: Published by Wiley Publishing, 2003.T. Berners-Lee, J. Hendler e O. Lassila, «The Semantic Web,» Scientific American, vol. 284, pp. 34-43, 2001.G. Antoniou e F. v. Harmelen, A semanticWeb primer, Printed and bound in the United States of 43 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità America: Library of Congress Cataloging-in-Publication Data, 2007.L. Yu, Introduction to the Semantic Web and Semantic Web Services, Printed in the United States of America on acid-free paper: Chapman & Hall/CRC Taylor & Francis Group, 2007.«Web Ontology Language (OWL),» [Online]. Available: http://www.w3.org/2004/OWL/.. RDF e RDFS permettono di rappresentare parte della conoscenza ontologica, gli strumenti di base degli schemi RDF/RDFS riguardano l’organizzazione di vocabolari in gerarchie tipizzate, tra cui, relazioni di sottoproprietà, restrizioni di dominio e istanze di classi. RDFS ha un potere espressivo limitato, in particolare riguardo: • La disgiunzione tra classi; • La combinazione di classi tramite gli operatori booleani di unione, intersezione e complemento; • La visibilità locale delle proprietà; • I vincoli di cardinalità sulle proprietà; OWL nasce proprio dall’esigenza di superare le limitazioni appena descritte e per permettere di avere un linguaggio che sia più ricco dell’RDF Schema. Siccome in generale nella progettazione di un linguaggio bisogna scegliere un compromesso tra potenza espressiva e la capacità di supportare una sufficiente potenza di ragionamento, il W3C4 ha definito OWL attraverso tre diversi sotto-linguaggi: OWL Lite, OWL DL e OWL Full. Tutti i sotto-linguaggi di OWL usano la sintassi RDF, in particolare le istanze sono dichiarate come in RDF. 4 • OWL Lite: permette di rappresentare semplici classificazioni gerarchiche con semplici vincoli. Consente di creare un’ontologia di classi e proprietà e relative istanze. • OWL DL: DL sta per Description Logic (logica descrittiva) campo della ricerca che ha studiato le logiche che formano la base formale dell’OWL. OWL DL comprende tutti i costrutti del linguaggio OWL i quali vengono usati con specifiche restrizioni. Ad esempio una classe non può essere membro di un’altra classe e non è possibile utilizzare la cardinalità in modo transitivo; • OWL Full: è il linguaggio OWL utilizzato in tutta la sua espressività e potenza. In OWL è possibile imporre restrizioni sulla cardinalità di una classe o di tutte le classi, limitando il numero di classi che possono essere descritte in ciascun’ontologia. Ogni documento ben formato RDF è automaticamente un documento ben formato OWL. http://www.w3.org/ . 44 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 2 Modellazione Utente basata su Ontologie In precedenza abbiamo visto come le due prominenti metodologie di modellazione utente siano quella feature-based e Stereotype-based. In particolare, la modellazione basata su stereotipo mira a riunire gli utenti in diversi gruppi chiamati stereotipi, mentre l’approccio feature-based ha come scopo quello di rappresentare le caratteristiche utente come in termini di interessi, conoscenza, obiettivi, informazioni personali. Questa suddivisione si riflette nella modellazione utente su base ontologica. In letteratura si sono delineati due fondamentali approcci che si rifanno alla modellazione feature-based e stereotype-based. Il primo approccio tende a rappresentare le caratteristiche utente come gli interessi e le preferenze basandosi sulla modellazione utilizzata dall’overlay model. Il secondo approccio modella le diverse caratteristiche utente strutturandole come ontologie e utilizzando in tale processo di strutturazione modelli utente basata su stereotipi S. Sosnovsky e D. Dicheva, «Ontological technologies for user modelling,» Int. J. Metadata Semant. Ontologies, vol. 5, n. 1, pp. 32-71, 2010.. Le ontologie, in generale, sono utilizzate per la rappresentazione della conoscenza. Nell’ambito della modellazione utente basata su ontologie, la parte del sistema riguardante la conoscenza dell’utente è appunto rappresentata da ontologie. In modo particolare la modellazione utente basata su ontologie si è sviluppata nel settore dell’e-learning permettendo la modellazione dei discenti. Uno dei primi a introdurre il concetto di modello utente basato su ontologie è stato Razmerita L. Razmerita, «User Model and User Modeling in Knowledge Management Systems: An Ontology-basedApproach”, PhD thesis, University of Toulouse, France,» PhD thesis, University of Toulouse, France, 2003. il quale ha presentato un’architettura generica per la modellazione utente ontology-based, chiamata OntobUM. Tale architettura integra tre ontologie: 1. Un’ontologia utente che caratterizza l’utente; 2. Un’ontologia di dominio che definisce le relazioni tra le applicazioni di personalizzazione; 3. Una log ontology che definisce la semantica delle interazioni applicazioni utente. Molti sono i lavori in cui sono state presentate soluzioni tecnologiche basate su ontologie R. Mizoguchi e J. Bourdeau, «Using ontological engineering to overcome AIED problems,» Int. J. AI in Education,, vol. 11, n. 2, pp. 107-121, 2000. D. Dicheva, S. Sosnovsky, T. Gavrilova e P. Brusilovsky, «Ontological web portal for educational ontologies,» in Ws. on Applications of Semantic Web Technologies for e-Learning at AIED, Amsterdam, Netherlands., 2005.M. Winter, C. Brooks e J. Greer, «Towards best practices for semantic web student modelling,» in Proceedings of the 12th Int. Conf. on Artificial Intelligence in Education, Amsterdam, the Netherlands, IOS Press, 2005, pp. 694-701.. In J. Kay e A. Lum, «Online Proceedings of the UM (User Modelling) 2005 Workshop on Personalisation on the Semantic Web,» in Ontology-based User Modelling for the 45 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Semantic Web, Edinburgh, Scotland, 2005, pp. 11-19. gli autori identificano tre importanti ruoli che le ontologie svolgono nella modellazione utente in ambito web: 1. Forniscono un vocabolario per metadatare gli oggetti di un dominio. Il modello utente come abbiamo visto rappresenta informazioni di un utente tra cui, ad esempio, preferenze e conoscenza su un determinato dominio di conoscenza, uno dei compiti fondamentali nella creazione di un modello utilizzabile in un dominio è quello di stabilire il suo vocabolario. 2. Supportano l’inferenza nel modello utente, laddove le informazioni riguardanti l’utente sono a grana fine, l’ontologia può fornire una base utile per effettuare inferenza sugli attributi utente che sono a grana grossa. Similmente le ontologie possono supportare combinazioni di caratteristiche riguardo all’utente le cui fonti usano differenti termini che possono essere armonizzati dall’ontologia J. Kay e A. Lum, «Online Proceedings of the UM (User Modelling) 2005 Workshop on Personalisation on the Semantic Web,» in Ontology-based User Modelling for the Semantic Web, Edinburgh, Scotland, 2005, pp. 11-19.. 3. Supportano l’utente nella metadatazione degli oggetti. Di seguito accenniamo agli approcci più diffusi e utilizzati in letteratura riguardo alla modellazione utente basata su ontologie. 2.1 Ontologie per la modellazione utente Nell’ambito della modellazione utente Feature-Based, lo schema Overly è senza dubbio quello che naturalmente più si avvicina alla modellazione ontologica, in quanto, come detto in precedenza, si presta in modo immediato a essere modellato e rappresentato per mezzo di concetti e relazioni ontologiche. Le ontologie permettono di aggiungere all’espressività della rete di concetti del modello Overlay la possibilità di fare inferenza, quindi dedurre nuova conoscenza oltre alla possibilità di condividerla e di riusarla. Inoltre, va osservato che nella rappresentazione tramite ontologie, le preferenze e gli interessi degli utenti, a differenza di quello che accade in una semplice rete di concetti interconnessi, vengono rappresentati anche dalle relazioni che legano i concetti. Molteplici sono le pubblicazioni in cui viene utilizzata una modellazione utente su base ontologica in S. E. MIDDLETON, N. R. SHADBOLT e D. C. D. ROURE, «Ontological User Profiling in Recommender Systems,» ACM Transactions on Information Systems (TOIS), vol. 22, n. 1, pp. 54-88, 2004.W. Liu, F. Jin e X. Zhang, «Ontology-Based User Modeling for E-Commerce System,» Pervasive Computing and Applications, 2008. ICPCA 2008, vol. 1, pp. 260- 263 , 2008.Z. Liu, L. Liu, H. Kang e S. Zhong, «Ontology-based user modeling for adaptive educational hypermedia system,» Computer Science & Education, 2009 ICCSE '09. 4th International Conference on, vol. doi: 10.1109/ICCSE.2009.5228465, pp. 1203-1207, 2009.S. Prabaharan e R. Wahidabanu, «Ontological Approach for Effective Generation of Concept Based User Profiles to Personalize Search Results,» Journal of Computer Science, vol. 8, n. 2, pp. 205-215, 2012.T. Murray, «Authoring knowledge-based tutors: tools for content, instructional strategy, student model, and interface design,» J. Learning Sciences,, vol. 7, n. 1, pp. 5-64, 1998.R. Mizoguchi, K. Sinitsa e M. Ikeda, «Task ontology design for intelligent educational/training systems,» Proceedings of the Ws. on Architectures 46 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità and Methods for Designing Cost-Effective and Reusable ITSs at ITS’1996, pp. 1-21, 1996.L. Hella e J. Krogstie, «A Profile Ontology for Personalised Mobile Shopping Support,» in 1st International Workshop on Adaptation, Personalization and REcommendation in the Social-semantic Web (APRESW 2010), Heraklion, Greece, 2010.. Sosnovsky in S. Sosnovsky e D. Dicheva, «Ontological technologies for user modelling,» Int. J. Metadata Semant. Ontologies, vol. 5, n. 1, pp. 32-71, 2010.S. Sosnovsky, «Ontological Technologies for user modelling,» [Online]. Available: http://www.sis.pitt.edu/~sergeys/papers/SOA_Sosnovsky_revised.pdf. classifica diversi tipi di ontologie per la rappresentazione del modello utente: • Ontology-based Overlay User Modeling: un’ontologia in modo semplificato può essere vista come una rete di concetti, che è proprio ciò che rappresenta il modello Overly. L’ontologia fornisce gli strumenti naturali per la modellazione di un discorso esprimendo della semantica tra i concetti e consentendo di fare inferenza. • Personal Ontology Views: “L’utilizzo di ontologie per modellare le caratteristiche degli utenti permette di rappresentare le caratteristiche degli utenti come una rete di concetti che riflettono strutture concettuali individuali nel dominio del discorso” S. Sosnovsky e D. Dicheva, «Ontological technologies for user modelling,» Int. J. Metadata Semant. Ontologies, vol. 5, n. 1, pp. 3271, 2010.. Per modellare queste strutture concettuali individuali in N. M. Stephens e M. L. Huhns, «Personal ontologies,» IEEE Internet Computing, vol. 3, n. 5, pp. 85-87, 1999. è stato introdotto il concetto di “personal ontology” per designare un modello computazionale che riflette una prospettiva individuale sul mondo. • Ontologies of User Profiles: riguardano ontologie che descrivono profili utente condivisibili. La scalabilità e riusabilità dei modelli utenti richiede non solo la rappresentazione standardizzata del dominio, ma anche vocabolari comuni per descrivere lo stesso modello utente. La profilazione basata su ontologie è particolarmente importante per sistemi di ragionamento attraverso profili multipli (sistemi adattivi sociali) o per sistemi che possono beneficiare di complesse inferenze su ontologie multiple rappresentanti differenti conoscenze (sistemi adattivi che usano ontologie per modellare conoscenza di dominio e di contesto). • Ontologies for Stereotype User Modeling: tale classificazione si basa sulla considerazione di lavori che hanno combinato l’utilizzo di ontologie con la modellazione utente basata su stereotipi. Sosnovsky S. Sosnovsky e D. Dicheva, «Ontological technologies for user modelling,» Int. J. Metadata Semant. Ontologies, vol. 5, n. 1, pp. 32-71, 2010.S. Sosnovsky, «Ontological Technologies for user modelling,» [Online]. Available: http://www.sis.pitt.edu/~sergeys/papers/SOA_Sosnovsky_revised.pdf. evidenzi a come l’utilizzo delle ontologie in tal senso può essere molteplice. Infatti, il dominio delle ontologie può essere usato per creare stereotipi di profili; organizzare i concetti di un’ontologia come stereotipi consente effettuare reasoning tra gli stereotipi. In sostanza le ontologie possono essere utilizzate 47 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità per rappresentare le caratteristiche degli stereotipi, gli stereotipi possono essere utilizzati per rappresentare concetti di un’ontologia e infine un’ontologia può implementare un singolo stereotipo. • User Modeling Based on Lexical Ontologies: riguarda i thesauri e le ontologie lessicali, come WordNet5, implementando la modellazione utente keyword-based, permettono di migliorare i modelli utente con poca semantica basandosi su relazioni lessicali tra le parole. WordNet può migliorare considerevolmente la qualità della modellazione dei contenuti keyword-based, la sua sintesi assicura univoche interpretazioni dei termini dei linguaggi naturali. Di seguito alcune delle più diffuse e utilizzate ontologie per la modellazione del profilo utente. GUMO GUMO (General User Model Ontology) D. Heckmann, T. Schwartz, B. Brandherm, M. Schmitz e M. von Wilamowitz-Moellendorff, «Gumo – The General User Model Ontology,» in In: L. Ardissono, P. Brna & A. Mitrovic (eds.), Proceedings of the 10th International Conference on User Modeling (UM'2005), Edinburgh, UK, Springer Verlag, 2005, pp. 428-432. è un’ontologia OWL che si basa su UserML; l’idea di fondo della progettazione di tale ontologia è di suddividere le caratteristiche utente in tre classi principali: “auxiliary”, “predicate” e “range”. L’ontologia fornisce circa mille gruppi di auxiliaries (ausiliari) di base come hasProperty, hasInterest, hasKnowledge, ecc., che permettono di catturare differenti gruppi di caratteristiche utente come BasicUserDimensions, ContextDimensions, DomainDependentDimensions e SensorDimensions. Questi gruppi di caratteristiche, consentono di descrivere aspetti importanti delle dimensioni utente quali tra l’altro: obiettivi, interessi, conoscenze, preferenze, stato emotivo, personalità. Inoltre consente di rappresentare informazioni legate al contesto come il luogo e il tempo, e ancora informazioni relative allo stato emozionale e sulle preferenze di dispositivo (Figura 4 D. Heckmann, «Towards a General User Model Ontology (GUMO),» in Workshop „Ontologies for Personal Memory“, DFKI Saarbrücken, 2005.). 5 WordNet è un database semantico-lessicale per la lingua inglese elaborato dal linguista George Armitage Miller presso l'Università di Princeton, che si propone di organizzare, definire e descrivere i concetti espressi dai vocaboli. 48 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Figura 4. Concetti dell’Ontologia GUMO ([119]) A partire dalla lista estendibile degli ausiliari con GUMO è possibile rappresentare e descrive molte informazioni riguardo un utente. Le affermazioni fatte tramite auxiliary, predicate e range si chiamano situational statement (dichiarazione situazionale). FOAF Il progetto FOAF (Friend of a Friend) [120] nasce dall’esigenza di rendere comprensibile e processabile alle macchine le informazioni personali come nome, cognome, interessi, numero di telefono ecc., informazioni sempre più spesso presenti e diffuse nei social network. Per rendere comprensibile tali informazioni alle macchine è stata costruita un’ontologia OWL che si basa su schemi RDF. L’ontologia include termini di base comunemente utilizzati per descrivere informazioni personali, sono descritte le caratteristiche utente attraverso cinque principali dimensioni: • “FOAF Basics” rappresenta le informazioni di base come nome, cognome, età ecc. • “Personal Information” personali, blog ecc. • “Projects and Groups” descrive i gruppi di cui l’utente è membro e progetto dell’utente (in genere la sua homepage). • “Account Online” dimensione che enumera accounts associati all’utente. • “Documents and images” dimensione che descrive l’immagine del profilo utente e i documenti di profilo. descrive informazioni personali come interessi FOAF, quindi, può essere visto come un semplice vocabolario (o ontologia) che include i termini di base per descrivere le informazioni personali. FOAF è uno standard per tutti quelli che vogliono marcare le loro informazioni sul proprio sito web. Presentando 49 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità i dati nella sintassi RDF tutte le informazioni personali comprensibili e automaticamente processabili dalle macchine. contenute saranno Rendere tali informazioni comprensibili alle macchine permette di individuare facilmente le informazioni relative a un utente sui social network, inoltre ciò rende anche possibile di individuare altri utenti che condividono gusti o passioni simili e di visualizzare il loro materiale. FOAF a diverse estensioni, tra queste di sicuro interesse sono FOAFRealm S. Grzonkowski, A. Gzella, R. K. S., G. Breslin, W. J. e J. Dobrzanski, «Sharing information across community portals with FOAFRealm,» In International Journal of Web Based Communities (IJWBC), vol. 5, n. 3, pp. 351-370, 2009. che permette la gestione di profili in ambienti cross-system ed e-FOAF Y. Zeng, Y. Wang, D. Damljanovic e Z. Huang, «E-foaf:interest Vocabulary Specification 0.3,» [Online]. Available: http://wiki.larkc.eu/e-foaf:interest. che permette di descrivere specifiche informazioni sugli interessi dell’utente, perché uno dei limiti di FOAF è proprio quello di non fornire dettagli sugli interessi dell'utente. Il vocabolario e-foaf:interest ha tre versioni: • e-foaf:interest Basic che descrive le informazioni di base riguardo l’interesse come e-foaf:interest_value, e-foaf:interest_appear_time, efoaf:interest_has_synonym e e-foaf:interest_co-occur_with; • e-foaf:interestComplement che contiene informazioni complementari come e-foaf:interest_longest_duration; • e-foaf:interestComplete che è una unione di un insieme di vocabolari da "efoaf:interest Basic" e "e-foaf:interest Complement". Ulteriori estensioni sono presentate in FOAFEstensions, «FOAF Estensions,» [Online]. Available: http://wiki.foaf-project.org/w/FoafExtensions.. CUMO L’ontologia CUMO (Cultural User Modelling Ontology) K. Reinecke, G. Reif e A. Bernstein, «Cultural User Modeling With CUMO: An Approach to Overcome the Personalization Bootstrapping Problem,» in The 6th International Semantic Web Conference and the 2th Asian Semantic Web Conference, BEXCO, Busan KOREA, 2007. ha l’obiettivo di rappresentare il background culturale 6 di un utente e di rendere queste informazioni interscambiabili da applicazioni differenti. L’idea di base è avere un modello d’uso per l’utente sempre utilizzabile indipendentemente dall’applicazione. L’ontologia contiene varie informazioni come diversi luoghi di residenza, nazionalità dei genitori, le lingue parlate, e la religione, orientamento politico, essa si basa sull’ontologia GUMO in precedenza vista, aggiungendo delle componenti, riguardanti aspetti della cultura di appartenenza. CUMO contiene le dimensioni culturali e i loro valori individuate da Hofstede in G. Hofstede., «Culture’s Consequences: Comparing values, behaviours and organisations across nations,» Sage Publications Inc., 2003., le quali offrono la possibilità di strutturare l’aspetto culturale di un individuo secondo cinque diversi concetti: 6 La cultura intesa come costumi, abitudini derivanti dal vivere in una specifica comunità. 50 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità • Power Distance; • Individualism vs. Collectivism; • Masculinity vs. Femininity; • Uncertainty Avoidance; • Long-term vs. short-term orientation. Tuttavia, gli autori di CUMO considerano i punteggi assegnati a un utente e le sue dimensioni culturali non statiche e uguali per tutti i residenti nello stesso paese per cui, non assomigliano a una “cultura nazionale”, come invece suggerito da Hofstede. Per la modellazione di un utente con CUMO, inizialmente è necessario acquisire delle informazioni tramite questionari e tramite l’interazione con un’applicazione. Il processo inizia con un questionario iniziale che copre le più importanti voci nell’ontologia. Il maggior numero di domande serve a dettagliare il profilo culturale dell’utente, tuttavia, il numero delle domande deve essere bilanciato con la volontà dell’utente di trascorrere del tempo per creare un profilo personalizzato. OPO OPO (Online Presence Ontology) M. Stankovic, «Online Presence,» 2010. [Online]. Available: http://online-presence.net/ontology.php. è un’ontologia il cui obiettivo è facilitare e lo scambio e l’integrazione di informazioni riguardo la presenza online di utenti in diverse tipologie di applicazioni web. In particolare l’ontologia mira a modellare gli aspetti dinamici degli utenti che sono online. Come è possibile osservare dalla M. Stankovic, «Online Presence,» 2010. [Online]. Available: http://online-presence.net/ontology.php., la classe base da cui l’ontologia OPO parte è foaf:Agent attraverso cui viene identificato l’utente. A partire da tale classe viene definita la classe intorno a cui ruota tutta l’ontologia, cioè OnlinePresence che è il punto di partenza da cui definire tutte le proprietà che riguardano la presenza online degli utenti. Alcune di tali proprietà sono l’attività, la visibilità, la possibilità che un utente da di essere contattato o anche disturbato. L’utente ha la possibilità di impostare le notifiche di ricezione e la visibilità delle informazioni relative al suo profilo, inoltre può anche specificare cose sta facendo nel momento in cui è online. Come si evince dalla Figura 5 OPO fa uso di un’altra ontologia quale SIOC, di cui discuteremo nella successiva sezione, attraverso la quale è possibile gestire la personalizzazione dei messaggi. Questo consente di commentare e rispondere ai messaggi personalizzati. Infine viene utilizzato il vocabolario basato su RDF WGS847 vocabulary utile per descrivere la posizione geografica corrente espressa in latitudine e longitudine. 7 http://www.w3.org/2003/01/geo/. 51 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Figura 5. Core Classes in OPO ([126]) SIOC L’ontologia SIOC (Semantically Interlinked Online Communities) «SIOC,» [Online]. Available: http://sioc-project.org/. ha lo scopo di favorire l’integrazione tra il semantic web e il social web. SIOC si basa su RDF ed è utile per rappresentare le risorse che devono essere taggate. SIOC consente di avere delle comunità online connesse semanticamente. Infatti, l’ontologia utilizzando le tecnologie del semantic web, rappresenta e descrive concetti del social web come post, sito, forum, blog e facilitando la creazione di collegamenti tra tali concetti, consente di interconnettere diverse comunità. Attraverso l’uso di un’ontologia è possibile tenere traccia del topic di una discussione, dell’autore di un post o del tipo di relazione che esiste fra utenti. Nella Figura 6 sono rappresentate le principali classi e proprietà e gli item quali elementi di base del web. Come si evince dalla figura gli item possono esser contenuti in differenti contenitori ognuno dei quali appartiene ad uno specifico spazio. La parte centrale della figura descrive come dei forum possono essere contenuti in un sito. I forum possono a loro volta contenere dei sub-forum, e ogni forum contiene una serie di messaggi P. A. Champin e A. Passant, «SIOC in Action - Representing the Dynamics of Online Communities,» in Proceeding I-SEMANTICS '10 Proceedings of the 6th International Conference on Semantic Systems, New York, NY, USA, 2010.. Ogni elemento del contenitore può essere associato a tag o categorie che rappresentano il tipo di argomento P. A. Champin e A. Passant, «SIOC in Action - Representing the Dynamics of Online Communities,» in Proceeding I-SEMANTICS '10 Proceedings of the 6th International Conference on Semantic Systems, New York, NY, USA, 2010.. Spesso SIOC è utilizzata in unione con FOAF per consentire di descrivere le relazioni esistenti tra profili e rete sociale. 52 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Figura 6. Principali proprietà e classi SIOC ([127]). Tag Ontology L’attività di tagging può essere rappresentata in modo semantico grazie alle Tag Ontologies. Abbiamo visto come tra le varie modalità di rappresentazione del profilo una delle più diffuse è quello di utilizzare un vettore, volendo rappresentare un profilo con i tag, può essere espresso come un vettore di tag u = <v(t1), v(t2),…,v(t|T|)> dove v(tk) rappresenta il valore del tag tk sull’utente u. La semantica dei dati a cui sono associati i tag (tagging data) dipende dal significato comune che le comunità online attribuiscono ai tag. In T. Gruber, «Ontology of folksonomy: A mashup of apples and oranges,» Intl Journal on Semantic Web & Information Systems, vol. 3, n. 2, 2007. il tagging è inteso come una relazione tra: • “un oggetto, cioè la risorsa da taggare. Ad esempio una foto, un post di un blog”; • “un tag, il tag associato alla risorsa”; • “un tagger, un agente (persona) che crea il link tra il tag e l’oggetto”; • “una fonte, uno spazio in cui l’azione di tagging viene eseguita, ad esempio Flickr”. In R. Newman, D. Ayers e S. Russell, «Tag ontology,» 2005. viene definito Tagging(User, Resourse, Tag) cioè una relazione tra utente, risorse e tags come Tag Ontology. La figura seguente H. L. Kim, A. Passant, J. G. Breslin, S. Scerri e S. Decker, «Review and Alignment of Tag Ontologies for Semantically-Linked Data in Collaborative Tagging Spaces,» In: Proceeding ICSC '08 Proceedings of the 2008 IEEE International Conference on Semantic Computing., pp. 315-322, 2008. raffigura le possibili attività di tagging che si possono eseguire tramite una tag ontology. 53 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Figura 7. Attività di tagging utilizzando una tag ontology ([131]) In particolare un tag è specificato da tags:tag; l’utente autore del tag è definito da tags:taggedBy sottoproprietà di foaf:Agent. La proprietà dc:date (derivante dal Dublin Core) consente di specificare la data di composizione del tag attraverso tags:taggedOn . L’ontologia MOAT (Meaning Of A Tag) «Moat Project,» [Online]. Available: http://moat-project.org/. riutilizza ed estende le tag ontology, tale ontologia permette di modellare i tag in modo semantico nelle community e quindi fare in modo che i tag abbiano una valenza semantica comprensibile alle macchine H. L. Kim, A. Passant, J. G. Breslin, S. Scerri e S. Decker, «Review and Alignment of Tag Ontologies for Semantically-Linked Data in Collaborative Tagging Spaces,» In: Proceeding ICSC '08 Proceedings of the 2008 IEEE International Conference on Semantic Computing., pp. 315-322, 2008.. L’ontologia utilizza FOAF per tracciare l’utente che ha assegnato un certo significato ad un determinato tag, il collegamento è effettuato attraverso la proprietà foaf:maker. SCOT «SCOT,» [Online]. Available: http://scot-project.org. (Social Semantic Cloud of Tags) consente di esplicitare semanticamente i tag attraverso la modellazione dei passi dell’attività di tagging. Le componenti di base di SCOT che consentono attività di tagging sono rappresentate da FOAF; SKOS e SIOC. Ognuna delle quale svolge una specifica funzione che permette la realizzazione del tagging. 54 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità PARTE III Recommender System In questo capitolo viene presentata una survey delle principali tecniche e algoritmi di Recommender System. 55 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 1 Introduzione A partire dagli anni novanta con l’esplosione del Web, essendoci una sempre maggiore quantità di dati e informazioni a disposizione, è sorta l’esigenza di individuare dei meccanismi che permettessero di filtrare le informazioni in fase di ricerca da parte di utenti occasionali e non. Questo si è reso necessario sia per ridurre i tempi della ricerca sia per individuare risorse realmente di interesse per l’utente. I Recommender System (RS) sono dei sistemi che cercano di ridurre il numero delle possibili scelte degli utenti, suggerendo loro solo quelle risorse che hanno una maggiore affinità con le preferenze espresse e comportamenti osservati. Fino al 1997 le tecniche che consentivano di setacciare l’enorme mole di informazioni presenti sul web erano note esclusivamente con il termine di Information Filtering, termine introdotto con la presentazione del sistema di filtraggio di mail Tapestry D. Goldberg, D. Nichols, B. M. Oki e D. Terry, «Using collaborative filtering to weave an information tapestry,» Commun. ACM, vol. 35, n. 12, pp. 61-70, 1992. che consentiva di trovare documenti sulla base dei commenti e valutazioni fatte da gruppi di utenti. Un RS può essere utilizzato in tutti i contesti in cui per effettuare una ricerca è selettivo l’uso delle preferenze degli utenti. Per questa loro naturale tendenza, ad esempio, i RS sono ampiamente utilizzati nei sistemi di e-commerce. Occorre distinguere il comportamento tra il motore di ricerca, utilizzato per ricercare informazioni in una base di dati, e il motore di raccomandazione, che, invece, è utilizzato per fornire suggerimenti al visitatore o al curatore in base ai contesti di riferimento. Pertanto, il motore di raccomandazione può cooperare con il motore di ricerca, ma fornisce risultati diversi e autonomi. Uno dei più noti è “Amazon.com”, sito di commercio elettronico che utilizza un RS a fini commerciali per l’acquisto dilibri, cd, dvd ed altri oggetti. Nel sistema Amazon sono registrate informazioni relative a circa trenta milioni di utenti e decine di milioni di cataloghi relativi ai prodotti come libri, cd, DVD per cui il sistema riesce a fornire delle indicazioni davvero significative. Amazon fornisce subito una serie di risultati in base alla ricerca eseguita soltanto con le parole chiave scritte nel campo di ricerca. Il RS che utilizza Amazon si basa sugli acquisti fatti in passato dagli utenti e sulle valutazioni e giudizi dati su prodotti proposti. Inoltre, il sistema considera le preferenze espresse da utenti con gusti simili permettendo così di far emergere prodotti che potrebbero interessare l’utente G. Linden, B. Smith e J. York, «Amazon.com recommendations: Item-to-item collaborative filtering,» IEEE Internet Computing, vol. 7, n. 1, pp. 76-80, 2003. e che altrimenti sarebbe difficile da individuare. Pertanto, nella pagina web Amazon subito dopo i risultati sulle parole chiave compaiono altri risultati in aree con titoli significativi del tipo: Quali altri articoli acquistano i clienti, dopo aver visualizzato questo articolo? Chi ha acquistato questo articolo ha acquistato anche […]. Attualmente i RS sono utilizzati da una miriade di applicazioni e la loro area di ricerca si interseca con molte discipline, come la statistica, il machine learning, il data mining e l’information retrieval. 56 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Seguendo G. Adomavicius e A. Tuzhilin, «Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions,» IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol. 17, n. 6, pp. 734-749, 2005., per definire formalmente un RS si consideranol’insieme C di tutti gli utenti di un sistema e l’insieme S degli oggetti che possono essere raccomandati (S e C sono insiemi molto grandi). Sia u una funzione che misura l’utilità di un oggetto s per l’utente u, cioè: u: C x S R, dove R è un insieme totalmente ordinato (interi non negativi o numeri reali appartenenti a un determinato interavallo), allora per ogni , dobbiamo scegliere l’elemento che massimizza l’utilità per l’utente: " c �C , scI = arg max u (c, s ) sᅫ S In altre parole, l’utilità di un elemento è rappresentata dal rating che indica quanto piace un particolare elemento ad un certo utente e può essere stabilita sia dall’utente sia computata dall’applicazione G. Adomavicius e A. Tuzhilin, «Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions,» IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol. 17, n. 6, pp. 734-749, 2005.. In generale, l’insieme degli utenti C è definito dal profilo e contiene le preferenze dell’utente, mentre l’insieme S è definito dalle caratteristiche degli elementi che possono essere suggeriti. Il problema principale per i RS si presenta quando la funzione di utilità è definita in un sottoinsieme di C x S, ossia non è definita per tutte le coppie (utente/oggetto) quindi non tutti gli utenti esprimo un giudizio per tutti gli elementi. Ad esempio, consideriamo un RS di film e i film di Rocky che chiamiamo RK1, RK2, RK3, RK4 e RK5. Consideriamo poi quattro utenti denominati u1, u2, u3 e u4. Rappresentiamo il rating dato dagli utenti ai film con un valore numerico che va da 1 a 5, dove 5 è il massimo gradimento, e il simbolo “θ” rappresenta il fatto che l’utente non ha espresso alcun giudizio per quel determinato film (vedi La Tabella 2. Matrice di Utilità per un RS di filmIl sistema a partire dalle valutazioni che ha a disposizione deve predire i valori della funzione di utilità nei punti in cui non è definita. L’obiettivo di un RS è produrre una raccomandazione che può essere di due tipi E. Vozalis e K. G. Margaritis, «Analysis of recommender systems' algorithms,» in In The 6th Hellenic European Conference on Computer Mathematics & its Applications (HERCMA), Athens, Greece, 2003.: • Individual scoring: predire (stimare) il rating relativo ai valori nulli nella matrice di utilità; • Top-N recommendation: consiste in una lista di item, precisamente “N” item, che sono raccomandati all'utente. Tabella 2. Matrice di Utilità per un RS di film 57 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità RK1 RK2 RK3 RK4 RK5 U1 θ 3 4 4 θ U2 3 4 4 3 1 U3 5 θ 3 θ 1 U4 4 1 5 2 2 In base alle tecniche attraverso cui produrre la raccomandazione è possibile effettuare differenti classificazioni di RS. In letteratura i RS sono classificati nelle seguenti categorie, basandosi su come le raccomandazioni vengono costruite G. Adomavicius e A. Tuzhilin, «Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions,» IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol. 17, n. 6, pp. 734-749, 2005.M. Balabanovic e Y. Shoham, «Fab: Content-Based, Collaborative Recommendation,» Communications of the ACM, vol. 40, n. 3, pp. 66-72, 1997.B. Mustafa, M. R. J. e R. Elaine, «Explanation for Recommender System: Satisfation vs. Promotion,» University of Texas at Austin, 2004.: • Content-Based: all’utente sono suggeriti item simili a quelli da lui preferiti in passato; • Collaborative-Based: all’utente sono suggeriti item che sono piaciuti a utenti simili a lui; • Hybryd Approaches: sono combinati i due approcci precedenti. Il sistema di creazione dei suggerimenti è pensato per interagire con l’utente al fine di agevolare la sua esperienza di navigazione. In Sean M. McNee, John Riedl, Joseph A. Konstan, «Making recommendations better: an analytic model for humanrecommender interaction», Proceeding of CHI EA 2006 Extended Abstracts on Human Factors in Computing Systems, p. 1103-1108. è presentato lo studio di Human Recommendations Interaction (i.e. HRI) , ossia delle modalità con cui le persone interagiscono con i sistemi di raccomandazione, per non farli sembrare eccessivamente intrusivi e non fare rallentare la fruizione del sistema. Una rassegna delle principali metodologie di costruzione, bibliografia, sviluppi futuri è fornita in I. Guy, D. Carmel, Social recommender systems, Proceedings of the 20th international conference companion on World wide web, pp. 283--284, 2011. 58 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 2 Integrazione con Interfaccia Grafica L’integrazione dei suggerimenti nell’interfaccia grafica per l’utente va accuratamente studiata, per evitargli perdita di tempo e fastidio. Occorre discutere le seguenti problematiche: • Titolo per individuare l’area dei suggerimenti “Ti potrebbe interessare”; • Colore particolare per delimitare l’area e farla risaltare; • Numero dei suggerimenti da mostrare; • In quale parte dell’interfaccia occorre visualizzare i consigli, a esempio nel sito web o con una finestra che il browser visualizza sopra alla grafica del sito. 59 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 3 Classificazioni Gli approcci precedentemente citati, Content-Based, Collaborative-Based e Hybrid, sono universalmente riconosciuti come approcci tradizionali su cui si basano tutti i tipi di RS. Va osservato che in letteratura, oltre alle tecniche di raccomandazione, nella classificazione dei RS si possono considerare altri parametri, quali il tipo di suggerimenti proposto, il modo attraverso cui i suggerimenti vengono erogati o il loro processo di generazione. Nel processo di raccomandazione, come osservato in C. L. Huang e W. Huang, «Handling sequential pattern decay:Developing a two-stage collaborative recommender System,» Electronic Commerce Research and Applications, vol. 8, pp. 117-129, 2009., i passi attraverso cui il sistema costruisce la raccomandazione, sono essenzialmente tre: 1. Acquisizione delle preferenze dell’utente; 2. Computazione della raccomandazione utilizzando specifiche tecniche; 3. Presentazione della raccomandazione all’utente. In E. Peis, J. M. Morales-del-Castillo e J. A. D.-L. , «Semantic Recommender System. Analysis of the state of the topic,» Hipertext.net, n. 6, 2008. è presentata una classificazione di RS per il tipo di raccomandazione dove, di fianco agli approcci tradizionali, è presente la categoria “Economic Factor Based” per cui sono suggeriti gli item che possiedono il miglior rapporto qualità prezzo. In M. Chen, «Research on Recommender Technology in E-commerce Recommendation System,» In Proceeding of the 2nd International Conforence on Education Technology and Computer (ICETC), vol. 4, pp. 409-413, 2010. prendendo in considerazione il processo di generazione delle raccomandazioni è fatta la seguente classificazione: • Collaborative-Filtering: usa la similarità tra gli utenti; • Content-Based: usa la similarità tra gli item; • Mining associate rules: si basa su una regola statistiche in base a cui fissata una soglia S, se un item X è acquistato da almeno k utenti di cui almeno S comprano anche l’item Y, allora si stabilisce una regola per cui tutti a gli utenti che comprano X viene proposto anche Y. • Demography Based Filtering: la raccomandazione viene effettuata considerando delle caratteristiche demografiche contenute nel profilo dell’utente;. • Knowledge-based Filtering: il suggerimento viene creato da un’inferenza fatta sulle preferenze e necessità attraverso le conoscenze dell’utente. In Z. Tranos, S. O. Ojo2, S. M. Ngwira e K. Zuva, «A Survey of Recommender Systems Techniques, Challenges and Evaluation Metrics,» International Journal of Emerging Technology and Advanced Engineering, vol. 2, n. 11, pp. 382-386, 2012. gli autori classificano i RS in base alle tradizionali tecniche di raccomandazione in quattro categorie simili alle precedenti: • Content-Based Filtering (CBF); • Collaborative-Filtering (CF); 60 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità • Knowledge-Based Filtering (KBF); • Hybrid Filtering (HF). I sistemi Hybrid Filtering attuano una combinazione di due categorie delle tre rimanenti. In D. Asanov, «Algorithms and Methods in Recommender Systems,» Berlin Institute of Technology Berlin, Germany.M. kohar e C. Rana, «Survey Paper on Recommendation System,» (IJCSIT) International Journal of Computer Science and Information Technologies, vol. 3, n. 2, pp. 3460-3462, 2012.A. Elgohary, H. Nomir, I. Sabek, M. Samir, M. Badawy e N. A. Yousri, «Wiki-rec: A semantic-based recommendation system using wikipedia as an ontology,» 10th International Conference on Intelligent Systems Design and Applications (ISDA), pp. 1645-1470, 2010. gli autori evidenziano i nuovi approcci che si stanno facendo strada, definendo i moderni approcci di raccomandazione Context-Aware, Semantic Based, Cross-Domain Based, Peer-ToPeer e Cross-Lingual. Queste nuove tendenza nascono dal fatto che gli utenti, grazie ai sempre più tecnologici telefoni cellulari, alle reti di comunicazione sempre più veloci e ai dispositivi GPS, in qualsiasi luogo e in qualsiasi momento possono avere necessita di raccomandazioni, per esempio, che strada percorrere per raggiungere una destinazione o trovare l’hotel più vicino alla posizione corrente. Ciò ha permesso la nascita e il consolidamento di questi nuovi approcci che pur basandosi sulle tradizionali tecniche e algoritmi di RS indirizzano la ricerca e l’utilizzo dei RS in nuovi ambiti applicativi. Gli approcci Context-Aware S. Kim e J. Kwon, «Effective Context-aware Recommendation on the Semantic Web,» IJCSNS International Journal of Computer Science and Network Security, vol. 7, n. 8, pp. 154-159, 2007.S. D. A. Loizou, «Recommender systems for the Semantic Web;,» in ECAI 2006 Recommender Systems Workshop, Trento, Italy, 2006.W. Woerndl, C. Schueller e R. Wojtech, «A Hybrid Recommender System for Context-aware Recommendations of Mobile Applications,» IEEE 23rd International Conference on Data Engineering Workshop, pp. .871-878, 17-20 April 2007. riguardano le informazioni di contesto dell’utente sia sul luogo sia nelle situazioni in cui opera. Infatti, in alcune circostanze i dettagli relativi al contesto hanno un ruolo determinate nel generare un tipo di raccomandazione piuttosto che un altro. I Semantic-Based A. Elgohary, H. Nomir, I. Sabek, M. Samir, M. Badawy e N. A. Yousri, «Wiki-rec: A semantic-based recommendation system using wikipedia as an ontology,» 10th International Conference on Intelligent Systems Design and Applications (ISDA), pp. 1645-1470, 2010.S. D. A. Loizou, «Recommender systems for the Semantic Web;,» in ECAI 2006 Recommender Systems Workshop, Trento, Italy, 2006.B. Adrian, L. Sauermann e T. Roth-Berghofer, «ConTag: A Semantic Tag Recommendation System,» Proceedings of I-Semantics, pp. 297-304, 2007.M. Szomszor e e. al, «Folksonomies, the Semantic Web, and Movie Recommendation,» Proc. of the ESWC’07, pp. 71-84, 2007. sono caratterizzati dal fatto che il RS opera su una base di conoscenza aggiuntiva data dalle ontologie legate ad uno specifico dominio. Utilizzando i tag semantici associati agli item è possibile applicare le tecniche di raccomandazione considerando i tag e avere una raccomandazione con una valenza semantica. 61 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Nei sistemi Cross-Domain per costruire le raccomandazioni bisogna tenere conto di domini differenti. Gli item che vengono suggeriti appartengono a domini diversi, per ogni dominio vengono individuati degli item raccomandabili e poi in base al dominio di interesse all’utente viene suggerito l’item opportuno. Nei sistemi Peer-To-Peer A. Elgohary, H. Nomir, I. Sabek, M. Samir, M. Badawy e N. A. Yousri, «Wiki-rec: A semantic-based recommendation system using wikipedia as an ontology,» 10th International Conference on Intelligent Systems Design and Applications (ISDA), pp. 1645-1470, 2010.K. Pussep, S. Kaune, J. Flick e R. Steinmetz, «A Peer-to-Peer Recommender System with Privacy Constraints,» Complex, Intelligent and Software Intensive Systems, 2009. CISIS '09. International Conference on , pp. 409-414, 2009.P. X. B. Y. F. S. R. Han, «A scalable P2P recommender system based on distributed collaborative filtering,» Elsevier - Expert systems with applications, p. 203–210, 2004.G. Ruffo e R. Schifanella, «A peer-topeer recommender system based on spontaneous affinities,» ACM Transactions on Internet Technology (TOIT) , vol. 9, n. 1, pp. 1-34, 2009. gli approcci sono decentralizzati, ogni Peer può collegarsi ad un gruppo di interesse e ricevere raccomandazioni dagli utenti che appartengono a quel gruppo. Infine gli approcci Cross-Lingual A. Elgohary, H. Nomir, I. Sabek, M. Samir, M. Badawy e N. A. Yousri, «Wiki-rec: A semantic-based recommendation system using wikipedia as an ontology,» 10th International Conference on Intelligent Systems Design and Applications (ISDA), pp. 1645-1470, 2010.C.-Z. Yang, I.-X. Chen e P.-J. Wu, «Crosslingual news group recommendation using cluster-based cross-training,» Taiwan: Computational Linguistics and Chinese Language Processing, pp. 41-60, 2008.K. Uchiyama, «OSUSUME : Cross-lingual Recommender System for Research Papers,» ACM, pp. 39-42, 2011. consentono di ricevere delle raccomandazioni ad esempio relative ad articoli e libri superando il limite della lingua, per cui è possibile ricevere un suggerimento su prodotti la cui descrizione non è nella lingua parlata dall’utente. 3.1 Tecniche di Raccomandazione Basandosi sulle tecniche per computare la raccomandazione, esistono differenti classificazione in letteratura. Una suddivisione ampiamente riconosciuta considera le seguenti sei tecniche: • Content-Based: in tali sistemi per generare una raccomandazione sono considerati gli item, definiti dalle caratteristiche ad essi associati e il rating (valutazione) degli item fatta dall’utente. Il sistema suggerisce gli item che sono simili a quelli che gli sono piaciuti in passato R. Francesco, R. Lior, S. Bracha e P. B. Kantor, Recommender Systems Handbook, London: Springer, 2011.. Ad esempio in un RS di cd musicali, se un utente valuta positivamente cd di musica classica, allora il sistema impara a suggerire cd che appartengono a tale genere musicale; • Collaborative-Filtering: i RS riconoscono la comunanza tra gli utenti sulla base delle loro valutazioni e per un singolo utente, suggeriscono gli item che sono valutati positivamente dagli utenti simili a lui. Questa tecnica è 62 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità considerata la più diffusa ed è quella maggiormente utilizzata R. Burke, «Hybrid web recommender systems,» in The AdaptiveWeb, Berlin, Heidelberg, 2007, pp. 377-408.; • Demographic: seguendo questo approccio, gli utenti vengono classificati in base ad attributi personali e le raccomandazioni sono costruite basandosi su queste classi di utenti. Combinando le valutazioni degli utenti in ogni classe possono essere prodotte raccomandazioni per le diverse classi B. Robin, «Hybrid Recommender Systems: Survey and Experiments,» User Modeling and User-Adapted Interaction , vol. 12, n. 4, pp. 331-370, 2002.. • Knowledge-based: tali sistemi suggeriscono item basandosi sulla conoscenza, legata ad uno specifico dominio, di come certe caratteristiche degli item soddisfano le preferenze di un utente. Questi sistemi sono forniti di funzioni che stimano quanto i bisogni di un utente si avvicina alla raccomandazione R. Francesco, R. Lior, S. Bracha e P. B. Kantor, Recommender Systems Handbook, London: Springer, 2011.. • Community-Based: vengono raccomandati gli item che sono valutati positivamente dagli amici e conoscenti di un utente. Tali sistemi sono particolarmente popolari nei social network. • Hybrid: tali sistemi attuano una combinazione di due delle tecniche descritte in precedenza. Date due o più tecniche, in letteratura, sono stati proposti diversi approcci che combinano tali tecniche. 63 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 4 Approcci Content-Based Nei RS Content-Based il sistema suggerisce gli item simili a quelli preferiti dall’utente in passato. Ogni item è rappresentato da un vettore di caratteristiche o profilo di attributi dell’item. Ogni caratteristiche ha un valore numerico o testuale che rappresenta un determinato aspetto dell’item. La similarità o dissimilarità tra i vettori di caratteristiche permette di computare la somiglianza tra due item Z. Tranos, S. O. Ojo2, S. M. Ngwira e K. Zuva, «A Survey of Recommender Systems Techniques, Challenges and Evaluation Metrics,» International Journal of Emerging Technology and Advanced Engineering, vol. 2, n. 11, pp. 382-386, 2012.. Tale approccio fa uso del profilo di un utente considerando le sue preferenze e gusti, che si basano su come gli utenti valutano gli item. Nel processo di raccomandazione vengono confrontati gli item valutati positivamente con quelli non valutati e viene considerata la loro similarità o utilità D. Asanov, «Algorithms and Methods in Recommender Systems,» Berlin Institute of Technology Berlin, Germany.. Gli item valutati positivamente e che hanno un certo grado di similarità saranno suggeriti. L’utilità di s per l’utente c, è il valore u(c,s) che è stimato in base all’utilità assegnata da c ad ogni item s i S che è simile all’item s G. Adomavicius e A. Tuzhilin, «Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions,» IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol. 17, n. 6, pp. 734-749, 2005.. Inoltre, ad ogni item è associato un profilo Content(s) = {w i1, wi2,…………,wik} costituito da un insieme di attributi che caratterizzano l’item s, dove w ij è il peso del j-esimo attributo di i. Il peso di tali attributi possono essere inseriti in modo manuale (ad esempio, attraverso la presenza o meno di tag associati all’oggetto oppure può essere calcolato in modo automatico dal sistema considerando la frequenza di parole chiavi (keyword) in risorse testuali). Considerando che in generale la maggior parte degli item che devono essere suggeriti sono di tipo testuale per rappresentare gli attributi che caratterizzano gli item vengono usate keyword o Vector Space Model (VSM). Un VSM è una rappresentazione spaziale di un documento di testo R. Francesco, R. Lior, S. Bracha e P. B. Kantor, Recommender Systems Handbook, London: Springer, 2011.. In generale un documento (vettore) dj può essere rappresentato come:dj = (w1j,w2j, ……,wij,……,wmj), dove: - wij esprime l’importanza della i-esima parola nel j-esimo vettore; - l’insieme dei documenti è costituito da M parole differenti presenti in N documenti (i = 1,…,M e j = 1,…,N). A questo punto si tratta di stabilire uno schema di ponderazione, cioè un sistema di pesi che consideri le diverse importanze delle parole. Gli schemi più diffusi si basano su: 1. frequenza, dove wij = nij cioè il peso è uguale alla frequenza della parola i nel documento j; 2. frequenza normalizzata, wij = nij / max nj dove nj è la massima frequenza della parola presente in j. 64 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 3. booleano, dive wij = 1 se la parola i è presente nel documento j, 0 altrimenti; 4. TF-IDF (Term Frequency – Inverse Document Frequency), tale metodo proposto nell’ambito dell’IR (information retrivial), pone wij = nij max n j ᅲlog D Di dove D è il D numero complessivo dei documenti e i rappresenta il numero dei documenti in cui la parola i è presente. Come per gli item, anche agli utenti è associato un profilo che definiamo G. Adomavicius e A. Tuzhilin, «Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions,» IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol. 17, n. 6, pp. 734-749, 2005. ContentBasedProfile(c) = (wc1,………,wck) dove ogni peso wci denota l’importanza della keyword ki per l’utente c. In pratica, ContentBasedProfile(c) contiene i gusti e le preferenze dell’utente c. I pesi possono essere computati manualmente oppure utilizzando tecniche come l’utilizzo di un classificatore Bayesiano G. Adomavicius e A. Tuzhilin, «Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions,» IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol. 17, n. 6, pp. 734-749, 2005.. A questo punto la funzione di utilità nel caso dei sistemi Content-Based è definita u(c,s)=sim(ContnetBasedProfile(c),Content(s)), dove sia ContnetBasedProfile(c) che Content(s) sono rappresentati da vettori TF-IDF r r wc e ws . di keyword pesati Per calcolare la distanza tra i due vettori si possono usare diverse euristiche come la metrica euclidea o come di seguito utilizzata, la cosine similarity (similarità del coseno), per cui abbiamo r r r r wc gws u (c, s ) = cos(wc , ws ) = r r = wc 2 ᄡ ws 2 k r r ¥i=1 wi,c wi,s k k �i=1 wi2,c �i=1 wi2,s dove k è il numero totale di keyword. Questo approccio garantisce l’indipendenza utente, poiché sono utilizzate solo valutazioni fatte da un utente attivo per costruire il proprio profilo R. Francesco, R. Lior, S. Bracha e P. B. Kantor, Recommender Systems Handbook, London: Springer, 2011.. Un altro vantaggio è la trasparenza, in quanto l’attendibilità di una raccomandazione è riscontrabile immediatamente confrontando le caratteristiche degli elementi desiderati con le caratteristiche degli elementi generati nella lista di raccomandazione. Un ultimo vantaggio lo si ha nel caso di un nuovo item poiché tale approccio consente di raccomandare item non ancora valutati dagli utenti. Trai gli svantaggi ci sono: • La Limited Content Analisys, che descrive la limitatezza di tali tecniche nel considerare solo caratteristiche esplicite inoltre, se un item è descritto con le 65 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità stesse caratteristiche, c’è la possibilità che siano indistinguibili G. Adomavicius e A. Tuzhilin, «Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions,» IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol. 17, n. 6, pp. 734-749, 2005.; • L’Overspecialization, che consiste nel fatto che l’utente può subire delle limitazioni riguardo i suggerimenti che riceve, quando, dato un profilo il sistema suggerisce l’item che ha il rating più alto • il problema degli utenti nuovi, per i quali non si hanno informazioni. Infatti, per avere dei suggerimenti accettabili è necessario che l’utente valuti prima un certo numero di item per far si che il sistema comprenda realmente le preferenze di un utente. 66 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 5 Approcci Collaborative-Based I RS che seguono tale approccio raccomandano gli item che sono piaciuti agli utenti che hanno gusti simili cui deve essere dato il suggerimento. L’idea di base è che se due utenti valutano allo stesso modo più item allora essi hanno gusti simili D. Asanov, «Algorithms and Methods in Recommender Systems,» Berlin Institute of Technology Berlin, Germany.. Inoltre, tali approcci si basano sull’idea che le preferenze non cambiano nel tempo J. S. Lee, Survey of Recommender Systems (Collaborative Filtering) - Lecture Notes, California Polytechnic State University - San Luis Obispo, 2013.. Gli utenti che valutano allo stesso modo gli item formano un gruppo chiamato neighborhood (intorno). Quindi, un utente riceve come raccomandazione gli item che sono stati valutati positivamente dagli utenti che appartengono all’intorno D. Asanov, «Algorithms and Methods in Recommender Systems,» Berlin Institute of Technology Berlin, Germany.. Formalmente come definito in G. Adomavicius e A. Tuzhilin, «Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions,» IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol. 17, n. 6, pp. 734-749, 2005. la funzione di utilità u(c,s) di un item s per l’utente c è stimata basandosi sull’utilità u(c j,s) di s per tutti gli utenti simili a c cioè " cj ᅫ C . Gli algoritmi utilizzati dai RS Collaborative-Based possono essere raggruppati in due categorie J. Breese, D. Heckerman e C. Kadie, «Empirical Analysis of Predictive Algorithms for Collaborative Filtering,» in Proc. 14th Conf. Uncertainty in Artificial Intelligence, 1998.: • Memory-Based (heuristic-based); • Model-Based. 5.1 Memory-Based Gli algoritmi Memory-Based necessitano che i dati relativi alle valutazioni, item e utenti siano memorizzati in un database. Ogni utente fa parte di un gruppo di persone che hanno gusti simili. Sia C’ l’insieme di tali utenti, possiamo esprimere la predizione f del valore della valutazione di s per c come “aggregazione” (funzione ) delle valutazioni di altri utenti (solitamente un numero N: 1≤N<|C|) per lo stesso oggetto s: uc,s = f uc ',s c 'ᅫ C ' , dove C’ è l’insieme degli N utenti che sono più simili all’utente c e che hanno valutato s. 67 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità In base al metodo di aggregazione si possono distinguere diverse classi di algoritmi. In G. Adomavicius e A. Tuzhilin, «Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions,» IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol. 17, n. 6, pp. 734749, 2005. sono riportati alcuni esempi di funzioni di aggregazione: uc,s = k ¥uc ',s c 'ᅫ C ' uc,s = k ¥sim(c, c ') ᄡ uc ',s c 'ᅫ C ' uc,s = u c + k ¥sim(c, c ') ᄡ (uc ',s - u c ' ) c 'ᅫ C ' dove: • la funzione Sim(c,c’) rappresenta il grado di similitudine tra l’utente c e c’ (tale similitudine verrà definita formalmente nel seguito); • k è un fattore di normalizzazione: k= 1 ¥sim(c, c ') c 'ᅫ C • ; u c è la valutazione o utilità media dell’utente c, definita come: uc = 1 Sc ¥uc,s sᅫ Sc e dove SC è l’insieme di tutti gli elementi valutati da c, cioè S C ={s ∈ S | uc,s ≠ ∅}. Con l’approccio Memory-Based gli algoritmi più diffusi sono User-Based e Item-Based: 68 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità • User-Based - Con tale algoritmo la predizione di quanto un item possa piacere ad un utente i è fatta sulla base delle valutazioni fatte per l’item da utenti simili a c. L’aggregazione delle valutazioni o rating fatte dagli utenti C’ è solitamente calcolata come media pesata delle valutazioni sulla somiglianza tra gli utenti che l’hanno espressa e cioè Errore: sorgente del riferimento non trovata la quale esplicitando il valore k la possiamo riscrivere come: uc, s = sim(c, c ') ᄡ uc ',s sim(c, c ') ¥ c 'ᅫ C ' dove Sim(c,c’) è il grado di similitudine tra l’utente c e c’, tale misura è utilizzata come peso, più c e c’ sono simili, maggiore è il peso di u c’,s nella predizione di u c,s. I due approcci maggiormente usati per calcolare la similarità sono la Pearson Correlation (Correlazione di Pearson) e la Cosine Similarity (Similarità del coseno) G. Adomavicius e A. Tuzhilin, «Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions,» IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol. 17, n. 6, pp. 734-749, 2005.. Questi algoritmi raccomandando gli item basandosi sulla similarità tra utenti fornendo dei suggerimenti molto accurati. Nonostante ciò non sono esenti da problemi, il primo è l’ampiezza dei dati cioè quando il sistema ha un gran numero di oggetti e di utenti. Ciò significa che le preferenze degli utenti non sono espresse per tutti gli oggetti e quindi la funzione di utilità è definita su un sottoinsieme di (C x S), ciò rende problematico correlare gli utenti e quindi si corre il rischio di generare delle raccomandazioni che non hanno sufficiente accuratezza. Un altro problema è quello del cold start problem, cioè il problema della partenza a freddo chesi verifica quando un nuovo utente si registra al sistema e non ha effettuato alcuna valutazione, di conseguenza è difficile individuare utenti simili. Infine,un altro importante problema lo si ha con gli oggetti più popolari che sono maggiormente preferiti dagli utenti che tendono a valutarlo positivamente. In tal caso si corre il rischio che il sistema tende a raccomandare tale oggetto per tutti gli utenti. • Item-Based – Tali algoritmi sono una variazione degli User-Based, in quanto invece di costruire la predizione basandosi sulla somiglianza tra utenti considerano la somiglianza tra gli item. Le similitudini tra item sono estrapolate dalle interazioni pesate con il sistema. Tali algoritmi nascono dal bisogno, in alcuni sistemi, di fare delle raccomandazioni rapide a coloro che si sono registrati da poco tempo. In questo caso la funzione u(c,s) è calcolata come funzione di aggregazione d’utilità espressa da c per oggetti simili a s: uc,s = sim( s, s ') ᄡ uc,s ' sim( s, s ') ¥ s 'ᅫ S ' , dove S’ è l’insieme degli m item ritenuti più simili a s (1 ≤ m < |S|). In sostanza è usata la funzione di aggregazione Errore: sorgente del riferimento non trovata come la media delle valutazioni date da c agli s’ ∈ S’ pesata sul grado di 69 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità similitudine tra gli item che l’hanno espressa. Come nel caso User-Based, ad ogni item ur w = ( w ,....., w ) in i cui elementi, laddove i1 è fatto corrispondere un vettore di profilo definiti, sono i valori di u(c k,s) con ck∈C’ insieme degli utenti per i quali è definita la funzione u per l’oggetto s. Come nel caso User-Based possiamo utilizzare la similitudine del coseno o la correlazione di Pearson per calcolare la similarità degli item. Un indubbio vantaggio di tale algoritmo è che consente accurate raccomandazioni anche ad utenti che hanno valutato un solo oggetto, per cui consente delle buone prestazioni in sistemi con molti utenti e oggetti. Per il resto le limitazioni sono le stesse dell’algoritmo User-Based anche se qui viene risolto il problema del nuovo utente, ma presenta il problema del nuovo item cioè un oggetto che viene inserito per la prima volt e su cui non è stata effettua alcuna valutazione. Va osservato che con entrambi gli algoritmi, utilizzando la funzione di aggregazione (1.5), è possibile utilizzare differenti scale di valutazione, in tal caso i valori vanno normalizzati utilizzando un fattore k (1.6). Una tecnica che può essere applicata agli algoritmi User-Based e Item-Based è la TopN Recommendation X. Su e T. M. Khoshgoftaar, «A Survey of Collaborative Filtering Techniques,» Advances in Artificial Intelligence, vol. 2009, n. doi:10.1155/2009/421425, pp. Article ID 421425, 19 pages, 2009. tale approccio consiste nel raccomandare un insieme degli N oggetti maggiormente valutati e che saranno di interesse per un certo utente. La tecnica consiste nell’analizzare la matrice degli utenti/item per individuare la relazione tra utenti e item e calcolare la raccomandazione. Per un approfondimento si rimanda a X. Su e T. M. Khoshgoftaar, «A Survey of Collaborative Filtering Techniques,» Advances in Artificial Intelligence, vol. 2009, n. doi:10.1155/2009/421425, pp. Article ID 421425, 19 pages, 2009.. 5.2 Model-Based Gli approcci Model-Based usano le informazioni sulle valutazioni memorizzate nel sistema per “apprendere” un modello statistico attraverso la stima parametrica delle valutazioni e in base a tale modello effettuare delle previsioni. Un approccio tipico G. Adomavicius e A. Tuzhilin, «Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions,» IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol. 17, n. 6, pp. 734-749, 2005. consiste nel calcolare la valutazione n uc,s = E (uc,s ) = ¥ix(uc ,s = i | uc,s ' , s ' ᅫ Sc ) i =0 (1.15) dove il valore della valutazione va da 0 a n. Il valore di probabilità esprime la probabilità che c darà un certo valore a un certo s dati i voti degli item precedentemente valutati da c. Per stimare la probabilità si possono usare metodi probabilistici come il clustering e le reti Bayesiane. In generale, in letteratura esistono una serie di modelli statistici, algoritmi per stimare i parametri, algoritmi di clustering, modelli Bayesiani, modelli di regressione lineare, ecc. G. 70 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Adomavicius e A. Tuzhilin, «Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions,» IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol. 17, n. 6, pp. 734-749, 2005.M. kohar e C. Rana, «Survey Paper on Recommendation System,» (IJCSIT) International Journal of Computer Science and Information Technologies, vol. 3, n. 2, pp. 3460-3462, 2012.. Negli ultimi anni stanno emergendo approcci basati su modelli con fattore latenti e in particolare fattorizzazioni di matrici R. Francesco, R. Lior, S. Bracha e P. B. Kantor, Recommender Systems Handbook, London: Springer, 2011.P. Melville e V. Sindhwani, Encyclopedia of Machine Learning, Springer, 2010.Y. Koren, R. Bell e C. Volinsky, «MATRIX FACTORIZATION TECHNIQUES FOR RECOMMENDER SYSTEMS,» IEEE COMPUTER, vol. 42, n. 8, pp. 30-37, 2009.. Questi modelli non usano approcci statistici e assumono che la similarità tra utenti e item sia indotta simultaneamente da strutture dati sottodimensionate implicitamente presenti nei dati. Per un approfondimento sui metodi statistici si rimanda a M. kohar e C. Rana, «Survey Paper on Recommendation System,» (IJCSIT) International Journal of Computer Science and Information Technologies, vol. 3, n. 2, pp. 3460-3462, 2012., mentre per la fattorizzazione di matrici a R. Francesco, R. Lior, S. Bracha e P. B. Kantor, Recommender Systems Handbook, London: Springer, 2011.Y. Koren, R. Bell e C. Volinsky, «MATRIX FACTORIZATION TECHNIQUES FOR RECOMMENDER SYSTEMS,» IEEE COMPUTER, vol. 42, n. 8, pp. 30-37, 2009.. La fondamentale differenza con i modelli Memory-Based è che le tecniche ModelBased computano la predizione dell’utilità basandosi su modelli appresi dai dati usando tecniche statistiche e di Machine Learning G. Adomavicius e A. Tuzhilin, «Toward the Next Generation of Recommender Systems: A Survey of the State-ofthe-Art and Possible Extensions,» IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol. 17, n. 6, pp. 734-749, 2005.. In generale gli algoritmi ModelBased forniscono risultati molto accurati, anche se presentano gli stessi problemi degli algoritmi Memory-Based come il cold start problem e la sparsità dei dati. Infatti, se i dati a disposizione sono pochi e sparsi è difficile costruire un modello che possa portare a predizioni accurate. 71 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 6 Approcci Hybrid Tipicamente gli approcci ibridi combinano tecniche di Collaborative-Filtering (i.e., CF) con tecniche Content-Based (i.e., CB) per costruire le raccomandazioni. Possono lavorare insieme ed essere ibridizzate anche due tecniche dello stesso tipo, ad esempio due tecniche di raccomandazione CB. Inoltre sia l’approccio CB sia CF possono essere combinati con altri tipi di tecniche per ottenere un RS ibrido. L’approccio ibrido nasce dall’esigenza di superare le limitazioni che gli approcci analizzati singolarmente presentano. Le tecniche CB presentano il problema dello start-up per cui necessitano di sufficienti informazioni per costruire un classificatore o aggregazione di utenti che sia consistente. Vista, inoltre, l’importanza che hanno le informazioni testuali, le tecniche CB possono essere un limite nei casi in cui è difficile estrarre tali informazioni, mentre le tecniche di CF sono in grado di costruire raccomandazioni senza alcuna informazione testuale M. kohar e C. Rana, «Survey Paper on Recommendation System,» (IJCSIT) International Journal of Computer Science and Information Technologies, vol. 3, n. 2, pp. 3460-3462, 2012.. In letteratura sono state fatte diverse classificazioni riguardo gli approcci ibridi, tra cui: • Hybrid Recommender Incorporating CF e CB Feature: tali sistemi incorporano sia caratteristiche CF sia CB, ad esempio un sistema in cui non tutti gli utenti hanno valutato tutti gli item, può essere utilizzata una tecnica CB per predire le valutazioni non fatte e poi usare algoritmi CF per computare la raccomandazione; • Hybrid Recommenders Combining CF e altre tecniche di RS: questi sistemi combinano diverse tecniche attraverso i loro risultati. A questa categoria appartengono i “RS Ibridi Pesati” che danno come risultato una combinazione dei risultati di una tecnica CF e un’altra qualsiasi tecnica di raccomandazione e i “switching hybrid recommender” che cambiano diverse tecniche di raccomandazione usando come criteri il livello di confidenza con la tecnica; • Hybrid Recommenders Combining CF Algorithms: consiste nel combinare due principali approcci Memory-Based e Model-Based. La loro combinazione risulta in genere migliore dei singoli approcci presi singolarmente. In G. Adomavicius e A. Tuzhilin, «Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions,» IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol. 17, n. 6, pp. 734749, 2005. viene proposta la seguente classificazione: • Combining Separate Recommender: vengono utilizzati separatamente metodi collaborativi e content-based e poi vengono combinate le predizioni; • Adding Content-Based Characteristic to Collaborative Models: queste tecniche consistono nell’utilizzare tecniche di CF, ma per gli utenti vengono utilizzati profili CB; • Adding Collaborative Characteristic to Content-Based Models: si tratta di tecniche Content-Based che però usano tecniche CF per ridurre le dimensioni di un gruppo di profili Content-Based; 72 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità • Developing a Single Unifying Recommendation Model: si tratta di costruire un unico modello che incorpora al suo interno caratteristiche sia CF sia CB. Infine citiamo lo studio di Burke che in R. Burke, «Hybrid web recommender systems,» in The AdaptiveWeb, Berlin, Heidelberg, 2007, pp. 377-408.R. Burke, «Hybrid Recommender Systems: Survey and Experiments,» UMUAI, vol. 12, n. 4, pp. 331-370, 2002. ha delineato in modo dettagliato le tipologie di RS ibridi. Burke identifica sette principali tipi di ibridazione che di seguito riportiamo sommariamente: 1. Weighted: lo score dell’item raccomandato è computato come combinazione numerica dei risultati delle tecniche di raccomandazione presenti nel sistema; 2. Switching: questa tecnica consente di scegliere delle tecniche di raccomandazione in base a determinate condizioni, ad esempio in base al profilo può essere utilizzata una tecnica piuttosto che un’altra. Il criterio che permette di scegliere una tecnica piuttosto che l’altra in genere viene fissato ponendo una soglia di confidenza associata all’item; 3. Mixed: questo tipo di tecnica è utile nelle situazioni in cui è necessario avere simultaneamente più tipi di raccomandazioni. Le raccomandazioni che derivano da diverse tecniche sono presentate insieme; 4. Feature Combination: questo metodo di fusione di tecniche CF e CB consiste nel trattare le informazioni del CF come delle semplici informazioni aggiuntive e utilizzare poi le tecniche CB su tale insieme di dati aumentato; 5. Feature Augmentation: questa tecnica simile alla precedente consiste nell’evidenziare e valutare attraverso una tecnica di RS caratteristiche degli item. Queste nuove caratteristiche sono poi prese in considerazione per effettuare la raccomandazione attraverso una tecnica di RS differente; 6. Cascade: con questo metodo viene utilizzato un approccio per produrre una graduatoria di possibili raccomandazioni candidate e su di esse viene applicata la seconda tecnica; 7. Meta-level: quest’ultimo modo di combinare due tecniche di RS consiste nell’utilizzare una tecnica per apprendere un modello e dare in input tale modello all’atra tecnica. A differenza delle Feature Combination in cui sono generate delle nuove caratteristiche da in input al secondo algoritmo, in questo caso si da in input al secondo algoritmo l’intero modello. 73 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 7 Cold start problem Il termine “Cold start” indica la partenza a freddo di un sistema per poi proseguire a pieno regime. Nell’ambito di un RS, il Cold start problem indica la situazione in cui si vuole generare una raccomandazione per un nuovo utente, ma non è possibile crearla perché: non si hanno informazioni sui suoi comportamenti precedenti, sono stati generati nuovi materiali ancora non visitati o raccomandati da altri utenti. Questa problematica è stata citata nei paragrafi Errore: sorgente del riferimento non trovata “Errore: sorgente del riferimento non trovata”, in relazione alla creazione iniziale del profilo utente 53, e , in relazione alla descrizione dell’algoritmo User-Based 59. Per affrontare questa problematica viene usato un approccio ibrido. 7.1 Cold start problem per nuovi materiali I sistemi tradizionali si basano su valutazioni di un elemento grazie ai voti ottenuti da un numero consistente di utenti che li hanno precedentemente utilizzati. Quando arriva un materiale mai visto precedentemente, un CF non sarà in grado di raccomandarlo finché non verrà affrontato da un numero sufficiente di utenti. Si può risolvere con questi approcci: la prima persona che accetta la raccomandazione sul nuovo elemento ottiene un beneficio per avere eseguito la prima raccomandazione, si cercano similitudini con altri materiali già raccomandati e il materiale nuovo viene subito suggerito dal sistema per spingerne l’uso al posto degli altri materiali già noti. In 171 si propone combinare CF e CB usando modello probabilistico basato su expectation maximization (EM), vengono eseguiti test su un database di film. 7.2 Cold start problem per nuovi utenti Indicato anche come “New user problem”, indica la difficoltà di fornire raccomandazioni a un utente appena iscritto, per cui non si ha nessuna sua informazione utile per fare RS. L’uso di CF basato su utenti simili può dare le prime risposte, altre informazioni possono provenire dall’analisi dei suoi comportamenti all’interno del sistema. In caso di utilizzo dei social network, molte informazioni possono provenire dalla lettura dei dati che l’utente ha scritto nel suo profilo personale di un social network, se vengono concessi i relativi permessi sulla privacy e se tale profilo ha informazioni sufficienti. Si può aumentare l'impegno della persona attraverso un intervento precoce di RS, con cui aumentare l'interazione degli iscritti attraverso la creazione di raccomandazioni per i nuovi utenti durante il loro processo di iscrizione 172. Si possono conoscere i nuovi utenti attraverso tecniche per selezionare una sequenza di materiale da presentare al nuovo utente per un suo voto. Le tecniche includono l'uso di teoria dell'informazione per selezionare gli elementi che daranno il massimo valore per il sistema di raccomandazione, statistiche aggregate per selezionare gli elementi di cui è più probabile avere un parere in merito dagli utenti, tecniche personalizzate che prevedono su quali elementi l’utente avrà un parere 173. Usando tecniche di gamification, si possono proporre piccoli giochi come: questionari, riconoscimento oggetti, creare associazioni di oggetti, tagliare una parte di oggetto che interessa per identificare una parte rispetto al tutto. Bisogna considerare che queste attività richiedono tempo e una certa praticità con l’uso dell’interfaccia grafica 74 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità che deve essere spiegata prima dell’uso. Un utente che ha fretta di cominciare a usare il servizio potrebbe rispondere a caso in questa delicata fase per terminarla subito, falsificando in tal modo le informazioni fornite e la successiva fase di raccomandazione avrà alta probabilità di generare errori. 75 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 8 Importanza dell’evoluzione temporale Un RS è un sistema dinamico perché le informazioni contenute cambiano nel tempo, anche in maniera significati, come può accadere nel caso dell’arrivo o uscita di materiali o utenti, l’utente può cambiare le sue tipologie di interesse. Usare modelli di decadenza nel tempo può portare a perdita di informazioni utili. Nei sistemi denominati Temporal CF permettono di monitorare le variazioni nel tempo delle preferenze dei clienti per i prodotti, per individuare le preferenze più stabili nel lungo periodo Koren Y. Collaborative filtering with temporal dynamics. Proc. KDD ’09 , 447456.. 76 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 9 Importanza della serendipità Il termine serendipità indica la sensazione che si prova quando si scopre una cosa non cercata e imprevista mentre se ne sta cercando un'altra. Nell’ambito di un RS la serendipità si esprime nel fornire una raccomandazione inattesa, non generata strettamente in base a CB, CF e altri approcci. Per generare delle raccomandazioni sorprendenti, in grado di attirare curiosità o di scoprire qualcosa di inatteso, occorre usare delle euristiche Iaquinta, L.; de Gemmis, M.; Lops, P.; Semeraro, G.; Filannino, M.; Molino, P., "Introducing Serendipity in a ContentBased Recommender System," Hybrid Intelligent Systems, 2008. HIS '08. Eighth International Conference on , vol., no., pp.168,173, 10-12 Sept. 2008. per mitigare il problema della eccessiva specializzazione delle raccomandazioni, oppure creare una fusione Kenta Oku, Fusion-based Recommender System for Improving Serendipity, ACM RecSys 2011 Workshop on Novelty and Diversity in Recommender Systems, p.19-26. delle raccomandazioni fornite e degli interessi ricavati dai profili dell’utente. 77 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 10 Mobile Recommender System L’ampia disponibilità e le caratteristiche tecnologiche dei dispositivi mobile permette di offrire anche in questi contesti l’esperienza di uso del RS tramite le applicazioni software che vi vengono installate. Viene, pertanto, a crearsi la specializzazione denominata Mobile RS con le seguenti caratteristiche da considerare in fase di progettazione: • Risorse computazionali ridotte rispetto al computer, in termini di capacità di memoria, di velocità di calcolo, di capacità del collegamento alla rete internet.In tal caso, occorre decidere se l’elaborazione avviene nel dispositivo mobile o tramite uno scambio di informazioni presso un server esterno; • Superficie visiva del display ridotta rispetto a un monitor di un computer, che permette di mostrare pochissimi suggerimenti nell’ambito di una interfaccia che deve mostrare molte informazioni con diversi significato e obiettivo; • Interazione tramite display touchscreen e pochi pulsanti, rispetto all’uso di mouse e tastiera di un computer, che complica le operazioni per accettare, rifiutare, chiedere altri consigli; • Disponibilità di informazioni accurate sulla posizione geografica del dispositivo tramite gli apparati di geolocalizzazione, con cui è possibile fornire ulteriori tipologie di consigli. I suggerimenti possono essere forniti in base a specifiche richieste dell’utente oppure proposti in automatico. Si distinguono tre tipi: • Pull information model: per ricevere il suggerimento l’utente deve eseguire esplicitamente una ricerca, inserendo i parametri necessari per trovare cosa desidera; • Push information model: l’utente riceve i suggerimenti in base alle informazioni contenute nel suo profilo senza eseguire nessuna operazione esplicita; • Hybrid: combinazione dei due modelli precedenti. Nell’ambito del sistema mobile, si può considerare l’utilità del modello Push, perché la scrittura dei parametri necessari per la ricerca può essere complicata a causa della mancanza di tastiera e mouse tradizionali, oltre ai tempi necessari per spedirla a un server ed ottenere una risposta.In letteratura esistono varie ricerche con particolare riferimento al settore turistico, per offrire uno strumento utile al turista intenzionato a esplorare un territorio sconosciuto. Nell'articolo Gamal, H. (2010). Enhanced K-means-Based Mobile Recommender System. The International Journal of Information Studies, Vol. 2, N. 2, p. 71-80 viene descritta la creazione di un RS per facilitare gli utenti nella ricerca di prodotti all'interno di un negozio. Viene suggerito di installare un'applicazione installata sul dispositivo mobile che scambia informazioni con un'architettura client-server tramite connessione wireless, vengono analizzati alcuni scenari di uso. Modsching in Modsching M. et al. (2007). Effectiveness of Mobile Recommender Systems for Tourist Destinations: A User Evaluation. Proceedings of the 4th IEEE 78 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Workshop on Intelligent Data Acquisition and Advanced Computing Systems (IDAACS 2007). descrive i risultati di un esperimento condotto in Gorlitz (Germania) su un campione di 421 turisti suddivisi in tre gruppi. Al primo gruppo (Planner) è stato fornito un sistema proattivo in grado di fornire percorsi personalizzati, al secondo gruppo (Explorer) è stato consegnato un sistema pull per ricevere informazioni a richiesta basate sul contesto, al terzo gruppo (Logger) è stato dato un navigatore GPS tradizionale. Come risultato dell’esperimento, si fa notare che i Planner e gli Explorer hanno espresso un alto gradimento per i suggerimenti ricevuti, paragonando l'esperienza a quella condotta in un tour guidato. Inoltre, i primi gruppi hanno impiegato meno della metà del tempo rispetto agli utiizzatori di GPS per vedere il quadruplo delle località turistiche. La metodologia esposta può essere utile per costruire un sistema di valutazione dell’esperienza di uso del Mobile RS proposto. Le caratteristiche e le operazioni richieste dall'interfaccia utente da usare nell'ambito mobile devono essere ripetute nel contesto di un Mobile RS, per mappare le funzioni a una serie di gesti da compiere sul display per gestire le raccomandazioni. In tal modo si riduce all’utente lo sforzo cognitivo per adattarsi al sistema che ancora non conosce. In Wörndl, W., Jan Weicker, W., Lamche B. (2013). Selecting Gestural User Interaction Patterns for Recommender Applications on Smartphones. Proceedings of the Decisions@RecSys workshop, 7th ACM Conference on Recommender Systems, Hong Kong, China. viene proposta una metodologia per valutare l’efficacia della gestualità suggerita. Come esempio di uso in ambito non profit per creare solidarietà, il lavoro Ghisloti De Souza R. (2010). Open Source Recommendation Systems for Mobile Application, ACM RecSys 2010 Workshop on the Practical Use of Recommender Systems, Algorithms and Technologies. descrive il progetto SoliMobile, in cui le persone in condizioni di vita precaria e instabile possono cercare tramite il dispositivo mobile aiuti, servizi, lavori, ospitalità, cure mediche. Basato su framework Apache Mahout per analizzare il profilo e la navigazione delle persone interessate. Nell'articolo Cena, F., Console, L., Gena, C., Goy, A., Levi, G., Modeo, S.,Torre, I. (2006). Integrating heterogeneous adaptation techniques to build a flexible and usable mobile tourist guide. AI Communications, 19(4):369-384. viene proposta la creazione di una guida turistica da fornire anche su mobile, in grado di adattarsi alle preferenze dell'utente, contesto dell'interazione; viene descritta l'architettura del prototipo e il flusso delle operazioni per combinare gli interessi e le caratteristiche del dispositivo usato al fine di selezionare i consigli. L'approccio all'integrazione di un Recommender System nel dispositivo mobile si può meglio analizzare analizzando alcune applicazioni disponibili, nei servizi offerti e nell'interfaccia grafica offerta. AppAware Girardello, A., Michahelles, F. (2010). AppAware: Which Mobile Applications Are Hot? Proceedings of the 12th International conference on Human Computer Interaction with mobile Devices and Services si propone di aiutare gli utenti a scoprire applicazioni per mobile facendo uso di contesto (localizzazione) per la produzione di raccomandazioni. AppAware fornisce all'utente un flusso continuo di applicazioni relative a eventi come: installa, disinstalla, aggiornamenti. In tal modo intende rendere l'utente consapevole di ciò che le altre persone stanno facendo intorno a lui. Il 79 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità principale gruppo di utenti è composto da viaggiatori frequenti interessati a scoprire applicazioni utili alla loro specifica posizione geografica. Il sistema non usa le tecniche di raccomandazione comuni, le raccomandazioni sono basate unicamente sulla posizione dell'utente e uso di applicazioni in prossimità della sua posizione. AppStore da Apple è il servizio ufficiale per scaricare le applicazioni per l'iPhone. L'utente può sfogliare le applicazioni iPhone per categoria, da un elenco di applicazioni caratterizzato con quelle più scaricate, ricerca di applicazioni. AppStore è disponibile anche con un motore di raccomandazione chiamato Genius che spiega ogni raccomandazione con un breve messaggio. AppSpace supporta diverse piattaforme mobile ed è un servizio web che raccomanda applicazioni per l'utente. In base alle applicazioni installate e al giudizio fornito, AppSpace raccomanda le applicazioni che potrebbero piacere all'utente. Un grave inconveniente di AppSpace è che l'utente deve informare esplicitamente il sistema delle sue preferenze, come le applicazioni installate. Una buona caratteristica è espressa dall'uso di liste, che possono essere create e nominate. Le applicazioni possono essere collocati in qualsiasi numero di liste, per riferimento o come archivio. Questo potrebbe essere molto utile in un contesto mobile per dare possibilità agli utenti di salvare le applicazioni per poi considerare in un archivio. Le Liste possono anche essere un modo per ottenere di più metadati relativi a un'applicazione, collocare l'applicazione ina lista può essere visto come il porre un tag, taggare l'applicazione con il nome della lista. 80 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 11 Valutazione delle prestazioni Lo studio dei sistemi di raccomandazione dipende in grandissima parte dalla buona qualità dei risultati che si ottengono: il fine ultimo, infatti, è quello di fornire suggerimenti all'utente per una migliore fruizione dei percorsi culturali proposti. Se i suggerimenti risultano essere adeguati, quindi l'utente dà fiducia al sistema, si incrementeranno la quantità di luoghi visitati e la soddisfazione generale. Se invece l'utente si accorge che le raccomandazioni fornite non risultano essere attendibili, si creerà un'insoddisfazione nei confronti del sistema, e di conseguenza diminuirà il numero dei luoghi visitati. Una prima fase della valutazione avviene durante la fase di creazione del sistema, per capire se occorre modificare qualcosa al fine di migliorarne le prestazioni. In questa fase si ricorre a utenti di prova. Quando il sistema verrà messo online si effettua un controllo costante delle prestazioni ottenute con utenti reali. 11.1 Metodologie numeriche Le metodologie numeriche sono quelle che esprimono la valutazione mediante numeri. Per capire se un algoritmo raccomanda in modo adeguato occorre usare metodologie che generano un metro di valutazione per ogni singolo test. Alcune metodologie da considerare, in ordine crescente di complessità, sono: • Hold Out: consiste in una semplice forma di test ottenuto prendendo il 3% del dataset (insieme dei dati usati per costruire il sistema) e facendola diventare il TestSet di valutazione, mentre la restante parte forma il TrainSet con cui viene costruito il sistema. Questo approccio è inefficiente, in quanto all'interno della percentuale usata come TestSet si possono presentare eccezioni o casi particolari che sarebbero utili nella fase di TrainSet per creare un sistema più efficiente. Per ridurre questo problema, invece della scelta casuale degli elementi si potrebbe prendere il TrainSet in modo da coprire tutti i casi più importanti, si potrebbero scegliere gli utenti in modo da considerare almeno quelli che hanno fornito indicazioni più utili. Pertanto, questa viene utilizzata se si vuole una stima rapida (seppur imprecisa) del tutto, per poi affidarsi ad altri metodi più esaustivi ma complessi dal punto di vista computazionale; • K-Fold Cross Validation: questa tipologia di test consiste nello stimare l'adabilità di un'analisi in base a un campione indipendente. Il dataset viene suddiviso casualmente in K parti con la stessa cardinalità. Una alla volta queste parti diventano il campione di validazione, mentre le restanti K-1 sono il campione di training. Questo procedimento viene ripetuto K volte in modo che tutte le parti diventino, una alla volta, campione di validazione. Durante la validazione di una parte, le altre servono per il TrainSet di creazione del modello. Questa validazione viene realizzata analizzando un singolo campione del TestSet alla volta, con un meccanismo chiamato Leave One Out. Il modello è già stato creato e si usa sempre quello. I risultati ottenuti dopo tutti i campionamenti vengono riuniti per generare un unico risultato da cui ricavare stima cercata. Il vantaggio di questo metodo, perciò, consiste nel fatto che ogni parte del dataset partecipa alla validazione e al training, in modo da evitare di 81 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità non trattare casi particolari e superare il difetto del metodo precedente. In genere, il valore di K è pari a 10. • Leave One Out Cross Validation: Un caso particolare del metodo esaminato prima consiste nel Leave One Out, dove si assegna a K il valore della cardinalità (numero di elementi presenti) del dataset. Viene testato un solo valore alla volta, usando tutti gli altri per il training. Questa validazione è migliore di quella precedente, in quanto si riesce a indicare con maggiore precisione se esistono dei casi per cui l'algoritmo sbaglia fornendo raccomandazioni errate. Dal punto di vista computazionale questo approccio è molto più pesante dei precedenti, in quanto il modello deve essere ricreato molte più volte rispetto al semplice KFold, quindi conviene usarlo solamente per problemi di piccole dimensioni. Queste metodologie vengono applicate nella fase iniziale di sperimentazione e durante l’interazione con l’utente. 11.2 Metriche Dopo aver esaminato le varie tipologie di test, occorre illustrare come valutare un algoritmo e quali metriche possono esprimere un giudizio sulla convenienza dell’uso in relazione ai risultati che genera. Le metriche necessarie richiedono una scala (relativa o assoluta) di valori da un minimo a un massimo, il valore espresso indica un giudizio su quanto è stato valutato dal test, in modo da riuscire a classificare in modo semplice e rapido i vari algoritmi. Le metriche più utili sono classificabili in: 1. Metriche di errore; 2. Metriche di classificazione. Metriche di errore Servono normalmente per valutare la predizione di un rating. Il campo normale di utilizzo sono i rating espliciti, in quanto viene valutata la distanza tra la predizione e il valore vero. Possono essere anche utilizzate in presenza di valutazioni implicite, ma in questo modo non riescono ad avere tutta la potenza di espressione che hanno nel caso di rating espliciti). Non sono molto utilizzate in quanto gli algoritmi correttivi influiscono solamente sulla posizione nella classica ritornata dalla fase di raccomandazione, e non sulla valutazione stessa. Il calcolo esplicito dell’errore varia a seconda della grandezza che si vuole considerare. Ad esempio: • Mean Absolute Error (MAE): errore Medio Assoluto, rappresenta la distanza media tra il valore predetto e quello reale. Questa distanza è calcolata in valore assoluto tramite: 82 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità • Mean Squared Error (MSE): errore Quadratico Medio, rappresenta la differenza quadratica media tra i valori osservati e i valori attesi. Si calcola in modo simile al MAE: • Root Mean Squared Error (RMSE): consiste nella radice quadrata dell'MSE, rappresenta la varianza interna data dal rapporto fra la devianza interna e la numerosità totale: Metriche di classificazione Nella raccomandazione, un elemento può essere fondamentalmente di due tipi: rilevante per l'utente, che quindi si aspetta di trovarlo in cima alla lista, con un punteggio alto non rilevante per l'utente, che quindi si stupirebbe se fosse nella parte alta della lista. Proprio per questi motivi ogni elemento raccomandato può essere classificato in uno dei seguenti modi: • True Positive (TP) item consigliati dal sistema e rilevanti per l'utente, ovvero quelli che giustamente ricoprono una posizione alta nella classifica; • False Positive (FP) item consigliati dal sistema, ma che non ricoprono un ruolo rilevante per l'utente; rappresentano gli errori \positivi" del sistema; • True Negative (TN) elementi che non sono consigliati dal sistema e che non sono rilevanti per l'utente, quindi quelli che giustamente hanno un rating basso; • False Negative (FN) elementi che non vengono raccomandati dal sistema, ma che l'utente vorrebbe vedersi consigliati. Tra le metriche di classificazione le seguenti sono: • Recall, che è una delle metriche più accurate per valutare le prestazioni di un algoritmo di raccomandazione, si basa su un'idea molto semplice: quanti elementi rilevanti sono stati consigliati tra tutti quelli interessanti per l'utente? In formule: 83 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Proprio per questa sua caratteristica di considerare una percentuale del totale degli elementi, viene definita una metrica di completezza che dipende molto dalla lunghezza della lista da raccomandare, quindi dal parametro N della lista Top-N: per “positivi" e “negativi" infatti si intendono quegli elementi che compaiono o meno nelle prime N posizioni della lista. Ovviamente, a valori alti di recall corrispondono algoritmi più accurati. Infatti, il valore massimo della recall è 1 quando non esistono “false negative", 0 nel caso pessimo, ovvero quando non esistono “true positive". • Precision: anche questa è una delle metriche più accurate nella valutazione di un algoritmo di raccomandazione, ma, a differenza della recall, non misura la completezza, bensì l'esattezza e l'affidabilitàà dell'algoritmo, misurando infatti la percentuale di elementi consigliati che l'utente trova rilevanti, rispetto al numero di quelli raccomandati in totale: Nella formula N è lo stesso di Top-N, rappresenta quindi il numero di elementi che rientrano nella raccomandazione visibile all'utente. • Expect Percentile Ranking (EPR): è una misura della qualità che considera altro oltre alla lista Top-N: preso infatti un campione di raccomandazioni indica, percentualmente, la posizione in classifica in cui vengono consigliati gli elementi. Si calcola nel seguente modo: Si tratta, quindi, della somma delle posizioni in classifica di tutti gli item del campione preso in esame, diviso per la sua numerosità. Più è basso il valore dell'EPR, più il sistema ha predetto gli elementi visti dall'utente nelle prime posizioni. Il 50% corrisponde a una raccomandazione effettuata prendendo i valori in modo casuale, più si cresce più lo scenario peggiora. • Expect Percentile Ranking (EPR): Misura della qualità che esamina la posizione in cui un elemento viene raccomandato all'interno della lista stessa. In riferimento alla precision, si può ridefinirla come il rapporto tra una raccomandazione ritenuta importante per l'utente (ovvero un TP), chiamata hit e il numero n di raccomandazioni: 84 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Quando l'Hit Rate è uguale a 1, l'algoritmo è riuscito a raccomandare tutti gli elementi rilevanti. Non viene presa in considerazione la posizione in classifica in cui viene consigliato l'elemento: non c'è differenza se quello meno rilevante è stato suggerito per primo mentre quello più rilevante compare all'ultimo posto. Superiamo questa limitazione utilizzando la metrica ARHR che fornisce un punteggio a ogni hit, sulla base della posizione nella lista. Definito con h il numero di hit cheavvengono nelle posizioni p1, p2, … , pN: Agendo in questo modo gli hit nelle posizioni alte della classifica valgono di più rispetto a quelli nelle posizioni basse. Se gli elementi compaiono tutti in prima posizione, allora il valore dell'ARHR coincide con quello dell'Hit Rate. Quando invece gli hit avvengono nelle posizioni basse della classifica l'ARHR diminuisce fino ad arrivare al valore limite di HR/n. 11.3 Metodologie comportamentali La bontà di un suggerimento si può valutare dalla modifica indotta sul comportamento dell’utente. In altre parole, se viene seguito il link suggerito vuol dire che è gradito e va rafforzato, se non viene seguito il link vuol dire che non è stato notato, non è stato apprezzato, ci sono altre attività più importanti da svolgere. Questa metodologia richiede un progetto dell’interfaccia grafica opportuno, in cui il suggerimento deve essere messo bene in evidenza per essere notato. Il sistema deve registrare tutte le attività svolte dall’utente per consentire il confronto con quanto suggerito, ne seguono problematiche di privacy e una maggiore complessità di memorizzazione della visita. 11.4 Metodologie di valutazione diretta Si può chiedere all’utente il suo giudizio esplicito sul consiglio ottenuto in vari modi attraverso il cliccare su: si/no, voto tra 1 e 4 (evitare il voto medio 3 che sarebbe preferito da tutti quelli che non vogliono sbilanciarsi), una faccina più o meno sorridente. Occorre prestare attenzione alla privacy dei giudizi espressi, per non rivelare all’esterno i giudizi e per non dare l’impressione che il sistema attribuisce un giudizio secondo il voto espresso. 85 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità PARTE IV Metodologie di profilazione per Neoluoghi In NeoLuoghi il sistema integrato composta da sotto-sistemi di profilazione semantica e raccomandazione (RS, Recommender Systems) ha lo scopo di rendere personalizzato l’accesso ai contenuti, grazie al suggerimento di contenuti in base ai gusti e preferenze dell’utente. La Figura 8 mostra in modo schematico e sintetico il sistema di profilazione e di raccomandazione, in cui i due sotto-sistemi sono separati e dove parte dell’input del sistema di raccomandazione è dato dall’output del processo di modellazione utente. Il sistema di profilazione viene approfondito nel paragrafo 7, mentre il sistema di raccomandazione viene approfondito nella successiva Parte VI. 86 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Figura 8: Schema di profilazione e Raccomandazione dinamico in Neoluoghi PARTE V Sistema di profilazione Il profilo utente contiene dati che descrivono gli attributi caratterizzanti i vari utenti della piattaforma. In ogni sistema informativo di medio-grandi dimensioni gli stakeholder agiscono in modo diverso in contesti diversi, inoltre le esigenze di un utente possono essere mutevoli all’interno di uno stesso contesto. Risulta quindi importante descrivere il profilo utente in modo dettagliato ed esaustivo per comprendere gli aspetti del profilo che ne specificano il comportamento in un dato contesto. Nell’ambito di riferimento del presente progetto, per contesto utente s’intende le dimensioni e cioè l’insieme di caratteristiche, preferenze, obiettivi ecc. Con 87 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità contesto temporale s’intende il luogo e il tempo, mentre contesto ambientale riguarda l’ambiente circostante l’utente. Il profilo utente, che viene poi utilizzato dal sistema di RS, è una struttura dati contenente informazioni sulle dimensioni utente. Tali informazioni possono appartenere sia alla sfera della conoscenza (knowledge) che del comportamento (behavioral) del visitatore e possono essere catturate sia in modo esplicito che implicito. Inoltre una fonte importante di informazione per la profilazione è data dai social network. La Figura 9 mostra uno schema concettuale generale del flusso delle informazioni che, dall’acquisizione dei dati di profilazione, porta alla creazione di un modello utente attraverso cui il sistema interagisce con l’utente profilato. Acquisizione Acquisizione Profilazione Profilazione Ontologie di riferimento Modello Modello Utente Utente Base Dati Figura 9: Flusso informazioni per la creazione del modello utente Il RS ha necessità di mantenere un modello dinamico del profilo utente che prenda in considerazione l’evoluzione e il cambiamento di alcune caratteristiche relative al comportamento e alla conoscenza dell’utente. L’utilizzo delle ontologie e delle tecniche del semantic web (con l’utilizzo di XML, RDF, RDFS, OWL) consente di integrare e scambiare dati provenienti da fonti differenti (in particolare dai social network). Inoltre, grazie al meccanismo dell’inferenza delle ontologie, è possibile individuare e dedurre ulteriori informazioni di profilo che ci permettono di migliorare la qualità della raccomandazione. Nel modello utente di Neoluoghi i dati mantenuti saranno sia di tipo knowledge-based sia behavioral-based, come è possibile vedere nella Figura 10. Saranno presi in considerazione degli stereotipi, come quelli legati allo stile di apprendimento. Infine si considererà la conoscenza relativa alle entità del Neoluogo da scoprire grazie a ontologie di dominio attraverso le quali saranno annotati semanticamente le entità del Neoluogo. 88 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Figura 10. Modello Utente Neoluoghi La profilazione ontologica consente di associare al contesto della visita nel Neoluogo opportune ontologie di dominio che descrivono in modo semantico tale contesto, collegando il profilo e il contesto descrivendoli attraverso la stessa ontologia (Figura 11). Una tale ontologia deve essere popolata da concetti semantici associati al contesto dell’esperienza che descrivono il profilo utente.. Il modello utente utilizzato per il progetto NeoLuoghi e di tipo Overly-based; tale approccio permette di rappresentare parte delle conoscenze e degli interessi dell’utente attraverso dei concetti appartenenti a ontologie di riferimento che descrivono gli oggetti e le entità del Neoluogo. Annotazioni Interessi Utente Semantiche Utenti Ontologie di riferimento Figura 11: Collegamento tra gli interessi dell'utente e le entità del Neoluogo Percorsi 89 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Figura 12. Acquisizione dati per NeoLuoghi 1 Definizione attributi modello utente Da un punto di vista concettuale è necessario estendere l’insieme dei metadati utilizzati per annotare semanticamente le entità del Neoluogo e includere attributi che descrivono le caratteristiche degli utenti. Questi attributi possono essere intesi come un’estensione degli esistenti metadati che descrivono le entità del Neoluogo. Gli attributi mirano a descrivere gli utenti come singolo individuo o come gruppo di utenti. L’obiettivo è creare un’ontologia che 90 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità consenta di rappresentare la base di conoscenza definita dalle caratteristiche del modello utente. La metodologia di riferimento per lo sviluppo dell’ontologia è la seguente Figura 13: Figura 13. Metodologia di riferimento per lo sviluppo dell’ontologia di profilazione In precedenza abbiamo già visto come nel caso della modellazione utente su base ontologica è possibile riferirsi a specifiche ontologie ben consolidate come FOAF, GUMO ecc., che nel nostro caso alcune di queste ontologie saranno riutilizzate ed estese. Questa fase di costruzione sarà definita nelle sezioni successive. Nella definizione dei concetti di un’ontologia e quindi di classi e proprietà, si è precedentemente visto come gli approcci possano essere di tipo top-down, bottom-up o ibrido. Nel caso in esame è utilizzato un approccio ibrido, sia individuando una serie di termini (vd. sez Dettagli Caratteristiche visitatore NeoLuoghi) relativi al dominio di conoscenza, sia definendo dei concetti top-level (Errore: sorgente del riferimento non trovata) come interessi e preferenze, consolidati nell’ambito della modellazione utente nell’interazione uomo macchina. 1.1 Dimensioni Base In questo ramo sono raccolte le informazioni di base su un utente riguardanti eventuali disabilità, dati anagrafici e il grado d’istruzione. Le eventuali disabilità sono da tenere in considerazione poiché possono impedire la normale fruizione dei contenuti durante la visita, per cui il sistema dovrà proporre modalità e contenuti che l’utente è in grado di consumare(Figura 14). 91 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Figura 14. Ontologia di profilazione per NeoLuoghi - Dimensioni base 1.2 Dimensioni Preferenze Categoria concettuale che raccoglie le preferenze turistiche dell’utente fruitore(Figura 15). 92 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Figura 15. Ontologia di profilazione per NeoLuoghi - Dimensioni preferenze 1.3 Dimensioni Avanzate Caratteristiche legate alle caratteristiche avanzate dei servizi offerti ai fruitori(Figura 16). 93 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Figura 16. Ontologia di profilazione per NeoLuoghi - Dimensioni avanzate 1.4 Dimensioni Di Contesto Informazioni legate al contesto in cui si svolge l’esperienza (Figura 17). 94 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Figura 17. Ontologia di profilazione per NeoLuoghi – Dimensioni di contesto 1.5 Dimensioni di Gruppo Concetti che permettono l’annotazione di fruizioni di gruppo (Figura 18). Figura 18. Ontologia di profilazione per NeoLuoghi – Dimensioni di gruppo 1.6 Dimensioni di Interessi Elementi che descrivono gli interessi generali degli utenti(Figura 19). 95 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Figura 19. Ontologia di profilazione per NeoLuoghi - Dimensioni di interessi 1.7 Dimensioni Social Networking Caratteristiche legate all’utilizzo dei social network(Figura 20). 96 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Figura 20. Ontologia di profilazione per NeoLuoghi - Dimensioni social networking 1.8 Dimensioni Stereotipi Questa sottoclasse definisce un insieme di possibili catalogazioni degli utenti sulla base di caratteristiche personali, conoscitive e attitudinali(Figura 21). 97 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Figura 21. Ontologia di profilazione per NeoLuoghi - Dimensioni stereotipi 2 Dettagli Caratteristiche visitatore NeoLuoghi Nella presente sezione sono presentate e raccolte in Tabella 3 tutte le informazioni utili alla profilazione dell’utente in Neoluoghi che sono funzionali alla personalizzazione dell’esperienza attraverso la fruizione di servizi personalizzati. Gli elementi descritti nella tabella, raggruppati in base alle dimennsioni precedentemente introdotte, sono: 98 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità • Dimensione: descrive il concetto di alto livello di appartenenza. • Attributo di Base: il nome della singola caratteristica di profilazione. • Tipo: il tipo di dato che deve essere utilizzato per memorizzare l’informazione. • Valore: il valore o i valori che la caratteristica può assumere. • Acquisizione: la modalità di acquisizione attraverso cui viene fornita o recepita l’informazione. A riguardo sono definiti tre possibili modalità: un campo libero in cui l’utente inserisce le informazioni, scelta tra un insieme di elementi già precariati, valore impostato direttamente dal sistema. Tabella 3- Proprietà del modello utente in Neoluoghi Dimensione Base Attr. Base Tipo Disabilità String Valore Acquisizione Fonte Scopo Ascoltare/Vedere/Parlare Camminare Base Età Int 0-5/6-10/11-18/ 19-35/36-60/60+ Scelta/Campo libero Base Lingua Madre String Base Sesso Char Base Nome String Campo Libero Base Cognome String Campo Libero Base Provincia String Scelta Base Città String Scelta Base Nazionalità String Scelta Base Titolo Studio String Scelta Base Professione String Scelta Preferenze Mezzo trasporto String Scelta Preferenze Disponibilità pubblicità String SI/NO Scelta Preferenze Connettersi con altre persone String SI/NO Scelta Preferenze Livello Suggerimento String Alto/Medio/Basso Scelta Preferenze Testo String ??? Scelta Preferenze Audio String ??? Scelta Preferenze Tipo narrazione String ??? Scelta Preferenze Video String ??? Scelta Preferenze 3D String ??? Scelta Preferenze Lingua Fruizione String di Scelta M/F Scelta Scelta 99 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Preferenze Privacy String SI/NO Preferenze Paese Soggiornato String Scelta Preferenze Durata DateTime Scelta Avanzate Servizi ristoro String Pizzeria/Trattoria/Ristorante Scelta Scelta McDonald/Caffè/Bar Avanzate Servizi Igienici String SI/NO Scelta Avanzate Servizi Informativi String SI/NO Scelta Avanzate Fisionomia Facciale Avanzate Retina Avanzate Fingerpring Avanzate Voce Contesto Coordinate geofisiche String Campo Libero Contesto Coordinate virtuali String Campo Libero Contesto Mezzi Trasporto Contesto Orari visita DateTime Sistema Contesto Temperatura String Sistema Contesto Meteo String Sistema Contesto Compagnia String di String Metro/Taxi/Bus/tram Visita solitaria/ Gruppo Turistio/ Gruppo scolastico/ Scelta Scelta Famiglia/ Amici Contesto Obiettivo String Contesto Tempo visita DateTime Contesto Stagione String Scopo Educativo/ Relax/ Arte Cultura/ Avventura Scelta Campo Libero Inverno/Autunno/Primavera/ Estate Sistema Contesto Fatica Fisica DateTime Contesto Costo String Sistema Gruppo Dimensioni Int Campo Libero Gruppo Cultura String Campo Libero Gruppo Età Int Campo Libero Gruppo Disponibilità Percorso String Gruppo Tempo Gruppo DateTime Campo Libero Gruppo Costo percorso String Sistema Gruppo Durata Prevista DateTime Sistema Interessi Tipologia String disp. ?????? Scelta 100 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Interesse Interessi Competenze String Campo Libero Interessi Attività legata a interesse String Campo Libero Interessi Periodo durata interesse DateTime Campo Libero Interessi Genere Musicale String Tipo Scelta Interessi Genere Film String Tipo Scelta Interessi Genere Lettura String Tipo Scelta Interessi Attività ricreativa String Tipo Scelta Social Networking Account Facebook String Campo Libero/ Sistema Social Networking Account Twitter String Campo Libero/ Sistema Social Networking Chat specificare meglio sistema usato StringByte[ ] Campo Libero/ Sistema Social Networking Immagine Byte[]Strin g Campo Libero/ Sistema Social Networking Home Page sito personale String Campo Libero/ Sistema Social Networking Mail String Campo Libero/ Sistema Social Networking NickName String Campo Libero/ Sistema Social Networking SkypeID String Campo Libero/ Sistema Social Networking Status String Campo Libero/ Sistema Social Networking Blog String Campo Libero/ Sistema Stereotipi Ruolo String Insegnante/Turista/ Genitore/ Stereotipi Livello Culturale String Scuola Elementare/ Scuola Media/ Campo Libero/ Sistema Scuola Superiore/ Pubblico generalista/ Studenti Universitari/ Appassionati/Amateur/ Fandom Stereotipi Stile Cognitivo “Globale/Analitico” “Impulsivo/Riflessivo” Campo Libero/ Sistema “Verbale/Visuale” 101 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità “Convergente/Divergente” Stereotipi Competenze mediali Competenze radiotelevisive/ Competenze tipografiche/ Cross media Storytelling/ Trasmedia Storytelling Scelta 102 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità PARTE VI Sistema di raccomandazione La figura seguente (Figura 22) rappresenta il riepilogo delle componenti previste nell’architettura Neoluoghi. Si può notare il ruolo trasversale del motore di raccomandazione, da cui deriva la sua importanza nei servizi da fornire. Figura 22. Architettura illustrante i moduli di elaborazione in Neoluoghi. Nell’ambito delle funzionalità da offrire ai vari utenti della piattaforma Neoluoghi, il motore di raccomandazione deve suggerire le seguenti informazioni: • • FASE DI AUTHORING (sez RS per modulo Storytelling Authoring): o statistiche su visite e feedback associate ai POI o quali altri POI simili sono stati visitati dal tipo di visitatore che si sta considerando FASE DI FRUIZIONE (sez. RS per modulo Storytelling Player): o suggerimento di POI di varia natura relativi al percorso creato in Authoring, in base al tempo di visita disponibile e alla vicinanza geografica o informazioni da attività disponibili nel social network 103 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità o punti di ristoro da suggerire secondo orario colazione-pranzo-cena, bar, servizi pubblici, librerie, negozi di souvenir ecc. nei dintorni rispetto alla posizione geografica dell’utente o contenuti multimediali aggiuntivi per approfondire la fruizione di un POI. La figura successiva(Figura 23) riepiloga lo scambio di informazioni tra tutti i moduli. Figura 23 Informazioni scambiate nei moduli dell’architettura Neoluoghi. La tabella successiva riepiloga lo scambio di informazioni tra i moduli e lo specifico sistema di raccomandazione. Modulo Invia dati a Riceve dati da Recommender Player: tutte le raccomandazioni, sia Profiler: la profilazione dell’utente; riguardo i POI culturali, sia i POI commerciali; feedback sulle attività sui social network esterni riguardo la visita al parco, raccomandazioni social elaborate dal Modulo Social Network; Authoring gradimento Tool: dei POI contenuti associati; statistiche culturali Network: dell’utente ed informazioni visita posizione eventuali dinamiche dell’utente; altre circa la statistiche di gradimento dei POI culturali e dei di e Sensor dei contenuti associati; Digital Library: informazioni statiche circa i POI di interesse (es. orari apertura, ecc); contenuti e POI in base alle preferenze 104 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità dell’utente; Social Network: raccomandazioni social che il Recommender girerà al Player, feedback sulle sue attività nei social network esterni e relative alla visita al parco; Smartspotting: informazioni circa i POI commerciali Come evidenziato dalla figura all’interno di Neoluoghi sono scambiate le seguenti informazioni: • POI culturale • POI non culturale • POI evento • Raccomandazione feedback da utente • Contenuto multimediale • Descrizione percorso • Profilo utente Le fonti informative usate per generare la raccomandazione riguardano: • Similitudine tra POI • Comportamento delle persone • Profilo descrittivo delle persone • Gestione di afflusso al POI con: • • Quantità di persone presenti • Orario chiusura-apertura • Tempo a disposizione per la visita Offrire servizi non culturali. La pluralità delle informazioni considerate fornisce una visione ampia su cosa è disponibile nel sistema, da cui ne deriva una raccomandazione specifica per l’utente che potrebbe accettarla più volentieri. Alcune informazioni vengono copiate in maniera massiva nel server destinato alla generazione di RS, per evitare perdite di tempo con le continue richieste delle stesse informazioni ad altri server in cui sono contenute. 105 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Per descrivere il POI, in aggiunta alle informazioni per descriverne il contenuto culturale, occorre inserire le seguenti informazioni utili per descrivere l’interazione con il visitatore: 1. Tipologie di utente cui può interessare, in base alle informazioni fornite in stereotipo ragazzo/adulto/adulto esperto e al tipo di percorso VerticaleOrizzontale-Misto 2. Tempo di visita necessario, espresso in secondi per agevolare i calcoli con il formato timestamp 3. Orario di apertura e chiusura 4. Modalità di pagamento biglietto di ingresso e con quale modalità avviene, in merito al modello di pricing sviluppato in OR4 5. Quantità di persone che possono visitare la struttura contemporaneamente 6. Risorsa disponibile o non disponibile per chiusura 7. Accessibilità per diversamente abili 8. Posizione geografica Il metadato (7) permette di gestire le visite per le persone diversamente abili, viene determinato dalla quantità di barriere architettoniche presenti. Il metadato (5) permette di evitare che una persona arriva sul luogo e non può visitarlo perché ci sono troppe persone presenti contemporaneamente. Occorre fornire una valutazione statistica basata sulla quantità di superficie offerta, problematiche di sicurezza dell’accesso, caratteristiche ambientali di umidità e temperatura in grado di danneggiare un’opera d’arte esposta, ecc. Bisogna anche tenere conto della quantità di persone che arrivano sul posto senza passare dal sistema Neoluoghi, pertanto non vengono contate nel sistema. Il numero di persone attualmente presenti è mantenuto aggiornato tramite informazioni ricavate dai sensori elettronici installati sul posto e dal GPS installato nel dispositivo usato per l’interazione. Il metadato (6) è necessario perché la risorsa potrebbe essere momentaneamente non disponibile, questo valore viene fornito da chi gestisce la risorsa. Il POI di natura non culturale viene descritto con: • Tipologia attività commerciale, • Posizione geografica ed entro quale distanza dal POI si può consigliarlo, • Orario di apertura e chiusura. 106 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 1 RS per modulo Storytelling Authoring In questa sezione viene approfondita la strutturazione dei moduli software previsti per creare il motore di raccomandazione in grado di interagire dinamicamente con l’autore dei percorsi di visita ai Neoluoghi mentre usa il software di Authoring Tool. Contesto L’autore interagisce con il software offerto dal modulo Authoring Tool, in cui provvede a eseguire una ricerca dei contenuti desiderati con parole chiave, la scelta dei risultati viene effettuata con la corrispondenza diretta tra parole chiave scritte e quelle associate agli oggetti culturali in digital library. Il compito del recommender consiste nell’offrire ulteriori risultati in aggiunta a quelli già forniti dalla ricerca impostata dall'autore: il recommender fa eseguire la ricerca alla digital library che possiede informazioni e varie tipologie di indici per accedervi, a tal fine occorre distinguere tra ricerca esplicita effettuata da sistema gestione autore, che esegue da solo, e ricerca implicita di supporto fornita dal recommender. Sequenza di operazioni svolte da RS nell’interazione con il modulo Authoring Tool, dove per oggetto si intende un POI, un approfondimento, un contenuto integrativo ecc.: 1. l’autore della storia scrive le parole con cui fare ricerca nella digital library; 2. l’Authoring Tool manda le parole da cercare in digital library che fornisce un elenco di oggetti; 3. l’autore sceglie un oggetto di cui desidera approfondire la descrizione; 4. l’Authoring Tool manda il riferimento all'oggetto scelto al RS che fornisce queste informazioni: a. numero di persone che hanno visitato l’oggetto; b. numero di persone che ha visitato l’oggetto scelto e che hanno dato il voto indicato in positivo e negativo come indice di gradimento; c. all'utente con lo stereotipo per cui si crea la storia piacciono anche gli altri oggetti indicati. 107 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità 2 RS per modulo Storytelling Player In questa sezione viene approfondita la modalità con cui il motore di raccomandazione interagisce dinamicamente con il modulo Player durante la fruizione dei Neoluoghi. Contesto Nella fase di visita si prevede di fornire queste informazioni: 1. Elenco di POI, su base del profilo utente e del percorso scelto; 2. Informazioni di approfondimento di un POI, risorse culturali collegate come libri, video, audio ecc. secondo le preferenze indicate, giochi e scenari immersivi; 3. Nuovi POI a partire dalle informazioni collegate a ogni POI scelto, in una certa area geografica facilmente raggiungibile, con caratteristiche culturali inerenti il percorso scelto; 4. Servizi non culturali di natura business, nelle immediate vicinanze geografiche del POI in visita; questo genere di raccomandazione viene mostrato in una determinata fascia oraria in alcuni casi come, per esempio, le attività di ristorazione; 5. Informazioni sulle attività disponibili nel social network, come i giochi e risorse nei tradizionali social network, sono a cura del modulo dedicato al social networking, pertanto in questo documento non ne viene spiegato il processo di calcolo. 108 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Appendice 1 Acronimi RS Recommender System UP Unified Process SN Social Network 109 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità Riferimenti bibliografici [1] W. Wahlster e A. Kobsa, «User Models in Dialog Systems,» in User Models in Dialog System, Berlin, Heidelberg, Springer, 1989, pp. 4-34. [2] A. Kobsa, «User modeling and user-adapted interaction,» Conference companion on Human factors in computing systems, pp. 415-416, 1994. [3] P. Brusilovsky, «Methods and Techniques of Adaptive Hypermedia,» User Model. User-Adapt. Interact., vol. 6, n. 2-3, pp. 87-129, 1996. [4] S. Sosnovsky e D. Dicheva, «Ontological technologies for user modelling,» Int. J. Metadata Semant. Ontologies, vol. 5, n. 1, pp. 32-71, 2010. [5] A. Jameson, «Modelling both the context and the user,» Personal and Ubiquitous Computing, vol. 5, pp. 29-33, 2001. [6] A. Kobsa, «Generic user modeling systems,» User Modeling and User-Adapted Interaction, vol. 5, pp. 2933, 2001. [7] P. Brusilovsky e E. Millan, «User models for adaptive hypermedia and adaptive educational systems,» in In: Brusilovsky, P., Kobsa, A., Nejdl, W. (eds.) The Adaptive Web: Methods and Strategies of Web Personalization, chap. 1, pp. 3-53 Springer-Verlag, Berlin Heidelberg New York, 2007. [8] A. Kobsa, J. Koenemann e W. Pohl, «Personalized Hypermedia Presentation Techniques for Improving Online Customer Relationships,» The Knowledge Engineering Review, vol. 16, n. 2, pp. 111-155, 2001. [9] R. A. Stebbins, «Cultural tourism as serious leisure,» Annals of Tourism Research, vol. 23, n. 4, pp. 948950, 1993. [10] R. A. Stebbins, «Casual leisure: A conceptual statement,» Leisure Studies, vol. 16, n. 1, pp. 17-25, 1997. [11] B. McKercher e D. C. H., Cultural Tourism: The Partnership Between Tourism and Cultural Heritage Management, Binghmton, NY : Haworth Press, 2002. [12] C. Nicolò, «Un piano strategico della città ospitale per accogliere i serious tourists del ceto medio internazionale,» in Produzione e consumo dell amemoria. Città, immagine, turismo, Firenze, 2008. [13] P. Costa e R. McCrae, «Revised NEO Personality Inventory (NEO-PI-R) and NEO Five-Factor Inventory (NEO-FFI) manual.,» in FL: Psychological Assessment Resources, Odessa, 1992. [14] Wikipedia, «Personality: a psychological http://en.wikipedia.org/wiki/Gordon_Allport. [15] interpretation.,» [Online]. Available: Wikipedia. [Online]. Available: http://en.wikipedia.org/wiki/Raymond_Cattell. [16] R. D. Beni, A. Moè e C. Cornoldi, Test AMOS Abilità e motivazione allo studio:valutazione e orientamento. Questionario sugli stili cognitivi, Trento: Erickson,, 2003. [17] C. Cornoldi, «Stili Cognitivi,» in I disturbi dell'apprendimento, Bologna, Il Mulino, 1991, pp. 107-110. [18] D. Kolb, Experiential Learning. Experience as The Source of Learning and Development, Eng Cliff: Prentice-Hall Inc, 1984. [19] M. Antonietti e E. Cantoia, La mente che impara, Milano: La nuova Italia, 2000. 110 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità [20] R. Sternberg, Stili di pensiero. Differenze individuali nell’apprendimento e nella soluzione di problemi, Trento: Erickson, 1998. [21] P. Crispiani, Didattica cognitivista, Roma: Armandi, 2004. [22] R. Felder e L. Silverman, «Learning and teaching styles in engineering education,,» Engineering Education, 1988. [23] C. Cornoldi e R. D. Beni, Imparare a studiare Strategie, stili cogniti, meta cognizione eatteggiamenti nello studio, trento: Erickson, 1997. [24] «SKILLS, Several Keys In Learning to Learn Skills,» GRUNDTVIG-GMP, [Online]. Available: http://www.faea.es/G1_SKILLS/products/it/Learning_Styles_and_Strategies_IT.pdf. [25] B. Nedelman, Interazione sociale, Voce dell'Enciclopedia delle Scienze Sociali, Roma: Treccani, 1996. [26] G.S.Becker, «A Theory of Social Interactions,» The Journal of Political Economy, vol. 82, n. 6, pp. 1063-1093, 1974. [27] J. A. Scheinkman, «Social Interactions,» The New Palgrave Dictionary of Economics, 2008. [28] B. Birney, A comparative study of children’s perceptions and knowledge of wildlife and conservation as they relate to field trip experiences at the Los Angeles County Museum of Natural History and the Los Angeles Zoo, University of California, 1986. [29] A. Scime, Web Mining: Applications and Techniques, Hershey PA United States of America: Idea Group Publisching, 2004. [30] S. Gauch, M. Speretta, A. Chandramouli e A. Micarelli:, «User Profiles for Personalized Information,» Lecture notes in computer science, Springer Verlag, vol. 4321, pp. 54-89, 2007. [31] A. Kobsa, «User modeling in dialog systems: Potentials and hazards,» AI & Society:The Journal of Human and Machine Intelligence, vol. 4, n. 3, pp. 214-231, 1990. [32] S. E. MIDDLETON, N. R. SHADBOLT e D. C. D. ROURE, «Ontological User Profiling in Recommender Systems,» ACM Transaction on Information System , vol. 22, n. 1, pp. 54 - 88, 2004. [33] E. Rich, «User Modeling via Stereotypes,» Cognitive Science, vol. 3, pp. 329-354, 1979. [34] G. Webb, M. Pazzani e D. Billsus, «Machine learning for user modelling,» Int. J. User Modelling and User-Adapted Interaction, vol. 11, n. 1-2, pp. 19-29, 2001. [35] Y. Hafri, C. Djeraba, P. Stanchev e B. Bachimont, «A Web User Profiling Approach,» in In X. Zhou, Y. Zhang and M.E. Orlowska, editors, Web Technologies and Applications: 5th Asia-Pacific Web Conference, APWeb 2003, Xian, China, April 23- 25, 2003, volume 2642 of LNCS, Springer-Verlag, 2003. [36] J. Tang, L. Yao, D. Zhang e J. Zhang, «A Combination Approach to Web User Pro¯ling,» ACM Transactions on Knowledge Discovery from Data, vol. 5, n. N, pp. 1-38, 2010. [37] Z. INGRID e W. A. DAVID, «Predictive Statistical Models for User Modeling,» User Modeling and User-Adapted Interaction, vol. 11, pp. 5-18, 2001. [38] Y. Dit-Yan e D. Yuxin, «User Profiling for Intrusion Detection Using Dynamic and Static Behavioral Models,» in In M.-S. Chen, P.S. Yu, and B. Liu, editors, 6th Pacific-Asia Conference PAKDD 2002 , Taipel, Taiwan, May 6-8, 2002, Springer-Verlag, 2002, p. volume 2336 of LNCS. [39] E. Manavoglu, D. Pavlov e C. L. Giles, «Probabilistic User Behavior Models,» In Proceedings of the Third IEEE International Conference on Data Mining (ICDM’03)., vol. IEEE Computer Society, 2003. 111 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità [40] X. Shen, B. Tan e C. Zhai, «Implicit User Modeling for Personalized Search,» Proceeding CIKM 05 Proceedings of the 14th ACM international conference on Information and knowledge management, Vol. %1 di %2ACM New York, NY, USA 2005, pp. 824-831. [41] G. Stermsek, M. Strembeck e G. Neumann, «User Profile Refinement using explicit User Interest Modeling,» in Lecture Notes in Informatics (LNI 109), pp. 289-293, 2007. [42] M. Pannu, R. Anane, M. Odetayo e A. James, «Explicit User Profiles in Web Search Personalisation,» Proceedings of the 2011 15th International Conference on Computer Supported Cooperative Work in Design. [43] P. Zigoris e Y. Zhang, «Bayesian Adaptive User Profiling with Explicit & Implicit Feedback,» CIKM’06, November 5–11, 2006, Arlington, Virginia, USA. Copyright 2006 ACM 1-59593-433-2/06/0011. [44] F. Gasparetti e A. Micarelli, «Exploiting web browsing histories to identify user needs,» in Proceedings of the 12th international conference on Intelligent user interfaces: ACM, 2007. [45] M. Claypool, P. Le, M. Wased e D. Brown, «Implicit interest indicators. In IUI ’01: Proceedings of the 6th international conference on Intelligent user interfaces,» New York, NY, USA, 2001. ACM Press, p. 33– 40. [46] J. Goecks e J. Shavlik, «Learning users’ interests by unobtrusively observing their normal behavior,» In IUI 00: Proceedings of the 5th international conference on Intelligent user interfaces,, pp. 129-132, 2000. [47] D. Nichols, «Implicit rating and filtering,» In Proceedings of 5th DELOS Workshop on Filtering and Collaborative Filtering, pp. 31-36, 1998. [48] S. Fox, K. Karnawat, M. Mydland, S. Dumais e T. White, «Evaluating implicit measures to improve web search,» ACM Trans. Inf. Syst., 23(2):147–168,, 2005. [49] T. Joachims, «Optimizing search engines using clickthrough data,» In Proceedings of SIGKDD 2002, p. 133–142, 2002. [50] K. Sugiyama, K. Hatano e M. Yoshikawa, «Adaptive web search based on user profile constructed without any effort from users,» In Proceedings of WWW 2004, pages 675–684,2004. [51] Y. Wang, N. Stash, L. Aroyo, P. Gorgels, L. Rutledge e G. Schreiber, «Recommendations based on Semantically-enriched Museum Collections,» J. Web Semant, vol. 6, n. 4, pp. 283-290, 2008. [52] N. Koch, «Software Engineering for Adaptive Hypermedia Systems,» 2000. [Online]. Available: http://www.pst.informatik.uni-muenchen.de/personen/kochn/PhDThesisNoraKoch.pdf. [Consultato il giorno 13 09 2012]. [53] G. Shaw, Y. Xu e S. Geva, «Using Association Rules to Solve the Cold-Start Problem in Recommender Systems,» PAKDD'10 Proceedings of the 14th Pacific-Asia conference on Advances in Knowledge Discovery and Data Mining - Volume Part I, pp. 340-347, 2010. [54] «IEEE PAPI. IEEE P1484.2.5/D8,(2002).,» in Draft standard for learning technology. public and private information (papi) for learners (papi learner). Available at: http://edutool.com/papi/ . [55] «IMS - LIP Learner Information Package (LIP) - http://www.imsproject.org/profiles/». [56] M. Miquel, L. Beatriz e J. L. d. l. Rosa, «A Taxonomy of Recommender Agents on the Internet,» Artif. Intell. Rev., vol. 19, n. 4, p. 285–330, 2003. 112 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità [57] A. M. Rashid, I. Albert, D. Cosley, S. K. Lam, S. M. McNee, J. A. Konstan e J. Riedl, «IUI’02, January 13-16, 2002, San Francisco, California, USA,» Copyright 2002 ACM 1-58113-459-2/02/0001. [58] A. M. Rashid, I. Albert, D. Cosley, S. K. Lam, S. M. McNee, J. A. Konstan e J. Riedl, «Getting to Know You: Learning New User Preferences in Recommender Systems,» In Proceedings of the International Conference on Intelligent User Interfaces, 2002. [59] H. J. Ahn, «A new similarity measure for collaborative filtering to alleviate the new user cold-starting problem,» Information Sciences, vol. 178, pp. 37-51, 2008. [60] B. Marlin, «Modeling User Rating Profile for Collaborative Filtering,» Advances in Neural Information Processing Systems 16, Cambridge, MA, MIT Press, (2004). [61] P. De Meo, G. Quattrone e D. Ursino, «A query expansion and user profile enrichment approach to improve the performance of recommender systems operating on a folksonomy,» In User Modeling and User-Adapted Interaction, vol. 20, n. 1 (2010), pp. 41-86, 2010. [62] C. Firan, W. Nejdl e R. Paiu, «The Benefit of Using Tag-based Profiles,» In Proc. of 2007 Latin American Web Conference (LA-WEB '07), pp. 32-41, 2007. [63] E. Michlmayr e S. Cayzer, «Learning User Profiles from Tagging Data and Leveraging them for Personal(ized) Information Access,» In Proc. of the Work-shop on Tagging and Metadata for Social Information Organization 16th Int.World Wide Web Conference, 2007. [64] F. Abel, Q. Gao, G. Houben e K. Tao, «Semantic Enrichment of Twitter Posts for User Profile Construction on the Social Web,» In Proceedings of ESWC (2). Springer, pp. 375-389, 2011. [65] Y. Cai e Q. Li, «Personalized Search by Tag-based User Profile and Resource Profile in Collaborative Tagging Systems,» In Proceeding CIKM '10 Proceedings of the 19th ACM international conference on Information and knowledge management, pp. 969-978, 2010. [66] F. Carmagnola, F. Cena, L. Console, O. Cortassa, C. Gena, A. Goy, A. T. I. Torre e F. Vernero, «Tagbased user modeling for social multi-device adaptive guides,» In User Modeling and User-Adapted Interaction (UMUAI), vol. 18, n. 5, pp. 497-538, 2008. [67] S. Berkovsky, T. Kuflik e F. Ricci, «Mediation of user models for enhanced personalization in recommender systems,» User Modeling and User-Adapted Interaction, vol. 18, n. 3, pp. 245-286, 2008. [68] L. Hella e J. Krogstie, «A Profile Ontology for Personalised Mobile Shopping Support,» in 1st International Workshop on Adaptation Personalization and REcommendation in the Social-semantic Web (APRESW 2010), Heraklion, Greece, 2010. [69] «User Modeling,» Wiki, DL.org Working Groups, [Online]. Available: https://workinggroups.wiki.dlorg.eu/index.php/User_Modeling. [Consultato il giorno 17 12 2012]. [70] G. Shani., L. Rokach, A. Meisles, L. Naamani, N. Piratla e D. Ben-Shimon, «Establishing User Profiles in the MediaScout Recommender System,» Proceedings of the 2007 IEEE Symposium on Computational Intelligence and Data Mining (CIDM 2007). [71] Q. Chen, A. F. Norcio e J. Wang, «Neural Network Based Stereotyping for User Profiles,» Neural Comput & Applic (2000)9:259–265 Springer-Verlag London. [72] T. Kuflik, B. Shapira e P. Shoval, «Stereotype-Based versus Personal-Based Filtering Rules in Information Filtering Systems,» JOURNAL OF THE AMERICAN SOCIETY FOR INFORMATION SCIENCE AND TECHNOLOGY, vol. 54, n. 3, pp. 243-250, 2003. 113 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità [73] S. Schiaffino e A. Amandi, «Intelligent User Profiling - M. Bramer (Ed.): Artificial Intelligence, LNAI 5640, pp. 193 – 216, 2009,» © IFIP International Federation for Information Processing 2009. [74] G. Brajnik e C. Tasso, «A shell for developing non-monotonic user modeling systems,» International Journal of Human-Computer Studies, vol. 4, pp. 1-19, 1994. [75] A. Kobsa e W. Pohl, «The BGP-MS user modeling system,» User Modeling and User Adapted Interaction, vol. 4, n. 2, pp. 59-106, 1995. [76] J. Kay, «Lies, damned lies and stereotypes: pragmatic approximations of users,» In: Kobsa A., Litman, D. (eds.) Proc. of Fourth International Conference on User Modeling. MITRE, pp. 175-184, (1994) . [77] P. Brusilovsky, «Student model centered architecture for intelligent learning environments,» Proceedings of the Fourth International Conference on User Modeling. August, Hyannis, MA, pp. 31-36, 1994. [78] A. Moukas, «Amalthaea: Information Discovery And Filtering Using A Multiagent Evolving Ecosystem,» Applied Artificial Intelligence, vol. 11, n. 5, pp. 437-457, 1997. [79] L. Chen e K. Sycara, «A Personal Agent for Browsing and Searching.,» in Proceedings of the 2nd International Conference on Autonomous Agents, Minneapolis/St. Paul, May 9-13,, 1998). [80] D. Widyantoro, J. Yin, M. El Nasr, L. Yang, A. Zacchi e J. Yen, «Alipes: A Swift Messenger In Cy berspace,» in AAAI Spring Symposium Workshop on Intelligent Agents in Cyberspace, Stanford, March 22-24 (1999) 62-67, 1999. [81] P. De Bra e L. Calvi, «AHA: a generic adaptive hypermedia system.,» in In 2nd Workshop on Adaptive Hypertext and Hypermedia, Pittsburgh, USA., 1998. [82] A. Ramesh, «Link prediction and path analysis using markov chain,» In: Proceedings of the 9th World Wide Web conference, March 1999. [83] J. Zhu, J. Hong e J. G. Hughes, «Using markov chains for link prediction in adaptive web site,» In LNCS, 2002. [84] A. Jennings e H. Higuchi, «A User Model Neural Network for a Personal News Service,» User Modeling and User-Adapted Interaction, vol. 3, n. 1, pp. 1-25, 1993. [85] L. M. Manevitz e M. Yousef, «A web navigation system based on a neural network user-model trained with only positive web documents,» Web Intelligence and Agent Systems, vol. 2, n. 2, pp. 137144, 2004. [86] J. Pearl, Probabilistic Reasoning in Intelligent Systems, SanMateo, California: Morgan Kaufmann Publishers, 1988. [87] A. Jameson, «Numerical Uncertainty Management in User and Student Modeling: An Overview of Systems and Issues,» User Modeling and User-Adapted Interaction, vol. 5, n. 3-4, pp. 193-251, 1995. [88] F. SPARACINO, «The Museum Wearable – real-time sensor-drive understanding of visitors’ interests for personalized visually-augmented museum experiences,» MIT Media Lab http://alumni.media.mit.edu/~flavia/Papers/flavia_mw2002.pdf (22 Novembre 2012). [89] N. Guarino, D. Oberle e S. Staab, «What Is an Ontology?,» in Handbook on Ontologies - International Handbooks on Information Systems, Berlin, Springer Berlin Heidelberg, 2009, pp. 1-17. [90] T. R. Gruber, «A Translation Approach to Portable Ontology Specification,» Knowledge Acquisition, vol. 5, n. 2, pp. 199-220, 1993. 114 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità [91] B. Swartout, P. Ramesh, K. Knight e T. Russ, «Toward Distributed Use of Large-Scale Ontologies,» in In: Farquhar A, Gruninger M, Gómez-Pérez A, Uschold M, van der Vet P (eds) AAAI'97, Stanford University, California,, Spring Symposium on Ontological Engineering, 1997, pp. 138-148. [92] M. C. Daconta, J. L. Obrst e T. K. Smith, «The Semantic Web: A Guide to the Future of XML, Web Services, and Knowledge Management,» Wiley, 2003. [93] M. C. Daconta, L. J. Obrst e K. T. Smith, The Semantic Web:A Guide to the Future of XML, Web Services, and Knowledge Management, Indianapolis, Indiana: Published by Wiley Publishing, 2003. [94] G. Nicolas, «Semantic matching: formal ontological distinctions for information organization, extraction and integration,» In M.T. Pazienza, Information Extraction: a Multidisciplinary Approach to an Emerging Information Technology, Vol. %1 di %2Springer-Verlag, pp. 139-170., 1997. [95] T. Berners-Lee, J. Hendler e O. Lassila, «The Semantic Web,» Scientific American, vol. 284, pp. 3443, 2001. [96] G. Antoniou e F. v. Harmelen, A semanticWeb primer, Printed and bound in the United States of America: Library of Congress Cataloging-in-Publication Data, 2007. [97] L. Yu, Introduction to the Semantic Web and Semantic Web Services, Printed in the United States of America on acid-free paper: Chapman & Hall/CRC Taylor & Francis Group, 2007. [98] «XML,» [Online]. Available: http://www.w3.org/XML/. [99] «RDF- Resource Description Framework,» [Online]. Available: http://www.w3.org/RDF/. [100] «RDF Vocabulary Description Language,» [Online]. Available: http://www.w3.org/TR/rdf-schema/. [101] «Web Ontology Language (OWL),» [Online]. Available: http://www.w3.org/2004/OWL/. [102] L. Razmerita, «User Model and User Modeling in Knowledge Management Systems: An Ontology-basedApproach”, PhD thesis, University of Toulouse, France,» PhD thesis, University of Toulouse, France, 2003. [103] R. Mizoguchi e J. Bourdeau, «Using ontological engineering to overcome AI-ED problems,» Int. J. AI in Education,, vol. 11, n. 2, pp. 107-121, 2000. [104] D. Dicheva, S. Sosnovsky, T. Gavrilova e P. Brusilovsky, «Ontological web portal for educational ontologies,» in Ws. on Applications of Semantic Web Technologies for e-Learning at AIED, Amsterdam, Netherlands., 2005. [105] M. Winter, C. Brooks e J. Greer, «Towards best practices for semantic web student modelling,» in Proceedings of the 12th Int. Conf. on Artificial Intelligence in Education, Amsterdam, the Netherlands, IOS Press, 2005, pp. 694-701. [106] J. Kay e A. Lum, «Online Proceedings of the UM (User Modelling) 2005 Workshop on Personalisation on the Semantic Web,» in Ontology-based User Modelling for the Semantic Web, Edinburgh, Scotland, 2005, pp. 11-19. [107] S. E. MIDDLETON, N. R. SHADBOLT e D. C. D. ROURE, «Ontological User Profiling in Recommender Systems,» ACM Transactions on Information Systems (TOIS), vol. 22, n. 1, pp. 54-88, 2004. [108] W. Liu, F. Jin e X. Zhang, «Ontology-Based User Modeling for E-Commerce System,» Pervasive Computing and Applications, 2008. ICPCA 2008, vol. 1, pp. 260- 263 , 2008. 115 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità [109] Z. Liu, L. Liu, H. Kang e S. Zhong, «Ontology-based user modeling for adaptive educational hypermedia system,» Computer Science & Education, 2009 ICCSE '09. 4th International Conference on, vol. doi: 10.1109/ICCSE.2009.5228465, pp. 1203-1207, 2009. [110] S. Prabaharan e R. Wahidabanu, «Ontological Approach for Effective Generation of Concept Based User Profiles to Personalize Search Results,» Journal of Computer Science, vol. 8, n. 2, pp. 205-215, 2012. [111] T. Murray, «Authoring knowledge-based tutors: tools for content, instructional strategy, student model, and interface design,» J. Learning Sciences,, vol. 7, n. 1, pp. 5-64, 1998. [112] R. Mizoguchi, K. Sinitsa e M. Ikeda, «Task ontology design for intelligent educational/training systems,» Proceedings of the Ws. on Architectures and Methods for Designing Cost-Effective and Reusable ITSs at ITS’1996, pp. 1-21, 1996. [113] L. Hella e J. Krogstie, «A Profile Ontology for Personalised Mobile Shopping Support,» in 1st International Workshop on Adaptation, Personalization and REcommendation in the Social-semantic Web (APRESW 2010), Heraklion, Greece, 2010. [114] M. Hatala e R. Wakkary, «Ontology-based user modelling in an augmented audio reality system for museums,» User Modelling and User-Adapted Interaction, vol. 15, n. 3, pp. 339-380, 2005. [115] M. Hatala, R. Wakkary e L. Kalantari, «Ontologies and rules in support of real-time ubiquitous application,» J. Web Semantics, vol. 3, n. 1, pp. 5-22, 2005. [116] S. Sosnovsky, «Ontological Technologies for user modelling,» [Online]. Available: http://www.sis.pitt.edu/~sergeys/papers/SOA_Sosnovsky_revised.pdf. [117] N. M. Stephens e M. L. Huhns, «Personal ontologies,» IEEE Internet Computing, vol. 3, n. 5, pp. 8587, 1999. [118] D. Heckmann, T. Schwartz, B. Brandherm, M. Schmitz e M. von Wilamowitz-Moellendorff, «Gumo – The General User Model Ontology,» in In: L. Ardissono, P. Brna & A. Mitrovic (eds.), Proceedings of the 10th International Conference on User Modeling (UM'2005), Edinburgh, UK, Springer Verlag, 2005, pp. 428-432. [119] D. Heckmann, «Towards a General User Model Ontology (GUMO),» in Workshop „Ontologies for Personal Memory“, DFKI Saarbrücken, 2005. [120] «FOAF project,» 2006. [Online]. Available: http://www.foaf-project.org/. [121] S. Grzonkowski, A. Gzella, R. K. S., G. Breslin, W. J. e J. Dobrzanski, «Sharing information across community portals with FOAFRealm,» In International Journal of Web Based Communities (IJWBC), vol. 5, n. 3, pp. 351-370, 2009. [122] Y. Zeng, Y. Wang, D. Damljanovic e Z. Huang, «E-foaf:interest Vocabulary Specification 0.3,» [Online]. Available: http://wiki.larkc.eu/e-foaf:interest. [123] FOAFEstensions, «FOAF Estensions,» [Online]. Available: http://wiki.foaf-project.org/w/FoafExtensions. [124] K. Reinecke, G. Reif e A. Bernstein, «Cultural User Modeling With CUMO: An Approach to Overcome the Personalization Bootstrapping Problem,» in The 6th International Semantic Web Conference and the 2th Asian Semantic Web Conference, BEXCO, Busan KOREA, 2007. [125] G. Hofstede., «Culture’s Consequences: Comparing values, behaviours and organisations across nations,» Sage Publications Inc., 2003. 116 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità [126] M. Stankovic, «Online Presence,» 2010. [Online]. Available: http://online-presence.net/ontology.php. [127] «SIOC,» [Online]. Available: http://sioc-project.org/. [128] P. A. Champin e A. Passant, «SIOC in Action - Representing the Dynamics of Online Communities,» in Proceeding I-SEMANTICS '10 Proceedings of the 6th International Conference on Semantic Systems, New York, NY, USA, 2010. [129] T. Gruber, «Ontology of folksonomy: A mashup of apples and oranges,» Intl Journal on Semantic Web & Information Systems, vol. 3, n. 2, 2007. [130] R. Newman, D. Ayers e S. Russell, «Tag ontology,» 2005. [131] H. L. Kim, A. Passant, J. G. Breslin, S. Scerri e S. Decker, «Review and Alignment of Tag Ontologies for Semantically-Linked Data in Collaborative Tagging Spaces,» In: Proceeding ICSC '08 Proceedings of the 2008 IEEE International Conference on Semantic Computing., pp. 315-322, 2008. [132] «Moat Project,» [Online]. Available: http://moat-project.org/. [133] «SCOT,» [Online]. Available: http://scot-project.org. [134] D. Goldberg, D. Nichols, B. M. Oki e D. Terry, «Using collaborative filtering to weave an information tapestry,» Commun. ACM, vol. 35, n. 12, pp. 61-70, 1992. [135] P. Resnick e H. R. Varian, «Recommender systems,» Communications of the ACM , vol. 40, n. 3, pp. 56-58, 1997. [136] G. Linden, B. Smith e J. York, «Amazon.com recommendations: Item-to-item collaborative filtering,» IEEE Internet Computing, vol. 7, n. 1, pp. 76-80, 2003. [137] G. Adomavicius e A. Tuzhilin, «Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions,» IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, vol. 17, n. 6, pp. 734-749, 2005. [138] E. Vozalis e K. G. Margaritis, «Analysis of recommender systems' algorithms,» in In The 6th Hellenic European Conference on Computer Mathematics & its Applications (HERCMA), Athens, Greece, 2003. [139] M. Balabanovic e Y. Shoham, «Fab: Content-Based, Collaborative Recommendation,» Communications of the ACM, vol. 40, n. 3, pp. 66-72, 1997. [140] B. Mustafa, M. R. J. e R. Elaine, «Explanation for Recommender System: Satisfation vs. Promotion,» University of Texas at Austin, 2004. [141] C. L. Huang e W. Huang, «Handling sequential pattern decay:Developing a two-stage collaborative recommender System,» Electronic Commerce Research and Applications, vol. 8, pp. 117-129, 2009. [142] E. Peis, J. M. Morales-del-Castillo e J. A. D.-L. , «Semantic Recommender System. Analysis of the state of the topic,» Hipertext.net, n. 6, 2008. [143] M. Chen, «Research on Recommender Technology in E-commerce Recommendation System,» In Proceeding of the 2nd International Conforence on Education Technology and Computer (ICETC), vol. 4, pp. 409-413, 2010. [144] Z. Tranos, S. O. Ojo2, S. M. Ngwira e K. Zuva, «A Survey of Recommender Systems Techniques, Challenges and Evaluation Metrics,» International Journal of Emerging Technology and Advanced Engineering, vol. 2, n. 11, pp. 382-386, 2012. 117 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità [145] D. Asanov, «Algorithms and Methods in Recommender Systems,» Berlin Institute of Technology Berlin, Germany. [146] M. kohar e C. Rana, «Survey Paper on Recommendation System,» (IJCSIT) International Journal of Computer Science and Information Technologies, vol. 3, n. 2, pp. 3460-3462, 2012. [147] A. Elgohary, H. Nomir, I. Sabek, M. Samir, M. Badawy e N. A. Yousri, «Wiki-rec: A semantic-based recommendation system using wikipedia as an ontology,» 10th International Conference on Intelligent Systems Design and Applications (ISDA), pp. 1645-1470, 2010. [148] S. Kim e J. Kwon, «Effective Context-aware Recommendation on the Semantic Web,» IJCSNS International Journal of Computer Science and Network Security, vol. 7, n. 8, pp. 154-159, 2007. [149] S. D. A. Loizou, «Recommender systems for the Semantic Web;,» in ECAI 2006 Recommender Systems Workshop, Trento, Italy, 2006. [150] W. Woerndl, C. Schueller e R. Wojtech, «A Hybrid Recommender System for Context-aware Recommendations of Mobile Applications,» IEEE 23rd International Conference on Data Engineering Workshop, pp. .871-878, 17-20 April 2007. [151] B. Adrian, L. Sauermann e T. Roth-Berghofer, «ConTag: A Semantic Tag Recommendation System,» Proceedings of I-Semantics, pp. 297-304, 2007. [152] M. Szomszor e e. al, «Folksonomies, the Semantic Web, and Movie Recommendation,» Proc. of the ESWC’07, pp. 71-84, 2007. [153] P. Cremonesi, A. Tripodi e R. Turrin, «Cross-Domain Recommender Systems,» Data Mining Workshops (ICDMW), 2011 IEEE 11th International Conference on , vol. 11, n. 11, pp. 496-50, 2001. [154] g. Fernández-Tobías, I. Cantador, M. Kaminskas e F. Ricci, «Cross-domain recommender systems: A survey of the State of the Art,» in 1st Spanish Conference on Information Retrieval CERI 2010, Madrid, 2010. [155] K. Pussep, S. Kaune, J. Flick e R. Steinmetz, «A Peer-to-Peer Recommender System with Privacy Constraints,» Complex, Intelligent and Software Intensive Systems, 2009. CISIS '09. International Conference on , pp. 409-414, 2009. [156] P. X. B. Y. F. S. R. Han, «A scalable P2P recommender system based on distributed collaborative filtering,» Elsevier - Expert systems with applications, p. 203–210, 2004. [157] G. Ruffo e R. Schifanella, «A peer-to-peer recommender system based on spontaneous affinities,» ACM Transactions on Internet Technology (TOIT) , vol. 9, n. 1, pp. 1-34, 2009. [158] C.-Z. Yang, I.-X. Chen e P.-J. Wu, «Cross-lingual news group recommendation using cluster-based cross-training,» Taiwan: Computational Linguistics and Chinese Language Processing, pp. 41-60, 2008. [159] K. Uchiyama, «OSUSUME : Cross-lingual Recommender System for Research Papers,» ACM, pp. 3942, 2011. [160] R. Francesco, R. Lior, S. Bracha e P. B. Kantor, Recommender Systems Handbook, London: Springer, 2011. [161] R. Burke, «Hybrid web recommender systems,» in The AdaptiveWeb, Berlin, Heidelberg, 2007, pp. 377-408. [162] B. Robin, «Hybrid Recommender Systems: Survey and Experiments,» User Modeling and UserAdapted Interaction , vol. 12, n. 4, pp. 331-370, 2002. 118 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità [163] J. S. Lee, Survey of Recommender Systems (Collaborative Filtering) - Lecture Notes, California Polytechnic State University - San Luis Obispo, 2013. [164] J. Breese, D. Heckerman e C. Kadie, «Empirical Analysis of Predictive Algorithms for Collaborative Filtering,» in Proc. 14th Conf. Uncertainty in Artificial Intelligence, 1998. [165] X. Su e T. M. Khoshgoftaar, «A Survey of Collaborative Filtering Techniques,» Advances in Artificial Intelligence, vol. 2009, n. doi:10.1155/2009/421425, pp. Article ID 421425, 19 pages, 2009. [166] P. Melville e V. Sindhwani, Encyclopedia of Machine Learning, Springer, 2010. [167] Y. Koren, R. Bell e C. Volinsky, «MATRIX FACTORIZATION TECHNIQUES FOR RECOMMENDER SYSTEMS,» IEEE COMPUTER, vol. 42, n. 8, pp. 30-37, 2009. [168] R. Burke, «Hybrid Recommender Systems: Survey and Experiments,» UMUAI, vol. 12, n. 4, pp. 331-370, 2002. [169] WISE, Wiring Individualized Special Education - Definizione Architettura Sistema per la Condivisione di Risorse/Conoscenze, FIRB RBNE07RTRA: FIRB indetto dal MIUR, 2012. [170] Sean M. McNee, John Riedl, Joseph A. Konstan, «Making recommendations better: an analytic model for human-recommender interaction», Proceeding of CHI EA 2006 Extended Abstracts on Human Factors in Computing Systems, p. 1103-1108. [171] Schein A.I., Popescul A., Ungar L.H, & Pennock D.M. Methods and metrics for cold-start recommendations. Proc. SIGIR ’02 , 253-260. [172] Freyne J., Jacovi M., Guy I., and Geyer, W. Increasing engagement through early recommender intervention. Proc. RecSys '09 , 85-92. [173] Rashid A.M., Albert I., Cosley D., Lam S.K., McNee S.M., & Konstan, J.A. Getting to know you: learning new user preferences in recommender systems. Proc. IUI ’02 , 127-134. [174] Koren Y. Collaborative filtering with temporal dynamics. Proc. KDD ’09 , 447-456. [175] Lathia N., Hailes, S., Capra L., & Amatriain X. 2010. Temporal diversity in recommender systems. Proc. SIGIR ’10 , 210-217. [176] I. Guy, D. Carmel, Social recommender systems, Proceedings of the 20th international conference companion on World wide web, pp. 283--284, 2011 slide presentate disponibili su http://www.slideshare.net/idoguy/social-recommender-systems-tutorial-www-2011-7446137 [177] Iaquinta, L.; de Gemmis, M.; Lops, P.; Semeraro, G.; Filannino, M.; Molino, P., "Introducing Serendipity in a Content-Based Recommender System," Hybrid Intelligent Systems, 2008. HIS '08. Eighth International Conference on , vol., no., pp.168,173, 10-12 Sept. 2008. [178] Kenta Oku, Fusion-based Recommender System for Improving Serendipity, ACM RecSys 2011 Workshop on Novelty and Diversity in Recommender Systems, p.19-26. [179] Cena, F., Console, L., Gena, C., Goy, A., Levi, G., Modeo, S.,Torre, I.(2006). Integrating heterogeneous adaptation techniques to build a flexible and usable mobile tourist guide. AI Communications, 19(4):369-384. [180] Ghisloti De Souza R. (2010). Open Source Recommendation Systems for Mobile Application, ACM RecSys 2010 Workshop on the Practical Use of Recommender Systems, Algorithms and Technologies. 119 NeoLuoghi - Soluzioni per l’esperienza culturale nei luoghi elettivi della surmodernità [181] Girardello, A., Michahelles, F. (2010). AppAware: Which Mobile Applications Are Hot? Proceedings of the 12th International conference on Human Computer Interaction with mobile Devices and Services [182] Hussein, G. (2009). Mobile Recommender System Analysis & Design. Proceedings of NDT '09 First International Conference on Networked Digital Technologies, 2009. [183] Modsching M. et al. (2007). Effectiveness of Mobile Recommender Systems for Tourist Destinations: A User Evaluation. Proceedings of the 4th IEEE Workshop on Intelligent Data Acquisition and Advanced Computing Systems (IDAACS 2007). [184] Ricci, F. (2008). Mobile Recommender Systems. Proceedings of the First Italian Information Retrieval Workshop, pagine 71-75, Padova, Italia. [185] Ricci, F. (2011). Mobile Recommender Systems. International Journal of Information Technology and Tourism. 12(3), pagine 205-231. [186] Wörndl, W., Jan Weicker, W., Lamche B. (2013). Selecting Gestural User Interaction Patterns for Recommender Applications on Smartphones. Proceedings of the Decisions@RecSys workshop, 7th ACM Conference on Recommender Systems, Hong Kong, China. [187] Gamal, H. (2010). Enhanced K-means-Based Mobile Recommender System. The International Journal of Information Studies, Vol. 2, N. 2, p. 71-80. [188] Sean Owen, Robin Anil, Ted Dunning e Ellen Friedman. Mahout in Action. Manning Press. 120