Plan du cours

Partie 1 – Deep Learning et concepts DNN

Introduction à l'IA, Machine Learning et au Deep Learning

    Histoire, concepts de base et applications habituelles de l'intelligence artificielle loin des fantasmes portés par ce domaine Intelligence collective : agréger des connaissances partagées par de nombreux agents virtuels Algorithmes génétiques : faire évoluer une population d'agents virtuels par sélection Usual Learning Machine : définition. Types de tâches : apprentissage supervisé, apprentissage non supervisé, apprentissage par renforcement Types d'actions : classification, régression, clustering, estimation de densité, réduction de dimensionnalité Exemples d'algorithmes de Machine Learning : Régression linéaire, Naive Bayes, Random Tree Machine learning VS Deep Learning : problèmes sur dont le Machine Learning reste aujourd'hui à l'état de l'art (Random Forests & XGBoosts)

 

Concepts de base d'un réseau de neurones (Application : perceptron multicouche)

    Rappel des bases mathématiques. Définition d'un réseau de neurones : architecture classique, activation et pondération des activations précédentes, profondeur d'un réseau Définition de l'apprentissage d'un réseau de neurones : fonctions de coût, rétro-propagation, descente de gradient stochastique, maximum de vraisemblance. Modélisation d'un réseau de neurones : modélisation des données d'entrée et de sortie selon le type de problème (régression, classification...). Malédiction de la dimensionnalité. Distinction entre données multi-fonctions et signal. Choix d'une fonction de coût en fonction des données. Rapprochement d'une fonction par un réseau de neurones : présentation et exemples Rapprochement d'une distribution par un réseau de neurones : présentation et exemples Data Augmentation : comment équilibrer un jeu de données Généralisation des résultats d'un réseau de neurones. Initialisation et régularisation d'un réseau de neurones : régularisation L1/L2, Batch Normalisation Optimisation et algorithmes de convergence

 

Outils ML/DL standards

Une présentation simple avec avantages, inconvénients, position dans l'écosystème et utilisation est prévue.

    Outils de gestion de données : Apache Spark, Apache Hadoop Tools Machine Learning : Numpy, Scipy, Sci-kit Frameworks DL haut niveau : PyTorch, Keras, Lasagne Frameworks DL bas niveau : Theano, Torch, Caffe, Tensorflow

 

Convolutionnel Neural Networks (CNN).

    Présentation des CNN : principes fondamentaux et applications Fonctionnement de base d'un CNN : couche convolutive, utilisation d'un noyau, Padding & stride, génération de feature map, pooling de couches. Extensions 1D, 2D et 3D. Présentation des différentes architectures CNN qui ont apporté l'état de l'art en matière de classification Images : LeNet, VGG Networks, Network in Network, Inception, Resnet. Présentation des innovations apportées par chaque architecture et de leurs applications plus globales (Convolution 1x1 ou connexions résiduelles) Utilisation d'un modèle d'attention. Application à un cas courant de classification (texte ou image) de CNN pour la génération : super-résolution, segmentation pixel à pixel. Présentation des principales stratégies pour augmenter les cartes de caractéristiques pour la génération d'images.

 

Récurrent Neural Networks (RNN).

    Présentation des RNN : principes fondamentaux et applications. Fonctionnement de base du RNN : activation cachée, rétro-propagation dans le temps, version dépliée. Evolutions vers les Gated Recurrent Units (GRU) et le LSTM (Long Short Term Memory). Présentation des différents états et des évolutions apportées par ces architectures Problèmes de convergence et de gradient nul Architectures classiques : Prédiction d'une série temporelle, classification... RNN Encoder Architecture de type décodeur. Utilisation d'un modèle d'attention. Applications PNL : encodage de mots/caractères, traduction. Applications vidéo : prédiction de la prochaine image générée d'une séquence vidéo.

Modèles générationnels : Variational AutoEncoder (VAE) et Generative Adversarial Networks (GAN).

    Présentation des modèles générationnels, lien avec les CNN Auto-encoder : réduction de dimensionnalité et génération limitée Variational Auto-encoder : modèle générationnel et approximation de la distribution d'un donné. Définition et utilisation de l'espace latent. Astuce de reparamétrage. Applications et limites observées Réseaux adverses génératifs : principes fondamentaux. Architecture double réseau (générateur et discriminateur) avec apprentissage alternatif, fonctions de coût disponibles. Convergence d'un GAN et difficultés rencontrées. Convergence améliorée : Wasserstein GAN, commencé. Distance de déplacement de la Terre. Applications pour la génération d'images ou de photographies, génération de texte, super-résolution.

Profond Reinforcement Learning.

    Présentation de l'apprentissage par renforcement : contrôle d'un agent dans un environnement défini Par un état et actions possibles Utilisation d'un réseau de neurones pour approximer la fonction état Deep Q Learning : replay d'expérience, et application au contrôle d'un jeu vidéo. Optimisation de la politique d'apprentissage. Conformément à la politique et hors politique. Architecture critique d’acteur. A3C. Applications : contrôle d'un seul jeu vidéo ou d'un système numérique.

 

Partie 2 – Théano pour Deep Learning

Les bases de Théano

    IntroductionInstallation et configuration

Fonctions Théano

    entrées, sorties, mises à jour, données

Formation et optimisation d'un réseau de neurones à l'aide de Theano

    Modélisation de réseaux neuronaux Régression logistique Couches cachées Formation d'un réseau Calcul et optimisation de classification Perte de journaux

Tester le modèle

Partie 3 – DNN utilisant Tensorflow

TensorFlow Bases

    Création, initialisation, sauvegarde et restauration des variables TensorFlow Alimentation, lecture et préchargement des données TensorFlow Comment utiliser l'infrastructure TensorFlow pour former des modèles à grande échelle Visualisation et évaluation de modèles avec TensorBoard

TensorFlow Mécanique

    Préparer les entrées de téléchargement de données et les espaces réservés Créer la formation sur la perte d'inférence GraphS
Entraîner le modèle Le graphique
  • La session
  • Boucle ferroviaire
  • Évaluer le modèle Créer le graphique d'évaluation
  • Sortie d'évaluation
  • Le Perceptron
  • Fonctions d'activation L'algorithme d'apprentissage du perceptron Classification binaire avec le perceptron Classification des documents avec le perceptron Limitations du perceptron
  • Du Perceptron aux machines à vecteurs de support

      Les noyaux et l'astuce du noyau Classification de la marge maximale et vecteurs de support

    Artificiel Neural Networks

      Limites de décision non linéaires Réseaux de neurones artificiels à action directe et à rétroaction Perceptrons multicouches Minimiser la fonction de coût Propagation vers l'avant Propagation arrière Améliorer la façon dont les réseaux de neurones apprennent

    Convolutif Neural Networks

      Goals Principes d'architecture du modèle Organisation du code Lancement et formation du modèle Évaluation d'un modèle

     

      Introductions de base à donner aux modules ci-dessous (brève introduction à fournir en fonction du temps disponible) :

    Tensorflow – Utilisation avancée

    Threading et files d'attente distribuées TensorFlow Rédaction de documentation et partage de votre modèle Personnalisation des lecteurs de données Manipulation TensorFlow Fichiers de modèle

    TensorFlow Servir

      Introduction Tutoriel de diffusion de base Tutoriel de diffusion avancée Tutoriel de diffusion du modèle de création

    Pré requis

    Formation en physique, mathématiques et programmation. Participation à des activités de traitement d'images.

    Les délégués doivent avoir une compréhension préalable des concepts d'apprentissage automatique et avoir travaillé sur la programmation et les bibliothèques Python.

      35 heures
     

    Nombre de participants


    Début

    Fin


    Dates are subject to availability and take place between 09:30 and 16:30.
    Les formations ouvertes requièrent plus de 3 participants.

    Cours Similaires

    Natural Language Processing (NLP) with TensorFlow

      35 heures

    Catégories Similaires