• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Crab - A Python Framework for Building Recommendation Systems

Crab - A Python Framework for Building Recommendation Systems



Keynote introducing the Framework Crab: A Python toolkit for bulding recommendation engines. It is a open source project as an alternative for Mahout Taste for Python developers....

Keynote introducing the Framework Crab: A Python toolkit for bulding recommendation engines. It is a open source project as an alternative for Mahout Taste for Python developers.
Presented at XII Python User Group Pernambuco, 07-05-2011 at CIN/UFPE.



Total Views
Views on SlideShare
Embed Views



47 Embeds 4,292

http://aimotion.blogspot.com 2158
http://pugpe.wordpress.com 542
http://aimotion.blogspot.in 359
http://aimotion.blogspot.com.br 193
http://aimotion.blogspot.co.uk 167
http://aimotion.blogspot.ca 102
http://aimotion.blogspot.de 74
http://aimotion.blogspot.fr 65
http://aimotion.blogspot.com.au 60
http://aimotion.blogspot.jp 55
http://aimotion.blogspot.com.es 48
http://aimotion.blogspot.tw 41
http://aimotion.blogspot.kr 35
http://aimotion.blogspot.nl 35
http://aimotion.blogspot.se 34
http://aimotion.blogspot.it 29
http://aimotion.blogspot.sg 29
http://aimotion.blogspot.com.ar 29
http://aimotion.blogspot.hk 28
http://aimotion.blogspot.ru 26
http://aimotion.blogspot.pt 22
http://aimotion.blogspot.ie 17
http://aimotion.blogspot.mx 16
http://aimotion.blogspot.co.il 16
http://aimotion.blogspot.gr 15
http://translate.googleusercontent.com 12
http://aimotion.blogspot.fi 10
http://aimotion.blogspot.co.at 10
http://aimotion.blogspot.hu 8
http://aimotion.blogspot.ch 8
http://aimotion.blogspot.be 7
http://aimotion.blogspot.cz 7
http://aimotion.blogspot.ae 6
http://aimotion.blogspot.ro 6
url_unknown 4
http://aimotion.blogspot.com.tr 4
http://aimotion.blogspot.co.nz 3
http://cncc.bingj.com 2
http://aimotion.blogspot.no 2
http://www.aimotion.blogspot.com.br 1
https://www.google.de 1
http://aimotion.blogspot.sk 1
http://aimotion.blogspot.dk 1
https://snapbrowse.com 1
http://aimotion.blogspot.nl.sixxs.org 1
http://www.slideshare.net 1
http://fbweb-test.comoj.com 1



Upload Details

Uploaded via as Apple Keynote

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.


11 of 1 previous next

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • Very cool framework!
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

Crab - A Python Framework for Building Recommendation Systems Crab - A Python Framework for Building Recommendation Systems Presentation Transcript

  • Crab A Python Framework for Building Recommendation EnginesMarcel Caraciolo Ricardo Caspirro Bruno Melo @marcelcaraciolo @ricardocaspirro @brunomelo
  • What is Crab ? A python framework for building recommendation enginesA Scikit module for collaborative, content and hybrid filtering Mahout Alternative for Python Developers :D Open-Source under the BSD license https://github.com/muricoca/crab
  • When started ?It began one year agoCommunity-driven, 4 membersSince April,2011 the open-source labs Muriçoca incorporated itSince April,2011 rewritting it as sub-module of Scikit-learn https://github.com/muricoca/
  • Knowing ScikitsScikits are Scipy Toolkits - independent and projects hosted under a common namespace. Scikits Image Scikits MlabWrap Scikits AudioLab Scikit Learn .... http://scikits.appspot.com/scikits
  • Knowing Scikits Scikit-Learn Machine Learning Algorithms + scientific Python packages (Numpy, Scipy and Matplotlib) http://scikit-learn.sourceforge.net/Our goal: Incorporate the Crab as Scikit and part of it as submodule of Scikit-Learn
  • Why Recommendations ?The world is an over-crowded place !"#$%&()$*+$,-$&.#/0&%)#)$1(,0#
  • Why Recommendations * +,&-.$/).#&0#/"1.#$%234(".# ? $/)#5(&6 7&.2.#"$4,#)$8 We are overloaded * 93((3&/.#&0#:&3".;#5&&<.# $/)#:-.34#2%$4<.#&/(3/"Thousands of news articles and blog posts each day * =/#>$/&3;#?#@A#+B#4,$//"(.;# 2,&-.$/).#&0#7%&6%$:.# Millions of movies, books and music tracks online "$4,#)$8 Several Places, Offers and Events * =/#C"1#D&%<;#.""%$(# Even Friends sometimes we are overloaded ! 2,&-.$/).#&0#$)#:"..$6".# Ask Charlie Sheen (@charliesheen)... ."/2#2&#-.#7"%#)$8
  • Why Recommendations ?We really need and consume only a few of them! “A lot of times, people don’t know what they want until you show it to them.” Steve Jobs “We are leaving the Information age, and entering into the Recommendation age.” Chris Anderson, from book Long Tail
  • Why Recommendations ?Can Google help ? Yes, but only when we really know what we are looking for But, what’s does it mean by “interesting” ?Can Facebook help ? Yes, I tend to find my friends’ stuffs interesting What if i had only few friends and what they like do not always attract me ?Can experts help ? Yes, but it won’t scale well. But it is what they like, not me! Exactly same advice!
  • Why Recommendations ? Recommendation SystemsSystems designed to recommend to me something I may like
  • Why Recommendations ? ! "#$%"’ $"’ ( ’ ) *#*+ ) & , Recommendation Systems -+ + *#) . - #/ ’ ) 0 #) 1# !2’ 2 3&"+ ) 1 4’ 5, 6 7 ) , *% "& ’ 863 Graph Representation
  • The current CrabCollaborative Filtering algorithms User-Based, Item-Based and Slope OneEvaluation of the Recommender Algorithms Precision, Recall, F1-Score, RMSE Precision-Recall Charts
  • The current Crab Demo Movies Recommendationhttps://github.com/marcelcaraciolo/crab/blob/master/crab/tests/test_recommender.py
  • Why migrate ?Old Crab running only using Pure Python Recommendations demand heavy maths calculations and lots of processingCompatible with Numpy and Scipy libraries High Standard and popular scientific libraries optimized for scientific calculations in PythonScikits projects are amazing! Active Communities, Scientific Conferences and updated projects (e.g. scikit-learn)Turn the Crab framework visible for the community Join the scientific researchers and machine learning developers around the Globe coding with Python to help us in this project Be Fast and Furious
  • Why migrate ?Numpy optimized with PyPy 2.x - 48.x Faster http://morepypy.blogspot.com/2011/05/numpy-in-pypy-status-and-roadmap.html
  • How are we working ? Sprints, Online Discussions and Issueshttps://github.com/muricoca/crab/wiki/UpcomingEvents
  • Future Releases Planned Release 0.1 Collaborative Filtering Algorithms working, sample datasets to load and test Planned Release 0.11 Evaluation of Recommendation Algorithms and Database Models support Planned Release 0.12 Recommendation as Services with REST APIs....
  • Join us!1. Read our Wiki Page https://github.com/muricoca/crab/wiki/Developer-Resources2. Check out our current sprints and open issues https://github.com/muricoca/crab/issues3. Forks, Pull Requests mandatory4. Join us at irc.freenode.net #muricoca or at our discussion list in work :(
  • Crab A Python Framework for Building Recommendation Engines https://github.com/muricoca/crabMarcel Caraciolo Ricardo Caspirro Bruno Melo @marcelcaraciolo @ricardocaspirro @brunomelo {marcel, ricardo,bruno}@muricoca.com