Introduction à la Data Science : régression, classification, , clustering, machine learning...vue d'ensemble, quelques techniques et des ressources pour creuser le sujet.
3. 3BIG DATA – Meet Up – janvier 2015
Construire des modèles un peu plus proches du monde réel
Vue d’hélicoptère
La datascience part du résultat (les valeurs réellement observées dans le monde) et cherche à en
extraire une loi. Le modèle construit sera toujours une version simplifiée de la réalité
3
input X
function f
output Y = f(X)
Computer SciencesComputer
science
Model f
input X
output Y = f(X)
Computer SciencesData Science
4. 4BIG DATA – Meet Up – janvier 2015
« Le chiffre est lâche. Torturez le il vous avouera ce que vous voulez »
• prenez en compte toutes les données au niveau
granulaire,
• Utilisez plusieurs recettes bien rodées
• Préférez celles qui savent s’en remettre (un
peu) au hasard
• Testez tous les réglages possibles pour choisir
ce qui marche le mieux pour vos données
• Mélangez vos différentes préparations entre
elles en fin de cuisson
• … ne pas rompre la chaine du froid
A la base des algorithmes : une alchimie … dont voici la recette
Les ‘recettes bien rodées’ sont disponibles gratuitement dans des packages
d’outils open sources (R, Python, …)
5. 5BIG DATA – Meet Up – janvier 2015
Exemple d’approche : la régression
• Approcher une variable quantitative en fonction de chacun des paramètres disponibles
• Fonction d’un espace de Rp R,
Objectif de synthétiser le jeu de données dans l’espace des features
Cible Cible
feature
feature
6. 6BIG DATA – Meet Up – janvier 2015
Idéalement …
régression
• Etre omniscient et avoir toutes les
observations possibles
• Pour chaque valeur possible des features
disponibles : prendre la moyenne des
observations (espérance) contexte
cible
La dispersion autour de cette valeur moyenne peut
être lié à plusieurs facteurs
Il manque des facteurs explicatifs toujours
Il y a des erreurs de mesure toujours
Il y a du vrai hasard là c’est de la philo
Principal
levier big data
7. 7BIG DATA – Meet Up – janvier 2015
.. Hélas (et hélas bis)
régression
• Vous ne disposez que d’un jeu de données
partiel et si vous renouvelez les mesures
vous aurez chaque fois un autre jeu
d’observation
1er tirage
2è tirage
3è tirage …
Feature
Feature
Feature
?
• Vous avez beaucoup d’observations.. mais
encore plus de features pour chaque
observation : vos êtes atteint par la malédiction
de la dimension (« curse of dimensionality ») :
• dans un espace à haute dimension, vos
observations sont éclatées : il n’y a plus de
voisins ..
8. 8BIG DATA – Meet Up – janvier 2015
Des astuces : Simplifier le passé
régression
Pour bien prévoir le futur
nous pouvons simplifier le
passé
Equivalent
• Distinguer
– le signal : « vraie » information apportée par les features disponibles
– du bruit : effet des informations (features) qui nous manquent
Feature
cible
Feature
cible
Feature
cible
Feature
cible
Complexe
- Parfaite description du passé
- Faible pouvoir prédictif
- « overfitting »
Simple
- Grossière description du
passé
- Faible pouvoir prédictif
Un juste milieu ?
Données initiales Modélisation induite
9. 9BIG DATA – Meet Up – janvier 2015
Des astuces : ne pas être juge et partie
régression
• L’évaluation de l’erreur d’interpolation des données connues n’est visiblement pas la métrique
pertinente (sinon on va systématiquement pencher du coté « overfitting »)
• Solution « on ne peut pas être juge et partie »: les données connues sont réparties en deux lots
– Un lot d’apprentissage
– Un lot d’évaluation
Exemple de répartition entre apprentissage et
test 2/3 apprentissage, 1/3 test
Plus sophistiqué : cross validation
Feature
cible Feature
Feature
‘Training set
‘test set
Données initiales
Construction d’un
modèle pur un
niveau de
complexité donné
Evaluation : le
modèle construit est
évalué avec les
points qui n’ont pas
servi à l construction
10. 10BIG DATA – Meet Up – janvier 2015
Zoom : effet de la complexité sur l’erreur de prédiction (1/2)
régression
Echelle de complexité du modèle
(exemple degré de polynome d’interpolation)
Erreur
Cible
Feature
• Avec un jeu de données, 3 modèles sont représentés sur ce graphe
– Un modele complexe : s’approche de près des données observées
– Un modele plus simple
– Un modèle grossier (ligne droite)
Erreur sur
Données d’apprentissage
Erreur sur
données de
test
11. 11BIG DATA – Meet Up – janvier 2015
Des astuces : choisir une forme générale de la solution puis l’ajuster
régression
• Ce choix de forme est un a priori, potentiellement guidé par la visualisation des données ou par l’expérience
(attention : expérience est une lanterne dans le dos !)
Choisir une gamme de formes, à priri, et s’y tenir
Forme a priori
Sans forme a
priori
Echelle de complexité
linéaire
Escalier
(step function)
KNN
(K nearest neihbour)
Arbre
polynomiale
NA : passer à la
page suivante !
Nombre
de marches
Nombre de
voisins pris en
compte
Profondeur de
l’arbre
Degré du
polynôme
Pour une valeur de feature :
prendre la valeur des k
voisins connus les plus
proches
La courbe complète n’est
en fait jamais dessinée …
Trouver un césure dans l’axe des features : de
part et d’autre, affecter la moyenne des données
disponible : ajuster la césure qui minimise l’erreur
globale. Recommencer sur chaque partition
2 feuilles 4 feuilles
Dans un
deuxième
temps élaguer
pour trouver la
bonne
complexité
12. 12BIG DATA – Meet Up – janvier 2015
Et pour la classification ?
ClassificationB
• Ce choix de forme est un a priori, potentiellement guidé par la visualisation des données ou par l’expérience
(attention : expérience est une lanterne dans le dos !)
Choisir une gamme de formes, à proiri, et s’y tenir
Forme a priori
Sans forme a
priori
Echelle de complexité
linéaire
Escalier
(step function)
KNN
(K nearest neihbour)
Arbre
polynomiale
NA : passer à la
page suivante !
Nombre
de marches
Nombre de
voisins pris en
compte
Profondeur de
l’arbre
Degré du
polynôme
Pour une valeur de feature :
prendre la valeur des k
voisins connus les plus
proches
La courbe complète n’est
en fait jamais dessinée …
Trouver un césure dans l’axe des features : de
part et d’autre, affecter la moyenne des données
disponible : ajuster la césure qui minimise l’erreur
globale. Recommencer sur chaque partition
2 feuilles 4 feuilles
Dans un
deuxième
temps élaguer
pour trouver la
bonne
complexité
Les mêmes « formes a priori »
s’adaptent très bien à la
classification : les ligne tracées sont
des séparation et plus ds
interpolations
13. 13BIG DATA – Meet Up – janvier 2015
K nearest neighbour
ClassificationB
Chaque nouveau pint est évalué en fonctin des k plu proches valeurs connues
K=1 K=10 K=100
Source : Stanford -
14. 14BIG DATA – Meet Up – janvier 2015
Un vrai travail de créativité
Démarche opérationnelleC
Comprendre n’est pas une nécessité algorithmique.
Cela donne des idées d’enrichissement, facilite le dialogue
avec le client final et accensement donne de l’intérêt
Comprendre les données
: contenu et signification
Définir la
fonction de coût
La fonction de coût peut être étalonnée sur une
prédiction naïve : permettra d’évaluer le gain réel de vos
efforts. Vous pouvez aussi en choisir deux
Tester des modélisations
Complexifiez progressivement vos approche :
-> chaque modélisation reprend toutes les étapes
d’optimisation détaillées dans ce support
Enrichir le data set
Enrichissement :
- Depuis le datasset lui mêle :
- calcul de durée, flux,
autorégression
- Composition de variables
- Avec des données externes
Nettoyer / compléter
Un data set n’est jamais complet, et nombre de modèles
ne supportent pas les « trous » … à vous de les combler
!
Présenter des résultats
actionables
Une courbe de ROC n’est pas forcément un livrable
explicite pour une direction métier …
Comprendre le problème
Le machine learning trouve des réponses à des questions
précise. Aucun algorithme n’aide à trouver cette question
15. 15BIG DATA – Meet Up – janvier 2015
Le cours focalise sur les phases les plus
techniques de la démarche projet
Plan du coursD
Classification
Regression
Clustering
Completion
optimization
Reinforcement
Apprentissage
supervisé : faire
des prévisions
Apprentissage par
renforcement
Apprentissage non
supervisé :
comprendre
• Spam detection
• biology/medicine
• fraud detection
• scoring (Google, Meetic)
• Weather prediction
• stock prediction
• speech recognition
• e-marketing
• sentiment mining
• recommendation system
• rare event detection
• Obama’s campaign
• automatic investment on
financial markets
• game playing
• Yield management
• Pavlov’s dog
• funny things :
https://www.youtube.com/watch?v=Lt-KLtkDlh8
Analyse exploratoire
Données non
structurées :
exemple du text
mining
Comprendre les
données : contenu et
signification
Définir la
fonction de coût
Tester des
modélisations
Nettoyer / compléter
Présenter des résultats
actionables
Comprendre le
problème
Rappel de la
démarche
1
2 3
4
16. 16BIG DATA – Meet Up – janvier 2015
Des questions ?
• General : http://www.datasciencecentral.com/
• Courses : https://www.coursera.org/course/artificialvision/
• Material : http://www.di.ens.fr/~fbach/
• Machine Learning competitions : http://www.kaggle.com/
17. 17BIG DATA – Meet Up – janvier 2015
p://peekaboo-vision.blogspot.fr/2013/01/machine-learning-cheat-sheet-for-scikit.html
18. 18BIG DATA – Janvier 2015
Notre programme de formation
• Stratégie Big Data
– Maîtrise des usages
– Connaissance de l’écosystéme
– Sensibilisation à la Transformation et Gouvernance
– Introduction à la Data Science et aux outils Big Data : Data Science Studio, Tableau
• Sensibilisation au Big Data (en partenariat avec le GFII)
– Fondamentaux et applications sectorielles
– Ecosystème Big Data
• Pour les entreprises :
– Identification des opportunités
– Définition d’une roadmap Big Data
formation@data-business.fr
• Formule Full Time : 5 jours
• Formule Executive : 3 x 1,5 jours
• Sessions de 2 jours
• Ateliers de sensibilisation
• Séminaires de formation
19. BIG DATA l ANALYTICS l DATAVIZ
www.data-business.fr
MERCI
vincent@data-business.fr
06.72.48.39.84