Upload
matthias-braunhofer
View
495
Download
1
Tags:
Embed Size (px)
DESCRIPTION
In this presentation we illustrate a novel context-aware mobile recommender system for places of interest (POIs). Unlike existing systems, which learn users’ preferences solely from their past ratings, it considers also their personality - using the Five Factor Model. Personality is acquired by asking users to complete a brief and entertaining questionnaire as part of the registration process, and is then exploited in: (1) an active learning module that actively acquires ratings-in-context for POIs that users are likely to have experienced, hence reducing the stress and annoyance to rate (or skip rating) items that the users don’t know; and (2) in the recommendation model that builds up on matrix factorization and therefore can be trained even if the users haven’t rated any items yet.
Citation preview
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Context-Aware Recommender Systems for Mobile Devices
Matthias Braunhofer!
Free University of Bozen - BolzanoDominikanerplatz 3 - Piazza Domenicani 3, 39100 Bozen-Bolzano
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Outline
2
• Introduction: What is a Recommender System?
• Mobile and Context-Aware Recommendations
• A practical example: South Tyrol Suggests
• Conclusions
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Outline
2
• Introduction: What is a Recommender System?
• Mobile and Context-Aware Recommendations
• A practical example: South Tyrol Suggests
• Conclusions
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Information Overload
• The Internet is only 23 years old, but already every 60 seconds 1,500 blog entries are created, 98,000 tweets are shared, and 600+ videos are uploaded to YouTube - BBC News, August 2012
• By 2015, media consumption will raise to 74 GB a day - UCSD Study, 2013
3
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Solution: Recommender Systems
• Recommender systems are (web, mobile, standalone) tools that are becoming more and more popular for supporting the user in finding and selecting relevant products, services, or information
• Examples:
4
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Basics of a Recommender System
5
Input data Recommendations
Recommender System
Background data Algorithm
? ? 3
2 5 4
? 3 4
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Outline
6
• Mobile and Context-Aware Recommendations
• A practical example: South Tyrol Suggests
• Conclusions
• Introduction: What is a Recommender System?
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
• Mobile devices have exceeded PC sales for the first time in 2012 - Digital Trends, February 2012
• Many people have moved several activities (e.g., Internet browsing, content consumption, engaging with apps and services) from their PC to their smartphone or tablet
• Smaller screens and (virtual) keyboards require users to make more effort to search and get what they need
• Users are often forced to use the device in particular situations or in stressful moments
Mobile Systems and Context-Awareness (1/2)
7
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
• By exploiting the information extracted from the user’s context (e.g., season, weather, temperature, mood) it is possible to find the right items to recommend in that specific moment
• Example:
Mobile Systems and Context-Awareness (2/2)
8
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
• Three types of architecture for using context in recommendation (Adomavicius and Tuzhilin, 2008):
• Contextual pre-filtering: context is used to select relevant portions of data
• Contextual post-filtering: context is used to filter/constrain/re-rank final set of recommendations
• Contextual modelling: context is used directly as part of learning preference models
Context-Aware Recommendations
9
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
2-D Model → N-D Model
10
3 ? 4
2 5 4
? 3 4
1 ? 1
2 5
? 3
3 ? 5
2 5
? 3
5 ? 5
4 5 4
? 3 5
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Challenges
• Identification of contextual factors (e.g., weather) that are worth considering when generating recommendations
• Acquisition of a representative set of contextually-tagged ratings
• Development of a predictive model for predicting the user’s ratings for items under various contextual situations
• Design and implementation of a human-computer interaction (HCI) layer on top of the predictive model
11
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Outline
12
• Mobile and Context-Aware Recommendations
• A practical example: South Tyrol Suggests
• Conclusions
• Introduction: What is a Recommender System?
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
• Let’s look at a concrete example - STS - our Android app on Google Play that supports the following functionalities:
• Intelligent recommendations for POIs in South Tyrol that are adapted to the current contextual situation of the user (e.g., weather, location, parking status)
• Eco-friendly routing to selected POIs by public or private transportation means
• Search for various types of POIs across different data sources (i.e., LTS, Municipality of Bolzano)
• User personality questionnaire for preference elicitation support
South Tyrol Suggests (STS)
13
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Intelligent Recommendations!?!
14
Context Recommendations
Sunny + Summer
Sunny + Winter
Rainy
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Intelligent Recommendations!?!
14
Context Recommendations
Sunny + Summer
Sunny + Winter
Rainy
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Intelligent Recommendations!?!
14
Context Recommendations
Sunny + Summer
Sunny + Winter
Rainy
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Intelligent Recommendations!?!
14
Context Recommendations
Sunny + Summer
Sunny + Winter
Rainy
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Intelligent Recommendations!?!
14
Context Recommendations
Sunny + Summer
Sunny + Winter
Rainy
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Why Android?
• Ultimate goal: support both Android and iOS platforms
• Since we couldn’t afford to simultaneously develop for iOS and Android, we decided Android to target for an initial release:
• Developers (UNIBZ students) are familiar with Android
• Very easy to publish to Google Play Store
• No concrete tablet plans as of yet
• Android dominates the global smartphone market - 84.7% market share during Q2 2014 - IDC, August 2014
15
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
• App usually shown in the top-10 search results
• Current/total installs: 165 / 712
• Avg. rating/total #: 4.77 / 13
Statistics
16
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
• App usually shown in the top-10 search results
• Current/total installs: 165 / 712
• Avg. rating/total #: 4.77 / 13
Statistics
16
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
• App usually shown in the top-10 search results
• Current/total installs: 165 / 712
• Avg. rating/total #: 4.77 / 13
Statistics
16
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Interaction with the System
17
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Interaction with the System
17
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Interaction with the System
17
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Interaction with the System
17
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Interaction with the System
17
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Interaction with the System
17
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Interaction with the System
17
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Interaction with the System
17
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Interaction with the System
17
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Interaction with the System
17
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Interaction with the System
17
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Software Architecture and Implementation
18
Android Client
Spring Dispatcher Servlet Spring Controllers
Apache Tomcat Server
Service / Application Layer
JPA Entities Hibernate
Objects managed by Spring IoC Container
Database
JSON HTTP
Web Services
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Software Architecture and Implementation
18
Android Client
Spring Dispatcher Servlet Spring Controllers
Apache Tomcat Server
Service / Application Layer
JPA Entities Hibernate
Objects managed by Spring IoC Container
Database
JSON HTTP
Web Services
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Software Architecture and Implementation
18
Android Client
Spring Dispatcher Servlet Spring Controllers
Apache Tomcat Server
Service / Application Layer
JPA Entities Hibernate
Objects managed by Spring IoC Container
Database
JSON HTTP
Web Services
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Software Architecture and Implementation
18
Android Client
Spring Dispatcher Servlet Spring Controllers
Apache Tomcat Server
Service / Application Layer
JPA Entities Hibernate
Objects managed by Spring IoC Container
Database
JSON HTTP
Web Services
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Software Architecture and Implementation
18
Android Client
Spring Dispatcher Servlet Spring Controllers
Apache Tomcat Server
Service / Application Layer
JPA Entities Hibernate
Objects managed by Spring IoC Container
Database
JSON HTTP
Web Services
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Recommendation Algorithm
19
User modelOpenness to experienceConscientiousnessExtraversionAgreeablenessEmotional stabilityAgeGenderUser ratings
User’s contextBudgetCompanionFeelingTravel goalTransportKnowledge of travel areaDuration of stay
Place modelItem ratings
Place’s contextWeatherSeasonDaytimeWeekdayCrowdednessTemperatureDistance
Recommend places!
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Evaluation
• Several user studies involving > 100 test users
• Test users were students, colleagues, or other people recruited at the Klimamobility Fair and Innovation Festival
• Obtained results:
• Recommendation model successfully exploits the weather conditions at POIs and leads to a higher user’s perceived recommendation quality and choice satisfaction
• Implemented active learning strategy increases the number of acquired ratings and recommendation accuracy
• Users largely accept to follow the supported human-computer interaction and find the user interface clear, user-friendly and easy to use
20
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
A/B Testing
• Purpose: reliably determine which system version (A or B) is more successful
• Prerequisite: you have a system up and running
• Some users see version A, which might be the currently used version
• Other users see version B, which is new and improved in some way
• Evaluate with “automatic” measures (time spent on screens, clicks on a button, etc.) or surveys (SUS, CSUQ, etc.)
• Allows to see if the new version (B) does outperform the existing version (A)
• Probably the most reliable evaluation methodology
21
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Planned Features
• Integration of a multimodal routing system
• Usage of Facebook profile
• Allow users to plan future visits to POIs
• Provide users with push recommendations
• Exploit activity and emotion information inferred from wearable devices in the recommendation process
22
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Outline
23
• Mobile and Context-Aware Recommendations
• A practical example: South Tyrol Suggests
• Conclusions
• Introduction: What is a Recommender System?
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Conclusions
• Recommender systems have become increasingly important as a tool to overcome the information overload problem
• The mobile scenario opens new opportunities but also new challenges to the application of recommender systems
• The future will see the development of virtual personal assistants that will watch users’ actions - what they read, what they ignore, whom they listen to, what they say, which meetings they go to and which they skip, etc. - to learn what they might do to make those users more productive and satisfied
24
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
Questions?
Thank you.