Kdd15 - distributed personalization

38
Aug 11st, 2015 Xu Miao, Lijun Tang, Yitong Zhou, Joel Young LinkedIn Chun-te Chu, Microsoft Anmol Bhasin Groupon Distributed Personalization

Transcript of Kdd15 - distributed personalization

Page 1: Kdd15  - distributed personalization

Aug 11st, 2015Xu Miao, Lijun Tang, Yitong Zhou, Joel Young LinkedInChun-te Chu, MicrosoftAnmol Bhasin Groupon

Distributed Personalization

Page 2: Kdd15  - distributed personalization

MotivationDistributed Learning

PersonalizationExperiments

Page 3: Kdd15  - distributed personalization

Recommendation

Page 4: Kdd15  - distributed personalization

Recommendation

Page 5: Kdd15  - distributed personalization

Recommendation

Page 6: Kdd15  - distributed personalization

Common Solution

Apps Tracking ETL

DM

Delivering

Page 7: Kdd15  - distributed personalization

Common Solution -- Cold Start

Apps Tracking ETL

DM

Delivering

minutes

hours days

Apps

seconds

seconds

seconds

Page 8: Kdd15  - distributed personalization

Common Solution -- Warm Start

Apps Tracking ETL

DM

Delivering

minutes

hours days

seconds

seconds

seconds

Page 9: Kdd15  - distributed personalization

seconds

seconds

seconds

Bring ML Closer to Users

Apps Tracking ETL

DM

Delivering

minutes

hours days

Page 10: Kdd15  - distributed personalization

Distributed Online Learning

▪ Definition:– Agent presents an example – User responses with a reward r– Agent updates the model w

Page 11: Kdd15  - distributed personalization

Distributed Online Learning

▪ Definition:– Agent presents an example – User responses with a reward r– Agent updates the model w

▪ Challenges:– Users’ feedback data too few

▪ Distributed Learning

Page 12: Kdd15  - distributed personalization

Distributed Online Learning

▪ Definition:– Agent presents an example – User responses with a reward r– Agent updates the models

▪ Challenges:– Users’ feedback data too few

▪ Distributed Learning– Everyone has different preferences

▪ Personalization

Page 13: Kdd15  - distributed personalization

MotivationDistributed Learning

PersonalizationExperiments

Page 14: Kdd15  - distributed personalization

▪Bulk Synchronous Parallel (Hadoop & Spark)– ~ Thousands of interactions to converge

Distributed Gradient Descent

Page 15: Kdd15  - distributed personalization

▪Stale Synchronous Parallel [Ho and etc. 13’]– For some users, staleness is forever

Distributed Gradient Descent

What did I do?

Page 16: Kdd15  - distributed personalization

▪Blessing– It is one of the key reasons for PGDs to converge

fast▪Challenge

– It goes diminished, and the data comes later has smaller and smaller impact

– Restart? Residue constant? Hard to manage

Learning Rate

Page 17: Kdd15  - distributed personalization

Alternating Direction Method of Multipliers (ADMMs)

Page 18: Kdd15  - distributed personalization

ADMMs -- Bulk Synchronous Parallel

Page 19: Kdd15  - distributed personalization

ADMMs -- Bulk Synchronous Parallel

Page 20: Kdd15  - distributed personalization

ADMMs -- Asynchronous Parallel[Miao, Chu, Tang, Zhou, Young, Bhasin 15’]

timelinesV1

V1’

V1’’

t0

t1

t2

Page 21: Kdd15  - distributed personalization

ADMMs -- Asynchronous Parallel[Miao, Chu, Tang, Zhou, Young, Bhasin 15’]

timelinesV1

V1’

V1’’

t0

t1

t2

t3

t4

V2

Page 22: Kdd15  - distributed personalization

V1’’

ADMMs -- Asynchronous Parallel[Miao, Chu, Tang, Zhou, Young, Bhasin 15’]

Weighted Merge1

1

timelinesV1

V1’

t0

t1

t2V2 V3

t3

t4

Page 23: Kdd15  - distributed personalization

ADMMs -- Asynchronous Parallel[Miao, Chu, Tang, Zhou, Young, Bhasin 15’]

Master Versions

timelines

Page 24: Kdd15  - distributed personalization

ADMMs -- Asynchronous Parallel[Miao, Chu, Tang, Zhou, Young, Bhasin 15’]

▪Same convergence rate as Bulk Synchronous Parallel▪No learning rate

– Out-of-order sequences of mini-optimizations– Continuous Learning

Page 25: Kdd15  - distributed personalization

MotivationDistributed LearningPersonalization

Experiments

Page 26: Kdd15  - distributed personalization

Personalized Models

Page 27: Kdd15  - distributed personalization

Personalized Models

Page 28: Kdd15  - distributed personalization

Personalized Models

▪The personalization strength:– Allow divergence of personal models from the

consensus model– Improve relevance– Improve convergence (speed)

Page 29: Kdd15  - distributed personalization

MotivationDistributed LearningPersonalization

Experiments

Page 30: Kdd15  - distributed personalization

Facial Expression Recognition

Page 31: Kdd15  - distributed personalization

Facial Expression Recognition

Page 32: Kdd15  - distributed personalization

Facial Expression Recognition

Page 33: Kdd15  - distributed personalization

Job Recommendation

Page 34: Kdd15  - distributed personalization

Job Recommendation

Page 35: Kdd15  - distributed personalization

Speed

Page 36: Kdd15  - distributed personalization

Conclusion

▪Asynchronous ADMMs– Continuous learning

▪Personalized Models– Fits users better– Improves convergence speed

Page 37: Kdd15  - distributed personalization

Thank You and Questions

Page 38: Kdd15  - distributed personalization

ADMMs -- Asynchronous Parallel

▪Delay variations – Weighted Merge (v.s. Stale Synchronous Parallel)– Flexible to handle non-stationary distribution

▪Crazy active users▪Passive important users▪Spammers