1. Livres et vidéos
  2. Le Machine Learning avec Python - De la théorie à la pratique

Le Machine Learning avec Python De la théorie à la pratique

  • 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

Préface de Patrick Albert – Cofondateur d'ILOG et du HUB France IA

Ce livre sur le Machine Learning avec le langage Python permet de disposer des connaissances théoriques nécessaires pour une compréhension approfondie du Machine Learning et d’appréhender les outils techniques utiles pour mettre en pratique les concepts étudiés. L’auteur y expose des exemples concrets sur les concepts de l’apprentissage automatique. Les lecteurs avertis trouveront dans ce livre une occasion d’aller plus loin dans leur compréhension des algorithmes du Machine Learning.

L’auteur commence par expliquer les enjeux de la Data Science ainsi que les notions fondamentales du Machine Learning avant de présenter la démarche théorique d'une expérimentation en Data Science avec les notions de modélisation d'un problème et de métriques de mesure de performances d'un modèle.

Le lecteur peut ensuite passer à la pratique en manipulant les bibliothèques Python Numpy et Pandas ainsi que l’environnement Jupyter. Il peut ainsi aborder sereinement les chapitres à venir qui lui feront découvrir les concepts mathématiques, et la pratique sous-jacente, relatifs aux algorithmes du Machine Learning tels que les statistiques pour la Data Science, les régressions linéaire, polynomiale ou logistique, les arbres de décision et Random Forest, l’algorithme K-means, les machines à vecteurs de support (Support Vector Machine), l’analyse en composantes principales, les réseaux de neurones ou encore le Deep Learning avec TensorFlow et le traitement automatique du langage (Natural Language Processing).

Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.

Table des matières

  • Avant-propos
    • 1. Pourquoi ce livre ?
    • 2. À qui s'adresse ce livre ?
    • 3. Comment est organisé ce livre ?
    • 4. Comment lire ce livre ?
    • 5. Quels sont les prérequis pour la lecture de ce livre ?
    • 6. Qui est l'auteur ?
    • 7. Remerciements
  • La Data Science
    • 1. Objectif du chapitre
    • 2. L'objectif recherché en Machine Learning
    • 3. Une expérimentation Machine Learning
      • 3.1 Types de données
      • 3.2 Préparation des données
    • 4. Cycle de vie d'un projet Data Science
    • 5. Les algorithmes du Machine Learning
    • 6. Le problème de surapprentissage
    • 7. Les paramètres et les hyperparamètres
    • 8. Validation croisée
    • 9. Données d'entraînement, de validation et de test
    • 10. Métriques de performance
      • 10.1 Métriques pour les problèmes de régression
      • 10.2 Métriques pour la classification
        • 10.2.1 Matrice de confusion binaire
        • 10.2.2 Matrice de confusion générale
        • 10.2.3 Exemple de matrice de confusion
        • 10.2.4 La courbe ROC
      • 10.3 Métriques pour le clustering
    • 11. Conclusion
  • Le langage Python
    • 1. Objectif du chapitre
    • 2. Python en deux mots
    • 3. Installer l'interpréteur Python
    • 4. Les bases de la programmation Python
      • 4.1 Hello world avec Python
        • 4.1.1 La fonction print
        • 4.1.2 La fonction input
      • 4.2 Les structures de données
        • 4.2.1 Les variables numériques
        • 4.2.2 Les chaînes de caractères
        • 4.2.3 Le type booléen
        • 4.2.4 Les listes
        • 4.2.5 Les tuples
        • 4.2.6 Les dictionnaires
        • 4.2.7 Les ensembles
        • 4.2.8 Liste vs tuple vs dictionnaire vs ensemble
      • 4.3 Structurer un code Python
        • 4.3.1 L'indentation et les blocs de code
        • 4.3.2 Écrire une instruction sur plusieurs lignes
        • 4.3.3 Écrire plusieurs instructions sur une ligne
        • 4.3.4 Les commentaires en Python
      • 4.4 Les instructions conditionnelles
        • 4.4.1 Les conditions avec la structure if
        • 4.4.2 Les conditions avec la structure if-else
        • 4.4.3 Les conditions avec la structure if-elif-else
      • 4.5 Les boucles
        • 4.5.1 La boucle for
        • 4.5.2 La boucle for et la fonction zip
        • 4.5.3 La boucle while
        • 4.5.4 Contrôler les boucles avec break
        • 4.5.5 Contrôler les boucles avec continue
      • 4.6 Les fonctions
        • 4.6.1 Définir et utiliser une fonction sans paramètre
        • 4.6.2 Les fonctions avec paramètres
        • 4.6.3 Les valeurs par défaut des paramètres
        • 4.6.4 Renvoi de résultats
        • 4.6.5 La portée des variables
        • 4.6.6 Passage d'arguments à une fonction
        • 4.6.7 Les fonctions récursives
      • 4.7 Les listes en compréhension
        • 4.7.1 Les origines des listes en compréhension
        • 4.7.2 Construire une liste avec les listes en compréhension
        • 4.7.3 Application de fonction avec une liste en compréhension
        • 4.7.4 Utiliser if-else avec les listes en compréhension
        • 4.7.5 Filtrer avec les listes en compréhension
      • 4.8 Les expressions régulières
        • 4.8.1 Regex sans caractères spéciaux
        • 4.8.2 Regex avec caractères spéciaux
        • 4.8.3 Regex avec les multiplicateurs
        • 4.8.4 Regex avec un nombre d'occurrences limité
        • 4.8.5 Regex avec groupage des résultats
        • 4.8.6 Taille des motifs
        • 4.8.7 Aller plus loin avec les expressions régulières
      • 4.9 Gestion des exceptions
        • 4.9.1 La levée des exceptions
        • 4.9.2 Utiliser le bloc try-except
        • 4.9.3 Gérer plusieurs exceptions
        • 4.9.4 Utiliser la clause finally
        • 4.9.5 Utiliser la structure try-except-finally-else
        • 4.9.6 Lever une exception avec raise
    • 5. Conclusion
  • La bibliothèque NumPy
    • 1. Objectif du chapitre
    • 2. NumPy en deux mots
    • 3. Les tableaux NumPy
      • 3.1 Création de tableaux NumPy
        • 3.1.1 Créer un tableau à une dimension
        • 3.1.2 Créer un tableau à plusieurs dimensions
      • 3.2 Les dimensions d'un tableau NumPy
      • 3.3 Le type et la taille d'un tableau NumPy
      • 3.4 Fonction d'initialisation de tableaux NumPy
    • 4. Accéder aux données d'un tableau NumPy
      • 4.1 Accès aux données d'un tableau à une dimension
      • 4.2 Accès aux données d'un tableau à deux dimensions
      • 4.3 Accès aux données d'un tableau à trois dimensions
    • 5. Modifier les données d'un tableau NumPy
    • 6. Copier un tableau NumPy dans un autre tableau NumPy
    • 7. Algèbre linéaire avec NumPy
      • 7.1 Opérations mathématiques de base avec NumPy
      • 7.2 Opérations sur les matrices avec NumPy
    • 8. Réorganiser des tableaux NumPy
      • 8.1 Restructurer un tableau NumPy
      • 8.2 Superposer des tableaux NumPy
    • 9. Statistiques descriptives avec NumPy
    • 10. Lire des données NumPy à partir d'un fichier
    • 11. Les masques booléens avec NumPy
      • 11.1 Créer et utiliser un masque booléen
      • 11.2 Un masque avec plusieurs conditions
      • 11.3 Les fonctions numpy.any et numpy.all
    • 12. Tableaux NumPy versus listes Python
      • 12.1 Comparaison des tailles en mémoire
      • 12.2 Comparaison des temps de calcul
        • 12.2.1 Temps de calcul sur une liste Python
        • 12.2.2 Temps de calcul sur un tableau NumPy
    • 13. Conclusion
  • La bibliothèque Pandas
    • 1. Objectif du chapitre
    • 2. C'est quoi, Pandas ?
    • 3. Installation de Pandas
    • 4. DataFrame Pandas
      • 4.1 Création d'un DataFrame à partir d'un dictionnaire
      • 4.2 Création d'un DataFrame à partir d'un tableau NumPy
      • 4.3 Chargement des données à partir de fichiers
        • 4.3.1 Lecture des données d'un fichier CSV
        • 4.3.2 Lecture d'un fichier texte
    • 5. Accès aux données d'un DataFrame
      • 5.1 Lire les lignes d'un DataFrame
        • 5.1.1 Lire une ligne d'un DataFrame
        • 5.1.2 Lire plusieurs lignes d'un DataFrame
        • 5.1.3 Parcourir les lignes d'un DataFrame
        • 5.1.4 Filtrer les lignes avec une condition
        • 5.1.5 Filtrer les lignes avec plusieurs conditions
        • 5.1.6 Filtrage avec des critères textuels
        • 5.1.7 Réinitialiser les index
        • 5.1.8 Filtrer avec les valeurs uniques
        • 5.1.9 Filtrer avec une expression régulière
      • 5.2 Accéder aux variables d'un DataFrame
        • 5.2.1 Liste des variables d'un DataFrame
        • 5.2.2 Accès aux valeurs d'une colonne
        • 5.2.3 Accès à plusieurs colonnes
      • 5.3 Lire une cellule spécifique avec les index
    • 6. Modifier un DataFrame
      • 6.1 Modifier les valeurs dans un DataFrame
      • 6.2 Modifier la structure d'un DataFrame
        • 6.2.1 Ajouter une variable à un DataFrame
        • 6.2.2 Réordonner les variables d'un DataFrame
        • 6.2.3 Supprimer une variable d'un DataFrame
        • 6.2.4 Utiliser la méthode melt pour diminuer
        • le nombre de variables
      • 6.3 Appliquer une fonction sur une variable avec la méthode apply
      • 6.4 Modification avec conditions
      • 6.5 Ajouter des lignes dans un DataFrame
    • 7. Tri sur les données d'un DataFrame
      • 7.1 Tri avec un seul critère
      • 7.2 Tri avec plusieurs critères
    • 8. Sauvegarder les données d’un DataFrame
    • 9. Faire des statistiques sur un DataFrame
      • 9.1 Faire un résumé direct
      • 9.2 Faire un résumé par agrégation
      • 9.3 Agrégation avec plusieurs paramètres
    • 10. Lecture des fichiers de grande taille
    • 11. Conclusion
  • Travailler avec Jupyter
    • 1. Objectif du chapitre
    • 2. Installation de l'environnement Anaconda et Jupyter
    • 3. Travailler avec Jupyter
      • 3.1 Les documents dans Jupyter
        • 3.1.1 Créer un dossier
        • 3.1.2 Renommer un dossier
        • 3.1.3 Déplacer un dossier
        • 3.1.4 Charger des documents
        • 3.1.5 Supprimer des éléments
        • 3.1.6 Navigation dans l'arborescence des dossiers
        • 3.1.7 Créer un notebook
      • 3.2 Utiliser un notebook Jupyter
        • 3.2.1 Renommer un notebook
        • 3.2.2 Les cellules Jupyter
        • 3.2.3 Les fonctionnalités d'un notebook
      • 3.3 Utiliser les widgets Jupyter
        • 3.3.1 Le widget FloatSlider
        • 3.3.2 Associer une fonction à un slider
        • 3.3.3 Le widget interact
        • 3.3.4 Le widget Image
        • 3.3.5 Le widget DatePicker
    • 4. Conclusion
  • Statistiques
    • 1. Objectif du chapitre
    • 2. Les statistiques descriptives
      • 2.1 Paramètres de position
        • 2.1.1 La moyenne
        • 2.1.2 Le mode
        • 2.1.3 La médiane
        • 2.1.4 Les quartiles
      • 2.2 Paramètres de dispersion
        • 2.2.1 La variance
        • 2.2.2 Calcul de la variance avec la formule de Koenig
        • 2.2.3 L'écart-type
        • 2.2.4 L'écart interquartile
    • 3. Les lois de probabilité
    • 4. La loi normale
    • 5. L'échantillonnage
      • 5.1 Principe de l'échantillonnage
      • 5.2 Résultats sur la distribution des moyennes
      • 5.3 Résultats sur la distribution des proportions
      • 5.4 Théorème central limite
    • 6. Les statistiques inférentielles
      • 6.1 Estimation ponctuelle
      • 6.2 Estimation de la moyenne par intervalle de confiance
      • 6.3 Estimation d'une proportion par intervalle de confiance
      • 6.4 Test d'hypothèse
        • 6.4.1 Tests paramétriques
        • 6.4.2 Tests non paramétriques
        • 6.4.3 Construire un test d'hypothèse
      • 6.5 Types de tests d'hypothèse
        • 6.5.1 Test de conformité
        • 6.5.2 Test d'adéquation
        • 6.5.3 Tests d'homogénéité
        • 6.5.4 Test d'indépendance de variables
      • 6.6 Exemple numérique de test de conformité d'une moyenne
      • 6.7 Le paradoxe de Simpson
    • 7. Conclusion
  • La régression linéaire et polynomiale
    • 1. Objectif du chapitre
    • 2. La régression linéaire simple
      • 2.1 La régression linéaire simple de point de vue géométrique
      • 2.2 La régression linéaire simple de point de vue analytique
        • 2.2.1 La méthode des moindres carrés
        • 2.2.2 Quelques considérations statistiques sur les données
    • 3. La régression linéaire multiple
      • 3.1 La méthode des moindres carrés pour la régression multiple
      • 3.2 La méthode de la descente de gradient
      • 3.3 Exemple de régression linéaire multiple
        • 3.3.1 Définition du jeu de données utilisées
        • 3.3.2 Régression linéaire multiple avec Scikit-learn
        • 3.3.3 Importer les modules Scikit-learn
        • 3.3.4 Lecture des données dans un DataFrame
        • 3.3.5 Normalisation des données
        • 3.3.6 Construction d'un modèle linéaire
        • 3.3.7 Évaluation d'un modèle linéaire
        • 3.3.8 Évaluer le futur comportement d'un modèle
        • 3.3.9 Cross-validation avec KFold
    • 4. La régression polynomiale
      • 4.1 Exemple de régression polynomiale
        • 4.1.1 Construction d’un modèle polynomial
        • 4.1.2 Le coefficient de détermination R 2
        • 4.1.3 R 2 et les valeurs extrêmes
        • 4.1.4 Modèle polynomial et surapprentissage
    • 5. Aller plus loin avec les modèles de régression
      • 5.1 La régularisation Lasso
      • 5.2 La régularisation Ridge
    • 6. Conclusion
  • La régression logistique
    • 1. Objectif du chapitre
    • 2. La régression logistique
    • 3. Prédire les survivants du Titanic
      • 3.1 Définition du jeu de données Titanic
      • 3.2 Réalisation du modèle de régression logistique
        • 3.2.1 Chargement des modules Scikit-learn
        • 3.2.2 Lecture des données
        • 3.2.3 Traitement des valeurs manquantes
        • 3.2.4 Transformation de variables
        • 3.2.5 Sélection des variables
        • 3.2.6 Traitement des variables catégorielles
        • 3.2.7 Entraînement du modèle logistique
        • 3.2.8 Le seuil de décision
    • 4. L'algorithme One-vs-All
    • 5. Conclusion
  • Arbres de décision et Random Forest
    • 1. Objectif du chapitre
      • 1.1 Construction d'un arbre de décision
      • 1.2 Prédire la classe d'appartenance avec un arbre de décision
      • 1.3 Considérations théoriques sur les arbres de décision
        • 1.3.1 Choix de la variable de segmentation
        • 1.3.2 Profondeur d'un arbre de décision
    • 2. Problème de surapprentissage avec un arbre de décision
    • 3. Random Forest
    • 4. Exemple de Random Forest avec Scikit-learn
    • 5. Conclusion
  • L’algorithme k-means
    • 1. Objectif du chapitre
    • 2. k-means du point de vue géométrique
    • 3. k-means du point de vue algorithmique
    • 4. Application de k-means avec Scikit-learn
    • 5. L'algorithme k-means et les valeurs extrêmes
    • 6. Choisir le k de k-means
      • 6.1 Déterminer k avec la méthode Elbow
      • 6.2 Déterminer k avec le coefficient de silhouette
    • 7. Les limites de k-means
    • 8. Avantages et inconvénients de l'algorithme k-means
    • 9. Quelques versions de l'algorithme k-means
    • 10. Conclusion
  • Support Vector Machine
    • 1. Objectif du chapitre
    • 2. Le SVM du point de vue géométrique
    • 3. Le SVM du point de vue analytique
    • 4. Données non linéairement séparables
      • 4.1 Le Kernel Trick
      • 4.2 La condition de Mercer
      • 4.3 Exemple de fonction noyau
    • 5. Détecter les fraudes de cartes de crédit
      • 5.1 Les données des transactions de cartes de crédit
      • 5.2 Application de l'algorithme SVM pour la détection des transactions bancaires frauduleuses
        • 5.2.1 Application de l'algorithme SVM sur les données creditcard.csv
        • 5.2.2 Application du SVM sur un sous-ensemble de creditcard.csv
        • 5.2.3 Application du SVM sur des données normalisées
      • 5.3 Les paramètres de l'algorithme SVM
        • 5.3.1 Le paramètre Kernel pour la variation de la fonction noyau
        • 5.3.2 Le paramètre C
        • 5.3.3 Le paramètre Gamma
        • 5.3.4 Le paramètre C versus le paramètre Gamma
        • 5.3.5 Tuning des hyperparamètres d'un SVM avec GridSearchCV
    • 6. Conclusion
  • Analyse en composantes principales
    • 1. Objectif du chapitre
    • 2. Pourquoi l'ACP ?
    • 3. L'ACP du point de vue géométrique
    • 4. L'ACP du point de vue analytique
    • 5. Indicateurs de la qualité de la représentation des données
      • 5.1 Indicateurs liés aux individus
        • 5.1.1 Score des individus
        • 5.1.2 Qualité de la représentation des individus
        • 5.1.3 Contribution des individus
      • 5.2 Indicateurs liés aux variables
        • 5.2.1 Le cercle des corrélations
        • 5.2.2 Qualité de la représentation des variables
        • 5.2.3 Contribution des variables
    • 6. Exemple d'ACP avec Python
      • 6.1 Déterminer le nombre de facteurs pertinents
      • 6.2 Interprétation des résultats sur les individus
        • 6.2.1 Représentation des individus
        • 6.2.2 Calcul de la qualité de la représentation des individus
        • 6.2.3 Calcul de la contribution des individus
      • 6.3 Interprétation des résultats sur les variables
        • 6.3.1 Tracer un cercle des corrélations
        • 6.3.2 Calcul de la qualité de la représentation des variables
        • 6.3.3 Calcul des contributions des variables
      • 6.4 Représentation de nouveaux individus
    • 7. Conclusion
  • Les réseaux de neurones
    • 1. Objectif du chapitre
    • 2. Modélisation d'un neurone artificiel
      • 2.1 Le neurone biologique
      • 2.2 Le neurone artificiel
    • 3. Architecture d'un réseau de neurones
    • 4. L'algorithme de rétropropagation
    • 5. Exemple d'un réseau de neurones avec Scikit-learn
    • 6. Conclusion
  • Le Deep Learning avec TensorFlow
    • 1. Objectif du chapitre
    • 2. Le Deep Learning : notions générales
      • 2.1 Réseau de neurones avec plusieurs couches d'entrée
      • 2.2 Réseau de neurones avec plusieurs couches de sortie
      • 2.3 Réseau de neurones avec des branchements conditionnels
      • 2.4 Réseau de neurones avec de la récurrence RNN
      • 2.5 Réseau de neurones avec couches de convolution CNN
      • 2.6 Éviter le surapprentissage avec les couches Dropout
      • 2.7 Le Transfer Learning
    • 3. Introduction à TensorFlow
      • 3.1 Installer TensorFlow
        • 3.1.1 Créer un environnement virtuel
        • 3.1.2 Installer des bibliothèques dans un environnement virtuel avec Anaconda
        • 3.1.3 Installer la bibliothèque TensorFlow
        • 3.1.4 Tester TensorFlow
      • 3.2 Opérations élémentaires avec les tensors
        • 3.2.1 Travailler avec les tensors
        • 3.2.2 Les tensors variables
        • 3.2.3 Initialiser les tensors
        • 3.2.4 Opérations algébriques avec les tensors
    • 4. Les réseaux de neurones avec Sequential API
      • 4.1 Charger les données
      • 4.2 Définir un MLP avec Sequential API
      • 4.3 Accéder aux éléments d'un réseau de neurones
      • 4.4 Initialisation des poids et des biais d'un réseau de neurones
      • 4.5 Compiler un réseau de neurones
      • 4.6 Entraîner un réseau de neurones
      • 4.7 Analyser les résultats de l'entraînement d'un réseau de neurones
      • 4.8 Évaluer un réseau de neurones
      • 4.9 Prédire avec un réseau de neurones pour la classification
    • 5. Utiliser Functional API
      • 5.1 Un modèle Functional API avec plusieurs couches d'entrée
      • 5.2 Un modèle Functional API avec plusieurs couches de sortie
    • 6. Opérations avancées sur les réseaux de neurones
      • 6.1 Monitorer un réseau de neurones
        • 6.1.1 Contrôler les critères d'arrêt avec les callbacks
        • 6.1.2 TensorBoard
        • 6.1.3 Sauvegarder un réseau de neurones
        • 6.1.4 Charger et utiliser un réseau de neurones
      • 6.2 Réseaux de neurones de convolution
      • 6.3 Réutiliser un réseau de neurones
      • 6.4 Le Transfer Learning
        • 6.4.1 Chargement des données locales
        • 6.4.2 Chargement du modèle VGG16
        • 6.4.3 Extraction des features
        • 6.4.4 Étendre un modèle
        • 6.4.5 Chargement des données de test pour le Transfer Learning
    • 7. Aller plus loin avec le Deep Learning et TensorFlow
    • 8. Conclusion
  • Le traitement automatique du langage
    • 1. Objectif du chapitre
    • 2. NLP : concepts généraux
      • 2.1 Le nettoyage des données textuelles
        • 2.1.1 Suppression des stopwords
        • 2.1.2 Appliquer le Stemming sur un texte
        • 2.1.3 Appliquer la Lemmatization sur un texte
        • 2.1.4 Stemming versus Lemmatization
      • 2.2 Vectorisation des données textuelles
        • 2.2.1 La vectorisation par comptage d'occurrences des mots
        • 2.2.2 La vectorisation avec TF-IDF
        • 2.2.3 La vectorisation avec N-Gram
        • 2.2.4 Feature Engineering sur des documents
    • 3. Exemple complet pour la détection des spams
      • 3.1 Installation de la NLTK
      • 3.2 Modèle de détection de spams
    • 4. Conclusion
  • La programmation orientée objet avec Python
    • 1. Programmation orientée objet avec Python
      • 1.1 Pourquoi la programmation orientée objet ?
      • 1.2 Classes et objets
        • 1.2.1 Définir une classe
        • 1.2.2 La fonction __init__
        • 1.2.3 Instanciation d'un objet
        • 1.2.4 Les attributs d'un objet
        • 1.2.5 Les méthodes d'objet
        • 1.2.6 Les attributs de classe
        • 1.2.7 Les méthodes de classe
        • 1.2.8 Les méthodes statiques
        • 1.2.9 Sécuriser les attributs
      • 1.3 L'héritage
        • 1.3.1 L'héritage simple
        • 1.3.2 L'héritage multiple
      • 1.4 Les classes abstraites
      • 1.5 Les interfaces
      • 1.6 Les méthodes spéciales
        • 1.6.1 Afficher un objet avec la fonction print()
        • 1.6.2 Personnaliser les accès aux attributs d'une classe
        • 1.6.3 Vérifier la validité d'un attribut
        • 1.6.4 Comparer deux objets
        • 1.6.5 Rendre les objets callable
    • 2. Les modules
      • 2.1 Importer des modules
      • 2.2 Le module principal
    • 3. Pour aller plus loin avec Python

Auteur

Madjid KHICHANE En savoir plus

Après un diplôme d'ingénieur en Informatique obtenu à l'université Mouloud Mammeri à Tizi-Ouzou en Algérie puis un Master en Intelligence Artificielle - Systèmes multi-agents obtenu à l'université Paris 5 (René Descartes), Madjid KHICHANE a soutenu son PhD en Intelligence Artificielle en collaboration entre l'Université Claude Bernard Lyon 1 et IBM. Cette thèse doctorale a donné naissance à des innovations algorithmiques dans le domaine de l'apprentissage par renforcement qui sont aujourd’hui publiées dans des conférences internationales de premier niveau.

Caractéristiques

  • Nombre de pages 770 pages
  • Parution septembre 2021
    • Livre (broché) - 17 x 21 cm
    • ISBN : 978-2-409-03181-6
    • EAN : 9782409031816
    • Ref. ENI : EIMLPYT
  • Parution septembre 2021
    • HTML
    • ISBN : 978-2-409-03182-3
    • EAN : 9782409031823
    • Ref. ENI : LNEIMLPYT

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 (210 Ko)
  • Des fichiers complémentaires (24 796 Ko)
  • Des fichiers complémentaires (30 904 Ko)
  • Des fichiers complémentaires (31 652 Ko)
  • Des fichiers complémentaires (4 335 Ko)