Context-Aware Recommender Systems for Mobile Devices
-
Upload
matthias-braunhofer -
Category
Internet
-
view
495 -
download
1
description
Transcript of Context-Aware Recommender Systems for Mobile Devices
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.