This document discusses context-aware recommender systems for mobile devices. It introduces recommender systems and how they are used to help users find relevant information. It describes how mobile recommender systems can take into account contextual information like location and weather to provide personalized recommendations. As a practical example, it outlines the South Tyrol Suggests app, which provides point of interest recommendations for South Tyrol adapted to the user's context. It also discusses the challenges of building context-aware recommender systems and evaluating their performance.
Context-Aware Recommender Systems for Mobile Devices
1. Context-Aware Recommender Systems for
Mobile Devices
Matthias Braunhofer
!
Free University of Bozen - Bolzano
Dominikanerplatz 3 - Piazza Domenicani 3, 39100 Bozen-Bolzano
mbraunhofer@unibz.it
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
2. 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
3. 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
4. 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
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
3
5. 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:
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
4
6. Basics of a Recommender System
Recommender System
Background data Algorithm
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
5
Input data Recommendations
? ? 3
2 5 4
? 3 4
7. ⢠Introduction: What is a Recommender System?
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
8. Mobile Systems and Context-Awareness (1/2)
⢠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
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
7
9. Mobile Systems and Context-Awareness (2/2)
⢠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:
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
8
10. Context-Aware Recommendations
⢠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
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
9
11. 2-D Model â N-D Model
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
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
12. 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
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
11
13. ⢠Introduction: What is a Recommender System?
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
14. South Tyrol Suggests (STS)
⢠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
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
13
15. Intelligent Recommendations!?!
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
14
Context Recommendations
Sunny +
Summer
Sunny +
Winter
Rainy
16. Intelligent Recommendations!?!
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
14
Context Recommendations
Sunny +
Summer
Sunny +
Winter
Rainy
17. Intelligent Recommendations!?!
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
14
Context Recommendations
Sunny +
Summer
Sunny +
Winter
Rainy
18. Intelligent Recommendations!?!
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
14
Context Recommendations
Sunny +
Summer
Sunny +
Winter
Rainy
19. Intelligent Recommendations!?!
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
14
Context Recommendations
Sunny +
Summer
Sunny +
Winter
Rainy
20. 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
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
15
21. ⢠App usually shown in the
top-10 search results
⢠Current/total installs:
165 / 712
⢠Avg. rating/total #:
4.77 / 13
Statistics
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
16
22. ⢠App usually shown in the
top-10 search results
⢠Current/total installs:
165 / 712
⢠Avg. rating/total #:
4.77 / 13
Statistics
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
16
23. ⢠App usually shown in the
top-10 search results
⢠Current/total installs:
165 / 712
⢠Avg. rating/total #:
4.77 / 13
Statistics
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
16
24. Interaction with the System
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
17
25. Interaction with the System
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
17
26. Interaction with the System
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
17
27. Interaction with the System
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
17
28. Interaction with the System
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
17
29. Interaction with the System
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
17
30. Interaction with the System
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
17
31. Interaction with the System
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
17
32. Interaction with the System
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
17
33. Interaction with the System
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
17
34. Interaction with the System
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
17
35. Software Architecture and Implementation
Apache Tomcat Server
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
18
Android Client
Spring Dispatcher
Servlet Spring Controllers
Service /
Application Layer
JPA Entities
Hibernate
Objects managed by Spring IoC Container
Database
JSON
HTTP
Web Services
36. Software Architecture and Implementation
Apache Tomcat Server
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
18
Android Client
Spring Dispatcher
Servlet Spring Controllers
Service /
Application Layer
JPA Entities
Hibernate
Objects managed by Spring IoC Container
Database
JSON
HTTP
Web Services
37. Software Architecture and Implementation
Apache Tomcat Server
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
18
Android Client
Spring Dispatcher
Servlet Spring Controllers
Service /
Application Layer
JPA Entities
Hibernate
Objects managed by Spring IoC Container
Database
JSON
HTTP
Web Services
38. Software Architecture and Implementation
Apache Tomcat Server
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
18
Android Client
Spring Dispatcher
Servlet Spring Controllers
Service /
Application Layer
JPA Entities
Hibernate
Objects managed by Spring IoC Container
Database
JSON
HTTP
Web Services
39. Software Architecture and Implementation
Apache Tomcat Server
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
18
Android Client
Spring Dispatcher
Servlet Spring Controllers
Service /
Application Layer
JPA Entities
Hibernate
Objects managed by Spring IoC Container
Database
JSON
HTTP
Web Services
40. Recommendation Algorithm
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
19
User model
Openness to experience
Conscientiousness
Extraversion
Agreeableness
Emotional stability
Age
Gender
User ratings
Userâs context
Budget
Companion
Feeling
Travel goal
Transport
Knowledge of travel
aDrueraation of stay
Place model
Item ratings
Placeâs context
Weather
Season
Daytime
Weekday
Crowdedness
Temperature
Distance
Recommend places!
41. 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
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
20
42. 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
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
21
43. 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
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
22
44. ⢠Introduction: What is a Recommender System?
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
45. 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
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano
24
46. Questions?
Thank you.
Computer Science Research Meets Business: App and Mobile Development - October 2014, Bolzano