Data science pour l'agriculture et l'environnement
Méthodes et applications avec R et Python
Makowski David
Brun François
Doutart Élodie
Duyme Florent
El Jabri Mohammed
Fauvel Kevin
Legris Maxime
Philibert Aurore
Piraux François
Termier Alexandre
Ellipses
Chapitre 1. Objectif de la data science7
Chapitre 2. La régression pénalisée11
2.1. Les limites de la régression classique
11
2.2. Analyse basée sur le modèle linéaire classique
13
2.3. Analyse basée sur la régression pénalisée
15
2.3.1. Pourquoi pénaliser ?15
2.3.2. Différents types de pénalisation, leur mise en oeuvre et interprétation15
2.4. Et avec Python ?
27
2.5. Références
29
Chapitre 3. Régression linéaire avec variables corrélées31
3.1. Conséquences d'utiliser des variables corrélées dans une régression
31
3.1.1. La variance d'un estimateur dépend des corrélations entre les variables31
3.1.2. Exemple32
3.2. Régressions PCR et PLSR
35
3.2.1. Principe35
3.2.2. Mise en oeuvre38
3.3. Prédiction de la biomasse du maïs avec PCR et PLS
40
3.3.1. Objectif et données disponibles40
3.3.2. Résultats obtenus avec PCR et PLS42
3.4. Et avec Python ?
47
3.5. Conclusion
49
3.6. Références
49
Chapitre 4. Les separateurs a vastes marges (SVM)51
4.1. Introduction
51
4.2. Séparateurs a vastes marges (SVM) pour discriminer deux classes
52
4.2.1. SVM A marge dure52
4.2.2. SVM A marge souple57
4.2.3. SVM dans les cas non linéairement séparables63
4.3. SVM multiclasses
75
4.3.1. Première approche : One vs One75
4.3.2. Deuxième approche : One vs All76
4.4. Application sur R
77
4.5. Et avec Python ?
89
4.6. Pour aller plus loin
93
4.7. Références
94
Chapitre 5. Arbres et forets aléatoires97
5.1. Arbres de décision/régression
97
5.1.1. Principe général97
5.1.2. Définitions et exemple simple97
5.1.3. Méthode CART (Classification And Regression Tree)101
5.1.4. Gestion des données manquantes104
5.1.5. Avantages - Inconvénients par rapport aux autres méthodes supervisées105
5.1.6. Utilisation du logiciel R pour prédire la biomasse du maïs avec CART106
5.1.7. Utilisation de R pour classer des blastocystes112
5.1.8. Utilisation de Python pour prédire la biomasse du maïs115
5.2. Forets aléatoires
117
5.2.1. Définition117
5.2.2. Mesures d'importance119
5.2.3. Gestion des données manquantes121
5.2.4. Avantages-inconvénients des forets aléatoires122
5.2.5. Utilisation de R pour prédire la biomasse du maïs122
5.2.6. Utilisation de R pour classer les bustocystes129
5.2.7. Utilisation de Python pour classer des blastoystes134
5.3. Références
137
Chapitre 6. Réseaux de neurones139
6.1. Origines
139
6.2. Principes de base D'un neurone et d'un réseau de neurones
140
6.2.1. Un neurone140
6.2.2. Réseau de neurones141
6.2.3. Les fonctions d'activation143
6.3. La retro-propagation
146
6.4. Méthode de décroissance du gradient
148
6.5. Algorithme de retro-propagation
150
6.5.1. Cas de la couche de sortie150
6.5.2. Cas de la couche cachée152
6.5.3. Schéma du fonctionnement général de l'algorithme153
6.5.4. Illustration du fonctionnement de l'algorithme154
6.6. Les erseaux de neurones a convolution (CNN)
158
6.6.1. Le Kernel158
6.6.2. Le Pooling160
6.6.3. Évolution des features mars dans le CNN160
6.6.4. Dropout161
6.7. Librairie Keras pour Python et R
162
6.7.1. Application 1162
6.7.2. Application 2166
6.8. Et avec python ?
172
6.9. Références
178
Chapitre 7. Apprentissage non supervise181
7.1. Clustering
181
7.1.1. Mesures de distance181
7.1.2. Types DE Clustering184
7.1.3. Évaluation et validation du Clustering192
7.1.4. Développements récents pour le clustering201
7.2. Pattern Mining
201
7.2.1. Extraction d'Itemset fréquents et de règles d'association202
7.2.2. Extraction de séquences fréquentes209
7.3. Et avec Python ?
215
7.4. Références
218
Chapitre 8. Évaluation221
8.1. Objectif
221
8.2. Différents indicateurs pour mesurer la qualité de prédiction223
8.2.1. Cas de la régression224
8.2.2. Mise en oeuvre sous R226
8.3. Cas de la classification supervises
228
8.3.1. Matrice de confusion228
8.3.2. Indicateurs229
8.3.3. Méthode Roc235
8.3.4. Généralisation a plus de deux classes237
8.3.5. Mise en oeuvre sous R238
8.4. Méthodes pour estimer la qualité de prédiction
239
8.4.1. Démarche générale et partition du jeu de données239
8.4.2. La validation croisée242
8.4.3. Prise en compte de la structure de dépendance entre les individus243
8.4.4. Mise en oeuvre sous R avec le package caret246
8.5. Explorer le comportement du modèle en fonction des variables d'entrée
249
8.5.1. Graphique de dépendance partielle249
8.5.2. Mise en oeuvre sous R250
8.6. Et avec Python ?
252
8.7. Références
255