Mahout, Machine Learning pour Hadoop par Bertrand Dechoux

1,427
-1

Published on

Un introduction à Mahout, la première librairie de Machine Learning pour Hadoop.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,427
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
16
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Mahout, Machine Learning pour Hadoop par Bertrand Dechoux

  1. 1. Mahout machine learning pour Hadoop Bertrand Dechoux Mercredi 11 Decembre 2013
  2. 2. Réseaux Bayésiens Bertrand Dechoux @BertrandDechoux Certified trainer 2
  3. 3. L’écosystème : une menagerie ZooKeeper PIG Impala 3
  4. 4. Machine learning ? Pour Hadoop? 4
  5. 5. Le programme  Recommendation    user/item-based recommender Clustering   filtrage collaborative kmeans Classification  naive bayes network 5
  6. 6. Pas juste un algo       DevOps TDD A/B Testing Data cleansing Anonymisation Sécurité 6
  7. 7. Bachotage -> overfitting 7
  8. 8. 1 : Recommendation 8
  9. 9. Marketing 1.0 http://www.flickr.com/photos/mpk/4310357482/ 9
  10. 10. Marketing 2.0 10
  11. 11. Collaborative filtering Item 1 item 2 item 3 4 user 1 user 2 item 2 1 3 item 5 1 ... 4 2 ? item 4 4 user 3 user 4 1 user 5 5 user 6 1 4 5 ... 11
  12. 12. item-based / user-based calculer la similarité entre tous ▶ trouver le voisinage ▶ calculer les prediction ▶ 12
  13. 13. Aperçu de l’API DataModel dataModel = new FileDataModel(dataFile); UserSimilarity userSimilarity = new PearsonCorrelationSimilarity(dataModel); UserNeighborhood neighborhood = new NearestNUserNeighborhood(n, userSimilarity, dataModel); UserBasedRecommender recommender = new GenericUserBasedRecommender(dataModel, neighborhood, userSimilarity); List<RecommendedItem> recommendedItems = recommender.recommend(1, 100); 13
  14. 14. Evaluation et Optimisation  différence entre prédiction et observation  comme un moteur de recherche  precision, recall ... 14
  15. 15. Hadoop, realité et matrices   recommendation : solution contre trop de choix il faut calculer O(n2) similaritées ??? 15
  16. 16. Hadoop, realité et matrices s11 s12 p1 X s21 s22 s11 x p1 + s12 x p2 = p2 s21 x p1 + s22 x p2 16
  17. 17. Hadoop, realité et matrices I1 I2 I3 I1 - 1 3 I2 1 - 2 I3 3 2 - User Score 5 X ? -> (1x5+2x3)/3 => 3.7 3 17
  18. 18. MAHOUT-1288 : recommendation = recherche 18
  19. 19. 2 : Clustering 19
  20. 20. Clustering : un regroupement    detection de caractères aperçu de news ... 20
  21. 21. Un monde en n dimensions      OLAP fichier excel, csv modèle entité-association (ERD) filtrage collaboratif ... 21
  22. 22. la base : k-means (Lloyd’s) http://en.wikipedia.org/wiki/K-means_clustering 22
  23. 23. preclustering : canopy https://cwiki.apache.org/confluence/display/MAHOUT/Canopy+Clustering 23
  24. 24. mahout 0.8 : kmeans amélioré  “Fast and Accurate k-means for Large Data Sets”   http://books.nips.cc/papers/files/nips24/NIPS2011_1271.pdf Scalable K-Means++  http://theory.stanford.edu/~sergei/papers/vldb12-kmpar.pdf  https://issues.apache.org/jira/browse/MAHOUT-1154  http://blog.cloudera.com/blog/2013/03/ cloudera_ml_data_science_tools/ 24
  25. 25. 3 : Classification 25
  26. 26. Classification le cousin ‘supervisé’ du Clustering      associer une lettre à un groupe de pixels filtre anti-spam detection de fraudes classification de tumeurs ... 26
  27. 27. Prenons du recul les modèles probabilistes  On veut connaitre : P( Monde )  Pour demander : P( interet | observation) 27
  28. 28. Réseau Bayésien : un framework 28
  29. 29. Naive Bayes Classifier 29
  30. 30. Evaluation : Matrice de confusion prediction : TRUE prediction : FALSE réalité : TRUE true positive false negative réalité : FALSE false positive true negative 30
  31. 31. Le tour est fini! = + Machine Learning =    Recommendation Clustering Classification 31
  32. 32. Merci ! 32
  33. 33. Et pour (vraiment) finir 33
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×