Deep Learning. 2 Plan réseaux de neurones artificiels Définition Fonction d’activation Fonction de cout Propagation et rétropropagation Algorithme d’optimisation.

Slides:



Advertisements
Présentations similaires
RECONNAISSANCE DE FORMES
Advertisements

Les réseaux de neurones
Christelle Scharff IFI 2004
CINI – Li115 1 Semaine 9 Algorithmes de tri ● Introduction ● Tri à bulle ● - principe ● - algorithme ● - efficacité ● Tri par sélection ● - principe, algorithme,
Active Learning for Natural Language Parsing and Information Extraction, de Cynthia A. Thompson, Mary Elaine Califf et Raymond J. Mooney Philippe Gambette.
Les rprésentation des signaux dans le cadre décisionnel de Bayes Jorge F. Silva Shrikanth S. Narayanan.
Système d’annotation et de détection de modèle de véhicule Université de Sfax *** Institut Supérieur d’Informatique et de Multimédia de Sfax Réalisé par.
MRP Étapes 1/12 Introduction Définitions JP Rennard Objectifs Toute entreprise appelée à fournir des biens et services est amenée à gérer la double contrainte.
Années 90’ > Renaissance de l’IA avec le Machine Learning
L’ordinateur et ses composants
Suites ordonnées ou mettre de l’ordre
Outils de Recherche Opérationnelle en Génie MTH 8414
Les tables de multiplication au ce1 « Une construction réfléchie des tables favorise-t-elle leur mémorisation et leurs transferts ? » DOUARCHE Vaéa.
Analyse, Classification,Indexation des Données ACID
Information, Calcul, Communication
Visite guidée - session 3 Les postes de charge et les gammes
Les bandes de Bollinger
MACD (Moving Average Convergence Divergence)
Un extrait de bilan périodique de 5e : l’en-tête administratif
Evaluation de l'UE TICE 1 TRANSMISSION DES DONNEES INFORMATIQUES SABATIER Fabienne 1ère année de sciences du langage/sciences de l’éducation.
Rapport sable /gravier (S/G)
Routage S 3 - Questionnaire N°1
Technologies de l’intelligence d’affaires Séance 13
2°9 lycée Beauregard à Montbrison
Plans d’experiences : plans de melanges
Routage S 3 - Questionnaire N°1
La méthode du simplexe. 1) Algorithme du simplexe  Cet algorithme permet de déterminer la solution optimale, si elle existe, d’un problème de programmation.
INTELLIGENCE ARTIFICIELLE
Sujets Spéciaux en informatique II
 Introduction L’électrotechnique et l’électronique de puissance ont leur place dans les fonctions de traction/freinage dynamique et les auxiliaires associés.
Evaluation de l'UE TICE 1 TRANSMISSION DES DONNEES INFORMATIQUES SABATIER Fabienne 1ère année de sciences du langage/sciences de l’éducation.
Modélisation avec UML 2.0 Partie II Diagramme de classes.
Réseaux de neurones appliqués à la reconnaissance de caractères
ACP Analyse en Composantes Principales
Exercice : le jeu. Vous devez concevoir l’algorithme permettant de jouer avec votre calculatrice : elle détermine au hasard un nombre caché entier entre.
Calculs des incertitudes Lundi 30 Avril 2018 Master de Management de la Qualité, de la Sécurité et de l’Environnement.
Qu’est-ce qu’un ordinateur ?. Ordinateur – calculateur Un ordinateur est une machine qui permet de réaliser, d’exécuter des opérations, des calculs, c’est.
Royaume de Maroc Université Hassan Premier Settat Faculté des Sciences et Techniques de Settat LA CLASSIFICATION K-MEANS SOUS R /MATLAB Master :Automatique.
Chapitre2: SGBD et Datawarehouse. On pourrait se demander pourquoi ne pas utiliser un SGBD pour réaliser cette structure d'informatique décisionnelle.
Des mathématiques derrière l’intelligence artificielle
DÉTECTION DE DÉFAUTS DANS DES HOLOGRAMMES DE PHASE
OPTIMISATION 1ère année ingénieurs
Adaptive Neuro Fuzzy Inference System (ANFIS)
Présentation de la base Frantext
Les méthodes non paramétriques
1 PROJET D’INFORMATIQUE les composants de l'ordinateur Gammoudi Rayéne 7 B 2.
1. Caractéristiques d’antennes Antennes et Rayonnement.
Variable Neighborhood Descent (VND) Réalisée par Nadia Sassi Eya baghdedi AU
ENSEIGNER L’ALGORITHMIQUE ET LA PROGRAMMATION AU COLLÈGE
Position, dispersion, forme
Contribution du LHyGeS
CSI 3505 Algorithmes Voraces
Le Projet en ISN.
Les erreurs de mesure Projet d’Appui au renforcement des capacités
IV- CORRECTION A AVANCE DE PHASE
INTELLIGENCE ARTIFICIELLE
IV- CORRECTION A AVANCE DE PHASE
INTELLIGENCE ARTIFICIELLE
Encadré par : M. Mohammad EL GHABZOURI Elaboré par : - AZEGAMOUT Mohamed - ABOULKACEM abdelouahed - GOUN Ayoub EXPOSÉ Sous le thème : SER 2018 Parallélisme.
Tableau de bord d’un système de recommandation
Test de performances. Test de performances:  Un test de performance est un test dont l'objectif est de déterminer la performance d'un système informatique.
Encadrée par: - Mr. Abdallah ALAOUI AMINI Réalisée par : -ERAOUI Oumaima -DEKKAR Amal - ES-SAHLY Samira -Houari Mohammed PROGRAMMATION MULTIOBJECTIFS.
PROGRAMMATION SCIENTIFIQUE EN C
Impact Evaluation 4 Peace March 2014, Lisbon, Portugal 1 Echantillonage pour une Evaluation d’Impact Latin America and the Caribbean’s Citizen Security.
Boulain Joris, Handouz Yassine, Regnier Fabien, Giraud Antoine
Dridi Lobna 1 Couche Réseau II Réseau : Gestion de l’accès.
Problèmes de proportionnalité
Outils de Recherche Opérationnelle en Génie MTH 8414
La programmation dynamique
Transcription de la présentation:

Deep Learning

2 Plan réseaux de neurones artificiels Définition Fonction d’activation Fonction de cout Propagation et rétropropagation Algorithme d’optimisation Deep Learning Définition Historique algorithmes de Deep Learning Architecture de réseaux de neurone convolutionnels implémentation

3 «L’apprentissage automatique est la discipline donnant aux ordinateurs la capacité d’apprendre sans qu’ils soient explicitement programmés.» Arthur Samuel, 1959

4 Au cœur de ces avancées extraordinaires se trouve le Machine Learning: des systèmes informatiques capables d’apprendre à partir d’exemples. Bien que le ML existe depuis plus de 50 ɐ ans, il n’a véritablement pris son envol que depuis une dizaine d’années, d’abord dans les laboratoires de recherche, puis très vite chez les géants du web, notamment les GAFA (Google, Apple, Facebook et Amazon).

5 Ils sont donc conçus pour reproduire certaines de leurs caractéristiques comme :  la capacité d'apprentissage  la capacité de mémoriser l'information  la capacité de traiter des informations incomplètes Les réseaux de neurones artificiels « N eural N etworks » réalisés à partir du modèle biologique ne sont rien qu'une tentative de modélisation mathématique du cerveau humain

6 Réseau de neurones artificiel (RNA) Un modèle de calcul inspiré du cerveau humain. Cerveau humain : –10 milliards de neurones –60 milliards de connexions (synapses) RNA : –Un nombre fini de processeurs élémentaires (neurones). –Liens pondérés passant un signal d’un neurone vers d’autres. –Plusieurs signaux d’entrée par neurone –Un seul signal de sortie

7 Comment un neurone calcule sa sortie ?

8 Perceptron multicouche(PMC) Les neurones sont arrangés par couche. Il n'y a pas de connexion entre neurones d'une même couche et les connexions ne se font qu'avec les neurones des couches avales

9 Réseaux de neurones

10 Fonction d’activation

11 Fonction de Coût ( Loss Function/Cost Function)

12 Propagation

13 Retropropagation

14 L’objectif de la méthode de rétropropagation est d’adapter les paramètres W de façon à minimiser la valeur moyenne de l’erreur sur l’ensemble d’entraînement

15 est un algorithme d’optimisation très général, capable de trouver des solutions optimales à un grand nombre de problèmes. L’idée essentielle de la descente de gradient est de corriger petit à petit les paramètres dans le but de minimiser une fonction de coût. La descente de gradient Supposons que vous soyez perdu en montagne dans un épais brouillard et que vous puissiez uniquement sentir la pente du terrain sous vos pieds. Pour redescendre rapidement dans la vallée, une bonne stratégie consiste à avancer vers le bas dans la direction de plus grande pente. C’est exactement ce que fait la descente de gradient: elle calcule le gradient de la fonction de coût au point θ, puis progresse en direction du gradient descendant. Lorsque le gradient est nul, vous avez atteint un minimum! En pratique, vous commencez par remplir θ avec des valeurs aléatoires (c’est ce qu’on appelle l’ initialisation aléatoire ), puis vous l’améliorez progressivement, pas à pas, en tentant à chaque étape de faire décroître la fonction de coût (ici la MSE), jusqu’à ce que l’algorithme converge vers un minimum

16 Inversement, si le taux d’apprentissage est trop élevé, vous risquez de dépasser le point le plus bas et de vous retrouver de l’autre côté, peut-être même plus haut qu’avant. Ceci pourrait faire diverger l’algorithme, avec des valeurs de plus en plus grandes, ce qui empêcherait de trouver une bonne solution Si le taux d’apprentissage est trop petit, l’algorithme devra effectuer un grand nombre d’itérations pour converger et prendra beaucoup de temps

17 Enfin, toutes les fonctions de coût n’ont pas la forme d’une jolie cuvette régulière. Il peut y avoir des trous, des crêtes, des plateaux et toutes sortes de terrains irréguliers, ce qui complique la convergence vers le minimum.

18 Le principal problème de la descente de gradient ordinaire, c’est qu’elle utilise à chaque étape l’ensemble du jeu d’entraînement pour calculer les gradients, ce qui la rend très lente lorsque le jeu d’entraînement est de grande taille. À l’extrême inverse, la descente de gradient stochastique ne choisit à chaque étape qu’une observation prise au hasard dans l’ensemble d’entraînement et calcule les gradients en se basant uniquement sur cette seule observation. Bien évidemment, cela rend l’algorithme beau- coup plus rapide puisqu’il n’a que très peu de données à manipuler à chaque itération. la descente de gradient stochastique coût

19 la descente de gradient stochastique a plus de chances de trouver le minimum global que la descente de gradient ordinaire.

20 descente de gradient par mini-lots (en anglais, mini-batch gradient descent ) une fois que vous connaissez les deux autres méthodes de descente de gradient, ordinaire et stochastique: à chaque étape, au lieu de calculer les dérivées partielles sur l’ensemble du jeu d’entraînement (DG ordinaire) ou sur une seule observation (DG stochastique), la descente de gradient par mini-lots calcule le gradient sur de petits sous-ensembles d’observations sélectionnées aléatoirement qu’on appelle mini-lots.

21

22

23 Adaptation des poids

24 Un hyperparamètre est un paramètre de l’algorithme d’apprentissage, et non un paramètre du modèle. Autrement dit, il ne fait pas partie des para- mètres que l’on cherche à optimiser pendant l’apprentissage. Toutefois, on peut très bien lancer l’algorithme d’apprentissage plusieurs fois, en essayant à chaque fois une valeur différente pour chaque hyperparamètre, jusqu’à trouver une combinaison de valeurs qui permet à l’algorithme d’apprentis- sage de produire un modèle satisfaisant. Pour évaluer chaque modèle, on utilise alors un jeu de données distinct du jeu d’entraînement, appelé le jeu de validation. Ce réglage fin des hyperparamètres s’appelle le hyperparame- ter tuning en anglais

25 Algorithme d’optimisation

26 Deep Learning (L’apprentissage profond)

27 Le Deep Learning ou « apprentissage profond » est une famille d’algorithmes d’apprentissage (machine learning) pour entraîner des réseaux de neurones composés de plusieurs couches internes et potentiellement un grand nombre.

28 Les jeux de données d’apprentissage sont primordiaux. Il vaut mieux avoir un très grand nombre de données plutôt qu’un petit nombre qui imposerait des prétraitements lourds et délicats. MNIST: handwritten digits CIFAR10 / CIFAR100

29 Quelle est la différence entre l'apprentissage automatique et l'apprentissage en profondeur?

30 Historique

31 Quelques algorithmes de Deep Learning

32 (Deep NN).Ces réseaux sont similaires aux réseaux MLP mais avec plus de couches cachées. L’augmentation du nombre de couches, Les réseaux de neurones profonds

33 En apprentissage automatique, un réseau de neurones convolutifs ou réseau de neurones à convolution (en anglais CNN ou ConvNet pour Convolutional Neural Networks) est un type de réseau de neurones artificiels acycliques (feed-forward), dans lequel le motif de connexion entre les neurones est inspiré par le cortex visuel des animaux. Les réseaux de neurones convolutionnels

34 Les réseaux de neurones convolutifs (CNN, Convolutional Neural Network ) sont apparus suite à l’étude du cortex visuel du cerveau et sont utilisés dans la reconnaissance d’images depuis les années Ces quelques dernières années, grâce à l’augmentation de la puissance de calcul, à la quantité de données d’entraîneement disponible

35 En et en , David H. ɐ Hubel et Torsten Wiesel ont mené une série d’ex- périences sur des chats (et, quelques années plus tard, sur des singes 78 ), apportant des informations essentielles sur la structure du cortex visuel (en 1981, ils ont reçu le prix Nobel de physiologie ou médecine pour leurs travaux). Ils ont notamment montré que de nombreux neurones du cortex visuel ont un petit champ récepteur local et qu’ils réagissent donc uniquement à un stimulus visuel qui se trouve dans une région limitée du champ visuel (voir la figure ɐ 6.1, sur laquelle les champs récepteurs locaux de cinq neurones sont représentés par les cercles en pointillés). Les champs récep- teurs des différents neurones peuvent se chevaucher et ils couvrent ensemble l’inté- gralité du champ visuel. Ils ont également montré que certains neurones réagissent uniquement aux images de lignes horizontales, tandis que d’autres réagissent unique- ment aux lignes ayant d’autres orientations (deux neurones peuvent avoir le même champ récepteur mais réagir à des orientations de lignes différentes). Ils ont remarqué que certains neurones ont des champs récepteurs plus larges et qu’ils réagissent à des motifs plus complexes, correspondant à des combinaisons de motifs de plus bas niveau. Ces observations ont conduit à l’idée que les neurones de plus haut niveau se fondent sur la sortie des neurones voisins de plus bas niveau (sur la figure ɐ 6.1, chaque neurone est connecté uniquement à quelques neurones de la couche précédente). Cette architecture puissante est capable de détecter toutes sortes de motifs complexes dans n’importe quelle zone du champ visuel

36 Les réseaux de neurones convolutionnels sont à ce jour les modèles les plus performants pour classer des images.

37 Architecture de réseaux de neurone convolutionnels

38 Il existe quatre types de couches pour un réseau de neurones convolutif : la couche de convolutionla couche de poolingla couche de correction ReLU la couche fully-connected.

39 la couche de convolution

40 La couche de convolution possède quatre hyper paramètres :  Le nombre de filtres  La taille F des filtres  Le pas S avec lequel on fait glisser la fenêtre correspondant au filtre sur l'image.  Le zero-padding P

41 la couche de pooling

42 la couche de correction ReLU Leaky ReLuReLu

43 la couche fully-connected. La dernière couche fully-connected permet de classifier l'image en entrée du réseau la couche fully-connected multiplie donc chaque élément en entrée par un poids

44

45 Comment connait-on la valeur de ces poids ? Le réseau de neurones convolutif apprend les valeurs des poids de la même manière qu'il apprend les filtres de la couche de convolution : lors de phase d'entraînement, par rétropropagation du gradient.

Choix des hyperparamètres 46 Nombre de filtres Forme du filtre Forme du Max Pooling

Implémentation 47

48 permet de faire du Deep Learning sans avoir besoin d'y passer un mois de calculs. Le principe est d'utiliser les connaissances acquises par un réseau de neurones lors de la résolution d'un problème afin d'en résoudre un autre plus ou moins similaire. On réalise ainsi un transfert de connaissances, d'où le nom. Le Transfer Learning (ou apprentissage par transfert) from keras.applications.vgg16 import VGG16

49 Représentation 3D de l'architecture de VGG-16

50 Implémentation de VGG-16

51 Une fois implémenté, vous devez d'abord "compiler" votre modèle avec la méthode Sequential.compile(), puis l'entraîner avec Sequential.fit(). Mais la phase d'entraînement peut prendre beaucoup de temps, même avec un GPU !

52 merci pour votre attention