Formation Deep Learning : Comprendre le Deep Learning avec TensorFlow
21 HeuresObjectifs de la formation Deep Learning :
L’objectif de cette formation Deep Learning, axée sur la pratique, est d’acquérir une compréhension détaillée des principales architectures de réseaux de neurones au travers de travaux pratiques réalisés sur l’un des frameworks de référence,TensorFlow.
Concrètement, à l’issue de cette formation Deep Learning, vous serez en mesure de :
- Maitriser les concepts fondamentaux du Deep learning
- Utiliser un framework de référence : TensorFlow
- Mettre en œuvre les principaux algorithmes
- Déployer vos solutions en production
À qui s’adresse cette formation ?
Public :
Cette formation Deep Learning cible principalement les Data Scientists, Machine Learning Engineers ou les développeurs ayant une appétence et une première expérience avec le Machine Learning.
Prérequis :
La programmation Python, et l’usage d’un IDE sont un plus pour suivre cette formation Deep Learning.
Contenu du cours Deep Learning:
Introduction au Deep Learning
Relation entre Machine Learning et Deep Learning
Champs d’application et cas d’utilisation
Principes fondamentaux du Machine Learning
Principaux outils et bibliothèques pour le Deep Learning : TensorFlow, Keras, Caffe, etc
Travaux Pratiques :
Exercice pratique faisant intervenir tous les prérequis, introduction aux notebooks Jupyter
Découverte de TensorFlow
Installation de TensorFlow et son éco système, présentation des tensors (tableaux multidimensionnels), des variables et placeholders, présentation des graphes et sessions TensorFlow
Exemples avec les APIs TensorFlow : Estimators, Layers, Datasets…
Opérations sur des ensembles de données telles que la régression et la classification. Visualiser des graphes et courbes d’apprentissage avec TensorBoard
Travaux Pratiques :
Création d’un premier modèle de régression en TensorFlow. Représentation avec TensorBoard pour analyse
Les réseaux neuronaux artificiels ou ANN (Deep Learning)
Présentation du fonctionnement du perceptron à une couche et du perceptron multicouche, configuration et paramétrage d’un réseau de neurones
Approche logicielle du développement d’un réseau de neurones : activation, désactivation
Conception d’un réseau de neurones en fonction du problème à résoudre
Travaux Pratiques :
Construction d’un ANN multicouche sur TensorFlow pour la classification de données
Entraînement d’un réseau de neurones
Présentation des méthode d’apprentissage : fonction de coût, descente de gradient et rétro-propagation
Importance de la métrologie : choix des paramètres
Présentation de techniques de Data Augmentation et de l’écueil du sur apprentissage par régularisation
Réutilisation d’ANN, par transfer learning ou comment utiliser des couches pré entraînées
Travaux Pratiques :
Construire des tests de réseaux de neurones
Réseaux de neurones convolutifs ou CNN
Présentation des principes de fonctionnement et définition de filtres convolutifs
Développement d’une couche de convolution, d’une couche de pooling
Approche logicielle du développement d’un réseau de neurones convolutifs
Travaux Pratiques :
Utilisation d’un réseau de neurones CNN pour la reconnaissance de l’écriture manuscrite
Réseaux de neurones récurrents ou RNN
Présentation des principes de fonctionnement et importance de la disparition du gradient
Approche logicielle du développement d’un réseau de neurones récurrents
Présentation d’une Cellule Long Short-Term Memory (LSTM) et de sa version simplifiée la cellule GRU
Principes fondamentaux du NLP ou Natural Language Processing
Travaux Pratiques :
Utilisation d’un réseau de neurones RNN pour le traitement automatique du langage naturel
Machine de Boltzmann restreinte ou RBM
Présentation de la machine de Boltzmann restreinte
Principes fondamentaux du Deep Belief Networks,
Métrologie et réduction des dimensions grâce aux autoencodeurs
Présentation de l’API autoencoder
Travaux Pratiques :
Construire un auto-encoder pour la réduction de dimension d’un réseau de neurones
Apprentissage par renforcement (Deep Learning)
Principe de notation et d’optimisation par objectif
Présentation de la toolkit Gym pour la programmation par renforcement
Principe de la prise de décision par critère de Markov
Principes fondamentaux de l’apprentissage par différence (temporelle, etc)
Travaux Pratiques :
Contrôle d’un agent évoluant dans un contexte inconnu, évaluation de réponse
Performance et mise en prodution
Exécution sur CPUs, GPUs, TPUs ou cluster
Mise en production avec TensorServing
Travaux Pratiques :
Déploiement sur TensorServing