Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Personalised Recommendations
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Edward Tsech
August 09, 2014
Programming
71
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Personalised Recommendations
Edward Tsech
August 09, 2014
More Decks by Edward Tsech
See All by Edward Tsech
Clojure, Web and Luminus
edtsech
1
230
Other Decks in Programming
See All in Programming
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
180
エージェンティックRAGにAWSで入門しよう!
har1101
8
1.4k
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
780
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
210
技術記事、 専門家としてのプログラマ、 言語化
mizchi
5
3.1k
ふつうのFeature Flag実践入門
irof
7
3.7k
AIで効率化できた業務・日常
ochtum
0
120
JavaDoc 再入門
nagise
0
320
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.3k
The NotImplementedError Problem in Ruby
koic
1
710
New "Type" system on PicoRuby
pocke
1
830
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
120
Featured
See All Featured
Between Models and Reality
mayunak
4
330
A Soul's Torment
seathinner
6
2.9k
Navigating Team Friction
lara
192
16k
Raft: Consensus for Rubyists
vanstee
141
7.5k
We Are The Robots
honzajavorek
0
240
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
230
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
480
How to train your dragon (web standard)
notwaldorf
97
6.7k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
Automating Front-end Workflow
addyosmani
1370
210k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
320
Building an army of robots
kneath
306
46k
Transcript
Personalised Recommendations Saturday 9 August 14
About me • Ed Tsech • Clojure, JavaScript developer •
@edtsech on twitter, github Saturday 9 August 14
Content • Collaborative filtering • User based • Item based
• Content based / knowledge based recommendations • Mahout • Movie Recommender Example Saturday 9 August 14
Collaborative Filtering • “Collaborative filtering is a method of making
automatic predictions (filtering) about the interests of a user by collecting preferences or taste information from many users (collaborating).” Saturday 9 August 14
Collaborative Filtering • Last.fm, Twitter, Amazon • Pros • Relatively
precise, ability to recommend items from different categories • Cons • Cold start problem Saturday 9 August 14
User-based Saturday 9 August 14
Saturday 9 August 14
Saturday 9 August 14
Saturday 9 August 14
Saturday 9 August 14
Saturday 9 August 14
Saturday 9 August 14
Item-based Saturday 9 August 14
Saturday 9 August 14
Saturday 9 August 14
Saturday 9 August 14
Saturday 9 August 14
Saturday 9 August 14
Algorithms • Euclidean distance • Pearson Correlation • Tanimoto Coefficient
• ... Saturday 9 August 14
Euclidean distance Saturday 9 August 14
Pearson Correlation Saturday 9 August 14
Pearson vs Euclidean Saturday 9 August 14
Tanimoto Coefficient Saturday 9 August 14
Other Algorithms • Log-likelihood • Slope one • Singular value
decomposition • K nearest neighbors • Cluster-based Saturday 9 August 14
Content Based • Prismatic • Pros • No cold start
problem, ability to recommender new items • Cons • Harder to implement, not so precise, sometimes stupid. Saturday 9 August 14
Hybrid Systems • Netflix • Mix collaborative filtering & content-based
recommendations • Knowledge-based • Add domain information Saturday 9 August 14
Mahout • Scalable machine learning library • User based recommenders
• Item based recommenders • Various algorithms • Evaluation & rescoring features • Hadoop integration Saturday 9 August 14
Reca • Thin Clojure wrapper for Mahout’s single- machine recommendation
algorithms • https://github.com/edtsech/reca Saturday 9 August 14
Movie App Demo • 8400000 ratings • 1.7 Gb database
• 162 037 users • 82 715 movies Saturday 9 August 14
Rescoring • Add application logic to the recommender • Add
domain specific information • Helps to make a hybrid recommender Saturday 9 August 14
Evaluation Evaluation of user based algorithm based on 3% of
whole ratings (y axis - average difference) Saturday 9 August 14
Evaluation Evaluation of item based algorithm based on 33% of
whole ratings (y axis - average difference) Saturday 9 August 14
Performance • 1.5Gb of memory • 250 msecs for user
based recommender • 60-90 secs for item based recommender • 0.1 msecs after caching Saturday 9 August 14
Links • Mahout in Action [book] • Collective intelligence [book]
• http://mahout.apache.org/ • http://blog.comsysto.com/2013/04/03/ background-of-collaborative-filtering-with- mahout/ Saturday 9 August 14