group recommendationpeterb/2480-171/grouprecomm.pdf · • situation where explicit support for the...

54
Group Recommendation Peter Brusilovsky with slides of Danielle Lee IS2480 Adaptive Information Systems

Upload: others

Post on 12-Sep-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Group Recommendation Peter Brusilovsky with slides of Danielle Lee IS2480 Adaptive Information Systems

Page 2: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

The difference between individuals & Group in recommending information •  Social Influence, a process where people directly

or indirectly influence the thoughts, feelings and actions or others. ▫  Conformity, compliance and obedience.

• Opinion leaders, a person who has important effects on group decision-making

Page 3: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Existing group recommenders (P. 598)

• Recommendation domains ▫  Web/News Pages ▫  Tourist Attractions ▫  Music Tracks ▫  Television Programs and Movies

• Media to deliver recommendations ▫  Web-based system ▫  Information Kiosk ▫  TV/Audio Players

• However, compared with the recommenders for individual users, the number is limited.

Page 4: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Main Steps of Group Recommendation

• Acquiring preferences of group members

• Generating recommendations • Presenting and explaining

recommendations to the members • Helping the members’ consensus

about recommendations

Page 5: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Acquiring information about Group members’ preferences

Page 6: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Introduction •  The methods for acquiring information about

users’ preferences are not much different with the methods applied in recommender for individuals

• However, the adaptation to the preference of the group in giving recommendation is different and is the focus of research

Page 7: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Acquiring Preferences •  Implicitly acquired preferences ▫  Flytrap: noticing what MP3 files each user plays on his/her own

computer ▫  Let’s Browse: analyzing the words that occur in each user’s

homepages •  Explicitly acquiring preferences ▫  PocketRestaurantFinder: asking each user’s restaurant

preferences by cuisine, price, amenity, location, etc. ▫  Travel Decision Forum: asking each user preferences about travel

attributes ▫  PolyLens: each user does rate individual movies ▫  I-Spy: the selections of query results are perceived as their

preference and query relevancy. •  Negative Preferences ▫  Adaptive Radio: focus on negative preferences for playing music

for groups and avoid the playing of music disliked by any member.

Page 8: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Adapting Preference Acquisition •  In group recommenders, each member may have

some interest in knowing the other members’ preferences… ▫  To save effort. ▫  To learn from other members

• Collaborative preference specification ▫  Taking into account attitudes and anticipated

behavior of other members ▫  Encouraging assimilation to facilitate the reaching

of agreement.

Page 9: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Travel Decision Forum

Page 10: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

CATS (Collaborative Advisory Travel System)

Page 11: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into
Page 12: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Fostering Information Exchange

Page 13: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

CHOICLA Group Decision Support

Page 14: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Generating recommendation

Page 15: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

How to Recommend to a Group?

• Regular approaches will produce a set of independent recommendations for independent preferences

• How/where to merge? •  Three most typical ways are ▫  Merging of recommendations made for

individuals ▫  Aggregating ratings for individuals ▫  Constructing group preference models

Page 16: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Merging recommendations for individuals •  For each member mj : ▫  For each candidate ci, predict the rating rij of ci by mj. ▫  Select the set of candidates Cj with the highest

predicted ratings rij for mj. •  Recommend Uj Cj , the union of the set of

candidates with the highest predicted ratings for each member.

•  Easy extension of the recommendations for individual users.

•  Example: one kind of recommendations in PolyLens •  The recommendations does not in itself indicate

which solutions are best for the group as a whole.

Page 17: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Aggregating ratings for individuals

•  For each candidate ci: ▫  For each member mj predict the rating rij of ci by

mj. ▫  Compute an aggregate rating Ri from the set {rij}.

• Recommend the set of candidates with the highest predicted ratings Ri.

Page 18: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Constructing group preference models •  Construct a preference model M that represents the

preferences of the group as a whole. ▫  Let’s Browse: Forming a linear combination of individual user

models which are sets of keyword/weight pairs ▫  Intrigue: weighted average of subgroup preference models with

the weights reflecting the importance of the subgroups. ▫  Travel Decision Forum: preference specification form reflecting

the group preference model as a whole ▫  I-Spy: Individual group members’ behaviors are directly

modeling the preferences of the group without individual model. •  For each candidate ci, use M to predict the rating Ri for the

group as a whole. •  Recommend the set of candidates with the highest predicted

ratings Ri.

Page 19: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Goals to be considered in preference aggregation • Maximizing average satisfaction • Minimizing misery • Ensuring some degree of fairness •  Treating group members differently where

appropriate • Discouraging manipulation of the

recommendation mechanism • Ensuring comprehensibility and acceptability •  Preference specifications that reflect more than

the individual users’ personal taste.

Page 20: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Possible Strategies I •  Plurality voting ▫  Each voter votes for his or her most preferred

alternative. •  Utilitarian Strategy ▫  Utility values for each alternative, expressing the

expected U instead of just using ranking information •  Borda Count (Borda, 1781). ▫  Points are awarded to each alternative according to its

position in the individual’s preference list: the alternative at the bottom of the list gets zero points, the next one up one point, etc.

Masthoff, J. (2004). "Group modeling: Selecting a sequence of television items to suit a group of viewers." User Modeling and User Adapted Interaction 14(1): 37-85.

Page 21: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Possible Strategies II • Copeland Rule (Copeland, 1951). ▫  A form of majority voting. It orders the

alternatives according to the Copeland index: the number of times an alternative beats other alternatives minus the number of times it loses to other alternatives

• Approval Voting. ▫  Voters are allowed to vote for as many alternatives

as they wish. This is intended to promote the election of moderate alternatives: alternatives that are not strongly disliked.

Page 22: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Possible Strategies III

•  Least Misery Strategy. ▫  Make a new list of ratings with the minimum of

the individual ratings. Items get selected based on their rating on that list, the higher the sooner. The idea behind this strategy is that a group is as happy as its least happy member.

• Most Pleasure Strategy. ▫  Make a new list of ratings with the maximum of

the individual ratings. Items get selected based on their rating on that list, the higher the sooner.

Page 23: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Possible Strategies IV • Average Without Misery Strategy ▫  Make a new list of ratings with the average of the

individual ratings, but without items that score below a certain threshold (say 4) for individuals.

•  Fairness Strategy ▫  Top items from all individuals are selected. When

items are rated equally, the others’ opinions are taken into account.

• Most Respected Person Strategy (Dictatorship) ▫  The ratings of the most respected person are used

Page 24: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Presenting and explaining recommendations to the

members

Page 25: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

The need for explanation in group recommendations • Understand how other members opinions

affect the suggested information • Understand how the recommendation was

derived

Page 26: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into
Page 27: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into
Page 28: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Visualized explanation on the Flytrap

Page 29: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Explanation on I-Spy

• Related queries • Quantitative and temporal information ▫  “10% of searchers have also selected this result for

similar queries as recently as 15 minutes ago” •  The names of users who are responsible for the

promotion of the page.

Page 30: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Helping the members to achieve consensus about

recommendations

Page 31: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Ending up the recommendation with a consensus •  Unlikely with individual recommendation, extensive

debate and negotiation may be required. •  Situation where explicit support for the final decision is

unnecessary ▫  The system simply translates the recommendation into

action �  Adaptive Radio, Flytrap and MusicFX play the recommended

music automatically ▫  One group member is responsible for making the final

decision �  Let’s Browse and Intrigue have an assumption that one person

is in charge of the selection ▫  Group members will arrive the final decision through

conversational discussion �  CATS vacation recommender on DiamondTouch interactive

table

Page 32: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Points to consider in designing group recommender • Whether the group members should be

allowed to see each other’s votes • How the votes should be counted and

weighted • How the results of voting should be

presented • How the final decisions ought to be made

Page 33: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Chen, Y., Cheng, L. & Chuang, C. (2007) A group recommendation system with

consideration of interactions among group members

(Expert Systems with Applications, 34, pp. 2082 ~ 2090)

Page 34: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Introduction

•  This is to recommend items based on social interaction among group members.

• Genetic algorithm (GA) was used to learn a group rating of item iz based on the group members’ ratings and subgroups’ ratings.

•  They used item similarity based collaborative filtering recommendation.

Page 35: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Procedure to recommend items •  Choose a set of neighbor items for item iz . •  Filter unnecessary neighbor items and form the best

neighbor item set. ▫  Best neighbor items are the items that the group

already rated or that have enough information to be predicted.

•  Group ratings for the neighbor items are predicted by the individual group members ratings or sub-groups’ ratings.

•  According to the actual ratings or predicted ratings by the group, the item iz‘s rating is anticipated.

Page 36: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Experiment Results

Page 37: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Park, M., Park, H. & Cho, S. (2008) Restaurant Recommendation for Group of

People in Mobile Environments using Probabilistic Multi-criteria Decision

Making (Proc. of Proceedings of the 8th Asia-Pacific

conference on Computer-Human Interaction)

Page 38: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Introduction • Recommendation is based on context of the

mobile devices. ▫  The user preference is collected from users’ mobile

devices. • Context-log collection • Modeling user preference using Bayesian

Network •  Integrating individual user’s preference as a

group using multi-criteria decision making • Recommending a good restaurant

Page 39: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Data Collection & Modeling Preference

• Collected Contextual Information ▫  Weather, season, location and various user inputs

(for instance, restaurant type, mood, price, event category, distances of restaurant and so forth) from mobile devices.

• K2 algorithm and maximum likelihood estimation are used to learn BN.

Page 40: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Learned Bayesian Network model

Page 41: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Multi-criteria Decision Making

• Analytic Hierarchy Process was used. ▫  The probabilistic that each criteria is selected was

counted for individual group members and according to the members’ preference, the weight for the criteria was decided.

Page 42: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Screen shot of the recommender

Page 43: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Experiments

• With 90 restaurants, experiments were done with 153 subjects and 50 groups under 10 situations

• Accuracy comparison of simple rule-based recommendation, random recommendation and Bayesian network model based recommendation.

Page 44: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Result

Page 45: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into
Page 46: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Baatarjav, E., Phithakkitnukoon, S. & Dantu, R. (2008)

Group Recommendation System for Facebook

(Proc. of On the Move to Meaningful Internet Systems: OTM 2008 Workshops, pp. 211-219)

Page 47: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Introduction •  To recommend interesting group to facebook

users. ▫  There are many groups have similar

characteristics and due to the overwhelming volume, it is not easy to find good group for users to join. ▫  Groups are self-organized. ▫  Group members’ characteristics shape

characteristic of the group. �  Based on the characteristics of the group members,

the recommendations were generated.

Page 48: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Data Collection & Process (1) • Using Facebook API ▫  In a university’s social networks, 1580 User

accounts, their friends connections, and groups where they belong to were collected. ▫  Especially 17 common interest groups were chosen

and minimum group size (number of members) was 10 and maxmum was 319. �  Groups were about friends, politics, languages,

beliefs & causes, beauty, food & drink, religion & spirituality, age, activities, sexuality and hobbies & crafts (11 cate).

Page 49: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Data Collection & Process (2)

•  15 features were extracted from facebook – location of the member, age, gender, relationship status, political view, activities, interest, music, TV shows, movies, books, affiliations, note accounts, wall counts, and number of friends in the group.

Page 50: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Data Collection & Process (3) •  Deducting Noise – using Hierarchical clustering

analysis. ▫  Calculating a similarity using distance matrix ▫  Calculating clustering coefficient to find the cutoff

point such that noise can be reduced and find the innermost part of the group.

•  Building Decision Tree – based on Binary recursive partitioning. ▫  No difference in the final decision tree with different

splitting rules like Gini, Twoing and Deviance.

Page 51: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Different user patterns for different groups (1)

Page 52: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Different user patterns for different groups (2)

Page 53: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Results (1)

•  50:50 Split testing ▫  Accuracy rate is measured by the ratio of correct

clustered members to the total testing members ▫  64% accuracy without clustering and 73% with

clustering. ▫  343 (32% of the total members) were found to be

noise.

Page 54: Group Recommendationpeterb/2480-171/GroupRecomm.pdf · • Situation where explicit support for the final decision is unnecessary The system simply translates the recommendation into

Result (2)