0% ont trouvé ce document utile (0 vote)
92 vues20 pages

Guide D'autoformation - R

Ce livre propose une formation complète sur les data sciences, axée sur l'utilisation du langage R pour exploiter les Big Data. Il permet aux lecteurs, qu'ils soient débutants ou professionnels, de développer des compétences en data science, de comprendre des articles de recherche et de gérer des équipes de data scientists. L'ouvrage couvre divers sujets, y compris le traitement du langage naturel et les algorithmes de machine learning, tout en offrant des ressources pratiques accessibles en ligne.

Transféré par

alhadjabakarissa
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
92 vues20 pages

Guide D'autoformation - R

Ce livre propose une formation complète sur les data sciences, axée sur l'utilisation du langage R pour exploiter les Big Data. Il permet aux lecteurs, qu'ils soient débutants ou professionnels, de développer des compétences en data science, de comprendre des articles de recherche et de gérer des équipes de data scientists. L'ouvrage couvre divers sujets, y compris le traitement du langage naturel et les algorithmes de machine learning, tout en offrant des ressources pratiques accessibles en ligne.

Transféré par

alhadjabakarissa
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Data Scientist et langage R

Guide d’autoformation à l’exploitation des Big Data


Tous les experts s’accordent à dire que 90% des usages du Big Data proviennent de l’utilisation des data

Data Scientist
sciences. L’objectif de ce livre est de proposer une formation complète et opérationnelle sur les data sciences
qui permet de délivrer des solutions via l’usage du langage R.

Data Scientist et langage R


Ainsi, l’auteur propose un parcours didactique et professionnalisant qui, sans autre pré-requis qu’un niveau
Bac en mathématiques et une grande curiosité, permet au lecteur :
- de s’intégrer à une équipe de data scientists,
- d’aborder des articles de recherche possédant une haute teneur en mathématiques,

et langage R
- le cas échéant de développer en langage R, y compris des algorithmes nouveaux et de beaux graphiques,
- ou tout simplement de manager une équipe projet comprenant des data scientists, en étant à même de
dialoguer avec eux de façon efficace.
Le livre ne se cantonne pas aux algorithmes du "machine learning", il aborde divers sujets importants comme
le traitement du langage naturel, les séries temporelles, la logique floue, la manipulation des images.
La dynamique de l’ouvrage soutient le lecteur pas à pas dans sa découverte des data sciences et l’évolution
de ses compétences théoriques et pratiques. Le praticien en exercice y découvrira également de nombreux
savoir-faire à acquérir et le manager pourra surfer sur l’ouvrage après avoir lu attentivement le bestiaire des
data sciences de l’introduction, qui sans inexactitude ou vulgarisation excessive présente le sujet en faisant

Guide d’autoformation
l’économie de mathématiques ou de formalismes dissuasifs.
Les programmes R décrits dans le livre sont accessibles en téléchargement sur le site [Link] et
peuvent être exécutés pas à pas.

Les chapitres du livre


Introduction • Premiers pas avec R • Maîtriser les
Henri LAUDE est un professionnel reconnu des
Computer Sciences. Il a encadré de nombreux tra-
à l’exploitation des Big Data
bases • Techniques et algorithmes incontournables • vaux de R&D autour des data sciences, connexes
Cadre méthodologique du data scientist • Traite- à l’intelligence économique, à l’IA, aux risques, à
ment du langage naturel • Graphes et réseaux •
Téléchargement la détection de fraudes et à la cyberdéfense. Prési-
[Link]
.fr
Autres problèmes, autres solutions • Feature Engi- dent de l’APIEC (Association pour la Promotion de
neering • Compléments utiles • Annexes l’Intelligence Economique), Chief Data Scientist et
fondateur du Laboratoire de Data Sciences et Big
sur [Link] : Data BlueDsX du groupe BlueSoft, il est également
­ code de tous les exemples du livre.
b ­­Le co-fondateur de la startup Advanced Research
­ fichiers de données
b ­­Les Partners, où il anime la conception d’algorithmes
nécessaires aux exemples. très novateurs implémentés en R et en Python sur
des plate-formes Hadoop et Spark.
C’est un passionné de data sciences et il ambitionne
ISSN : 1960-3444 Pour plus
ISBN : 978-2-409-00043-0 d’informations :
de transformer tous les lecteurs de son livre en data
geeks ou tout au moins de leur donner suffisam-
ment de culture générale sur le sujet pour servir
leurs objectifs.

54 €

Henri LAUDE
Table des matières 1

Les éléments à télécharger sont disponibles à l'adresse suivante :


[Link]
Saisissez la référence de l'ouvrage EPDASR dans la zone de recherche
et validez. Cliquez sur le titre du livre puis sur le bouton de téléchargement.

Chapitre 1
Introduction
1. Data scientist, un métier à la mode. . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2. Les data-sciences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3. Le Big Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4. La dynamique de cet ouvrage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.1 Nos objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.2 La structure de l'ouvrage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.2.1 Les deux parcours complémentaires. . . . . . . . . . . . . . . . . 20
4.2.2 Ressources complémentaires à utiliser . . . . . . . . . . . . . . . 22
5. Petit bestiaire des data-sciences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5.1 Les fondamentaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5.1.1 Apprentissage et classification . . . . . . . . . . . . . . . . . . . . . 24
5.1.2 Petit vocabulaire graphique du machine learning . . . . . . 25
5.1.3 Régression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.1.4 Régression linéaire généralisée . . . . . . . . . . . . . . . . . . . . . 42
5.1.5 Arbres de décision, prune, élagage . . . . . . . . . . . . . . . . . . 43
5.1.6 Clustering, k-means. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.1.7 k-NN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.1.8 Modèles paramétriques . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.1.9 Lazy algorithm (algorithme paresseux) . . . . . . . . . . . . . . 46
5.1.10 Overfitting : sur-détermination, sur-apprentissage. . . . . 46
5.1.11 Validation croisée, régularisation, bagging . . . . . . . . . . . 47
5.1.12 Optimisation, méthode du gradient. . . . . . . . . . . . . . . . . 49
5.1.13 Algorithme glouton (greedy algorithm). . . . . . . . . . . . . . 51
2 Data Scientist et langage R
Guide d’autoformation à l'exploitation des Big Data

5.1.14 Programmation linéaire, simplexe, point intérieur . . . . . 51


5.1.15 Estimation via la méthode de Monte-Carlo. . . . . . . . . . . 53
5.1.16 Entropie, indépendance et information mutuelle . . . . . . 55
5.1.17 Discrétisation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.2 Méthodes "ensemble" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.2.1 Random forest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.2.2 AdaBoost (adaptative boosting) . . . . . . . . . . . . . . . . . . . . 59
5.3 Lois de probabilité et distribution . . . . . . . . . . . . . . . . . . . . . . . . 61
5.3.1 Généralités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.3.2 Petit bestiaire des lois de probabilité . . . . . . . . . . . . . . . . 64
5.4 Les graphes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.4.1 Vocabulaire de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
5.4.2 Conversion d'un tableau d'observations
en graphe, similarité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
6. Informatique professionnelle et data-sciences . . . . . . . . . . . . . . . . . . 70
6.1 La technologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
6.2 Business Intelligence versus Big Data . . . . . . . . . . . . . . . . . . . . . 74
6.2.1 Différences en termes d'architecture . . . . . . . . . . . . . . . . 74
6.2.2 Différences en termes d'usage. . . . . . . . . . . . . . . . . . . . . . 75
6.2.3 En synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
7. Notations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
7.1 Notations des paramètres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
7.2 Autres notations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
7.2.1 Fonctions et applications … f(x), d(x,y) … . . . . . . . . . . . 79
7.2.2 Quelques confusions possibles . . . . . . . . . . . . . . . . . . . . . 79
8. À vous de jouer ! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Table des matières 3

Chapitre 2
Premiers pas avec R
1. Installation des composants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
1.1 Installation et lancement de R. . . . . . . . . . . . . . . . . . . . . . . . . . . 83
1.2 Installation et lancement de RStudio . . . . . . . . . . . . . . . . . . . . . 84
1.3 Installation de nouveaux packages . . . . . . . . . . . . . . . . . . . . . . . 86
1.4 Installation de packages : compléments . . . . . . . . . . . . . . . . . . . 88
2. Prise en main de R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
2.1 R, une calculatrice efficace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
2.2 R, un langage vectorisé. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
2.3 Fonctions agissant sur des vectors. . . . . . . . . . . . . . . . . . . . . . . . 95
2.3.1 Une première analyse rapide des données . . . . . . . . . . . . 95
2.3.2 Quelques statistiques simples sur les vectors . . . . . . . . . 97
2.3.3 Trier un vector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
2.3.4 Diverses fonctions avec somme, produit, min et max . 100
2.4 Types de données simples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
2.4.1 Les booléens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
2.4.2 Les ensembles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
2.4.3 Les listes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
2.4.4 Les facteurs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
2.4.5 Les tableaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
2.5 Les fonctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
2.5.1 Création et utilisation d'une fonction simple . . . . . . . . 127
2.5.2 Création d'un opérateur à partir d'une fonction
de deux variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
2.5.3 Usage des fonctions et portée des variables . . . . . . . . . . 129
2.5.4 Application des fonctions sur les matrices : apply . . . . 133
2.5.5 Les fonctions : compléments utiles . . . . . . . . . . . . . . . . 134
2.6 Structures de contrôle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
2.6.1 Des instructions communes avec d'autres langages . . . 140
2.6.2 Parcourir une matrice via des boucles for. . . . . . . . . . . . 142
2.7 Les chaînes de caractères . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
2.8 Le formatage des nombres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
4 Data Scientist et langage R
Guide d’autoformation à l'exploitation des Big Data

2.9 Les dates et les temps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150


2.10 Mesure de la durée d'un algorithme . . . . . . . . . . . . . . . . . . . . . 150
2.11 Les nombres complexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
2.11.1 Manipulations de base des nombres complexes . . . . . . 156
2.11.2 Visualisation de nombres complexes . . . . . . . . . . . . . . . 157
2.12 Programmation orientée objet . . . . . . . . . . . . . . . . . . . . . . . . . . 158
2.12.1 Classes et objets, en bref . . . . . . . . . . . . . . . . . . . . . . . . . 159
2.12.2 Constructeurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
2.12.3 Héritage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
2.12.4 Objets mutables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
2.12.5 Gestion de pile : implémentation
Orientée Objet avec RC . . . . . . . . . . . . . . . . . . . . . . . . . 173
3. Manipulation des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
3.1 Lecture des données : les bases . . . . . . . . . . . . . . . . . . . . . . . . . 179
3.2 Manipulation des colonnes d'un [Link]. . . . . . . . . . . . . . . 182
3.3 Calculs simples sur un [Link]. . . . . . . . . . . . . . . . . . . . . . . 183
3.3.1 Calculs sur les colonnes et les lignes . . . . . . . . . . . . . . . 183
3.3.2 Manipulation des lignes . . . . . . . . . . . . . . . . . . . . . . . . . 184
3.3.3 Application : comparaison effectifs de classes et Khi-2 188
3.3.4 Création de colonnes calculées . . . . . . . . . . . . . . . . . . . . 190
3.3.5 Tri d'un [Link] via order() . . . . . . . . . . . . . . . . . . . . 196
3.4 Analyse visuelle des données . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
3.4.1 Visualisation simple des données . . . . . . . . . . . . . . . . . . 198
3.4.2 Visualisation des variables numériques 2 à 2
avec mention des classes . . . . . . . . . . . . . . . . . . . . . . . . 200
3.4.3 Corrélations entre variables numériques . . . . . . . . . . . . 203
3.4.4 Séparation par classe, ggplot2, qplot . . . . . . . . . . . . . . . 205
3.4.5 Visualisation 3D, relation entre trois
variables numériques. . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
3.4.6 Graphiques par paires . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
3.4.7 Boîtes à moustaches et tentative d'élimination
des outliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
3.4.8 Création d'un modèle par arbre de décision. . . . . . . . . . 211
Table des matières 5

Chapitre 3
Maîtriser les bases
1. Se mettre en harmonie avec les données. . . . . . . . . . . . . . . . . . . . . . 215
1.1 Quelques notions fondatrices . . . . . . . . . . . . . . . . . . . . . . . . . . 216
1.1.1 Phénomène aléatoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
1.1.2 Probabilité, variable aléatoire et distribution. . . . . . . . . 217
1.1.3 Un peu de mathématiques : notations
et définitions utiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
1.1.4 Moments d'une variable aléatoire discrète X . . . . . . . . . 229
1.1.5 Premières considérations sur les erreurs
et estimations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
1.2 Se familiariser avec ses données. . . . . . . . . . . . . . . . . . . . . . . . . 239
1.2.1 R Commander . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
1.2.2 Rattle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
2. Matrices et vecteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
2.1 Conventions, notations, utilisations basiques . . . . . . . . . . . . . 249
2.2 Matrices, vecteurs : vers une introduction
à la notion d'apprentissage supervisé . . . . . . . . . . . . . . . . . . . . 262
2.3 Plus loin dans la manipulation des matrices avec R . . . . . . . . . 264
2.3.1 Opérations basiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
2.3.2 Quelques savoir-faire utiles sur les matrices de R . . . . . 265
2.3.3 Normes de vecteurs et normes de matrices . . . . . . . . . . 269
2.3.4 Matrices et vecteurs : diverses syntaxes utiles . . . . . . . 274
3. Estimations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
3.1 Positionnement du problème d'estimation . . . . . . . . . . . . . . . . 279
3.1.1 Formulation générale du problème. . . . . . . . . . . . . . . . . 279
3.1.2 Application et reformulation
du problème d'estimation . . . . . . . . . . . . . . . . . . . . . . . . 282
3.2 Les indicateurs d'écart utilisés en machine learning. . . . . . . . . 293
3.2.1 MSE, RMSE, SSE, SST . . . . . . . . . . . . . . . . . . . . . . . . . . 293
3.2.2 MAE, ME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
3.2.3 NRMSE/NRMSD, CV_MRSE . . . . . . . . . . . . . . . . . . . . 297
3.2.4 SDR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
6 Data Scientist et langage R
Guide d’autoformation à l'exploitation des Big Data

3.2.5 Accuracy, R2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299


4. Mise en pratique : apprentissage supervisé. . . . . . . . . . . . . . . . . . . . 302
4.1 Préparation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
4.2 Tester des hypothèses, p_value . . . . . . . . . . . . . . . . . . . . . . . . . 304
4.2.1 Analyse graphique interactive avec iplots . . . . . . . . . . . 305
4.2.2 Test de Breush-Pagan et zoom sur p_value . . . . . . . . . . 306
4.3 Création d'un modèle (régression linéaire multiple) . . . . . . . . 307
4.4 Établissement d'une prédiction . . . . . . . . . . . . . . . . . . . . . . . . . 307
4.5 Étude des résultats et représentations graphiques . . . . . . . . . . 309
4.6 Indicateurs courants - calculs . . . . . . . . . . . . . . . . . . . . . . . . . . 313
4.7 Étude du modèle linéaire généré . . . . . . . . . . . . . . . . . . . . . . . . 314
4.8 Conclusion sur le modèle linéaire . . . . . . . . . . . . . . . . . . . . . . . 321
4.9 Utilisation d'un modèle "Random Forest". . . . . . . . . . . . . . . . . 322

Chapitre 4
Techniques et algorithmes incontournables
1. Constituer sa boîte à outils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
2. Représentation graphique des données . . . . . . . . . . . . . . . . . . . . . . . 326
2.1 Un graphique "simple" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
2.2 Histogrammes évolués . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
2.2.1 Distribution multiclasse . . . . . . . . . . . . . . . . . . . . . . . . . 329
2.2.2 Mixture de plusieurs distributions par classe . . . . . . . . 331
2.2.3 Visualisation de la densité d'une distribution . . . . . . . . 332
2.2.4 Une autre mixture par classe . . . . . . . . . . . . . . . . . . . . . 333
2.2.5 Une variable, mais un histogramme
pour chaque classe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
2.2.6 Graphique avec une densité par classe . . . . . . . . . . . . . . 336
2.3 Diagramme par paires et à facettes . . . . . . . . . . . . . . . . . . . . . . 338
2.3.1 Diagramme par paires, version simple . . . . . . . . . . . . . . 338
2.3.2 Classes en configuration XOR . . . . . . . . . . . . . . . . . . . . 339
2.3.3 Diagramme par paires avec "factors" . . . . . . . . . . . . . . . 341
2.3.4 Facettes et échelle logarithmique . . . . . . . . . . . . . . . . . . 345
Table des matières 7

3. Machine learning : pratiques courantes . . . . . . . . . . . . . . . . . . . . . . 346


3.1 Parcours théorique accéléré . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
3.1.1 Linéarité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
3.1.2 Erreurs in et out, notion de VC dimension . . . . . . . . . . 349
3.1.3 Hyperplans, séparabilité avec marges. . . . . . . . . . . . . . . 353
3.1.4 Kernel Trick, noyaux, transformations, feature space . 355
3.1.5 Problèmes de la régression : introduction
à la régularisation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
3.2 Pratique par pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
3.2.1 Cross validation : k-fold CV . . . . . . . . . . . . . . . . . . . . . . 366
3.2.2 Naive Bayes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
3.2.3 C4.5 et C5.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
3.2.4 Support Vector Machines (SVM). . . . . . . . . . . . . . . . . . 377
3.2.5 Clusterisation, k-means . . . . . . . . . . . . . . . . . . . . . . . . . 382
4. Où en sommes-nous dans notre apprentissage ? . . . . . . . . . . . . . . . 393
4.1 Vos acquis opérationnels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
4.2 Les lacunes éventuelles à combler maintenant . . . . . . . . . . . . . 394

Chapitre 5
Cadre méthodologique du data scientist
1. Le problème méthodologique au niveau du projet . . . . . . . . . . . . . . 395
1.1 L'expression du besoin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
1.2 La gestion du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
2. Le cycle interne des data-sciences . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
2.1 Revue de détail du problème posé . . . . . . . . . . . . . . . . . . . . . . . 400
2.2 Travaux préliminaires sur les données . . . . . . . . . . . . . . . . . . . 401
2.2.1 Exigences sur les données . . . . . . . . . . . . . . . . . . . . . . . . 401
2.2.2 Collecte, nettoyage et compréhension des données . . . 402
2.3 Le cycle de modélisation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
2.3.1 Feature engineering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403
2.3.2 Modélisation et évaluation . . . . . . . . . . . . . . . . . . . . . . . 405
2.3.3 Choix du meilleur modèle. . . . . . . . . . . . . . . . . . . . . . . . 406
8 Data Scientist et langage R
Guide d’autoformation à l'exploitation des Big Data

2.3.4 Test, interprétation et confrontation avec le métier. . . 406


2.4 Préparation de l'industrialisation et déploiement. . . . . . . . . . . 408
2.5 Préparation des itérations suivantes . . . . . . . . . . . . . . . . . . . . . 409
2.5.1 Éléments à prendre en compte . . . . . . . . . . . . . . . . . . . . 409
2.5.2 Documentation gérée par les data scientists . . . . . . . . . 410
3. Compléments méthodologiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
3.1 Classifier vos objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
3.2 Trucs et astuces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412

Chapitre 6
Traitement du langage naturel
1. Positionnement du problème. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
2. Analyse sémantique latente et SVD . . . . . . . . . . . . . . . . . . . . . . . . . 416
2.1 Aspects théoriques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
2.1.1 SVD : généralités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
2.1.2 Une justification de la décomposition SVD . . . . . . . . . 418
2.1.3 SVD dans le contexte LSA . . . . . . . . . . . . . . . . . . . . . . . 418
2.1.4 Interprétation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 419
2.1.5 Alternative non linéaire, Isomap (MDS, géodésique,
variété, manifold) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
2.2 Mise en pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
2.2.1 Initialisation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
2.2.2 Au cœur de LSA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
2.2.3 Résultats. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
2.2.4 Manipulations, interprétations récréatives
et non fondées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428
Table des matières 9

Chapitre 7
Graphes et réseaux
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
2. Premiers pas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
2.1 Quelques notions et notations complémentaires basiques . . . 432
2.2 Manipulations simples de graphes avec R . . . . . . . . . . . . . . . . 434
2.3 Structure des graphes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
3. Graphes et réseaux (sociaux) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 449
3.1 Analyse des réseaux sociaux : concepts de base . . . . . . . . . . . . 450
3.2 Mise en pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
3.3 Détection de communautés . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456

Chapitre 8
Autres problèmes, autres solutions
1. Séries temporelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
1.2 Modèle stationnaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 466
1.2.1 Processus stationnaire : les bases . . . . . . . . . . . . . . . . . . 467
1.2.2 Processus autorégressif AR : aller plus loin . . . . . . . . . . 469
1.2.3 Considérations (très) utiles. . . . . . . . . . . . . . . . . . . . . . . 471
1.3 Processus non stationnaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
1.3.1 Le modèle ARIMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473
1.3.2 Processus saisonniers : SARIMA. . . . . . . . . . . . . . . . . . . 474
1.3.3 Modèles ARCH et GARCH . . . . . . . . . . . . . . . . . . . . . . 475
1.3.4 Convolution et filtres linéaires . . . . . . . . . . . . . . . . . . . . 478
1.4 Mise en pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
1.4.1 Les bases de la manipulation des séries
temporelles en R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
1.4.2 Étude de séries temporelles . . . . . . . . . . . . . . . . . . . . . . . 486
1.4.3 Prédictions sur ARIMA (AR MA SARIMA) . . . . . . . . . 492
1.5 Mini bestiaire ARIMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496
10 Data Scientist et langage R
Guide d’autoformation à l'exploitation des Big Data

2. Systèmes flous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499


3. Essaim (swarm) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 509
3.1 Swarm et optimisation : l'algorithme PSO . . . . . . . . . . . . . . . 509
3.1.1 Présentation de PSO . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510
3.1.2 Description de PSO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510
3.2 Mise en pratique de PSO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513

Chapitre 9
Feature Engineering
1. Feature Engineering, les bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
1.1 Positionnement du problème. . . . . . . . . . . . . . . . . . . . . . . . . . . 517
1.2 Ce sur quoi il faut être très attentif. . . . . . . . . . . . . . . . . . . . . . 518
1.2.1 La qualité de la distribution . . . . . . . . . . . . . . . . . . . . . . 518
1.2.2 La nature des features . . . . . . . . . . . . . . . . . . . . . . . . . . . 519
1.3 Maîtriser la dimensionnalité . . . . . . . . . . . . . . . . . . . . . . . . . . . 522
1.4 Une solution éprouvée : la PCA. . . . . . . . . . . . . . . . . . . . . . . . . 525
1.5 Un exemple simple d'utilisation de la PCA. . . . . . . . . . . . . . . . 525
1.6 Les valeurs inconnues et les features mal conditionnées . . . . . 534
1.7 Création de nouvelles features. . . . . . . . . . . . . . . . . . . . . . . . . . 537
1.8 En guise de conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
2. PCA classique, éléments mathématiques . . . . . . . . . . . . . . . . . . . . . 541
3. Réduction des données (data reduction). . . . . . . . . . . . . . . . . . . . . . 544
4. Réduction de la dimensionnalité et entropie . . . . . . . . . . . . . . . . . . 545
4.1 Description théorique du problème. . . . . . . . . . . . . . . . . . . . . . 545
4.2 Implémentation en R et discussion. . . . . . . . . . . . . . . . . . . . . . 548
Table des matières 11

Chapitre 10
Compléments utiles
1. GAM : généralisation de LM/GLM . . . . . . . . . . . . . . . . . . . . . . . . . . 557
2. Manipulation d'images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 559
2.1 Création, visualisation, lecture et écriture d'images. . . . . . . . . 560
2.2 Transformations des images . . . . . . . . . . . . . . . . . . . . . . . . . . . 566
2.2.1 Exemples de manipulation de la couleur
et des intensités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567
2.2.2 Exemples de manipulation de la géométrie de l'image . 570
2.2.3 Application de filtres sur les images . . . . . . . . . . . . . . . . 573
3. Comment créer un échantillon : LHS (hypercube latin) . . . . . . . . . 575
4. Travailler sur des données spatiales. . . . . . . . . . . . . . . . . . . . . . . . . . 577
4.1 Variogramme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577
4.1.1 Champ et variable régionalisée . . . . . . . . . . . . . . . . . . . . 577
4.1.2 Détermination du variogramme. . . . . . . . . . . . . . . . . . . 584
4.2 Krigeage (kriging) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587
4.2.1 La théorie, en bref . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 587
4.2.2 Implémentation en R . . . . . . . . . . . . . . . . . . . . . . . . . . . 588
5. Savoir-faire utiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590
5.1 Tracer une courbe ROC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590
5.2 Un réseau neuronal (premiers pas vers le deeplearning) . . . . . 593
6. Gradient Boosting et Generalized Boosted Regression . . . . . . . . . . 598
6.1 Les grands principes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598
6.2 Les paramètres et les usages (package GBM) . . . . . . . . . . . . . . 600
6.2.1 Covariance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 600
6.2.2 Loss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 600
6.2.3 Optimisation de l'algorithme . . . . . . . . . . . . . . . . . . . . . 601
6.3 Mise en pratique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 601
12 Data Scientist et langage R
Guide d’autoformation à l'exploitation des Big Data

Annexes
1. De l'utilité de ces annexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 605
2. Formulas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 605
3. Stratégies suivant la nature des données . . . . . . . . . . . . . . . . . . . . . 607
3.1 Comptages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 607
3.2 Proportions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608
3.3 Variable de réponse binaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . 608
3.4 Données induisant un modèle mixte (mixed effect) . . . . . . . . 608
3.5 Données spatiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610
3.6 Graphes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610
3.7 Analyse de survie (survival analysis) . . . . . . . . . . . . . . . . . . . . . 610
4. Filtres (sur images) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 611
5. Distances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614
6. Astuces et petits conseils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 618
6.1 Sur les tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 618
6.2 Gestion des variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 618
6.3 Analyse et manipulation de résultats . . . . . . . . . . . . . . . . . . . . 619
6.3.1 Résidus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 619
6.3.2 Manipulation des modèles . . . . . . . . . . . . . . . . . . . . . . . 619
7. Packages et thèmes à étudier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 620
7.1 Création de graphiques JavaScript via R. . . . . . . . . . . . . . . . . . 620
7.2 Créer des jointures comme en SQL . . . . . . . . . . . . . . . . . . . . . . 620
7.3 Règles d'association . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621
7.4 Exporter un modèle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621
7.5 Tenseurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 621
7.6 SVM pour la détection de nouveautés (novelty detection) . . . 622
8. Vocabulaire et "tricks of the trade" . . . . . . . . . . . . . . . . . . . . . . . . . . 622
8.1 Compléments sur les bases du machine learning . . . . . . . . . . . 622
8.2 Compléments sur les aspects bayésiens . . . . . . . . . . . . . . . . . . 624
8.3 Vocabulaire (dont anglais) des modèles gaussiens . . . . . . . . . . 626
Table des matières 13

9. Algorithmes à étudier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626


10. Quelques formulations d'algèbre linéaire . . . . . . . . . . . . . . . . . . . . . 627

Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 631
Chapitre 5
Cadre méthodologique
du data scientist
1. Le problème méthodologique au niveau du projet
Cadre méthodologique du data scientis t

Les data-sciences opérationnelles procèdent de la volonté de satisfaire les aspi-


rations, les besoins ou les exigences d'un client interne à une organisation.
Nous abordons ici les caractéristiques du déroulé d'un projet comportant des
data-sciences dans l'ensemble de ses activités.
Nous aborderons ensuite la part du déroulé du projet propre aux aspects data-
sciences.
L'objectif est de fournir une forme de "checklist" commentée aux managers,
chefs de projet et data scientists.

1.1 L'expression du besoin

La formulation du besoin nécessite souvent un travail assidu d'assistance. Ce


besoin est parfois exprimé sous des formes qui ne sont pas directement inter-
prétables en termes de problème de data-sciences :
– Je voudrais aller plus loin dans l'analyse de nos données clients/patients/
administrés/contreparties/concurrents/marchés/risques/fraudes/sûreté/
fournisseurs/logistiques/productions/pays/tendances/sociétales/
environnementales...
396 Data Scientist et langage R
Guide d’autoformation à l'exploitation des Big Data

– Je voudrais valoriser ces données (profiter de la ruée vers l'or des data).
– Je ne veux pas "louper le coche" du Big Data.
– Je voudrais fournir de nouveaux services et produits à mes clients.
– Je veux révolutionner mon offre (disruption).
– Je veux digitaliser mon organisation.
– Je voudrais optimiser ou transformer mes processus.
– Je voudrais anticiper les mouvements du marché, des concurrents, le churn
(fidélité client)...
La démarche d'extraction du besoin est en fait une démarche d'ajustement
mutuel. L'idée étant d'établir un cycle qui permette au "client interne" et au
data scientist (ici un business analyst ou un directeur de projet compétent en
data-sciences) de partager au moins les cinq aspects fondamentaux suivants :
– Des critères de réussite communs permettant de juger à terme de la réussite
de leur projet de data-sciences (KPI : key business/process/product/project indi-
cators).
– Une compréhension commune de ce qui peut être espéré du traitement de
ces données (contrôle, compréhension, connaissances nouvelles, requêtes
nouvelles, optimisation, décision, alerte, anticipation, prédiction, supervi-
sion, réalité augmentée, automatisation...).
– Des cas d'utilisation de ce qui sera produit par le projet.
– Une compréhension commune des données nécessaires à la mise en œuvre
du projet (nature, volume, exhaustivité, provenance, temporalité, fiabilité,
propriété, coût, confidentialité...).
– Les éléments logistiques nécessaires au projet (budget, architecture, plan
projet).

© Editions ENI - All rights reserved


A minima le résultat de cette exploration doit faire l'objet d'une note de
cadrage et d'une présentation synthétique aux décideurs et aux principaux
acteurs.
Cadre méthodologique du data scientist 397
Chapitre 5

1.2 La gestion du projet

Une fois le prototype et/ou le projet lancé(s), le chef du projet prend toutes les
initiatives nécessaires pour faire converger l'ensemble dans le respect de la
note cadrage.
Comme la nature même d'un projet de data-sciences implique de nombreuses
remises en cause et de nombreuses évolutions, les éléments de la note de
cadrage seront parfois à amender et le besoin à retravailler. Le chef de projet
devra trouver des modalités de gestion de projet telles que les différents
acteurs pourront être impliqués dans ces évolutions (et au minimum
informés !). Le pilotage du projet devra intégrer des processus de décision com-
patibles avec la variabilité intrinsèque de ce type de projet.
Une excellente façon de procéder est de travailler sous un cadre itératif d'en-
gagement progressif. À chaque itération, on précise l'ensemble des itéra-
tions suivantes et évidemment le contenu précis de la toute prochaine
itération.
C'est un cycle agile, mais il n'est pas judicieux d'implémenter toutes les
meilleures techniques de l'agilité issues des pratiques de développement
informatique : la psychologie du data scientist ne doit pas se calquer sur la
psychologie type d'un développeur efficace ou d'un créateur de startup.
En tant que chef de projet d'équipe de data scientists, évitez le recours systé-
matique aux stand-up meetings, au Scrum, au peer-programming et en géné-
ral aux techniques de socialisation systématique de l'équipe. Ce sont
d'excellentes méthodes, mais le cycle de réflexion R&D ne s'y prête pas, en
tout cas pas pendant les premières itérations. Laissez les data scientists plon-
ger au plus profond d'eux-mêmes, intéressez-vous à leurs réflexions et leurs
pratiques, laissez l'équipe se raconter ou douter.
Le chef de projet ne doit se focaliser sur les livrables des data scientists qu'à
deux jalons bien précis d'une itération : en début d'itération pour donner une
forte impulsion (kick-off) et avant le dernier tiers de celle-ci pour collecter des
engagements définitifs quant à ce qui sera réellement livré (commitments) et
s'assurer que les data scientists accompagneront leur livraison par une docu-
mentation de qualité et des composants bien référencés (voir plus loin dans ce
chapitre).
398 Data Scientist et langage R
Guide d’autoformation à l'exploitation des Big Data

Évidemment, il faut favoriser les transferts de compétence des seniors vers les
juniors, les conceptions collaboratives et induire des séances d'échange face au
tableau blanc, marqueur à la main. Tout cela doit se faire dans le respect du
rythme de réflexion de chacun et sans arrière-pensée de contrôle. On ne
contrôle pas la R&D et la créativité, on les favorise !
Pour compenser la nature aléatoire d'une telle démarche ouverte, scientifique
et créative, un plan projet simple doit être géré avec rigueur et pragmatisme.
Sans excès de formalisme et particulièrement compact, il permet à chaque
membre de l'équipe d'avoir en ligne de mire les éléments importants de l'ité-
ration en cours et rappelle les règles de gestion de configuration. Tout
membre de l'équipe est réputé avoir lu et compris le plan projet et en par-
ticulier tout ce qui concerne ses responsabilités dans la prochaine itération :
nul n'est censé ignorer la loi !
Le plan projet met en exergue les grands jalons du projet et précise d'éventuels
jalons importants de l'itération. Dans ce plan projet, chaque information com-
portant une incertitude est entachée d'une imprécision bien énoncée, par
exemple : "telle action sera effectuée en 10 à 20 jours/hommes et débouchera
au minimum sur ceci et au mieux sur cela". Les objectifs de la prochaine itéra-
tion comportent la liste des livrables majeurs dans un état de finition identifié
et un RACI minimum (Responsible = Doer, Accountable, Consulted, Informed).
Chaque livrable majeur possède une priorisation propre et ses incertitudes
propres (c'est-à-dire optionnel ou pas dans le prochain cycle, exigences clés du
livrable, estimation de charge du livrable, éléments de réception minimum du
livrable). Le plan de l'itération est discuté et amendé par l'équipe au début
de chaque itération. Les objectifs, les attentes (y compris psychologiques) et
les engagements vis-à-vis du client interne sont rappelés lors du kick-off.

Remarque

© Editions ENI - All rights reserved


Les livrables peuvent avoir une nature opérationnelle (livrer tel élément
technique ou algorithmique), informationnelle (par exemple identifier et qua-
lifier les sources de données nécessaires à l'atteinte de tel objectif) ou déci-
sionnelle (typiquement l'affinement des éléments de gestion de projet, la
réponse à des questions clés et la levée d'incertitudes techniques).
Cadre méthodologique du data scientist 399
Chapitre 5

À chaque itération, il convient de préciser les nouvelles priorités et d'intégrer


les connaissances acquises précédemment pour réorganiser le projet. Dans ce
cadre, chaque hypothèse ayant conduit à une décision doit être soigneuse-
ment consignée et revue régulièrement.
Cette gestion d'hypothèses est essentielle, car les projets de data-sciences
se conduisent dans des environnements évolutifs, concurrentiels, innovants
et expérimentaux.
Dans leurs échanges et lors de leurs prises de décision, le client interne, la maî-
trise d'œuvre informatique et le chef de projet doivent constamment avoir
présents à l'esprit les trois faits suivants :
– Pas de data science sans data !
– On ne connaît pas a priori la qualité et la pertinence de que l'on va trouver
dans les data : il faudra donc souvent reconfigurer le projet, y compris sur
ses objectifs et ses use cases (cas d’utilisation) !
– La technologie est partagée, disponible et open source. Le facteur différen-
ciant vis-à-vis de la concurrence réside donc dans la qualité des équipes :
maîtrise réelle des data-sciences, maîtrise méthodologique, capacité d'inno-
vation, maîtrise projet, gestion du changement, compétences fonction-
nelles, maîtrise des architectures actuelles... Cette dernière liste est à
considérer plus ou moins dans cet ordre, la maîtrise des data-sciences est in-
finiment plus disruptive que la maîtrise d'Hadoop ou de Spark, car à terme
ces technologies ne trouvent leur utilité qu'au travers de ce que l'on en fait.

2. Le cycle interne des data-sciences


Au sein du cycle projet, le data scientist va mener les itérations spécifiques
d'un cycle qui lui est propre, mais qu'il devra synchroniser soigneusement avec
les cycles de production et de décision du projet.
À partir d'un certain état "fonctionnel" identifié du projet, à savoir une défini-
tion de ses objectifs, diverses exigences métier, des questions posées, des cas
d'utilisation, des données à disposition et une logistique matérielle, le data
scientist va entamer une nouvelle itération.
400 Data Scientist et langage R
Guide d’autoformation à l'exploitation des Big Data

Il devra planifier soigneusement cette itération et prendre garde à ne pas se


laisser emporter dans un perfectionnisme ou un laxisme mathématique, algo-
rithmique ou technique incompatible avec les objectifs de sa planification.
Planifier une activité de R&D est particulièrement délicat et nécessite donc
beaucoup d'attention.
En premier lieu, le data scientist ayant qualifié un besoin et un contexte va
procéder à une étude plus ou moins analytique de ceux-ci.

2.1 Revue de détail du problème posé

La première tâche est d'exprimer le problème en termes de techniques propres


aux data-sciences. Attention il ne faut pas se focaliser exclusivement sur les
techniques statistiques ou de machine learning mais parcourir la gamme des
algorithmes à notre disposition ayant un lien avec les objectifs fonctionnels
énoncés.
Pour ce qui est des aspects machine learning, il faut identifier rapidement si le
problème posé se traduit en termes d'apprentissage supervisé ou non. Dans les
cas complexes, il faudrait s'intéresser aux cycles de techniques itératives du
deep learning.
La sémantique générale des données idéales à manipuler doit être abordée avec
soin. Est-il utile de manipuler des concepts, des mots, des expressions nom-
mées (nom de personnes, d'organisations), des évènements, des informations
agrégées (chiffres d'affaires), des relations (réseaux), des séries temporelles
(cours de bourses), des images, des vidéos, des sons, des données géogra-
phiques... ?
Il convient d'identifier rapidement si la capacité que nous aurons à répondre
au problème posé nécessite la maîtrise d'un "modèle de données" :

© Editions ENI - All rights reserved


– Les critères d'appariement de ces données sont-ils clairs : typiquement,
possèdent-elles un identifiant, des références mutuelles ?
– Existe-t-il des relations sémantiques ou fonctionnelles entre ces données
(une voiture est une sorte de moyen de transport, composée d'une carrosse-
rie, d'un moteur... possédée par un individu, assemblée dans une usine...).

Vous aimerez peut-être aussi