Accès illimité 24h/24 à tous nos livres & vidéos ! Découvrez la Bibliothèque Numérique ENI. Cliquez ici.
  1. Livres et vidéos
  2. Machine Learning - Implémentation en Python avec Scikit-learn

Machine Learning Implémentation en Python avec Scikit-learn

  • En stock
  • Expédié en 24h00
  • Livraison à partir de 0,01 €
  • Version en ligne offerte pendant 1 an
  • 1 h d'accès gratuit à tous nos livres et vidéos pour chaque commande
  • Accessible immédiatement
  • Version HTML
  • Accès illimité 24h/24, 7J/7
  • Accès illimité 24h/24, 7J/7
  • Tous les livres en ligne, les vidéos et les cours enregistrés ENI
  • Plus de 10 nouveautés livres et vidéos chaque mois
  • Les nouveautés disponibles le jour de leur sortie
  • Accès 100% en ligne

Présentation

Ce livre présente à des personnes non Data Scientists, et sans connaissances particulières en mathématiques, la méthodologie du Machine Learning, ses concepts, ses principaux algorithmes et l'implémentation de ceux-ci en Python avec Scikit-learn.

Il commence par une présentation du Machine Learning puis de la méthode CRISP où chaque phase est détaillée avec ses différentes étapes. Les premiers chapitres s’intéressent donc aux phases de Data Understanding (ou compréhension des données) et de Data Preparation (préparation des données). Dans le premier sont présentés des analyses statistiques de datasets, que cela soit sous forme numérique ou graphique. Dans le deuxième sont vues les principales techniques utilisées pour la préparation des données, avec leur rôle et des conseils sur leur utilisation.

Ensuite, plusieurs chapitres sont dédiés chacun à une tâche de Machine Learning : la classification, la régression, avec le cas particulier de la prédiction, ainsi que le clustering et plus globalement l’apprentissage non supervisé. Pour chaque tâche qui est présentée sont successivement détaillés les critères d’évaluation, les concepts derrière les principaux algorithmes puis leur implémentation avec Scikit-learn.

Pour illustrer les différents chapitres, les techniques et algorithmes présentés sont appliqués sur des datasets souvent utilisés : Iris (classification de fleurs), Boston (prévision de prix de vente d’appartements) et Titanic (prévision de la chance de survie des passagers du bateau). Le code Python est commenté et disponible en téléchargement (sous la forme de notebooks Jupyter) sur le site www.editions-eni.fr.



Quizinclus dans
la version en ligne !
  • Testez vos connaissances à l'issue de chaque chapitre
  • Validez vos acquis

Table des matières

  • Présentation du livre
    • 1. Pourquoi un livre sur le Machine Learning ?
    • 2. Python et Scikit-learn : les raisons du choix
    • 3. À qui s'adresse ce livre ?
    • 4. Organisation du livre et éléments en téléchargement
    • 5. Datasets utilisés dans ce livre
      • 5.1 Iris de Fisher, 1936
      • 5.2 Titanic, 1994
      • 5.3 Boston, 78
  • Le Machine Learning : vue d'ensemble
    • 1. Un peu de vocabulaire
    • 2. Les métiers de la data
    • 3. La croissance du Machine Learning
    • 4. Formes d'apprentissage et tâches de ML
      • 4.1 Apprentissage supervisé
        • 4.1.1 Classification
        • 4.1.2 Classification : le cas des images
        • 4.1.3 Régression
        • 4.1.4 Prévision
      • 4.2 Apprentissage non supervisé
        • 4.2.1 Clustering
        • 4.2.2 Réduction de dimensions
        • 4.2.3 Système de recommandations
        • 4.2.4 Associations
      • 4.3 Apprentissage par renforcement
        • 4.3.1 Comportements
        • 4.3.2 Jeux et stratégies
      • 4.4 Apprentissage semi-supervisé
      • 4.5 Synthèse des différentes formes d'apprentissage et tâches
    • 5. Méthodologie CRISP-DM
      • 5.1 Vue d’ensemble
      • 5.2 Business Understanding
      • 5.3 Data Understanding
        • 5.3.1 Carte d'identité du dataset
        • 5.3.2 Description des champs
        • 5.3.3 Statistiques descriptives
      • 5.4 Data Preparation
      • 5.5 Modeling
      • 5.6 Evaluation
      • 5.7 Deployment
  • La pile technologique en Python
    • 1. Les outils de la Data Science
      • 1.1 Les outils intégrés
      • 1.2 L'auto ML
      • 1.3 Les outils de développement
    • 2. Langage Python
      • 2.1 Présentation
      • 2.2 Brève présentation de R
      • 2.3 Python ou R ?
      • 2.4 Python 2 vs Python 3
    • 3. Jupyter
      • 3.1 Caractéristiques de Jupyter
      • 3.2 Avantages de Jupyter pour la Data Science
      • 3.3 Installation et utilisation de Jupyter
    • 4. Librairies de Machine Learning
      • 4.1 NumPy
      • 4.2 Pandas
      • 4.3 Matplotlib
      • 4.4 Scikit-learn
    • 5. Bibliothèques de Deep Learning
  • Chargement et analyse des données
    • 1. La phase de Data Understanding
    • 2. Chargement des données
    • 3. Création de la carte d'identité du dataset
    • 4. Description des champs
      • 4.1 Gestion des types
      • 4.2 Détection des données manquantes
    • 5. Statistiques descriptives sur les champs
      • 5.1 Types de données
      • 5.2 Analyse des données numériques
      • 5.3 Graphiques sur les données numériques
        • 5.3.1 Histogramme
        • 5.3.2 Nuage de points
        • 5.3.3 Boîtes à moustaches
      • 5.4 Analyse sur les données catégorielles
      • 5.5 Graphiques sur les données catégorielles
      • 5.6 Autres données
      • 5.7 Analyse croisée des données
        • 5.7.1 Entre des variables numériques
        • 5.7.2 Entre des variables numériques et une variable catégorielle
        • 5.7.3 Entre des variables catégorielles
  • Préparation des données
    • 1. La phase de Data Preparation
    • 2. Limiter les données
      • 2.1 Supprimer des colonnes
      • 2.2 Supprimer des enregistrements
    • 3. Séparer les datasets
      • 3.1 Proportion Entraînement/Test
      • 3.2 Séparation aléatoire
      • 3.3 Séparation stratifiée
    • 4. Traiter les données manquantes
    • 5. Préparer les attributs numériques
      • 5.1 Validation des données
        • 5.1.1 Validation sémantique des données
        • 5.1.2 Validation statistique des données
      • 5.2 Feature engineering
      • 5.3 Discrétisation
        • 5.3.1 Intervalles égaux
        • 5.3.2 Répartition par quantile
        • 5.3.3 Répartition manuelle
      • 5.4 Normalisation
        • 5.4.1 Normalisation min-max
        • 5.4.2 Normalisation standard
        • 5.4.3 Normalisation robuste
        • 5.4.4 Comparaison
    • 6. Préparer les catégories
      • 6.1 Validation des données
      • 6.2 Modification des catégories
        • 6.2.1 Ordonner ou réordonner des catégories
        • 6.2.2 Modifier la liste des catégories
      • 6.3 Quantification
    • 7. Les données particulières
      • 7.1 Préparer les dates
        • 7.1.1 Le format datetime64
        • 7.1.2 Extraire des composantes
        • 7.1.3 Gérer les écarts
      • 7.2 Préparer les chaînes de caractères
        • 7.2.1 Préparer les chaînes
        • 7.2.2 Effectuer une recherche dans les chaînes
        • 7.2.3 Extraire des sous-chaînes
        • 7.2.4 Autres méthodes
    • 8. Automatiser la préparation
      • 8.1 Création de pipelines de traitement
      • 8.2 Paramètres des opérations et code Pandas
      • 8.3 Pipelines avec Scikit-learn
        • 8.3.1 Création d'un Transformer
        • 8.3.2 Utilisation des Transformer
        • 8.3.3 Inconvénients de Scikit-learn
      • 8.4 Autres possibilités
  • Modélisation et évaluation
    • 1. Phase de modélisation
    • 2. Création d'un ensemble de validation
    • 3. Préparation des datasets
      • 3.1 Dataset Iris
      • 3.2 Dataset Titanic
      • 3.3 Dataset Boston
    • 4. Création des modèles
      • 4.1 Processus itératif
      • 4.2 Création d'un modèle en Scikit-learn
      • 4.3 Évaluation d'un modèle
      • 4.4 Validation croisée
      • 4.5 Sauvegarde et chargement d'un modèle
    • 5. Amélioration des modèles (fine-tuning)
      • 5.1 Optimisation des hyperparamètres
      • 5.2 Application en Scikit-learn
      • 5.3 Sur- et sous-apprentissage
    • 6. Méthodes ensemblistes
      • 6.1 Bagging
      • 6.2 Boosting
      • 6.3 Stacking
  • Algorithmes de classification
    • 1. La tâche de classification
      • 1.1 Définition
      • 1.2 Exemples de cas pratiques
      • 1.3 Préparation spécifique des données
    • 2. Évaluation des modèles
      • 2.1 Matrices de confusion
        • 2.1.1 Cas de la classification binaire
        • 2.1.2 Cas de la classification multiclasse
      • 2.2 Indicateurs dérivés de la matrice de confusion
        • 2.2.1 Accuracy
        • 2.2.2 Rappel et précision
        • 2.2.3 F1-score
        • 2.2.4 Sensibilité et spécificité
      • 2.3 La courbe ROC et l'AUC
        • 2.3.1 Prédiction et probabilité
        • 2.3.2 Taux de vrais et faux positifs
        • 2.3.3 Courbe ROC
        • 2.3.4 Aire sous la courbe (AUC)
      • 2.4 Choix des indicateurs d'évaluation
    • 3. Les arbres de décision et algorithmes dérivés
      • 3.1 Arbres de décision
        • 3.1.1 Sortie de l'arbre
        • 3.1.2 Choix du point de coupure
        • 3.1.3 Critères d'arrêt
        • 3.1.4 Exploitation de l'arbre
      • 3.2 Random Forests
      • 3.3 XGBoost (eXtreme Gradient Boosting)
    • 4. K-Nearest Neighbors
    • 5. Logistic Regression
      • 5.1 Régression logistique binaire
      • 5.2 Régression logistique polytomique
      • 5.3 Application avec Scikit-learn
    • 6. Naive Bayes
      • 6.1 Principe général
      • 6.2 Calcul des différentes probabilités
      • 6.3 Application avec Scikit-learn
    • 7. Support Vector Machine
      • 7.1 Présentation générale
        • 7.1.1 Marge et support vector
        • 7.1.2 Kernels
        • 7.1.3 Avantages
      • 7.2 Application avec Scikit-learn
  • Algorithmes de régression
    • 1. La tâche de régression
      • 1.1 Définition
      • 1.2 Exemples de cas pratiques
      • 1.3 Préparation spécifique des données
    • 2. Entraînement et évaluation des modèles
      • 2.1 Notion d'erreurs
      • 2.2 Indicateurs dérivés de la mesure d'erreurs
        • 2.2.1 Erreur absolue moyenne
        • 2.2.2 Erreur quadratique moyenne
        • 2.2.3 Racine de l'erreur quadratique moyenne
        • 2.2.4 Coefficient de détermination et variance expliquée
        • 2.2.5 Autres indicateurs
      • 2.3 Choix des indicateurs d'évaluation
    • 3. Utilisation des algorithmes de classification
      • 3.1 Principe général
      • 3.2 Arbres de décision et algorithmes dérivés
        • 3.2.1 Arbres de décision
        • 3.2.2 Random Forest
        • 3.2.3 XGBoost
      • 3.3 K-plus proches voisins (KNN)
      • 3.4 SVM
    • 4. Régression linéaire et variantes
      • 4.1 Régression linéaire
      • 4.2 Application dans Scikit-learn
      • 4.3 Problème de la colinéarité
      • 4.4 Ridge Regression
      • 4.5 Régression Lasso
    • 5. Régression polynomiale
      • 5.1 Principe
      • 5.2 Régression polynomiale et Scikit-learn
    • 6. Cas particulier de la prédiction
      • 6.1 Prédiction et séries temporelles
      • 6.2 Préparation des données
      • 6.3 Application en Scikit-learn
      • 6.4 Utilisation de modèles spécifiques
        • 6.4.1 Limites de l'approche en régression linéaire
        • 6.4.2 Algorithmes dédiés aux séries temporelles
  • Algorithmes d’apprentissage non supervisés
    • 1. Les tâches en apprentissage non supervisé
    • 2. Clustering
      • 2.1 Définition
      • 2.2 Exemples de cas pratiques
      • 2.3 Algorithmes basés sur les distances
        • 2.3.1 Principe de l'algorithme K-Means
        • 2.3.2 Implémentation avec Scikit-learn
        • 2.3.3 Variantes de l'algorithme K-Means
      • 2.4 Algorithmes basés sur la densité
        • 2.4.1 Principe général
        • 2.4.2 Implémentation de DBSCAN en Scikit-learn
        • 2.4.3 Variante de DBSCAN : OPTICS
    • 3. Réduction des dimensions
      • 3.1 Définition
      • 3.2 Exemples de cas pratiques
      • 3.3 Détection des axes principaux
      • 3.4 Création de nouveaux axes
        • 3.4.1 Principal Component Analysis (PCA)
        • 3.4.2 Linear Discriminant Analysis (LDA)
    • 4. Systèmes de recommandation
      • 4.1 Définition
      • 4.2 Principales approches
        • 4.2.1 Modèles basés sur la popularité
        • 4.2.2 Modèles basés sur le contenu (content-based filtering)
        • 4.2.3 Modèles basés sur les autres utilisateurs
        • 4.2.4 Méthodes hybrides
    • 5. Association
      • 5.1 Définition
      • 5.2 Évaluation des algorithmes
        • 5.2.1 Le support
        • 5.2.2 L'indice de confiance
        • 5.2.3 Le lift
      • 5.3 Algorithme "APriori"
        • 5.3.1 Étape 1 : réalisation des comptages des ensembles
        • 5.3.2 Étape 2 : création et test des règles
  • Évaluation et déploiement
    • 1. Phase d'évaluation
      • 1.1 Principe global
      • 1.2 Évaluation métier des résultats
      • 1.3 Revue du processus
      • 1.4 Étapes suivantes
    • 2. Phase de déploiement
      • 2.1 Planification du déploiement
      • 2.2 Monitoring et maintenance
      • 2.3 Rapport final et documentation
    • 3. Déploiement et MLOps
      • 3.1 Retours sur le DevOps
      • 3.2 Apparition du MLOps
      • 3.3 Tâches couvertes par le MLOps
      • 3.4 Critères de choix
  • Conclusion
    • 1. Le Machine Learning, une compétence-clé
    • 2. Mener un projet jusqu'au bout
    • 3. Au-delà de la méthodologie
    • 4. Expérimentation et expérience
    • 5. Pour aller plus loin
    • Index

Auteur

Virginie MATHIVETEn savoir plus

Virginie MATHIVET a fait une thèse de doctorat en Intelligence Artificielle, plus précisément sur les algorithmes génétiques et les réseaux de neurones. Après avoir enseigné l'intelligence artificielle, la robotique et des matières liées au développement pendant plus de 10 ans, elle est aujourd'hui directrice de la R&D chez TeamWork et manager « Modern Data », unité contenant les différentes équipes en charge des sujets data (IoT, IA/ML, Big Data, Data Engineering). Egalement formatrice et conférencière, elle a été nommée première AWS Hero de la catégorie Machine Learning en France en 2021 et participe à des actions en faveur de la diversité dans les métiers du numérique.

Caractéristiques

  • Niveau Expert à Confirmé
  • Nombre de pages 325 pages
  • Parution octobre 2021
    • Livre (broché) - 17 x 21 cm
    • ISBN : 978-2-409-03251-6
    • EAN : 9782409032516
    • Ref. ENI : EIMLPYTSL
  • Niveau Expert à Confirmé
  • Parution octobre 2021
    • HTML
    • ISBN : 978-2-409-03252-3
    • EAN : 9782409032523
    • Ref. ENI : LNEIMLPYTSL

Téléchargements

En complétant ce formulaire, vous acceptez d'être contacté afin de recevoir des informations sur nos produits et services ainsi que nos communications marketing. Vous aurez la possibilité de vous désabonner de nos communications à tout moment. Pour plus d'informations sur notre politique de protection des données, cliquez ici.
  • Des fichiers complémentaires (3 049 Ko)