Le PMC et l’apprentissage profond

Slides:



Advertisements
Présentations similaires
Logiciel Assistant Gestion d’Événement Rémi Papillie (Chef d’équipe) Maxime Brodeur Xavier Pajani Gabriel Rolland David St-Jean.
Advertisements

Traitement d’images 420-D78-SW A16 Semaine 02 Plan de leçon  Images : définition  Mat : définition  Filtres de lissage  Les fonctions et méthodes.
DIAGRAMME DE DEPLOIEMENT Exposé de: MBALLA MEKONGO Michèle MBOUNA FEUZE William SIEYADJEU Alex Lionel CHOPGWE Leonard NDUMATE Landry TIDJON Lionel.
Enseigner autrement les mathématiques au travers du socle commun et des nouveaux programmes Un collège réformé, adapté et contextualisé.
Années 90’ > Renaissance de l’IA avec le Machine Learning
Exercice On considère un Système de contrôle de température composé de: Capteur, ordinateur Le capteur transmit à chaque heure de la journée la température.
Présenté par M. Anis DIALLO
CHAPITRE 2 : LES DISTANCES DANS L’UNIVERS
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Présenté par: Salhi Amina
Session 1 6 mars 2017 Plateforme ICONICS Justine Guégan
Etude de la taille des bulles de cavitation inertielle générées par des HIFU M. G. Cares1, L. Hallez1, F. Touyeras1 , JY. Hihn1, M. Spajer2 1. Université.
Entraînement et évaluation d’une méthode de régression
SNMP - Comment calculer l'utilisation de la Bande passante
Reprise du cours ( ) Aujourd’hui :
Technologies de l’intelligence d’affaires Séance 13
  N. Chalghaf2 ; F. Azaiez1.2 ; K. Achour2
Le PMC et l’apprentissage profond
Technologies de l’intelligence d’affaires Séance 14
QoS - Configuration de NBAR (Network-Based Application Recognition)
Installation des OS par réseaux (PXE)
Techniques du Data Mining
Landscape genomics Physalia courses , November 6-10, 2017, Berlin
Démarche de conception. Démarche didactique.
Apprentissage profond Q
Machines à états liquides
Les gammes de valeurs des paramètres
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II
Regroupement contextuel de cimes dans les images aéroportées
Méthodologie scientifique
Formation au Numérique Codage et programmation dans les nouveaux programmes Romorantin, le 23 janvier 2018.
Réseaux de neurones appliqués à la reconnaissance de caractères
Exploiter le Web Etape 2.
Short distance Exposure (Mask Aligner)
Deuxième partie LE DOSSIER TECHNIQUE DU MARINGOUIN.
Formation sur les bases de données relationnelles.
Exercice : le jeu. Vous devez concevoir l’algorithme permettant de jouer avec votre calculatrice : elle détermine au hasard un nombre caché entier entre.
Des mathématiques derrière l’intelligence artificielle
Programmation Android Première application Android
L1 Technique informatique
Adaptive Neuro Fuzzy Inference System (ANFIS)
Les méthodes non paramétriques
CHAPTER 2: Apprentissage supervisé
Efficacité des algorithmes
Le logiciel de calcul de Reynaers
Formulation et Présentation d’un Algorithme Déterministe
B.Shishedjiev - Informatique
Transformation linéaires
Zeendoc et les logiciels comptables
Présenté par M. Anis DIALLO
BIO1130 LAB 4 MICROÉVOLUTION.
Présentation 9 : Calcul de précision des estimateurs complexes
Laboratoire V: Création d’un protocole expérimental
JDepend - Analyse de la qualité du code Java -
Global Challenge Capteur de nuit Leçon 2.
Reconnaissance de formes: lettres/chiffres
Extraction de caractéristiques pour la classification d’images
Elles contiennent des informations autre que géométriques
Les différents modes de démarrage de Windows
Dans toutes les séries technologiques, les compétences de la démarche scientifique structurent la formation en physique-chimie et les évaluations. Compétences.
Panorama of Recommender Systems to Support Learning
INTELLIGENCE ARTIFICIELLE
Design, innovation et créativité
Package FlexClust : Flexible Cluster Algorithms
Type Tableau Partie 1 : Vecteurs
spécialité mathématiques Première
Traitement de TEXTE 2 Stage – Semaine 3.
Séquence 1:Analyse du système d’information comptable
Transcription de la présentation:

Le PMC et l’apprentissage profond

Faiblesses du MLP classique Certains problèmes demandent un nombre infini de neurones cachés dans un MLP avec un seule couches cachée Augmenter le nombre de couche dégrade souvent la performance! Les paramètre architecturaux doivent être determines par essai erreur, or by métaheuristiques La difficulté augmente avec la dimension des données Performance faible pour des entrées tournées, translatées ou modifiées en échelle

Quand un x n’est plus un x ? =

La perspective du MLP classique ? = Beaucoup de pixels différents  images différentes

Une explication L’apprentissage des poids est fait mécaniquement (sans jeu de mot ) Se fait par un grand nombre de petits ajustements, chacun améliorant la performance par rapport au patron d’apprentissage en cours, mais possiblement la dégradant pour les autres La chance aidant, on aboutit éventuellement à une erreur de classification moyenne acceptable Peut-on faire mieux?

Pourquoi ne pas procéder par petits motifs, en ignorant les positions ? = = … = C’est ce que fait l’apprentissage profond!

Apprentissage profond pour MLP Nouvelle méthode de configuration et entraînement Apprend de manière hiérarchique Résout le problème du gradient évanescent avec l’augmentation du nombre de couches cachées Simplifie l’apprentissage pour les données de grandes dimensions Trois technologies de base Autoencodeurs Réseaux convolutifs (CNN) Réseaux de croyance profonds (DBN) CNN présentement l’architecture la plus populaire Bengio Montréal Hinton Toronto Le Cun New York

Deep learning en action Deux excellents turoriels intuitifs de brandon Rohrer: http://brohrer.github.io/how_convolutional_neural_networks_work.html https://ujjwalkarn.me/2016/08/11/intuitive-explanation-convnets

Pourquoi ça marche? Détection automatique et hiérarchique de traits 11 Output Pourquoi ça marche? Output Output Détection automatique et hiérarchique de traits Mapping from features Output Mapping from features Mapping from features Most complex features Hand- designed program Hand- designed features Simplest features Features Input Input Input Input Rule-based systems Classic machine Representation learning Deep learning learning 11

High-­level linguistic representations Apprentissage à plusieurs niveaux de représentation (Lee, Largman, Pham & Ng, NIPS 2009) (Lee, Grosse, Ranganath & Ng, ICML 2009) Successive model layers learn deeper intermediate representations High-­level linguistic representations Layer 3 Parts combine to form objects Layer 2 Layer 1 12 Prior: underlying factors & concepts compactly expressed w/ mulAple levels of abstracAon

La source d’inspiration LGN inputs Cell types Différents type de neurones L’idée est de les imiter dans l’espoir de bénéficier de leurs propriétés Architecture en couches Modèle de Hubel and Wiesel pour le système visuel primaire du chat

L’apprentissage se fait par couche… Train this layer first then this layer then this layer then this layer

Codage initial On convertit chaque image en vecteur donnant les intensités de pixels [6]

Extraction des traits Se fait à l’aide de matrices (masques) de convolution On obtient une matrice de traits (feature map) pour chaque masque From http://deeplearning.stanford.edu/wiki/index.php/Feature_extraction_using_convolution

Extraction des traits Des matrices de convolution différentes donneront des résultats différents http://mlss.tuebingen.mpg.de/2015/slides/fergus/Fergus_1.pdf

Effet de la convolution Différents choix de matrices de convolution peuvent être fait, dependant des traits recherchés Lesquels utiliser ? Leur spécification fait partie de l’entraînement du CNN, une fois le nombre de matrices, la taille, le pas de fenestration (stride), etc. on été décidés https://en.wikipedia.org/wiki/Kernel_(image_processing)

Introduction de non-linearités Autres choix : tanh, sigmoïde, PReLU ReLU http://mlss.tuebingen.mpg.de/2015/slides/fergus/Fergus_1.pdf

Groupement (Pooling) Permet : L’invariance aux faibles transformations Des champs réceptif plus vastes L’operateur Max est le plsu souvent utilisé On peut aussi utiliser somme, moyenne, etc. http://cs231n.github.io/convolutional-networks/

Groupement http://mlss.tuebingen.mpg.de/2015/slides/fergus/Fergus_1.pdf

Réseau convolutif à apprentissage profond La dernière couche de regroupement fournit l’entrée à un PMC régulier, complètement connecté Détection de traits suivie de classification classique! https://www.clarifai.com/technology

Plusieurs couches convolutives successives peuvent être requises http://cs231n.github.io/convolutional-networks/

Paramètres de configuration (knobs) Convolution Nombre et taille des traits Type de non-linéarité (ReLU est standard aujourd’hui) Regroupement Taille de fenêtre Pas de fenestration (stride) PMC final

Architecture Combien de couches de chaque type ? Dans quel ordre?

Algorithme d’un CNN Utilise l’algorithme de retropropagation d’erreur Cinq étapes: Initialize filters and parameters/weights with random values Select a training image as input, and determine network output Calculate the total error at the output layer  Total Error = ∑  ½ (target output – computed) ² Use Backpropagation to calculate the gradients of the error with respect to all network weights and use gradient descent to update all filter values/weights and parameter values to minimize the output error. Parameters like number of filters, filter sizes, architecture of the network etc. have all been fixed before Step 1 and do not change during training, only the values of the filter matrix and connection weights get updated. Repeat steps 2-4 with all images in the training set and for as many training epochs as needed

Ressources et contraintes Plusieurs outils en logiciel-libre disponibles, Theanos (U de M), Caffe (UC Berkeley), Tensor flow (Google), Torch, DL4J, etc. Matlab, R aussi disponibles Besoin de puissance de calcul parallèle Typiquement GPUs groupés Allègement de l’effort possible en utilisant l’apprentissage par transfert (réutilisation de parties de CNNs pré-entraînés) Exigence d’une représentation algébrique des données (vectors, matrices, tenseurs…) Sensibilité au brassages des vecteurs/matrices de traits

OK Image Son Capture de motifs “spatiaux” invariants possible Columns of pixels Rows of pixels Time steps Intensity in each frequency band Image Son Capture de motifs “spatiaux” invariants possible

Pas sûr Ex. de données client Name, age, address, email, purchases, browsing activity,… Ex. de données client Customers Si les données ont toujours un sens après la permutation de lignes ou de colonnes, le CNN est d’utilité restreinte

Conclusion Les PMC à apprentissage profond sont très efficaces pour trouver automatiquement les motifs des images et les utiliser pour la classification. L’approche demeure en boîte noire Arrivent a concurrencer l’intelligence humaine pour les tâches de classification Les entrées doivent discrètes, numériques, et compatibles avec une représentation vectorielle Le réglage des paramètres est toujours un talon d’Achille Architecture neuronale sans mémoire!