Context-Aware Recommender Systems for Mobile Devices

Preview:

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

mbraunhofer@unibz.it

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.

Recommended