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
Scarica

D3.4 Modelli e soluzioni di profilazione degli utenti