Collaborative Filtering Meets Mobile Recommendation: A User-centered Approach

21
Collaborative Filtering Meets Mobile Recommendation: A User-centered Approach Vincent W. Zheng , Bin Cao , Yu Zheng , Xing Xie , Qiang Yang Hong Kong University of Science and Technology Microsoft Research Asia This work was done when Vincent was doing internship in Microsoft Research A 1

description

Collaborative Filtering Meets Mobile Recommendation: A User-centered Approach. Vincent W. Zheng † , Bin Cao † , Yu Zheng ‡ , Xing Xie ‡ , Qiang Yang † † Hong Kong University of Science and Technology ‡ Microsoft Research Asia. - PowerPoint PPT Presentation

Transcript of Collaborative Filtering Meets Mobile Recommendation: A User-centered Approach

Page 1: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

1

Collaborative Filtering Meets Mobile Recommendation:

A User-centered ApproachVincent W. Zheng†, Bin Cao†, Yu Zheng‡, Xing Xie‡, Qiang Yang†

†Hong Kong University of Science and Technology‡Microsoft Research Asia

This work was done when Vincent was doing internship in Microsoft Research Asia.

Page 2: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

2

IntroductionUser GPS trajectories accumulated on the Web

A GPS trajectory

A comment

Page 3: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

3

MotivationMobile Recommendation

From Bing 3D map

Travel experience:Some places are more popular than the othersUser activities:“Nice food!” --> Enjoy food there

Nice food!

Big sale!

Page 4: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

4

GoalUser-centric Recommendation

Location Recommendation Question: I want to find nice food, where should I

go?

Activity Recommendation Question: I will visit the downtown, what can I do

there?

Page 5: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

5

GPS Log ProcessingGPS trajectories*

p4

p3

p5

p6

p7

a stay point sp1

P2

Latitude, Longitude, Arrival Timestampp1: 39.975, 116.331, 9/9/2009 17:54p2: 39.978, 116.308, 9/9/2009 18:08 …pK: 39.992, 116.333, 9/12/2009 13:56

a GPS trajectorystay region r

Raw GPS points Stay points

• Stand for a geo-spot where a user has stayed for a while• Preserve the sequence and vicinity info

Stay regions

• Stand for a geo-region that we may recommend • Discover the meaningful locations

* In GPS logs, we have some user comments associated with the trajectories. Shown later.

Page 6: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

6

Data ModelingUser -> Location -> Activity

Activity: tourism

“User Vincent: We took a tour bus to see around along the forbidden city moat …”

GPS: “39.903, 116.391, 14/9/2009 15:25”

Stay Region: “39.910, 116.400 (Forbidden City)”

+1

Forb

idden

City

VincentTourism

Alex…

Bird’s

Nest

Page 7: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

7

How to Do Recommendation?If the tensor is full, then for each user:

Vincent

Tourism

Alex

Bird’s

Nest

2 1 6

4 3 2

5 4 1

Forb

idden

City

Bird’s

Nest

Zhong

guan

cun

Location recommendation for VincentTourism:Forbidden City > Bird’s Nest > Zhongguancun

Tourism

Exhibition

Shopping

Activity recommendation for VincentForbidden City:Tourism > Exhibition > Shopping

Tourism Bird’s

Nest

Vincent

Unfortunately, in practice, the tensor is usually sparse!

Page 8: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

8

Our Collaborative Filtering SolutionRegularized Tensor and Matrix Decomposition

Locations

Use

rs

Activit

ies

Loca

tions

Features

Use

rs

Locations

Use

rs

Users

Ac

tiviti

esActivities

?

Page 9: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

9

Related WorkFew work done before

Either recommend some specific types of locations Shops [Takeuchi & Sugimoto 2006] Restaurants [Horozov, et al. 2006] Travel hot spots [Zheng et al. 2009]

Or only recognize activity without location recommendation Outdoor activity recognition [Liao et al. 2005] Indoor activity recognition [Patterson et al. 2005]

Or do not explicitly model the users Our previous solution [Zheng et al. 2010]

See next slide!

Page 10: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

10

Our Previous Solution at WWW’10Collaborative Location and Activity

Recommendation

Features

Loca

tions

Activities

Loca

tions

Activities

Activ

ities

5 ? ?

? 1 ?

1 ? 6

Forbidden City

TourismExhibitionShopping

Bird’s Nest

Zhongguancun

?

User not explicitly modeled!

1. Not modeling each single user’s Loc-Act history

2. = a sum compression of our tensor

Page 11: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

11

Our modelX X, Y

Y Z

Page 12: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

12

OptimizationMinimize the object function L(X, Y, Z, U)

Gradient descent

Complexity: O (T × (mnr + m2 + r2)) T is #(iteration), m is #(user), n is #(location), r is #(activity)

where

Page 13: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

13

ExperimentsData

2.5 years (2007.4-2009.10) 164 users 13K GPS trajectories, 140K km long 530 comments After clustering, #(loc) = 168; #(user) = 164, #(act) = 5,

#(loc_fea) = 14 The user-loc-act tensor has 1.04% of the entries with values

Evaluation Ranking over the hold-out test dataset Metrics:

Root Mean Square Error (RMSE) Normalized discounted cumulative gain (nDCG)

Page 14: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

14

Baselines – Category ITensor -> Independent matrices [Herlocker et al.

1999]Baseline 1: UCF (user-based CF)

CF on each user-loc matrix + Top N similar users for weighted average

Baseline 2: LCF (location-based CF) CF on each loc-act matrix + Top N similar locations for

weighted averageBaseline 3: ACF (activity-based CF)

CF on each loc-act matrix + Top N similar activities for weighted average

Loc

Use

r

ActLocAct

……

Use

r

Loc UCF LCF

ACF

Page 15: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

15

Baselines – Category IITensor-based CF

Baseline 4: ULA (unifying user-loc-act CF) [Wang et al. 2006] Top Nu similar users, top Nl similar loc’s, top Na similar

act’s Similarities from additional matrices + Small cube for

weight avarageBaseline 5: HOSVD (high order SVD) [Symeonidis

et al. 2008] Singular value decomposition with matrix unfolding

Loc

Use

r

Act loc-fea

user-user

act-act

Nu

Nl

Na

ULA HOSVD

Page 16: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

16

Comparison with BaselinesReported in “mean ± std”

[Herlocker et al. 1999]

[Wang et al. 2006] [Symeonidis et al. 2008]

Page 17: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

17

Comparison with Our Previous Solution at WWW’10Current user-centric solution

Previous generic solution

CurrentSolution

PreviousSolution

RMSE 0.006±0.001

0.041±0.006

nDCGloc0.576±0.043

0.552±0.027

nDCGact0.931±0.009

0.885±0.019

Performance

Page 18: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

18

Impacts of the user numberEvaluated on a fixed set of 25 users w.r.t.

increasing #(user) Based on 10 trials, std not shown in the figures

25 50 75 100 125 150 1640.48

0.5

0.52

0.54

0.56

0.58

0.6

Number of users

nDCG

loc

25 50 75 100 125 150 1640.9

0.91

0.92

0.93

0.94

0.95

0.96

0.97

Number of users

nDCG

act

nDCGloc nDCGact

Page 19: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

19

Impacts of the Model ParametersSome observations

Using additional info (i.e. λi > 0) is better than not (i.e. λi = 0)

Not very sensitive to most parameters Model is robust + Contribution from additional info is limited

As λ2 increases, nDCG for loc recommendation greatly decreases Maybe because the loc-feature matrix is noisy in extracting the

POIs Not directly related to act, so no similar observation for act

recommendation

Page 20: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

20

ConclusionWe showed how to mine knowledge from GPS data to answer

If I want to do something, where should I go?If I will visit some place, what can I do there?

We extended our previous work for user-centric recommendationFrom “Location-Activity” to “User-Location-Activity”From “Matrix + Matrices” to “Tensor + Matrices”

We evaluated our system on a large GPS dataset19% improvement on location recommendation22% improvement on activity recommendation

over the simple memory-based CF baseline (i.e. UCF, LCF, ACF)Future Work

Update the system online

Page 21: Collaborative Filtering Meets Mobile Recommendation:  A User-centered Approach

21

Thanks!Questions?

Vincent W. [email protected]

http://www.cse.ust.hk/~vincentz