FORMATION : Machine learning pour le traitement d’image
Pour connaitre les prochaines sessions de formation sur l’Intelligence Artificielle, cliquez ici
Durant cette formation, nous ferons un tour d’horizon des principales techniques de Machine Learning / Deep Learning pour des applications en traitement d’image (classi-cation d’images, détection d’objets, etc.).
Pour ce faire, la formation alternera présentations théoriques et travaux pratiques (C++, OpenCV) où les participants pourront mettre en pratique immédiatement les algorithmes abordés sur des exemples concrets. Une machine virtuelle sera fournie en début de formation avec l’environnement complet de développement.
Objectifs : Pouvoir utiliser les techniques d’apprentissage automatiques les plus utiles pour le traitement d’image
Programme
Première partie (5H) : Apprentissage automatique supervisé - Généralités
Durant cette première partie, nous allons voir quels types de problèmes peuvent être résolu grâce à l’apprentissage supervisé, et comment ils doivent être formulés. Ensuite nous définirons un cadre théorique minimale permettant d’avoir une bonne compréhension de l’apprentissage. Enfin, nous étudierons et expérimenterons via les travaux pratiques les algorithmes classiques d’apprentissage supervisé.
- Apprentissage supervisé : Principes, définition des problèmes de classification, de régression
- Notions de probabilités : Notions essentielles pour bien comprendre les algorithmes d’apprentissage : lois de probabilit-es usuelles, probabilités conditionnelles, formule de Bayes, entropie, . . .
- Représentation des causalités : Mélange de gaussiennes (MdG), catégoriel multidimmentionnel, modèles multi-modaux, etc.
- Evaluer un algorithme d’AA : Comment quantifier les performances d’un classifieur ? Matrice de confusion, métriques classiques (précision, sensibilité, spécificité, justesse, . . .). Méthodologie de mesure (jeux d’apprentissage, validation, test).
- Problèmes de sous / sur-apprentissage : Pouvoir de représentation d’un modèle, capacité de généralisation.
- Algorithmes classiques : K plus proche voisins, classification Bayésienne (normale), régression logistique, machine à vecteurs de supports (SVM),
machines avec noyaux (RBF), arbres de d-ecision,forêts aléatoires. - Travaux pratiques : Mise en oeuvre des différents algorithmes sur des problèmes de classi-cations. L’objectif est d’avoir une bonne intuition des
avantages / inconvénients de chacun (modèle de données sous-jacent, temps d’apprentissage / d’exécution, capacité de généralisation, etc.).
Deuxième partie (2H) : Pré-traitements et apprentissage non supervisé
Durant cette deuxième partie, nous allons voir quelques techniques de prétraitement des données qui permettent de faciliter l’apprentissage automatique.
- Pré-traitements : Normalisation des composantes, décorrélation (Analyse en Composantes Principales / ACP), Analyse Discriminante Linéaire.
- Apprentissage non supervisé : Algorithmes K-moyennes, et EM (Espérance Maximisation)
- Travaux pratiques : Amélioration des performances des exemples vu en première partie.
- Exemple de prétraitement pour les images : Calculs des descripteurs de texture LBP (Local Binary Patterns)
Troisième partie (4H) : Réseaux de Neurones Artificiels (RNA) - Généralités
Dans cette partie, nous allons étudier les RNA généralistes (de manière non
spécifique au traitement d’image).
- Réseaux de neurones : Structure en couches, optimisation par Descente de Gradient Stochastique (SGD), propagation arrière du gradient.
- Fonctions de coûts classiques : Problèmes de régression (EQM, EAM), problèmes de classifi-cations (Entropie Croisée Catégorielle).
- Couches classiques : couches complètement connectées, non linéarités, distance cosinus, etc.
- Couches de sortie : SoftMax, Logistique
- Travaux pratiques (1) : Construction et entrainement d’un RNA pour la r
- Résolution d’un problème de classi-cation simple
- Techniques avancées : Descente adaptative (Adam), taux d’apprentissage variable, critères d’arrêt.
- Techniques de régularisation : Régularisations L2, normalisation par lot ( batch normalization), dropout
- Travaux pratiques (2) : Construction et entraînement d’un RNA pour la classi-cation d’images médicales, à partir de descripteurs LBP.
Quatrième partie (10H) : Réseaux Convolutifs
Dans cette partie, nous aborderons les réseaux de neurones dits convolutifs, des réseaux de neurones créés spécifiquement pour le traitement d’image. Nous étudierons en particulier les réseaux de classification, qui servent de base à beaucoup d’autres applications en traitement d’image (détection, segmentation, etc.).
- Architecture des réseaux convolutifs : Convolutions 2d, réductions spatiales.
- Réseaux classiques pour la classification : Historique et évolution des réseaux : LeNet, AlexNet, VGG16, GoogleNet, ResNet, etc.
- Travaux pratiques (1) : Conception et apprentissage d’un réseau pour la reconnaissance de chiffres manuscrits (base MNIST).
- Mise en oeuvre avec OpenCV : API, exemples. Chargement de réseaux pré-entraînés.
- Travaux pratiques (2) : Classification d’images avec un réseau pré-entraîné sur ImageNet (Inception).
- Apprentissage par transfert : Adaptation d’un réseau pré-entraîné sur une nouvelle tâche (classes spécifiques à un nouveau problème).
- Travaux pratiques (3) : Classification d’images par transfert sur une petite banque d’images (à partir d’un réseau pré-entrainé Inception). Les participants pourront adapter ce TP avec leurs propres images / classes d’objets.
- Détection et localisation d’objets : Famille d’algorithmes RCNN (RCNN, fast RCNN, faster RCNN, Mask RCNN).
- Travaux pratiques (4) : Détection et localisation d’objets avec apprentissage par transfert. Les participants pourront adapter ce TP avec leurs propres images / classes d’objets.
- Segmentation sémantique : Présentation de quelques algorithmes pour la segmentation pixel à pixel (Enet, etc.)
- Détection avec pose : Algorithme OpenPose, exemples avec OpenCV (détection de personnes, mains).
- Quelques autres applications : Détection de contours, colorisation automatique, transfert de style, amélioration de la résolution, etc.
Informations pratiques
Public concerne : Ingénieurs en traitement du signal, informatique
Prérequis : Notions de base en traitement d’image, notions de C++
Matériel nécessaire pour suivre la formation : PC (ou Mac) portable (Linux ou Windows) (configuration minimale : 4 Go de mémoire RAM, 8 Go recommandés, 30 Go d’espace disque libre, au moins 4 cœurs).
Lieu
Tours (37) - à confirmer
Participation aux frais :
Prix préférentiel pour les PME adhérentes CAP’TRONIC : 1 350 € HT
Pour les grandes entreprises et les PME qui ne souhaitent pas adhérer : 1 800 € HT.
Remarque : Jessica France est titulaire d’un numéro d’agrément de formation continue et est référencé DATADOCK depuis le 1er juillet 2017. Cette formation est éligible au financement par votre Opérateur de Compétences (OPCO) hors CPF.