Introduction à la Data Science

Année scolaire 2015-2016

Matthias Oehler
Directeur Général Adjoint @FullsixData

Download

Sommaire - Session #1

100%x200

REVOLUTION

La Data science, c'est quoi exactement et quelles sont les diciplines auquelles cela fait référence ?

100%x200

FONDAMENTAUX

Quels sont les grands principes de la Data science ?

100%x200

PROCESSUS

Comment bien apréhender un sujet Data science et quels processus suivre afin d'en tirer profit ?

100%x200

PRODUIT

Vers une notion de Data produits. Quelques exemples ?

75%x75%

DATA REVOLUTION

Qui a besoin de Data Science ?

Ces dernieres années, Big Data et Data science sont devenus la solution à tous les problèmes.

DataScienceDisciplines

Data Science : qu'est ce que c'est exactement ?

La Data science est composée de plusieurs expertises.

Les data scientists

Le data scientist est la personne capable d'identifier/solutionner les problèmes pouvant étre résolus par les données.

Le data scientist :

  • est un magicien


  • est souvent au coeur d'une équipe multi-diciplinaire


  • doit comprendre les contraintes de tous et s'adapter


  • sait doit expliquer son métier


  • à le metier le plus sexy du siecle (Harvard Business Review)

Domaines d'applications

Le CRM et le Marketing sont les domaines d'expertises les plus courants.

plot of chunk domainplot

Langages de programmation utilisés

R et Python sont les langages de programmation préférés des Data scientists.

plot of chunk languageplot

Les grandes familles d'algorithmes

Répartition des algorithmes mathématiques en grandes familles

Supervisés

  • Regression
  • Decision Trees
  • Neural Nets
  • SVM
  • Bayesian Nets
  • Genetic Algorithms
  • Rules induction
  • Autres ...

Non Supervisés

  • ACP
  • ACM
  • Kohonen
  • Text mining
  • Bayesian Nets
  • Social Network
  • Autres ...

Associations

  • Association rules
  • Social Networks
  • Link Analysis
  • Collaborative filtering
  • Look alike
  • Autres ...

Utilisation des algorithmes

Les algorithmes les plus utilisés par les Data Scientist sont les Regressions, les arbres de décisions et le clustering.

plot of chunk methodeplot

75%x75%

DATA FONDAMENTAUX

Environnements techniques

Ce qu'il faut connaitre

75%x75%

Cloud computing

IaaS, PaaS, SaaS, DaaS : comment tout est devenu un "Service" stocké dans les nuages.

75%x75%

Systemes distribués & Map reduce

Hadoop, HDFS, Hive, MapR : comment faire basculer les traitements analytics sur une architecture scalable.

75%x75%

NoSQL

Big Table, MongoDB, Hbase, CouchDB : comment les sytemes de gestion de base de données ont ils évolués.

Le Cloud Computing

cloud

Grand public :

  • Gmail
  • Dropbox
  • iCloud
  • Flickr
  • et des centaines...

Data sciences :

Le Cloud Computing et la Data science

Avantages et inconvenients du cloud computing pour la Data science

Avantages

  • Simplicité de mise en place ne necessitant qu'une très faible intervention des services technique
  • Bénéficier d'une puissance de calcul elastique grâce à la virtualisation
  • Maitrise des couts grâce au "Pay per use"
  • Pouvoir accéder à ses algorithmes où que l'on soit

Inconvénients

  • Couteux sur le long terme (abonnement), même si la logique de calcul est assez complexe (electricité, maintenance, renouvellement de park, ...)
  • Dépendance forte à un tiers
  • Pour des questions juridiques, l'utilisation du cloud computing peut être tout simplement impossible

Systemes distribués & Map Reduce

Vue conceptuelle

DataScienceDisciplines

Les environnements distribués et la Data science

Avantages et inconvenients du distribué pour la Data science

Avantages

  • Possibilité de stoquer et exploiter une volumétrie de donnée gigantesque () autant de descripteur pouvant service à un modèle prédictif)
  • La volumétrie des données n'est plus réellement un problème. Les algorithmes fonctionnant sur 1 000 lignes fonctionneront sur 109 lignes
  • Emergence de nouvelles approches méthodologiques et de nouveaux algorithmes

Inconvénients

  • Le stockage de la données a repris l'avantage sur l'analyse des données. Une données bien souvent inexploitable en l'état et bien trop mal struturée.
  • Quid de la pertinence d'utiliser un si gros volume de données vs. des échantillonages
  • Demande bien souvent une refonte complète des algorithmes traditionnels pour fonctionner en distribué

Les bases de données NoSQL

Les base de données NoSQL ont été spécialement conçu pour fournir des solutions de stockage de données de hautes performances et évolutives

Pourquoi le NoSQL ?

  • Une solution "simple" pour répondre aux problématiques de volumétrie et de non structuration de la donnée.


  • Moyennant certains compromis sur les fondements mêmes des SGBD :
    • Atomicité
    • Consistence
    • Durabilité


  • Objectifs : Scalabilité et haute disponibilité

Grandes familles des BDD NoSQL :

La grande majorité de ces projets sont en Open Source, voir gratuit. Profitez en !

Les BDD NoSQL et la Data science

Avantages et inconvenients des base NoSQL pour la Data science

Avantages

  • Scalabilité
  • Données non structurée
  • Données naturellemnt connecté (réseaux sociaux)

Inconvénients

  • Gère mal les relations
  • Structuration de la donnée dépendant de l'utilisation qui en est faite
  • Non adapté en cas de besoin de requétage fort (schemaless) ou complexe

Un data scientist est meilleur en statistique que n'importe quel développeur et meilleur en développement que n'importe quel statisticien

75%x75%

DATA PROCESS

Des processus : Pourquoi ?

Les projets Data Science étant souvent très chronophages, il est important de structurer son travail.

  • "Comment pourrais-je atteindre mon objectif ? En combien de temps ? Combien cela me coutera ?"


  • "Mes données ? Je ne sais pas je vais voir avec mon DSI."


  • "Comment ca je ne peux pas l'àge et la civilité mes meilleurs clients ? Il fallait collecter l'information ?"


  • "Quelles sont les règles qui permettent de prédire cela ? Non non, je ne veux pas que l'on utilise cette donnée."


  • "Combien cela me rapportera ?"


Le processus CRISP-DM

DataScienceDisciplines

Processus émergent

DataScienceDisciplines

Data Product : la fin des analyses statistiques

75%x75%

DATA PRODUCT

Quelques exemples de Data Product

Moteur de recommandation sur site

fitbit

Quelques exemples de Data Product

Moteur de suggestion

fitbit

Quelques exemples de Data Product

Recherche d'image similaire

fitbit

Quelques exemples de Data Product

Recherche de musique

fitbit

Quelques exemples de Data Product

Recommandation de style vestimentaire

fitbit

Quelques exemples de Data Product

Recommandation de film

fitbit

Quelques exemples de Data Product

Prediction de la prochaine action importante

fitbit

Quelques exemples de Data Product

Suivi des performances personnelles

fitbit

Par où commencer ?

Les 3P

Dans un contexte où les algorithmes sont de plus en plus utilisés au quotidien il devient indispensable de suivre une logique 'produit'

  • Au dela d'une simple analyse statistique, le Data Product a pour vocation d'ètre réutilisé, partagé, mesuré, amélioré

  • Le Data scientist a (aussi) un casquette de développeur. Ainsi il doit savoir :

    • Packager : Capitaliser sur un travail déjà effectué, rentabiliser le temps passé (R&D)

    • Partager : Le travail collaboratif

    • Publier : Mettre en production son code

  • Créer son propre Package, le partager sur Github et le faire tester

Proposition pour le TP

  • Création d'un package


  • Récupération de données via Webservice


  • Analyse de données de type "Document" (twitter)


  • Publication

Merci

Pour plus d'information, contactez moi !

emailmoehler@makazi.com
githubhttps://github.com/OehlR