#JSS2014
Les journées
SQL Server 2014
Un événement organisé par GUSS
#JSS2014
Les journées
SQL Server 2014
Un événement organisé par GUSS
Ma première analyse
Machine Learning avec
Azure ML
Fl...
#JSS2014
Merci à nos sponsors
#JSS2014
> 100
billets de
blog / an
> 30
articles
de presse /
an
8 MVP
7 MCT
4 P-Sellers
> 12j / an
/pers. de
formation
Ca...
#JSS2014
Data & Analytics
#JSS2014
#JSS2014
En BI : coincé à la connaissance
#JSS2014
#JSS2014
Construire des systèmes capables
d’apprendre de leurs expériences
Machine Learning
coursera.org/course/ml
#JSS2014
Intéressant mais risqué…
drewconway.com
Business
Intelligence
#JSS2014
Pro de la BI
Machine
Learning
#JSS2014
Cette session…
#JSS2014
Vendre mon appartement à Paris
• Mon appart
– Paris
– 2 pièces
– 55m2
#JSS2014
• Je veux vendre mon appartement, comment
déterminer le prix en fonction de sa superficie?
Superficie (m2)
Prix (...
#JSS2014
Identifier un pattern!
• Des données existantes on peut identifier un motif qui
appliqué à mon cas me permettrait...
#JSS2014
Identifier un pattern!
• Des données existantes on peut identifier un motif qui
appliqué à mon cas me permettrait...
#JSS2014
En pratique: Le dataset
#JSS2014
En pratique : La modélisation
Superficie (m2)
Prix (€)
Mon appart
Prix du marché
On devine une mesure connue
(pri...
#JSS2014
Ce qu’on m’a vendu!
Ma superficie
Une prédiction de bon
prix de vente pour
mon appart
La magie
du ML!
#JSS2014
x y
y = ax + b
1. Configuration
Superficie (m2)
Prix (€)
Mon appart
#JSS2014
x y
y = ax + b
1. Configuration
Superficie (m2)
Prix (€)
Mon appart
#JSS2014
x y
y = ax + b
2. Test
Superficie (m2)
Prix (€)
Mon appart
#JSS2014
x y
y = ax + b
Superficie (m2)
Prix (€)
Mon appart
Ma superficie
Une prédiction de bon
prix de vente pour
mon app...
#JSS2014
x y
y = ax + b
Superficie (m2)
Prix (€)
Mon appart
3. Utilisation
h
l’hypothèse
Input : x
Ma superficie
Output : ...
#JSS2014
y = h(x)
h(x) = hθ(x) = θ0 + θ1x
x
y = h(x)
θ0
y = θ1x + θ0
h
l’hypothèse
Input : x
Ma superficie
Output : y
Préd...
#JSS2014
Savoirs s’ils sont bons ou pas? Pour choisir les
meilleurs?
Comment noter les paramètres?
x
y = h(x)
θ0
y = θ1x +...
#JSS2014
Savoirs s’ils sont bons ou pas? Pour choisir les
meilleurs?
Comment noter les paramètres?
x
y = h(x)
θ0
y = θ1x +...
#JSS2014
2 exemples, même training set
x
y
x
y
θ0
Modèle 1
θ0 = 1
θ1 = 0
y = θ1x + θ0
Modèle 2
θ0 = 1
θ1 = 0,25
#JSS2014
2 exemples, même training set
x
y
x
y
θ0
Modèle 1
θ0 = 1
θ1 = 0
y = θ1x + θ0
Modèle 2
θ0 = 1
θ1 = 0,25
Prix du
ma...
#JSS2014
Cost Function : J(θ0 ,θ1)
x
y
x
y
θ0
Modèle 1
θ0 = 1
θ1 = 0
Modèle 2
θ0 = 0,25
θ1 = 1
J(θ0 ,θ1) = 25 J(θ0 ,θ1) = 5
#JSS2014
• Une méthode parmi d’autres
• Sa formule:
Cost function – Squarred Error
#JSS2014
On a les données training set
On a un modèle type h(x) = θ0 + θ1x
On sait le noter J(θ0 ,θ1)
La dernière pièce du...
#JSS2014
On a les données training set
On a un modèle type h(x) = θ0 + θ1x
On sait le noter J(θ0 ,θ1)
Méthode d’optimisati...
#JSS2014
Gradient Descent
1 – On essaye des premières
valeurs au hasard
2 – On fait varier les
paramètres simultanément
d’...
#JSS2014
x y
y = ax + b
Superficie (m2)
Prix (€)
Mon appart
Vue globale
Input : x
Ma superficie
Output : y
Prédiction de
p...
#JSS2014
x y
y = ax + b
Superficie (m2)
Prix (€)
Mon appart
Vue globale
Input : x
Ma superficie
Output : y
Prédiction de
p...
#JSS2014
Azure ML http://studio.azureml.net
Azure ML Excel Addin http://azuremlexcel.codeplex.com
#JSS2014
Attention!
Underfit
High bias
Overfit
High variance
#JSS2014
1. Plus de données!
2. Meilleures features
Régression polynomiale
3. Tester d’autres algorithmes
Aller plus loin?
#JSS2014
• Apprentissage supervisé
Je veux deviner la bonne réponse à partir d’exemples
– De valeurs discrètes à continue ...
#JSS2014
Conclusion
Maintenant que ça n’est plus un problème d’outil
Il est temps d’apprendre la théorie…
#JSS2014
Et tout ira bien ;)
#JSS2014
http://guss.pro/jss
#JSS2014#JSS2014
Prochain SlideShare
Chargement dans…5
×

JSS2014 – Ma première analyse Machine Learning avec Azure ML

618 vues

Publié le

Session des Journées SQL Server 2014 - Florian Eiden
---
Vous avez déjà investi lourdement dans votre datawarehouse, et n’avez construit que des rapports SSRS ou des tableaux croisés dynamiques dans Excel ? C’est bien dommage ! Après tout, un bon schéma en étoile est le point de départ idéal pour le Machine Learning.

Au cours de cette session nous ferons le point sur ce qu’est le Machine Learning, en termes compréhensible par des professionnels de la BI, et nous construirons une analyse avec Azure ML, le service de Machine Learning de Microsoft dans le cloud.

Publié dans : Données & analyses
0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
618
Sur SlideShare
0
Issues des intégrations
0
Intégrations
2
Actions
Partages
0
Téléchargements
0
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive
  • Vrai merci
    Le budget des JSS c’est plusieurs 10K€.
    GUSS = Association, 0€ en banque
    Chacun des sponsors c’est des vrais gens qui décident d’offrir un événement à la communauté, en échange d’un peu de visibilité
    Au minimum lisez les plaquettes ;)
    A max pensez à eux si besoin d’un coup de main sur vos projets, ou dans vos carrières
  • Parmi les sponsors Cellenza, ma boîte
    5 pôles d’activités dont celui que je manage: Data & Analytics

    En fait il est relativement récent ce pôle, Juin 2014, et au moment de le nommer on s’est posé la question: BI, Data, Data Insight (genre MS)…
  • On a choisit D&A, avec cette définition d’Analytics

    Patterns : motifs
    Ex : Saisonnalité des ventes, une population d’utilisateur spécifique de mon service – aux besoins spécifiques (hardcore gamer)


    Et la BI est une sous-partie de ça, comme le Machine Learning…
  • BI : automatise le descriptive, permet le diagnostic à la main
    ML : outillage pour le diagnostic / predictive, permet le prescriptive à la main

    Un exemple simple de ça c’est en retail…
  • Ex: en retail on sait très bien construire des DWH pour suivre les ventes, gérer les inventaires, suivre la supply chain…

    On sait savoir ce qu’il se passe
    Par contre une chute ponctuelle dans les ventes, on ne sait pas forcément la diagnostiquer sans sortir les TCD et faire tous les croisements à la main
    Avec ML, on va pouvoir quantifier les corrélations entre les événements, et ne rapporter que celles qui ont du sens. Et il reste l’humain au bout pour décider ce qui est bon, mais le gros du travail a été automatisé.
  • Autre exemple: dans mon usine de production, je sais faire de la BI et reporter sur ce qu’il se passe.

    Avec ML, je vais pouvoir détecter les symptomes qui préfigurent une panne, à partir de mes données historiques dans le DWH, et comme ça prévoir de la maintenance avant l’éventuelle panne

    Evidemment on peut construire un script complexe à base de IF/THEN/ELSE pour faire la même chose.
    Mais autant laisser le PC faire la même chose!
  • Ce qui nous amène à une définition simple de ML…

    Et dans une entreprise qui fonctionne bien les expériences elles sont stockées où? Dans le DWH.

    Autant vous dire qu’au minimum on va récupérer une nouvelle catégorie de client qui va justifier nos tarifs indécents
    Au maximum on va pouvoir ajouter ces services à nos offres et étendre la portée de nos métiers. Cool!
  • Et pour illustrer tout ça, on va partir d’un cas plus ou moins théorique
  • Je me fais les petites annonces, et j’ai un beau dataset : superficie x prix

    Comment choisir les bons paramètres?
  • Comment on apprend le machine learning? Un algorithme à la fois, une typologie de problème à la fois

    Supervisé VS non supervisé
    Régression VS classification
    Toutes les variations sur les régressions, les SVM…
  • Je me fais les petites annonces, et j’ai un beau dataset : superficie x prix

    Comment choisir les bons paramètres?
  • Je me fais les petites annonces, et j’ai un beau dataset : superficie x prix

    Comment choisir les bons paramètres?
  • Je me fais les petites annonces, et j’ai un beau dataset : superficie x prix

    Comment choisir les bons paramètres?
  • Je me fais les petites annonces, et j’ai un beau dataset : superficie x prix

    Comment choisir les bons paramètres?
  • Je me fais les petites annonces, et j’ai un beau dataset : superficie x prix

    Comment choisir les bons paramètres?
  • Je me fais les petites annonces, et j’ai un beau dataset : superficie x prix

    Comment choisir les bons paramètres?
  • Pourquoi h est fonction de theta?

    Les thetas sont les paramètres, qui seront evidemment fonction de mon problème.
    Les theta des 2 pièces à Paris ne seront pas les mêmes que des studio à Albi

    L’objectif maintenant est de déterminer quels sont les bons theta
  • Au final on peut essayer toutes les combinaisons de thetas possible, et juste choisir le meilleur
    Mais comment les meilleurs?
  • Au final on peut essayer toutes les combinaisons de thetas possible, et juste choisir le meilleur
    Mais comment les meilleurs?
  • Ce qui devient un problème mathématique à part entière, en dehors du scope.
    Le Gradient Descent présente l’énorme avantage d’éviter de se taper la combinatoire de toutes
  • Quelle approche pour trouver θ0 ,θ1?
    On essaye toutes les combinatoires?
  • Gradient Descent : algorithme de minimisation d’une fonction

    Trop théorique, mathématique, si Coursera vous le ferez, sinon il suffit de savoir qu’il existe, et qu’il en existe plusieurs!
  • Je me fais les petites annonces, et j’ai un beau dataset : superficie x prix

    Comment choisir les bons paramètres?
  • En fonction de chacun de ces choix, j’aurai un résultat différent
  • Cas 1 : trop timide, pas très précis
    Cas 2 : trop aggressif, pas assez de données, ne généralisera pas
  • En fait c’est que des maths…
  • JSS2014 – Ma première analyse Machine Learning avec Azure ML

    1. 1. #JSS2014 Les journées SQL Server 2014 Un événement organisé par GUSS
    2. 2. #JSS2014 Les journées SQL Server 2014 Un événement organisé par GUSS Ma première analyse Machine Learning avec Azure ML Florian Eiden – Déc. 2014
    3. 3. #JSS2014 Merci à nos sponsors
    4. 4. #JSS2014 > 100 billets de blog / an > 30 articles de presse / an 8 MVP 7 MCT 4 P-Sellers > 12j / an /pers. de formation Cabinet de conseil IT et centre de formation spécialisé dans les technologies Microsoft et méthodes Agiles. Cloud & Integration Collaboration & Content Data & Analytics Application Development ALM & Agilité
    5. 5. #JSS2014 Data & Analytics
    6. 6. #JSS2014
    7. 7. #JSS2014 En BI : coincé à la connaissance
    8. 8. #JSS2014
    9. 9. #JSS2014 Construire des systèmes capables d’apprendre de leurs expériences Machine Learning coursera.org/course/ml
    10. 10. #JSS2014 Intéressant mais risqué… drewconway.com Business Intelligence
    11. 11. #JSS2014 Pro de la BI Machine Learning
    12. 12. #JSS2014 Cette session…
    13. 13. #JSS2014 Vendre mon appartement à Paris • Mon appart – Paris – 2 pièces – 55m2
    14. 14. #JSS2014 • Je veux vendre mon appartement, comment déterminer le prix en fonction de sa superficie? Superficie (m2) Prix (€) Mon appart Ma question
    15. 15. #JSS2014 Identifier un pattern! • Des données existantes on peut identifier un motif qui appliqué à mon cas me permettrait de trouver le prix du marché Superficie (m2) Prix (€) Mon appart Prix du marché
    16. 16. #JSS2014 Identifier un pattern! • Des données existantes on peut identifier un motif qui appliqué à mon cas me permettrait de trouver le prix du marché Superficie (m2) Prix (€) Mon appart Prix du marché Boum, Machine Learning!
    17. 17. #JSS2014 En pratique: Le dataset
    18. 18. #JSS2014 En pratique : La modélisation Superficie (m2) Prix (€) Mon appart Prix du marché On devine une mesure connue (prix) à partir d’un exemple : Apprentissage supervisé De valeurs discrètes (PAP) on obtient un ensemble continue (la courbe verte) : Régression On est niveau chaton : Régression Linéaire à 1 feature (superficie) y = ax + b y : prix x : superficie
    19. 19. #JSS2014 Ce qu’on m’a vendu! Ma superficie Une prédiction de bon prix de vente pour mon appart La magie du ML!
    20. 20. #JSS2014 x y y = ax + b 1. Configuration Superficie (m2) Prix (€) Mon appart
    21. 21. #JSS2014 x y y = ax + b 1. Configuration Superficie (m2) Prix (€) Mon appart
    22. 22. #JSS2014 x y y = ax + b 2. Test Superficie (m2) Prix (€) Mon appart
    23. 23. #JSS2014 x y y = ax + b Superficie (m2) Prix (€) Mon appart Ma superficie Une prédiction de bon prix de vente pour mon appart 3. Utilisation
    24. 24. #JSS2014 x y y = ax + b Superficie (m2) Prix (€) Mon appart 3. Utilisation h l’hypothèse Input : x Ma superficie Output : y Prédiction de prix du marché y = h(x)
    25. 25. #JSS2014 y = h(x) h(x) = hθ(x) = θ0 + θ1x x y = h(x) θ0 y = θ1x + θ0 h l’hypothèse Input : x Ma superficie Output : y Prédiction de prix du marché
    26. 26. #JSS2014 Savoirs s’ils sont bons ou pas? Pour choisir les meilleurs? Comment noter les paramètres? x y = h(x) θ0 y = θ1x + θ0 Fonction-coût / Cost Function
    27. 27. #JSS2014 Savoirs s’ils sont bons ou pas? Pour choisir les meilleurs? Comment noter les paramètres? x y = h(x) θ0 y = θ1x + θ0 J(θi) Fonction-coût / Cost Function Calcule la distance totale entre mon modèle et tous les exemples du training set
    28. 28. #JSS2014 2 exemples, même training set x y x y θ0 Modèle 1 θ0 = 1 θ1 = 0 y = θ1x + θ0 Modèle 2 θ0 = 1 θ1 = 0,25
    29. 29. #JSS2014 2 exemples, même training set x y x y θ0 Modèle 1 θ0 = 1 θ1 = 0 y = θ1x + θ0 Modèle 2 θ0 = 1 θ1 = 0,25 Prix du marché Prix du marché
    30. 30. #JSS2014 Cost Function : J(θ0 ,θ1) x y x y θ0 Modèle 1 θ0 = 1 θ1 = 0 Modèle 2 θ0 = 0,25 θ1 = 1 J(θ0 ,θ1) = 25 J(θ0 ,θ1) = 5
    31. 31. #JSS2014 • Une méthode parmi d’autres • Sa formule: Cost function – Squarred Error
    32. 32. #JSS2014 On a les données training set On a un modèle type h(x) = θ0 + θ1x On sait le noter J(θ0 ,θ1) La dernière pièce du puzzle
    33. 33. #JSS2014 On a les données training set On a un modèle type h(x) = θ0 + θ1x On sait le noter J(θ0 ,θ1) Méthode d’optimisation Gradient Descent La dernière pièce du puzzle
    34. 34. #JSS2014 Gradient Descent 1 – On essaye des premières valeurs au hasard 2 – On fait varier les paramètres simultanément d’un delta basé sur leur dérivée partielle de J 2.1 - Si J est meilleur on continue 2.2 – Sinon on peut s’arrêter NB : oui GD ne trouve que les minimums locaux, mais la LR est convexe (pas d’optimum locaux)
    35. 35. #JSS2014 x y y = ax + b Superficie (m2) Prix (€) Mon appart Vue globale Input : x Ma superficie Output : y Prédiction de prix du marché y = h(x) Fonction-coût Méthode d’optimisation h l’hypothèse
    36. 36. #JSS2014 x y y = ax + b Superficie (m2) Prix (€) Mon appart Vue globale Input : x Ma superficie Output : y Prédiction de prix du marché y = h(x) Fonction-coût Méthode d’optimisation h l’hypothèse
    37. 37. #JSS2014 Azure ML http://studio.azureml.net Azure ML Excel Addin http://azuremlexcel.codeplex.com
    38. 38. #JSS2014 Attention! Underfit High bias Overfit High variance
    39. 39. #JSS2014 1. Plus de données! 2. Meilleures features Régression polynomiale 3. Tester d’autres algorithmes Aller plus loin?
    40. 40. #JSS2014 • Apprentissage supervisé Je veux deviner la bonne réponse à partir d’exemples – De valeurs discrètes à continue : Régression – Ex : Prix des appartements – De valeurs discrètes à une classe : Classification – Ex : Aide au diagnostique médical (malade ou pas) • Apprentissage non supervisé Je veux trouver un pattern dans une donnée non classée – Clustering / Segmentation – Ex : Regrouper mes clients en sous-populations pour optimiser mes e-mailings Un pas de recul
    41. 41. #JSS2014 Conclusion Maintenant que ça n’est plus un problème d’outil Il est temps d’apprendre la théorie…
    42. 42. #JSS2014 Et tout ira bien ;)
    43. 43. #JSS2014 http://guss.pro/jss
    44. 44. #JSS2014#JSS2014

    ×