+33 (0)1 53 89 99 93 info@xebia-training.fr

Data Science

Formation Deep Learning
Avec Pierre Sendorek et Yoann Benoit
3 jours, soit 21 heures
Cette formation Deep Learning est axée sur la résolution de problèmes pratiques. Son objectif est de proposer aux participants une compréhension détaillée des principales architectures de réseaux de neurones, tout en gardant un focus très pragmatique sur leur utilisation optimale dans différentes conditions, avec de nombreux exemples, retours d’expérience et exercices.

La formation est composée de nombreux modules pratiques, dans lesquels les participants travailleront avec les frameworks TensorFlow et Keras. Ils pourront les utiliser sur différents cas faisant appel à des jeux de données d’images, de sons et de textes.

Tout au long de la formation, les participants seront amenés à penser les frameworks de Deep Learning comme des outils permettant non seulement d’entraîner et d’utiliser des algorithmes de Deep Learning complexes, mais aussi comme des outils de résolution de tout un ensemble de problèmes d’optimisation divers et variés.

Programme

JOUR 1

Introduction au Deep Learning

Qu’est-ce que le Deep Learning ?
  • Différence entre Intelligence Artificielle, Machine Learning et Deep Learning
  • Intérêt des réseaux de neurones profonds
Quelques mots sur l’optimisation mathématique
  • Rappels sur l’optimisation au sens des moindres carrés
  • Bases de fonctions triangulaires, relu, constantes par morceaux, sinusoïdales
  • Optimisation en termes de loss L2 et L1 et intérêt de changer de fonction de coût
  • Intérêt de la cross-entropie et optimisation pour la classification
Introduction à TensorFlow & Keras
  • Principales notions dans ces frameworks
  • Performances, utilisation, popularité.
  • Critères de choix d’un frameworks pour une tâche donnée

Réseaux de neurones “Fully Connected”

Réseau fully connected à une couche
  • Principe
  • Compréhension dans des cas simples
    • Apprentissage d’une courbe simple
    • Apprentissage sur des images noir et blanc
    • Apprentissage d’une distribution de probabilité par maximisation de vraisemblance
  • Interprétation des poids appris
Ajout de couches
  • Compromis nombre de neurones / nombre de couches
  • Initialisation des poids du réseau
Régularisation
  • Dropout
  • Early Stopping
  • Pénalisation

Réseaux de neurones convolutionnels (CNN)

Convolution : Intuition
  • Convolution : interprétations
  • Opération exacte réalisée par un filtre convolutif dans les différents frameworks
  • Les divers filtres convolutifs et les options (strides, layers…)
  • Effet du pooling : qu’obtient-on entre les couches intermédiaires ?

JOUR 2

Réseaux de neurones convolutionnels pour les images
  • Convolution & Pooling 2D
  • Transfer Learning : faire apprendre à seulement une partie du réseau.
Convolutions 1D pour le son et les séquences
  • Convolution & Pooling 1D
  • Intérêt et limitations

Réseaux de neurones récurrents (RNN)

Principes du RNN et différentes couches associées
  • Pourquoi avons-nous besoin de RNN ?
  • Réseau de neurones récurrent simple
  • Long-Short Term Memory (LSTM) & Gated Recurrent Unit (GRU)
Traitement de la donnée textuelle
  • Vectorisation du texte
  • Embedding
  • Applications
    • Classification d’une séquence
    • Génération de texte
Utilisations avancées des RNNs
  • Stacking de couches de RNN
  • Bi-directional RNN
  • Combinaison avec des couches convolutionnelles

JOUR 3

Architectures avancées de réseaux de neurones

Auto-Encodeur
  • Intérêt et utilisations des auto-encodeurs
  • Exemples d’utilisation
    • Compression d’information
    • Détection d’anomalies
    • Extraction de features
Sequence To Sequence (Seq2Seq)
  • Encodeur
  • Décodeur
  • Mécanisme d’attention
  • Applications
    • Machine Translation
    • Optical Character Recognition (OCR) pour les mots et phrases
Générer des données avec des Generative Adversarial Networks (GAN)
  • Principe
  • Génération
    • D’échantillons selon une distribution de probabilité
    • D’images
  • Variantes existantes aux GAN

Ouvertures et bonnes pratiques

Reinforcement Learning
  • Principe
  • Q-Learning
  • Deep Reinforcement Learning
  • Application
    • Optimisation d’une stratégie de jeu en bourse
    • Apprentissage d’un jeu vidéo
Bonnes pratiques
  • De l’expérimentation à l’industrialisation
    • Abstraire des parties du réseau de neurones
    • Rendre chaque partie du réseau de neurones testable dans le principe
    • Retours d’expérience sur la mise en production d’algorithmes de Deep Learning
  • Utilisation sur machine multi GPU
  • Utilisation sur des instances Cloud
  • Ouverture vers d’autres frameworks pour le Deep Learning

Objectif

A l’issue de cette formation, les participants sauront :

  • Connaître et comprendre les principales architectures de réseaux de neurones, ainsi que leur utilisation dans différents cas de figure
  • Manipuler efficacement un framework pour le Deep Learning
  • Connaître les bonnes pratiques autour de la résolution de problèmes de Deep Learning, tant sur l’optimisation des modèles que sur leur déploiement en production

Méthodes pédagogiques

Ce cours de 3 jours est découpé en 6 modules avec une validation des acquis à la fin de chaque module grâce à des exercices pratiques sous forme de notebooks Jupyter pour implémenter et tester les différentes architectures de réseaux de neurones.

Tarif HT

Inter : 2 100 €

Intra : Selon demande

Prochaines dates de formation

27 – 29 mars (2019)

Biographie

 

Pierre Sendorek

Pierre est passionné de Machine Learning et de traitement du signal. Il possède un doctorat en traitement du signal et un master en mathématiques appliquées, ainsi qu'un diplôme d'ingénieur. Il intervient aujourd'hui en tant que Data Scientist à Xebia, et travaille sur des projets liés au Machine Learning et au Deep Learning.

Biographie

Yoann Benoit

Yoann Benoit est Data Scientist et Chief Data Officer chez Xebia. Il est spécialisé dans la collecte, le traitement et l’analyse de données, de leur exploration à la mise en production des projets. Il intervient sur de nombreux sujets autour de la Data Science, de l'Intelligence Artificuelle et du Big Data. Speaker et blogueur à la fois sur les concepts et les technologies liées à la Data Science, il travaille principalement avec Python, Scala et Spark.

Yoann a été speaker lors de ces conférences :

  • On-Device Intelligence : Intégrez du Deep Learning sur vos Smartphones (DevFest Nantes 2017, XebiCon 2017, AndroidMakers 2017)
  • Le Deep Learning dans la vraie vie (XebiCon 2017)
  • Data Science & Craftsmanship : Je t'aime, moi non plus (XebiCon 2016, PyData 2016)
  • Utiliser du Deep Learning pour interpréter des photographies (XebiCon 2016)
  • Machine Learning sur Spark (Devoxx 2015, Mix-IT 2015, BreizhCamp 2015)

Quelques publications :

Retrouvez égalemeent ses articles sur le blog Technique de Xebia.

Public visé

Cette formation Deep Learning est à destination des Data Scientists, Machine Learning Engineers ou développeurs ayant une appétence et une première expérience avec le Machine Learning.

Prérequis

Une connaissance de Python est préférable, de même qu’une première expérience en Machine Learning.
Une connaissance préalable de TensorFlow, Keras ou PyTorch n’est pas obligatoire.
Les postes de travail et les logiciels nécessaires au bon déroulement de la formation sont fournis par Xebia.

Validation

À la fin de cette formation, les stagiaires recevront une attestation de présence.

SOFTWARE TRAINING DONE RIGHT