effects of relevant contextual features in the performance of a restaurant recommender system

40
Effects of relevant contextual features in the performance of a restaurant recommender system Blanca Vargas-Govea, Rafael Ponce-Medell´ ın, Gabriel Gonz ´ alez-Serna cenidet - Computer Science Department. Cuernavaca, Mor., M´ exico [email protected] CARS-2011, October 23, 2011, Chicago, Illinois, USA.

Upload: blanca-vargas-govea

Post on 15-Jun-2015

998 views

Category:

Education


1 download

TRANSCRIPT

Page 1: Effects of relevant contextual features in the performance of a restaurant recommender system

Effects of relevant contextual featuresin the performance of a restaurant

recommender system

Blanca Vargas-Govea, Rafael Ponce-Medellın, Gabriel Gonzalez-Sernacenidet - Computer Science Department.

Cuernavaca, Mor., [email protected]

CARS-2011, October 23, 2011, Chicago, Illinois, USA.

Page 2: Effects of relevant contextual features in the performance of a restaurant recommender system

Outline

1 Motivation

2 Surfeous-the test bed

3 Feature selection

4 Experiments

5 Conclusions

2 / 34

Page 3: Effects of relevant contextual features in the performance of a restaurant recommender system

Context information / personalization

3 / 34

Page 4: Effects of relevant contextual features in the performance of a restaurant recommender system

Looking for a restaurant?

4 / 34

Page 5: Effects of relevant contextual features in the performance of a restaurant recommender system

Unexpected conditions?

5 / 34

Page 6: Effects of relevant contextual features in the performance of a restaurant recommender system

A better option

6 / 34

Page 7: Effects of relevant contextual features in the performance of a restaurant recommender system

How much context is useful?

7 / 34

Page 8: Effects of relevant contextual features in the performance of a restaurant recommender system

How much context is useful?

8 / 34

Page 9: Effects of relevant contextual features in the performance of a restaurant recommender system

How much context is useful?

9 / 34

Page 10: Effects of relevant contextual features in the performance of a restaurant recommender system

How much context is useful?

10 / 34

Page 11: Effects of relevant contextual features in the performance of a restaurant recommender system

How much context is useful?

11 / 34

Page 12: Effects of relevant contextual features in the performance of a restaurant recommender system

How much context is useful?

12 / 34

Page 13: Effects of relevant contextual features in the performance of a restaurant recommender system

A huge amount of data can be intrusive. Moreover, it doesnot necessary improve the system’s performance.

A lack of information can lead the system to generate poorrecommendations.

Approach: attribute selection, semantic models.

Goals

◮ Identification of relevant contextual attributes.◮ Reduction of dimensionality.◮ Analysis of the effects of contextual variables in the

predictive performance of the recommender system.

13 / 34

Page 14: Effects of relevant contextual features in the performance of a restaurant recommender system

Prototype: Surfeous

Social

delicious

ugh

yum!awful superb noisy

slow

indoor outdoor

chinese sunny rainy

location

hungry

likes vegan

entrepreneur

age: 25

credit card

Context

14 / 34

Page 15: Effects of relevant contextual features in the performance of a restaurant recommender system

Surfeous: approaches

Social

[Tso-Sutter et al., 2008]

itemstags

users

items

users

user tags

itemtags

user-based CF

item-based CF

R

RTi

RTu

+

+

Contextual

Semantic web

Semantic Web Rule Language(SWRL)

15 / 34

Page 16: Effects of relevant contextual features in the performance of a restaurant recommender system

Contextual models

user (21)

environment (2)service (23)

16 / 34

Page 17: Effects of relevant contextual features in the performance of a restaurant recommender system

Rules and relations: examples

user - service profileperson(X ) ∧ hasOccupation(X , student) ∧restaurant(R) ∧ hasCost(R, low) → select(X ,R)

user - environment profileperson(X ) ∧ isJapanese(X , true) ∧queryPlace(X ,USA) ∧ restaurant(R) ∧isVeryClose(R, true) → select(X ,R)

environment - service profilecurrentWeather(today , rainy) ∧ restaurant(R) ∧space(R, closed) → select(R)

RelationslikesFood(X ,Y ) X : person, Y : cuisine-typecurrentWeather(X ,Y ) X : query, Y : weatherspace(X ,Y ) X : restaurant, Y : {closed , open}

17 / 34

Page 18: Effects of relevant contextual features in the performance of a restaurant recommender system

Generating recommendations

Surfeous gets the userlocation and searches for the closer restaurants

An ontology is createdin execution time

Relations are created from the attributes of therestaurant profile

SWRL is applied to matchthe context models

Results are ranked basedon the number of contextrules that hold for eachuser query

The social results are added

Person(?x) ^ hasAge(?x, ?y) ^swrlb:greaterThanOrEqual(?y, 12) ^swrlb:lessThanOrEqual...

Ranking1. ----------2. ----------3. ----------...n. ----------

0% 100%

context-free context

only-social only-rules

Fusion

city

latitude

spaceaccepts

cuisineambiance1 2 3

4 5 6

18 / 34

Page 19: Effects of relevant contextual features in the performance of a restaurant recommender system

Generating recommendations

Surfeous gets the userlocation and searches for the closer restaurants

An ontology is createdin execution time

Relations are created from the attributes of therestaurant profile

SWRL is applied to matchthe context models

Results are ranked basedon the number of contextrules that hold for eachuser query

The social results are added

Person(?x) ^ hasAge(?x, ?y) ^swrlb:greaterThanOrEqual(?y, 12) ^swrlb:lessThanOrEqual...

Ranking1. ----------2. ----------3. ----------...n. ----------

0% 100%

context-free context

only-social only-rules

Fusion

city

latitude

spaceaccepts

cuisineambiance1 2 3

4 5 6

19 / 34

Page 20: Effects of relevant contextual features in the performance of a restaurant recommender system

Generating recommendations

Surfeous gets the userlocation and searches for the closer restaurants

An ontology is createdin execution time

Relations are created from the attributes of therestaurant profile

SWRL is applied to matchthe context models

Results are ranked basedon the number of contextrules that hold for eachuser query

The social results are added

Person(?x) ^ hasAge(?x, ?y) ^swrlb:greaterThanOrEqual(?y, 12) ^swrlb:lessThanOrEqual...

Ranking1. ----------2. ----------3. ----------...n. ----------

0% 100%

context-free context

only-social only-rules

Fusion

city

latitude

spaceaccepts

cuisineambiance1 2 3

4 5 6

20 / 34

Page 21: Effects of relevant contextual features in the performance of a restaurant recommender system

Generating recommendations

Surfeous gets the userlocation and searches for the closer restaurants

An ontology is createdin execution time

Relations are created from the attributes of therestaurant profile

SWRL is applied to matchthe context models

Results are ranked basedon the number of contextrules that hold for eachuser query

The social results are added

Person(?x) ^ hasAge(?x, ?y) ^swrlb:greaterThanOrEqual(?y, 12) ^swrlb:lessThanOrEqual...

Ranking1. ----------2. ----------3. ----------...n. ----------

0% 100%

context-free context

only-social only-rules

Fusion

city

latitude

spaceaccepts

cuisineambiance1 2 3

4 5 6

21 / 34

Page 22: Effects of relevant contextual features in the performance of a restaurant recommender system

Generating recommendations

Surfeous gets the userlocation and searches for the closer restaurants

An ontology is createdin execution time

Relations are created from the attributes of therestaurant profile

SWRL is applied to matchthe context models

Results are ranked basedon the number of contextrules that hold for eachuser query

The social results are added

Person(?x) ^ hasAge(?x, ?y) ^swrlb:greaterThanOrEqual(?y, 12) ^swrlb:lessThanOrEqual...

Ranking1. ----------2. ----------3. ----------...n. ----------

0% 100%

context-free context

only-social only-rules

Fusion

city

latitude

spaceaccepts

cuisineambiance1 2 3

4 5 6

22 / 34

Page 23: Effects of relevant contextual features in the performance of a restaurant recommender system

Generating recommendations

Surfeous gets the userlocation and searches for the closer restaurants

An ontology is createdin execution time

Relations are created from the attributes of therestaurant profile

SWRL is applied to matchthe context models

Results are ranked basedon the number of contextrules that hold for eachuser query

The social results are added

Person(?x) ^ hasAge(?x, ?y) ^swrlb:greaterThanOrEqual(?y, 12) ^swrlb:lessThanOrEqual...

Ranking1. ----------2. ----------3. ----------...n. ----------

0% 100%

context-free context

only-social only-rules

Fusion

city

latitude

spaceaccepts

cuisineambiance1 2 3

4 5 6

23 / 34

Page 24: Effects of relevant contextual features in the performance of a restaurant recommender system

Feature selection [Guyon & Elisseeff, 2003 , Yu et al., 2004 ]

Generalities

◮ Machine learning.

◮ Predictive performance.

◮ Storage requirements.

◮ Model understanding.

◮ Data visualization.

Procedures

SubsetGeneration

SubsetEvaluation

ResultValidation

StoppingCriterion

Originalset Subset

Goodnessof subset

YesNo

It looks for

the minimum subset of attributes such that the resultingprobability distribution of the data classes is as close aspossible to the original distribution.

24 / 34

Page 25: Effects of relevant contextual features in the performance of a restaurant recommender system

Algorithm LVF (Las Vegas Filter) [Liu & Setiono, 1996]

Input: maximum number of iterations (Max), dataset (D),number of attributes (N), allowable inconsistency rate (γ)Output: sets of M features satisfying the inconsistency crite-rion (Solutions)Solutions = ∅Cbest = Nfor i = 1 to Max do

S = randomSet(seed); C = numOfFeatures(S)if C < Cbest then

if InconCheck( S,D) < γ thenSbest = S; Cbest = CSolutions = S

end ifelse if C = Cbest and InconCheck(S,D) < γ then

append(Solutions,S)end if

end for25 / 34

Page 26: Effects of relevant contextual features in the performance of a restaurant recommender system

Inconsistency criterion

ICS(A) = S(A)− maxk

Sk (A) (1)

Inconsistency rate

IR(S) =

∑A∈S ICS(A)

|S|(2)

S is a set of instances where A ∈ S, and k is the most frequentclass of the matching instances.

26 / 34

Page 27: Effects of relevant contextual features in the performance of a restaurant recommender system

Toy example

space price franchise smoking RatingA RatingB1 i low n y 0 02 i low n y 1 03 i low n y 2 04 i low n y 1 15 i high n n 0 16 i high n n 1 17 i high n n 2 18 o high y n 1 19 o low n n 1 110 o low n y 2 2

subset Amatching instances: 1, 2, 3, 4n = 4, classes = 0,1,2,1 largest = 1 (2instances)Inconsistency count = 4 - 2 = 2matching instances: 5, 6, 7n = 3, classes = 0,1,2 largest = 1 (1instances)Inconsistency count = 3 - 1 = 2Inconsistency rate = (2+2)/10 = 4/10 = 0.4

subset Bmatching instances: 1, 2, 3, 4n = 4, classes = 0,0,0,1 largest = 0 (3instances)Inconsistency count = 4 - 3 = 1matching instances: 5, 6, 7n = 3, classes = 1,1,1 largest = 1 (3instances)Inconsistency count = 3 - 3 = 0Inconsistency rate = (1+0)/10 = 1/10 = 0.1

27 / 34

Page 28: Effects of relevant contextual features in the performance of a restaurant recommender system

Experiments

Data description

◮ 111 users.◮ 237 restaurants.◮ 1,251 ratings.◮ Rating values: 0,1,2.◮ Rating average: 11.2

ratings per user.

Ratings

Res

taur

ants

05

101520253035404550556065

0 5 10 15 20 25 30 35

Attribute selection

◮ Service contextual model.◮ Input: 5,802 instances.◮ Instance: vector of 23

attributes, class=rating.◮ Consistency selector

algorithm.◮ Best-first search.◮ Weka [Hall et al., 2009].

Minimum attribute subset

cuisine, hours, days, accepts,address (i.e.,78.26% from thewhole set).

28 / 34

Page 29: Effects of relevant contextual features in the performance of a restaurant recommender system

Tests with Surfeous

Purposes

◮ to identify relevantcontextual attributes.

◮ to show that with theminimum attribute subset,the predictive performanceis at least the same as withthe whole attribute set, and

◮ to analyze the effects ofrelevant contextualattributes.

Experimental setup

◮ Leave one out.

◮ Seven subsets: All (23), B(5), C-G (4).

◮ 10 executions for eachsubset.

◮ Baseline: context-free,fusion (average of theintervals between 0.1 and0.9) and context (onlyrules).

29 / 34

Page 30: Effects of relevant contextual features in the performance of a restaurant recommender system

Results: precision/recall/NDCG

subset

Pre

cisi

on

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

0.09

All B C D E F G

type

context.free

fusion

context

subset

Rec

all

0.05

0.10

0.15

0.20

0.25

0.30

0.35

All B C D E F G

type

context.free

fusion

context

subset

ND

CG

0.05

0.10

0.15

0.20

0.25

0.30

0.35

0.40

0.45

0.50

0.55

All B C D E F G

type

context.free

fusion

context

All (23), B (cuisine, hours, days, accepts, address), C (cuisine, hours, days),

D (hours, days, accepts, address), E(cuisine, days, accepts, address), F

(cuisine, hours, accepts, address), G (cuisine, hours, days, accepts)30 / 34

Page 31: Effects of relevant contextual features in the performance of a restaurant recommender system

Precision Recall NDCGFusion D C DRules F C G

◮ Relevant attributes: hours, days, accepts, cuisine.

31 / 34

Page 32: Effects of relevant contextual features in the performance of a restaurant recommender system

Precision Recall NDCGFusion D C DRules F C G

◮ Relevant attributes: hours, days, accepts, cuisine.◮ For recall, the majority of the subsets outperformed the

context-free performance.

31 / 34

Page 33: Effects of relevant contextual features in the performance of a restaurant recommender system

Precision Recall NDCGFusion D C DRules F C G

◮ Relevant attributes: hours, days, accepts, cuisine.◮ For recall, the majority of the subsets outperformed the

context-free performance.◮ For precision and NDCG, fusion obtained similar

performance to the context-free approach.

31 / 34

Page 34: Effects of relevant contextual features in the performance of a restaurant recommender system

Precision Recall NDCGFusion D C DRules F C G

◮ Relevant attributes: hours, days, accepts, cuisine.◮ For recall, the majority of the subsets outperformed the

context-free performance.◮ For precision and NDCG, fusion obtained similar

performance to the context-free approach.◮ Expected items appear in the top-5 list.

31 / 34

Page 35: Effects of relevant contextual features in the performance of a restaurant recommender system

Precision Recall NDCGFusion D C DRules F C G

◮ Relevant attributes: hours, days, accepts, cuisine.◮ For recall, the majority of the subsets outperformed the

context-free performance.◮ For precision and NDCG, fusion obtained similar

performance to the context-free approach.◮ Expected items appear in the top-5 list.◮ Results suggest that the restaurant opening times and its

type of payment are likely to be the most important factorsto make a choice.

31 / 34

Page 36: Effects of relevant contextual features in the performance of a restaurant recommender system

Precision Recall NDCGFusion D C DRules F C G

◮ Relevant attributes: hours, days, accepts, cuisine.◮ For recall, the majority of the subsets outperformed the

context-free performance.◮ For precision and NDCG, fusion obtained similar

performance to the context-free approach.◮ Expected items appear in the top-5 list.◮ Results suggest that the restaurant opening times and its

type of payment are likely to be the most important factorsto make a choice.

◮ Although the performance achieved by the semantic rulesis low, they provide the social approach with features thatenriches the decision process (recall). A deep analysis ofthe set of rules is needed.

31 / 34

Page 37: Effects of relevant contextual features in the performance of a restaurant recommender system

Conclusions and future work

◮ By using a reduced subset of attributes, the systemsperformance was not degraded. Moreover, in the fusionapproach it has been improved.

◮ Feature selection techniques can contribute to improve theefficiency of a contextual recommender system.

◮ Identification of relevant contextual features facilitates abetter understanding of the decision criteria of users.

◮ As part of our future work, we are extending the approachto the three contextual models.

32 / 34

Page 38: Effects of relevant contextual features in the performance of a restaurant recommender system

Effects of relevant contextual featuresin the performance of a restaurant recommender system

Blanca [email protected]

CARS-2011, October 23, 2011

33 / 34

Page 40: Effects of relevant contextual features in the performance of a restaurant recommender system

Guyon, I. & Elisseeff, A. (2003).An introduction to variable and feature selection.Journal of Machine Learning Research, 3, 1157–1182.

Hall, M., Frank, E., Holmes, G., Pfahringer, B., Reutemann, P., & Witten,I. H. (2009).The WEKA data mining software: an update.SIGKDD Explorations Newsletter, 11, 10–18.

Liu, H. & Setiono, R. (1996).A probabilistic approach to feature selection - a filter solution.In 13th International Conference on Machine Learning (pp. 319–327).

Tso-Sutter, K. H. L., Marinho, L. B., & Schmidt-Thieme, L. (2008).Tag-aware recommender systems by fusion of collaborative filteringalgorithms.In Proceedings of the 2008 ACM symposium on Applied computing (pp.1995–1999). New York, USA.

Yu, L., Liu, H., & Guyon, I. (2004).Efficient feature selection via analysis of relevance and redundancy.

Journal of Machine Learning Research, 5, 1205–1224.

34 / 34