démystifions le machine learning avec spark par david martin pour le salon big data paris 2016

31
Démystifions le Machine Learning avec Spark

Upload: ippon

Post on 26-Jan-2017

2.855 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Démystifions le Machine Learning avec Spark

Page 2: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

David MARTINDIRECTEUR DU CONSEIL

[email protected]

@_dmartin_

Page 3: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Simple facts

90% de la donnée

mondiale actuelle générée

au cours des 2 dernières années

Page 4: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

MachineLearning ?

Page 5: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

DéfinitionLe Machine Learning est une branche de l’Intelligence Artificielle…

… qui s’attache à étudier les techniques permettant à un système d’apprendre à

réaliser des tâches.

Souvent couplé au Data Mining, l’ensemble permet d’apporter une réponse

complète aux problématiques d’analyse et de traitement de la donnée.

Machine Learning paradigm == Programming by example

Page 6: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Présentation par l’exemple

Page 7: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Prédire un prixDéterminer le bon prix pour vendre un bien

Quels paramètres pour construire le modèle ?

Surface habitable, surface terrain, exposition, nombre de chambres, salles de

bains, année de construction, ...

Page 8: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Catégorisation d’entitésDéterminer si un équipement présente un risque de panne

Quels paramètres ?

Nb heures de fonctionnement, température(s), régime, nombre total d’opérations,

contraintes, ...

Page 9: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Création de groupes de donnéesGrouper les données : segmenter une base clients

Apprentissage non supervisé : l’algorithme n’a pas reçu d’information d’

appartenance à une catégorie, il crée lui même les groupes

Page 10: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Reconnaissance d’objetsReconnaître un objet, une forme, une lettre, un son, ...

Page 11: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Mais aussi...> Optimisations de campagnes marketing

> Détection de fraude

> Optimisations de chaines d’approvisionnement

> Sécurisation de la fidélité client (customer churn prediction)

> Moteurs de recommandation

> Publicité ou Contenu ciblés

> Nouveaux services disruptifs

...

Page 12: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Les principaux algorithmes

Page 13: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Catégories d’algorithmesCatégories d’algorithmes d’apprentissage :

> Apprentissage supervisé

> Apprentissage non supervisé

> Apprentissage semi supervisé

> Apprentissage par renforcement

...

Page 14: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Principaux algorithmesDes algorithmes ou familles fréquemment utilisé(e)s :

> Logistic regression

> Linear regression

> Support Vector Machine

> Decision Tree / Random Forest

> K-Means

> (Deep) Neural networks

...

Page 15: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

De la donnée brute à la prédiction

Page 16: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

La donnée bruteAu départ, beaucoup de données…

… potentiellement issues de beaucoup de systèmes

… traitant d’aspects divers

De la donnée brute, encore impropre à la consommation

Page 17: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

La préparationNettoyer, Filtrer, Harmoniser les informations pour commencer à travailler

> Supprimer ou compléter les données incomplètes

> Retenir les données relatives au domaine ciblé

> Homogénéiser les formats, les valeurs (si issues de systèmes différents…)

> Qualifier si besoin les informations (cas de l’apprentissage supervisé)

> Dériver les informations de la masse existante

Page 18: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Identifier le cas d’utilisationIdentifier la catégorie du cas d’utilisation

pour identifier le ou les algorithmes potentiellement adaptés

et sélectionner les paramètres en entrée offrant la meilleure pertinence

Le bon choix d’algorithme(s) importe tout autant que la bonne identification et

préparation des paramètres d’entrée

Page 19: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Implémenter, ajuster, itérer> Construire un modèle de prédiction sur la base d’une partie des données

préparées

> Tester le modèle

> Déduire les ajustements nécessaires

> Réitérer cette étape si besoin

Le processus est itératif…

… et peut prendre un temps important

avant de donner satisfaction

Page 20: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Prédire !Prédire reste la finalité

Mais le modèle peut/doit vivre. Les postulats initiaux évoluent.

Il doit être regénéré sur la base de données actualisées

> A/B Testing

> Sauvegarde et versioning des modèles

Page 21: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

En image

Raw data

Processed data

CleanFormatExtract features...

Algorithm training Test

Precisionthreshold

Prediction

Input(validation set / real data)

Page 22: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

En synthèseLes points importants :

> Disposer de beaucoup de données : le plus le mieux très souvent (mais pas

toujours)

> Pertinence et nombre des paramètres

> Commencer simple et itérer (!= optimisation précoce)

Page 23: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

De la théorie à la pratique

Page 24: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Implémentations

Rappels

On n’implémente pas sa version d’un algorithme

On utilise une implémentation existante, testée et éprouvée

Page 25: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Approches et outilsApproche SaaS

> API spécialisées ou génériques

> Azure Machine Learning

> Amazon Machine Learning

> Google Prediction API ...

Approche “tailor made” (plus bas niveau)

> Pandas / Scikit Learn

> Vowpal Wabbit

> Weka

> Apache Spark ...

Page 26: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Apache SparkApache Spark en quelques points

> Projet de l’Université de Berkeley (2009)

> Solution générique et performante de traitement de données

> Adaptée aux très gros volumes de données

> Distribue les traitements

> Données en mémoire pour une meilleure performance

> Ecrit en Scala, bindings Java, Python et R

> Traction de plus en plus forte

Page 27: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Apache Spark

Spark offre une solution performante de traitements de la donnée

Page 28: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Spark ML / ML LibPrincipaux algorithmes supportés

> Classification et régression

○ Linear regression, logistic regression, SVM

○ Naive Bayes (classification)

○ Decision Trees (Random Forest, Gradient-Boosted Trees)

> Système de recommandation

○ Collaborative Filtering (Alternating Least Squares)

> Clustering

○ K-Means, Latent Dirichlet allocation, …

> Frequent Pattern Mining

> Facilités pour la réduction de dimension (SVD, PCA)

> Optimisations possibles (Stochastic Gradient Descent…)

> Organisation des traitements sous forme de Pipelines (Spark ML)

Page 29: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

External libraries / ExtensionsSpark peut être étendu :

> librairies additionnelles tirant profit du framework

> Time Series

> Deep Learning

> Graph (GraphFrame)

et profiter de solutions externes :

> Notebooks (Zeppelin, Databricks, …)

> Solutions de dashboards

(Databricks Dashboards)

Page 30: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Pour conclure

Apache Spark est une solution

polyvalente et en pleine croissance

⇒ Pertinence de la plateforme à l’

ère du Big Data

Les perspectives futures sont très

intéressantes :

● Evolution constante de la

bibliothèque d’algorithmes,

● librairies externes

complémentaires spécialisées,

● traction en forte accélération, ...

Page 31: Démystifions le machine learning avec spark par David Martin pour le Salon Big Data Paris 2016

Venez nous rendre visite au

STAND IPPON 501

PARIS - BORDEAUX - NANTESWASHINGTON DC - NEW-YORK - RICHMOND

[email protected] - www.ippon-hosting.com - www.ippon-digital.fr@ippontech - 01 46 12 48 48