MACHINE	
  LEARNING	
  
INTRODUCTION	
  À	
  MLLIB	
  
Hayssam	
  Saleh	
  
ANALYTICS	
  
¢  La	
  découverte	
  de	
  pa5erns	
  dans	
  les	
  données	
  
¢  S’appuie	
  sur	
  l’analyse	
  et	
...
CAS	
  D’UTILISATION	
  
¢  Recommanda=on	
  
¢  Classifica=on	
  de	
  contenu	
  en	
  groupes	
  prédéfinis	
  
¢  Reg...
DE	
  LA	
  DONNÉE	
  À	
  LA	
  CONNAISSANCE	
  
¢  De	
  la	
  donnée	
  à	
  	
  
¢  la	
  connaissance	
  
—  Dois-...
TYPES	
  D’APPRENTISSAGE	
  
¢  Appren=ssage	
  Supervisé	
  
—  Classifica=on	
  
¢  Le	
  résultat	
  est	
  un	
  val...
APPRENTISSAGE	
  SUPERVISÉ	
  
¢  Prédire	
  les	
  labels	
  de	
  données	
  futures	
  à	
  par=r	
  de	
  labels	
  
...
DÉMARCHE	
  
Echan=llon	
  labélisé	
  
Sous-­‐Echan=llon	
  
labélisé	
  
Sous-­‐Echan=llon	
  dont	
  
le	
  label	
  a	...
ARBRE	
  DE	
  DÉCISION	
  
LE	
  MEILLEUR	
  ARBRE	
  DE	
  DÉCISION	
  
OK	
   3	
  
KO	
   3	
  
Impureté	
  =	
  0,5	
  
Statut	
  
Statut	
  ?	
 ...
LE	
  MEILLEUR	
  ARBRE	
  DE	
  DÉCISION	
  
Propriétaire	
  ?	
   Oui	
   Non	
  
OK	
   2	
   1	
  
KO	
   0	
   3	
  
...
LE	
  MEILLEUR	
  ARBRE	
  DE	
  DÉCISION	
  	
  
Propriétaire	
  ?	
   Oui	
   Non	
  
OK	
   2	
   1	
  
KO	
   0	
   3	...
ARBRE	
  DE	
  DÉCISION	
  
¢  Comment	
  est	
  construit	
  l’arbre	
  de	
  décision	
  
—  Recherche	
  de	
  la	
  ...
CLASSIFICATION	
  NAÏVE	
  BAYÉSIENNE	
  
¢  Théorème	
  de	
  Bayes	
  
—  p(y|x)	
  =	
  	
  
	
  p(x|y)	
  p(y)	
  
—...
CLASSIFICATION	
  NAÏVE	
  BAYÉSIENNE	
  
Statut	
   OK/KO	
  
Célibataire	
   OK	
  
Marié	
   OK	
  
Divorcé	
   KO	
  
...
CLASSIFICATION	
  NAÏVE	
  BAYÉSIENNE	
  
Client	
   Salaire	
   Statut	
   Propriétaire	
   OK/KO	
  
C1	
   100	
  =	
  ...
RÉGRESSION	
  LOGISTIQUE	
  
¢  Consiste	
  à	
  donner	
  un	
  poids	
  à	
  chaque	
  prédicteur.	
  	
  
¢  Pour	
  ...
RÉGRESSION	
  LOGISTIQUE	
  
Client	
   Salaire	
   Statut	
   Propriétaire	
   OK/KO	
   C(X)	
  	
   PI	
  (Score)	
  
C...
RÉGRESSION	
  LOGISTIQUE	
  –	
  LA	
  COURBE	
  ROC	
  
Client	
   Salaire	
   Statut	
   Propriét
aire	
  
OK/KO	
   C(X...
RÉGRESSION	
  LOGISTIQUE	
  –	
  COURBE	
  RAPPEL	
  -­‐	
  PRÉCISION	
  
Client	
   Salair
e	
  
Statut	
   Propriét
aire...
MACHINE	
  À	
  VECTEUR	
  DE	
  SUPPORT	
  
m	
  
f(x)	
  =	
  y	
  =	
  	
  a0	
  +	
  a1	
  x1	
  +	
  a2	
  x2	
  +	
 ...
RÉGRESSION	
  LINÉAIRE	
  
¢  Classifica=on	
  
—  La	
  classe	
  est	
  une	
  variable	
  discrète	
  
¢  La	
  régre...
APPRENTISSAGE	
  NON	
  SUPERVISÉ	
  
CLUSTERING	
  –	
  PLUS	
  PROCHES	
  VOISINS	
  
¢  Les	
  données	
  en	
  entrée...
APPRENTISSAGE	
  NON	
  SUPERVISÉ	
  
CLUSTERING	
  –	
  PLUS	
  PROCHES	
  VOISINS	
  
CLUSTERING	
  :	
  APPRENTISSAGE	
  NON	
  SUPERVISÉ	
  
Feature/Item	
   P1	
   P2	
   P3	
   P4	
  
CPU	
   3.2	
   2.7	...
COLLABORATIVE	
  FILTERING	
  
ALTERNATING	
  LEAST	
  SQUARES	
  
SW1	
   SW2	
   V1	
   V2	
  
U1	
   4	
   4	
  
U2	
  ...
COLLABORATIVE	
  FILTERING	
  
ALTERNATING	
  LEAST	
  SQUARES	
  
COLLABORATIVE	
  FILTERING	
  ALS	
  
Référence	
  :	
  Amplab	
  
DÉMARCHE	
  
¢  Choix	
  des	
  données	
  
—  Le	
  choix	
  des	
  données	
  de	
  training	
  et	
  de	
  tests	
  s...
SYNTHÈSE	
  
¢  Appren=ssage	
  supervisé	
  
—  Classifica=on	
  
¢  Arbre	
  de	
  décision	
  
¢  Classifica=on	
  Ba...
Machine Learning - Spark / MLlib
Machine Learning - Spark / MLlib
Machine Learning - Spark / MLlib
Machine Learning - Spark / MLlib
Machine Learning - Spark / MLlib
Machine Learning - Spark / MLlib
Machine Learning - Spark / MLlib
Machine Learning - Spark / MLlib
Machine Learning - Spark / MLlib
Machine Learning - Spark / MLlib
Prochain SlideShare
Chargement dans…5
×

Machine Learning - Spark / MLlib

5 617 vues

Publié le

Publié dans : Données & analyses
1 commentaire
9 j’aime
Statistiques
Remarques
Aucun téléchargement
Vues
Nombre de vues
5 617
Sur SlideShare
0
Issues des intégrations
0
Intégrations
3 044
Actions
Partages
0
Téléchargements
137
Commentaires
1
J’aime
9
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Machine Learning - Spark / MLlib

  1. 1. MACHINE  LEARNING   INTRODUCTION  À  MLLIB   Hayssam  Saleh  
  2. 2. ANALYTICS   ¢  La  découverte  de  pa5erns  dans  les  données   ¢  S’appuie  sur  l’analyse  et  l’agréga=on  de  datasets   conséquents   ¢  Pour  extraire  des  faits  du  passé   ¢  Prédire  des  tendances   ¢  En  u=lisant  le  machine  learning  
  3. 3. CAS  D’UTILISATION   ¢  Recommanda=on   ¢  Classifica=on  de  contenu  en  groupes  prédéfinis   ¢  Regroupement  de  contenus  similaires   ¢  Iden=fica=on  de  topics  clefs   ¢  Détec=on  de  fraude  et  d’anomalies   ¢  Ranking  
  4. 4. DE  LA  DONNÉE  À  LA  CONNAISSANCE   ¢  De  la  donnée  à     ¢  la  connaissance   —  Dois-­‐je  accorder  ce  crédit  à  ce  client  sur  la  base  de  ses   bilans  ?   —  Ce  film  est-­‐il  un  film  d’humour  ?   —  Ce  mail  est-­‐il  un  spam  ?   Données   Hypothèses   ML   Connaissance  
  5. 5. TYPES  D’APPRENTISSAGE   ¢  Appren=ssage  Supervisé   —  Classifica=on   ¢  Le  résultat  est  un  valeur  parmi  N  sans  ordre  quelconque  et  dans  un   ensemble  prédéfini   ¢  Exemple  :  Ce  film  est-­‐il  un  film  d’horreur  ou  un  film  d’ac=ons  ou  un   film  roman=que   ¢  Prédire  le  label  de  nouvelles  données  à  par=r  des  labels  des  données   existantes   —  Régression   ¢  Le  résultat  est  une  valeur  dans  un  ensemble  de  valeurs  con=nues   ¢  Exemple  :  Quel  est  le  prix  prévisionnel  de  cet  appartement  dans  les  6   prochains  mois  ?   ¢  Appren=ssage  non  supervisé   —  Clustering     ¢  Les  données  en  entrée  de  l’algorithme  d’appren=ssage  ne  sont  pas   labellisées   ¢  Grouper  les  données  en  fonc=on  de  leur  similarité  
  6. 6. APPRENTISSAGE  SUPERVISÉ   ¢  Prédire  les  labels  de  données  futures  à  par=r  de  labels   de  données  existantes   Salaire   Statut   Propriétaire   OK/KO   100   Célibataire   Oui   OK   120   Marié   Non   OK   100   Divorcé   Non   KO   80   Célibataire   Non   KO   70   Marié   Non   KO   100   Célibataire   Oui   OK   x   y   Con=nue   Catégorie   Binaire   Label   x1   x2   x3  
  7. 7. DÉMARCHE   Echan=llon  labélisé   Sous-­‐Echan=llon   labélisé   Sous-­‐Echan=llon  dont   le  label  a  été  occulté   Algorithme   d’appren=ssage   Modèle   Performance   ¢  Le  modèle  génère  les  prédic=ons   ¢  Le  modèle  est  corrigé  lorsque  les  prédic=ons  sont  erronées   ¢  Le  modèle  est  considéré  sa=sfaisant  lorsque  le  niveau  de  précision  est  considéré  comme   étant  sa=sfaisant   80%   20%   Training  set   Test  set  
  8. 8. ARBRE  DE  DÉCISION  
  9. 9. LE  MEILLEUR  ARBRE  DE  DÉCISION   OK   3   KO   3   Impureté  =  0,5   Statut   Statut  ?   Marié   Célibataire  /  Divorcé   OK   1   2   KO   1   2   Gini  (marié)  =  1-­‐  ((1/2)2  +  (1/2)2)  =  0,5   Gini(Cél/Div)  =  1-­‐((2/4)2  +  (2/4)2)  =  0,5   Impureté    =  ((1+1)/6)  *  Gini(marié)  +  ((2+2)/6)  *  Gini(Cél/Div)  =  0,5   1   1   2   2   Marié   Célibataire  /  Divorcé   U=lisa=on  de  l’index  Gini   OK   KO   OK   KO  
  10. 10. LE  MEILLEUR  ARBRE  DE  DÉCISION   Propriétaire  ?   Oui   Non   OK   2   1   KO   0   3   Gini  (Oui)  =  1-­‐  ((2/2)2  +  (0/2)2)  =  0   Gini(Non)  =  1-­‐((1/4)2  +  (3/4)2)  =  0,375   Impureté    =  ((2+0)/6)  *  Gini(Oui)  +  ((1+3)/6)  *  Gini(Non)  =  0,25   Marge  d’erreur   1  -­‐  max(2/2,  0/2)  =  0   1  –  max(1/4,  3/4)  =  0,25   OK   3   KO   3   Impureté  =  0,5   Propriétaire   2   0   1   3   Oui   Non   U=lisa=on  de  l’index  Gini  
  11. 11. LE  MEILLEUR  ARBRE  DE  DÉCISION     Propriétaire  ?   Oui   Non   OK   2   1   KO   0   3   Entropie(Oui)  =  -­‐(2/2)log2  (2/2)  –  (0/2)log2(0/2)  =  0   Entropie(Non)  =  -­‐(1/4)log2(1/4)  –  (3/4)log2(3/4)  =  0,5  +  0,31  =  0,81   Gain=  ((2+0)/6)  *  Entropie(Oui)  +  ((1+3)/6)  *  Entropie(Non)  =  0,4   Marge  d’erreur   1  -­‐  max(2/2,  0/2)  =  0   1  –  max(1/4,  3/4)  =  0,25   OK   3   KO   3   Impureté  =  0,5   Propriétaire   2   0   1   3   Oui   Non   U=lisa=on  de  l’entropie  
  12. 12. ARBRE  DE  DÉCISION   ¢  Comment  est  construit  l’arbre  de  décision   —  Recherche  de  la  meilleure  condi=on  de  segmenta=on   ¢  En  s’appuyant  sur  l’impureté   —  Qu’est  ce  que  la  mesure  d’impureté   ¢  Mesure  la  qualité  de  la  sépara=on   ¢  La  segmenta=on  s’arrête  lorsque  :   —  Tous  les  échan=llons  d’un  nœud  appar=ennent  à  la  même  classe   —  Il  n’y  a  plus  de  nouveaux  a5ributs   ¢  Classifica=on  à  la  majorité   —  Il  n’y  a  plus  d’échan=llons  à  classer     ¢  Quelle  technique  Gini  ou  Entropie  ?   —  La  li5érature  :   ¢  Gini  pour  les  a5ributs  con=nus,  l’entropie  pour  les  catégories   ¢  L’entropie  moins  performante  ?   —  Mon  avis  :   ¢  Essayer  les  deux  et  choisir  celle  qui  fonc=onne  le  mieux.  
  13. 13. CLASSIFICATION  NAÏVE  BAYÉSIENNE   ¢  Théorème  de  Bayes   —  p(y|x)  =      p(x|y)  p(y)   —                                                         p(x)   ¢  p(y|x)     —  Probabilité  que  x  soit  de  la  classe  y   ¢  p(x|y)   —  Quelle  est  dans  l’échan=llon  labellisé,  la  probabilité  que  x  soit  dans  la  classe  y   ¢  p(y)   ¢ Quelle  est  dans  l’échan=llon  labellisé,  la  probabilité  d’occurrence  de  la  classe  y   ¢  p(x)  =     ¢ quelle  est  dans  l’échan=llon  labellisé,  la  probabilité  d’occurrence  de  x  
  14. 14. CLASSIFICATION  NAÏVE  BAYÉSIENNE   Statut   OK/KO   Célibataire   OK   Marié   OK   Divorcé   KO   Célibataire   KO   Marié   KO   Célibataire   OK   P(OK|Célibataire)  =    p(Célibataire|OK)  p(OK)                p(Célibataire)   P(OK|oui)  =    2/3  *  3/6     =  0,67              3/6  
  15. 15. CLASSIFICATION  NAÏVE  BAYÉSIENNE   Client   Salaire   Statut   Propriétaire   OK/KO   C1   100  =  2   Célibataire   Oui   OK   C2   120  =  2   Marié   Non   OK   C3   100  =  2   Divorcé   Non   KO   C4   80  =  1   Célibataire   Non   KO   C5   70  =  1   Marié   Non   KO   C6   100  =  2   Célibataire   Oui   OK   C7   90  =  1   Marié   Non   p(x|y)  =  p(x1|y)  p(x2|y)  p(x3|y)   p(C7|OK)  =  p(1|OK)  p(Marié|OK)  p(Non|OK)  =  0  *    0.5  *  0.25    
  16. 16. RÉGRESSION  LOGISTIQUE   ¢  Consiste  à  donner  un  poids  à  chaque  prédicteur.     ¢  Pour  obtenir  un  rapport  de  chances.   ln   P(y  =  1  |  x)   P(y  =  0  |  x)   =   a0  +  a1  x1  +  a2  x2  +  a3  x3   ln   pi(x)   1  –  pi(x)   =   a0  +  a1  x1  +  a2  x2  +  a3  x3   pi(x)  =     e(a0  +  a1  x1  +  a2  x2  +  a3  x3)   1  -­‐  e(a0  +  a1  x1  +  a2  x2  +  a3  x3)   e(a0  +  a1  x1  +  a2  x2  +  a3  x3)  
  17. 17. RÉGRESSION  LOGISTIQUE   Client   Salaire   Statut   Propriétaire   OK/KO   C(X)     PI  (Score)   C1   100   Célibataire   Oui   OK   1,99   0,87   C2   120   Marié   Non   OK   1,3   0,55   C3   100   Divorcé   Non   KO   -­‐2,7   0,12   C4   80   Célibataire   Non   KO   -­‐1,5   0,01   C5   70   Marié   Non   KO   -­‐0,38   0,42   C6   100   Célibataire   Oui   OK   -­‐0,49   0,21  
  18. 18. RÉGRESSION  LOGISTIQUE  –  LA  COURBE  ROC   Client   Salaire   Statut   Propriét aire   OK/KO   C(X)     PI  (Score)   TVP   TFP   C1   100   Célib.   Oui   OK   1,99   0,87   1/3  =  0,33   0/3  =  0   C2   120   Marié   Non   OK   1,3   0,55   2/3  =  0,66   0/3  =  0   C5   70   Marié   Non   KO   -­‐0,38   0,42   2/3  =  0,66   1/3  =  0,33   C6   100   Célib.   Oui   OK   -­‐0,49   0,21   3/3  =  1   1/3  =  0,  33   C3   100   Divorc é   Non   KO   -­‐2,7   0,12   3/3  =  1   2/3  =  0,66   C4   80   Célib.   Non   KO   -­‐1,5   0,01   3/3  =  1   3/3  =  1   AUC  >  0.9   AUC   AUC  =  0.5   Pas  de  discrimina=on   0.7  <  AUC  <  0.8   Discrimina=on  acceptable   0.8  <  AUC  <  0.9   Discrimina=on  excellente   AUC  >=  0.9   Discrimina=on  excellente   0,33   0,66   1   0,33   0,66   1   TVP   TFP  
  19. 19. RÉGRESSION  LOGISTIQUE  –  COURBE  RAPPEL  -­‐  PRÉCISION   Client   Salair e   Statut   Propriét aire   OK/KO   C(X)     PI  (Score)   Rappel   Précision   C1   100   Célib.   Oui   OK   1,99   0,87   1/3  =  0,33   1/1  =  1   C2   120   Marié   Non   OK   1,3   0,55   2/3  =  0,66   2/2  =  1   C5   70   Marié   Non   KO   -­‐0,38   0,42   2/3  =  0,66   2/3  =  0.66   C6   100   Célib.   Oui   OK   -­‐0,49   0,21   3/3  =  1   3  /  4  =  0.75   C3   100   Divorcé   Non   KO   -­‐2,7   0,12   3/3  =  1   3  /  5  =  0.6   C4   80   Célib.   Non   KO   -­‐1,5   0,01   3/3  =  1   3  /  6  =    0.5   0,33   0,66   1   0,33   0,66   1   Précision   Rappel   ¢  PR  versus  ROC   —  PR  plus  adaptée  lorsque  les  classes   sont  très  déséquilibrées  ?  
  20. 20. MACHINE  À  VECTEUR  DE  SUPPORT   m   f(x)  =  y  =    a0  +  a1  x1  +  a2  x2  +  a3  x3  
  21. 21. RÉGRESSION  LINÉAIRE   ¢  Classifica=on   —  La  classe  est  une  variable  discrète   ¢  La  régression   —  La  classe  est  une  valeur  con=nue   ¢  Dans  les  deux  cas  nous  sommes  toujours  dans  l’appren=ssage   supervisé.   ¢  Exemple   —  Quelle  sera  la  fréquenta=on  du  Stade  de  France  lors  de  la  prochaine   coupe  d’Europe  
  22. 22. APPRENTISSAGE  NON  SUPERVISÉ   CLUSTERING  –  PLUS  PROCHES  VOISINS   ¢  Les  données  en  entrée  ne  sont  pas  labélisées   ¢  Le  clustering   —  va  perme5re  de  regrouper  les  données  similaires  en  cluster   ¢  Objec=fs   —  Réduire  la  distance  entre  deux  points  du  clusters   —  Méthode  de  distance  u=lisée  :  Distance  euclidienne   UQlisateur   Age   Enfants   U1   38   2   U2   25   0   U3   45   3   U4   28   0   Distance  entre  U1  et  U2  =  racine2(  (38-­‐25)2  +  (2-­‐0)2)  =  13   Distance  entre  U1  et  U3  =  7    
  23. 23. APPRENTISSAGE  NON  SUPERVISÉ   CLUSTERING  –  PLUS  PROCHES  VOISINS  
  24. 24. CLUSTERING  :  APPRENTISSAGE  NON  SUPERVISÉ   Feature/Item   P1   P2   P3   P4   CPU   3.2   2.7   1.4   2.9   SSD   1   1   0   0   Disque   1To   512G   512G   1To   RAM   32Go   16Go   8Go   64G   ¢  Objec=f   —  Calculer  la  distance  entre  les  items  en  pondérant  les  valeurs  des  features   —  Distance  entre  deux  documents  permet  d’iden=fier  des  plagiats  par  exemple  
  25. 25. COLLABORATIVE  FILTERING   ALTERNATING  LEAST  SQUARES   SW1   SW2   V1   V2   U1   4   4   U2   5   5   U3   1   U1000   4   1   ¢  Objec=f   —  Bâ=r  une  matrice  de  rang  inférieur  qui  perme5e  de  faire  de   la  recommanda=on    
  26. 26. COLLABORATIVE  FILTERING   ALTERNATING  LEAST  SQUARES  
  27. 27. COLLABORATIVE  FILTERING  ALS   Référence  :  Amplab  
  28. 28. DÉMARCHE   ¢  Choix  des  données   —  Le  choix  des  données  de  training  et  de  tests  s’appuie  sur  la   connaissance  mé=er   ¢  Choix  des  critères   —  Le  choix  des  critères  implique  également  de  la  connaissance  mé=er   ¢  Choix  des  algorithmes   —  Classifica=on  ?  Régression  ?   —  Label  ou  non  ou  mixte  ?   —  Propor=on  de  classes  fortement  asymétriques   —  L’objec=f  est  de  prédire  une  probabilité  ?  topN  ?   ¢  Tuning  des  paramètres  des  algorithmes  en  testant   ¢  Tout  automa=ser  pour  avoir  un  historique  précis  des   résultats  obtenus  
  29. 29. SYNTHÈSE   ¢  Appren=ssage  supervisé   —  Classifica=on   ¢  Arbre  de  décision   ¢  Classifica=on  Bayésienne  naïve   ¢  Régression  logis=que   ¢  Support  à  vecteur  de  machine   —  Régression   ¢  Régression  linéaire   —  Collabora=ve  Filtering   ¢  Alterna=ng  Least  Squares   ¢  Appren=ssage  non  supervisé   —  Clustering   ¢  K-­‐plus  proches  voisins  

×