sindbad: a location-aware social networking...
TRANSCRIPT
J. Bao, M. Mokbel, C. Chow. "GeoFeed: A Loca8on Aware News Feed System”, ICDE 2012 J. Levandoski, M. Sarwat, A. Eldawy , M. F. Mokbel. LARS: A Loca8on-‐Aware Recommender System”, ICDE 2012
Motivation
Location-Aware Recommender System Location-Aware News Feed System
Sindbad: A Location-Aware Social Networking System Mohamed Sarwat1, Jie Bao1, Ahmed Eldawy1, Justin J. Levandoski2, Amr Magdy1, Mohamed F. Mokbel1
University of Minnesota1, Microsoft Research2
System Architecture
This work is supported in part by the National Science Foundation under Grants IIS-0811998, IIS-0811935, CNS-0708604, IIS-0952977 and by a Microsoft Research Gift.
M2
M3
M5
M4
M1
M6
Carol
Message Content Location Timestamp M6 Having coffee S6 15:30 M4 An accident S4 14:21 M1 Work finished S1 11:40
Message Content Location Timestamp M5 Back to hotel S5 14:30 M3 A nice bar S3 14:10 M2 Eating at bar S2 14:04
(a) Alice’s Messages
(b) Bob’s Messages
■ Spatial Pull approach
Alice
Spatial Filter
Bob
Grid Index
1. location-based query
2. Alice’s location
3. Get cell
4. Messages in the cell 5. Relevant
Messages
Messages
Advantages: No overhead during offline period. Disadvantages: Bad response time, inefficient for frequently users.
■ Spatial Push approach
Materialized view
Bob
Grid Index
3. Range query
1. location-based query
New message
Other Materialized
views
Other Users
4.Update
2. Relevant Messages
Alice
Advantages: Good response time Disadvantages: Significant overhead to maintain the view
■ Shared Push approach
Advantages: Good response time, reduced overhead Disadvantages: Need to check if views can be shared
Bob
Grid index
3. Range query
1. location-based query
New message
Shared materialized
view Other Users
4.Update
2. Relevant Messages
Alice Filter
" Locations in Existing Social Networks
Location
Tag Range
Queries Spatial
Messages
Sindbad If the news feed func-onality is aware of the inherent loca-ons of users and messages, more relevant news feed will be delivered !"
#"
$!"
$#"
%!"
%#"
&!"
&#"
'!"
'#"
#!"
$!" %!" &!" '!" #!" (!"
Per
cen
tag
e o
f F
ou
rsq
uar
e U
sers
Travel Distance
" Location matters in Recommender Systems
" Preference Locality
" Travel Locality
■ Location-based News Feed ■ At most k messages from each friend ■ Relevant to user’s current location
■ GeoFeed Abstraction ■ Multiple location queries to each friend ■ Return the answer in a time constrain
Three Approaches
Decision Model ■ Per-Query decision model with consideration of the wide
diversity in user activities in social networking system
A
B
C
D
E
F
A
B
C
D
E
F
A
B
C
D
E
F
p System-wide decision
p Per-User decision p Per-Query decision
n To favor user response time More spatial push approach will be adapted System is overkilled to maintain materialized views
n To favor system overhead More spatial pull approach may be adapted User suffers a significant delay to get her news feed
Make smart decisions for each query Guarantee the users get news feed within time constrain Minimize overall system overhead
■ New Message ■ Message ID, Content, TimeStamp, Spatial ■ Relevant to user’s current location
■ New Rating ■ Incorporate User Location ■ Incorporate Item Location
■ Location-based News Feed Query ■ Retrieves messages posted by users that have
spatial extents covering the location of the requesting user.
■ Location-based Recommendation Query ■ Suggests a set of items based on the user
location, item location, and user/item ratings.
User
Mike
.
.
.
.
.
Item
The Muppets
.
.
.
.
.
Ra1ng
5
.
.
.
.
.
User Loca1on Circle Pines, MN
.
.
.
.
.
Mike Alice
E.g.: Mike located at home (Circle Pines, MN) rating “The Muppets” movie
User
Bob
.
.
.
.
.
Item
Restaurant X
.
.
.
.
.
Ra1ng
4.5
.
.
.
.
.
Item Loca1on
Brookly Park, MN
.
.
.
.
.
Restaurant X
Restaurant Y
E.g.: Bob rating restaurant X located at Brooklyn Park, MN
User
Mike
Alice
.
.
.
.
Item
Restaurant X
Restaurant Y
.
.
.
.
Ra1ng
4.5
2
.
.
.
.
Item Loca1on
Brooklyn Park, MN
Mapplewood, MN
.
.
.
.
User Loca1on
Circle Pines, MN
Edina, MN
.
.
.
.
Restaurant X
Restaurant Y
Mike
Alice
E.g.: Mike located at Circle Pines, MN rating restaurant X at Brooklyn Park, MN
Spatial Ratings for Non-spatial Items Non-Spatial Ratings for spatial Items
Spatial Ratings for spatial Items
Recommend Me a Movie that people – in the same vicinity – have liked
Recommend me a nearby restaurant
Merging: reduces the number of maintained cells - trade-off between locality loss and scalability gain Spli;ng: increases number of cells trade-‐off between locality gain and scalability loss
1) Penalize: Penalize each item, with a travel penalty, based on its distance from the user. 2) Rank: Use a ranking func8on that combines the recommenda8on score and travel penalty 3) Incremental Step: Incrementally, retrieve items based on travel penalty, and calculate the ranking score on an ad-‐hoc basis 4) Early Stop: Employ an early stopping condi8on to minimize the list of accessed items to get the K recommended items
User Partitioning + Travel Penalty
+
- Three main goals: 1) Preference Locality, 2)Scalability, 3)Influence.
Influence Levels
Smaller cells à more “localized” answers
Regular Collaborative Filtering
User Par11oning
A salient feature of LARS is that both the user partitioning and travel penalty techniques can be used together with very little change to produce recommendations using spatial user ratings for spatial items.
Spa8al Messages
Users/Friendship
Spa8al Ra8ngs
Loca1on-‐Aware News Feed (GeoFeed)
Loca1on-‐Aware Ranking
Loca1on-‐Aware Recommender (LARS)
Spatial Relevance
Preferences
Sind
bad AP
I Fun
c1on
s
Social Relevance
Spatial Relevance
Social Relevance
New Spa1al Message
Loca1on-‐Aware News Feed query
News Feed
Profile Updates
Recommenda1on
Loca1on-‐Aware Recommenda1on Query
New Spa1al Ra1ng
Foursquare Application . . .
Smart Phone Application
Web Application
Facebook Application