south tyrol suggests - sts
TRANSCRIPT
South Tyrol Suggests - STS
Matthias Braunhofer and Francesco Ricci
Free University of Bozen - BolzanoFaculty of Computer Science{mbraunhofer,fricci}@unibz.it
STS (South Tyrol Suggests)
• 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
2
Intelligent Recommendations!?!
3
Context Recommendations
Sunny + Summer
Sunny + Winter
Rainy
Intelligent Recommendations!?!
3
Context Recommendations
Sunny + Summer
Sunny + Winter
Rainy
Intelligent Recommendations!?!
3
Context Recommendations
Sunny + Summer
Sunny + Winter
Rainy
Intelligent Recommendations!?!
3
Context Recommendations
Sunny + Summer
Sunny + Winter
Rainy
Intelligent Recommendations!?!
3
Context Recommendations
Sunny + Summer
Sunny + Winter
Rainy
Statistics
4
• App usually shown in the top-10 search results
• Total installs: 891
• Avg. rating/total #: 4.60 / 15
Statistics
4
• App usually shown in the top-10 search results
• Total installs: 891
• Avg. rating/total #: 4.60 / 15
Software Architecture & Implementation
5
Android Client
Presentation Layer
Apache Tomcat Server
Objects Managed by Spring IoC Container
Spring Dispatcher Servlet Spring Controllers JSON
HTTP
Update Handling
Session Handling
JPA Entities Hibernate
Service / Application Layer
Database
Web Services
Interaction with the System
6
Interaction with the System
6
Interaction with the System
6
Interaction with the System
6
Interaction with the System
6
Interaction with the System
6
Interaction with the System
6
Interaction with the System
6
Interaction with the System
6
Interaction with the System
6
Interaction with the System
6
Recommendation Task
• Core computations of recommender systems: • Collection of user preferences (ratings): collect user feedback
(ratings) on items to learn the user preferences
• Rating prediction: a model must be built to predict ratings for items not currently rated by the user
• Item selection: a model must be built that selects the N most relevant items for the user
7
Rating Prediction Algorithm (1/2)
• Rating prediction algorithm is based on Matrix Factorization (MF)
• Basic idea of MF: predict unknown ratings by discovering some latent features that determine how a user rates an item; features associated with the user should match with the features associated with the item
8
r11 r12 r13 r14
r21 r22 r23 r24
r31 r32 r33 r34
r41 r42 r43 r44
r51 r52 r53 r54
a b c
xyz=
r q p5 x 4 matrix 5 x 3 matrix 3 x 4 matrix
r42 = (a, b, c) · (x, y, z) = a * x + b * y + c * zȓui = qiTpu
Rating prediction
User preference factor vector
Item preference factor vector
Rating Prediction Algorithm (2/2)
• Context-Aware Matrix Factorization (CAMF): extends standard MF by incorporating baseline parameters for each contextual condition and item pair to capture the deviation of the rating for an item produced by the contextual conditions
9
Item average User bias
Context bias
Preference factor (user-demographics-item-interaction)
Rating = 4
r̂uic1,...,ck = qiT (pu + ya )
a∈A(u )∑ + i + bu + bicj
j=1
k
∑
cj contextual condition jqi latent factor vector of item ipu latent factor vector of user uA(u) set of user attributesya latent factor vector of user attribute aī average rating of item ibu baseline for user ubicj baseline for item-contextual condition icj
Captures the rating deviation due to context (e.g., weather, parking)
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
10
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
11
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
12
Questions?
Thank you.