« convolutional deep belief networks »

72
« Convolutional Deep Belief Networks » pour l’apprentissage adaptable non supervisé de représentations hiérarchiques présenté par Dumitru Loghin Montréal 2014 1

Upload: loghin-dumitru

Post on 15-Apr-2017

509 views

Category:

Education


3 download

TRANSCRIPT

Page 1: « Convolutional Deep Belief Networks »

« Convolutional Deep Belief Networks »

pour l’apprentissage adaptable non supervisé de représentations

hiérarchiques

présenté parDumitru Loghin

Montréal 2014 

Page 2: « Convolutional Deep Belief Networks »

2

Plan

1.Introduction2.Boltzmann Machine3.«Restricted Boltzmann

Machines»4.« Deep belief networks »5.Algorithmes6.Résultats expérimentaux7.Conclusion8.Références

Page 3: « Convolutional Deep Belief Networks »

3

Plan

1.Introduction2.Boltzmann Machine3.«Restricted Boltzmann

Machines»4.« Deep belief networks »5.Algorithmes6.Résultats expérimentaux7.Conclusion8.Références

Page 4: « Convolutional Deep Belief Networks »

4

1.Introduction

Enjeux des modèles tels que les réseaux profonds sont mis à l'échelle de ces modèles à taille réelle d’image.

Les images de grande dimension restent un problème difficile.

Page 5: « Convolutional Deep Belief Networks »

5

1.IntroductionL'apprentissage en profondeur

« Deep learning »Deux principes de base:

L’apprentissage avec plusieurs niveaux d'information pour la modélisation des relations complexes dans les données.

Page 6: « Convolutional Deep Belief Networks »

6

1.IntroductionL'apprentissage en profondeur

« Deep learning »Deux principes de base:

L’apprentissage sur les données non marquées («non supervisées»), ou une combinaison de données étiquetées et non étiquetées («avec la participation partielle du professeur»)

Page 7: « Convolutional Deep Belief Networks »

7

1.IntroductionL’apprentissage à plusieurs niveaux de représentation de l’information avec des caractéristiques de haut niveau et des concepts se détermine à l'aide du niveau inférieur au présent. Une telle hiérarchie des caractéristiques est appelée «l'architecture profonde"

(« Deep Architecture »).

Page 8: « Convolutional Deep Belief Networks »

8

1.Introduction

in out

Fig1. L’architecture profonde

Page 9: « Convolutional Deep Belief Networks »

9

1.IntroductionCertains domaines d'utilisation de «Deep

Belief Networks(DBN)»

Reconnaissance de lettres écrites à la main; Reconnaissance de visages;Conduite automobile autonome;Analyse intelligente des données biologiques;Recherche Web;Etc.

Page 10: « Convolutional Deep Belief Networks »

10

1.Introduction

Le succès des systèmes d'apprentissage de la machine nécessite souvent une grande quantité de données étiquetées (ce qui est coûteux à obtenir) et nécessite des ajustements manuels importants à différents niveaux.

Page 11: « Convolutional Deep Belief Networks »

11

1.Introduction

Par conséquent, il est souhaitable de pouvoir mettre au point automatiquement des représentations d'entités en utilisant une petite quantité de données étiquetées.

Page 12: « Convolutional Deep Belief Networks »

12

1.Introduction

L’apprentissage de représentations d'entités à partir des données non étiquetées est appelé apprentissage non supervisé

«Unsupervised feature learning».

Page 13: « Convolutional Deep Belief Networks »

13

1.Introduction

Avantages d’apprentissage non supervisé:

On peut facilement obtenir une quantité presque illimitée de données non étiquetées via Internet;

Page 14: « Convolutional Deep Belief Networks »

14

1.Introduction Caractéristiques de haut niveau:

Fig.2 caractéristiques de visages de haut niveau

Page 15: « Convolutional Deep Belief Networks »

15

1.Introduction Caractéristiques de haut niveau:

Fig.3 caractéristiques de visages de haut niveau

Page 16: « Convolutional Deep Belief Networks »

16

1.Introduction Caractéristiques de bas niveau:

Fig.4 caractéristiques de visages de bas niveau

Page 17: « Convolutional Deep Belief Networks »

17

1.Introduction Caractéristiques de bas niveau:

Fig.5 caractéristiques de visages de bas niveau

Page 18: « Convolutional Deep Belief Networks »

18

1.Introduction

Fig.6 Les points caractéristiques du visage.

Page 19: « Convolutional Deep Belief Networks »

19

1.Introduction

Comment peut-on découvrir des caractéristiques de haut niveau utiles à partir de données non

étiquetées ???

Page 20: « Convolutional Deep Belief Networks »

20

1.IntroductionArchitectures profondes constituées

de caractéristiques de détection organisées en couches.

En particulier, le DBN est un modèle génératif multicouche où chaque couche encode les dépendances statistiques entre les unités dans la couche inférieure, et il peut être formé (approximativement) à maximiser la probabilité de ses données d'apprentissage.

Page 21: « Convolutional Deep Belief Networks »

21

1.Introduction Écaillage DBN à taille réaliste (par

exemple, 200 x 200 pixels) des images reste difficile pour deux raisons:

Tout d'abord, les images sont de grande dimension, de sorte que les algorithmes de calcul doivent être traitables même lorsqu'il est appliqué à de grandes images.

Deuxièmement, les objets peuvent apparaître à des endroits arbitraires dans les images. Ainsi, il est souhaitable que les représentations soient invariantes au moins à la translation de l'entrée locale.

Page 22: « Convolutional Deep Belief Networks »

22

1.Introduction

Les auteurs présentent le « convolutional deep belief network », un modèle génératif hiérarchique qui s'adapte aux images en taille réelle.

Et également présente la technique « probabilistic max-pooling », qui permet aux unités de couche supérieure pour couvrir de plus grandes zones de l'entrée d'une manière probabiliste correcte.

Page 23: « Convolutional Deep Belief Networks »

23

Plan

1.Introduction2.Boltzmann Machine3.«Restricted Boltzmann

Machines»4.« Deep belief networks »5.Algorithmes6.Résultats expérimentaux7.Conclusion8.Références

Page 24: « Convolutional Deep Belief Networks »

24

2. Boltzmann Machine

Fig.7 Une représentation graphique d'une machine de Boltzmann

Page 25: « Convolutional Deep Belief Networks »

25

2. Boltzmann Machine

Boltzmann Machine(BM) – genre de réseau neuronal stochastique récurrent inventé par Geoffrey Hinton et Terry Sejnowski.

BM peut être considéré comme une version générative de réseau stochastique de Hopfield.

Page 26: « Convolutional Deep Belief Networks »

26

2. Boltzmann Machine

Les neurones sont divisés en deux groupes décrivant les états d’observation et les états cachés.

BM est un graphe non orienté entièrement connecté, ainsi deux sommets quelconques d'un groupe dépendent les uns des autres.

Page 27: « Convolutional Deep Belief Networks »

27

2. Boltzmann Machine

Comme le réseau de Hopfield, autant la machine de Boltzmann est un réseau de neurones avec une certaine énergie spécifique pour elle. Le calcul de l'énergie globale est identique avec la forme du réseau de Hopfield.

Page 28: « Convolutional Deep Belief Networks »

28

2. Boltzmann Machine

(1)

Où:ωij le poids de connexion entre les neurones i et j;

Si état, Si є {0,1}, pour le neurone i;

θi seuil pour le neurone i;

ωii = 0;

ωij = ωji.

Page 29: « Convolutional Deep Belief Networks »

29

2. Boltzmann MachineLa fonction de l'énergie est utilisée comme un outil pour construire des réseaux récurrents et pour comprendre leur dynamique.

Fig.8 Local minimum énergétique du réseau

Page 30: « Convolutional Deep Belief Networks »

30

Plan

1.Introduction2.Boltzmann Machine3.«Restricted Boltzmann

Machines»4.« Deep belief networks »5.Algorithmes6.Résultats expérimentaux7.Conclusion8.Références

Page 31: « Convolutional Deep Belief Networks »

31

3.«Restricted Boltzmann Machines»

«Restricted Boltzmann Machines»(RBM)

Fig.9 « Deep Boltzmann Machines » R.Salakhutdinov et G. Hinton; pag. 2.

Page 32: « Convolutional Deep Belief Networks »

32

3.«Restricted Boltzmann Machines»

La particularité de ce modèle est que pour les états de neurones d’un groupe, les états neurones dans l'autre groupe soient indépendants les uns des autres.

Page 33: « Convolutional Deep Belief Networks »

33

3.«Restricted Boltzmann Machines»

Le RBM est interprétée analogique Modèle de Markov Caché.On a un certain nombre d‘états que nous pouvons observer et un certain nombre d‘états qui sont cachés, et nous ne pouvons pas voir directement leur état.

Mais on peut faire inférence probabiliste concernant les états cachés, en fonction des conditions que nous pouvons observer.

Page 34: « Convolutional Deep Belief Networks »

34

3.«Restricted Boltzmann Machines»

Une fois ce modèle appris, on a aussi la possibilité de tirer des conclusions sur les états visibles, en connaissant les données cachées (le théorème de Bayes est encore valide!!!), et ainsi générer de la distribution de probabilité, où le modèle est formé.

Page 35: « Convolutional Deep Belief Networks »

35

3.«Restricted Boltzmann Machines»

Ainsi, on peut formuler l'objectif du modèle d’apprentissage:

Il est nécessaire d'ajuster les paramètres du modèle de sorte que le vecteur rétabli de l'état initial soit le plus proche de l'original.

Page 36: « Convolutional Deep Belief Networks »

36

3.«Restricted Boltzmann Machines»

L'énergie de l'état {v, h}:

(2)

Où:θ = {W,L,J} sont les paramètres du

modèle

Page 37: « Convolutional Deep Belief Networks »

37

3.«Restricted Boltzmann Machines»

La probabilité que le modèle attribue à un vecteur visible v est:

(3)

(4)

Où:p* désigne la probabilité non

normalisée;Z(θ) est la fonction de partition.

Page 38: « Convolutional Deep Belief Networks »

38

3.«Restricted Boltzmann Machines»

Les mises à jour de paramètres qui sont nécessaires pour effectuer l'ascension par gradient dans la liste de probabilité peuvent être obtenus à partir de l'équation. 3:

(5,6,7)

Où:α est un taux d'apprentissage, EPdata[] désigne une attente par rapport à la distribution des données terminées Pdata(h,v;θ)=p(h|v;θ)*Pdata(v)

Page 39: « Convolutional Deep Belief Networks »

39

3.«Restricted Boltzmann Machines»

Algorithme d’apprentissage du BM

Fig.10 Algorithme d’apprentissage du BM. « Deep Boltzmann Machines » R.Salakhutdinov et G. Hinton; pag. 3.

Page 40: « Convolutional Deep Belief Networks »

40

3.«Restricted Boltzmann Machines»

Partie expérimentale du RBM:

Fig.10 Partie expérimentale du RBM. « Deep Boltzmann Machines » R.Salakhutdinov et G. Hinton; pag. 7.

Page 41: « Convolutional Deep Belief Networks »

41

3.«Restricted Boltzmann Machines»

Partie expérimentale du RBM:

Fig.11 Visualisation des modèles de lettres.

Page 42: « Convolutional Deep Belief Networks »

42

Plan

1.Introduction2.Boltzmann Machine3.«Restricted Boltzmann

Machines»4.« Deep belief networks »5.Algorithmes6.Résultats expérimentaux7.Conclusion8.Références

Page 43: « Convolutional Deep Belief Networks »

43

4. « Deep belief networks »

Le RBM par lui-même est limité dans ce qu'il peut représenter!!!

Son pouvoir réel émerge lorsque les RBMs sont empilés pour former un DBN, un modèle génératif composé de plusieurs couches.

Page 44: « Convolutional Deep Belief Networks »

44

4. « Deep belief networks »

Le RBM par lui-même est limité dans ce qu'il peut représenter!!!

Son pouvoir réel émerge lorsque les RBMs sont empilés pour former un DBN, un modèle génératif composé de plusieurs couches.

Dans un DBN, chaque couche comprend un ensemble d'unités binaires ou des valeurs réelles.

Page 45: « Convolutional Deep Belief Networks »

45

4. « Deep belief networks »

Fig.12 Schéma du « Deep Belief Network »

Page 46: « Convolutional Deep Belief Networks »

46

4. « Deep belief networks »

Hinton a proposé un algorithme efficace pour l’apprentissage du DBNs, par l’apprentissage séparé de chaque couche.

Page 47: « Convolutional Deep Belief Networks »

47

Plan

1.Introduction2.Boltzmann Machine3.«Restricted Boltzmann

Machines»4.« Deep belief networks »5.Algorithmes6.Résultats expérimentaux7.Conclusion8.Références

Page 48: « Convolutional Deep Belief Networks »

5. Algorithmes

RBM et DBN ignorent la structure 2D d'images, de sorte les poids qui détectent une caractéristique donnée doivent être appris séparément pour chaque emplacement.

48

image

Page 49: « Convolutional Deep Belief Networks »

5. Algorithmes

Solution rudimentaire:

Paralléliser les calculs de la matrice à l’aide de GPU.

Solution exhaustif :« The convolutional DBN (CDBN) »

Page 50: « Convolutional Deep Belief Networks »

5. Algorithmes

« The convolutional DBN (CDBN) »

- les poids sont partagés entre tous les lieux dans une image. Ce modèle s'adapte parfaitement parce qu’une inférence peut être faite efficacement en utilisant la convolution.

Page 51: « Convolutional Deep Belief Networks »

5. Algorithmes

1. On introduit la RBM convolution« the convolutional RBM »(CRBM).

Le CRBM est similaire à la RBM, mais les poids entre les couches cachées et visibles sont partagés entre tous les lieux dans une image.

Page 52: « Convolutional Deep Belief Networks »

5. Algorithmes

Fig.13 Couches de CRBM. “Unsupervised Learning of Hierarchical Representations with Convolutional Deep Belief Networks” By Honglak Lee, Roger Grosse, Rajesh Ranganath, and Andrew Y. Ng. pag.3

Page 53: « Convolutional Deep Belief Networks »

5. Algorithmes

La couche d'entrée est constitué d'un tableau NV × NV d'unités binaires. La couche cachée constituée de groupes K, où chaque groupe est un groupe de Nh × Nh d'unités binaires, ce qui entraîne (NH2)*K unités cachées.Chacun des K groupes est associé à un filtre Nw × Nw

(NW Δ = NV - NH + 1), où les poids de filtre sont partagés entre toutes les unités cachées au sein du groupe.

Page 54: « Convolutional Deep Belief Networks »

5. Algorithmes

En outre, chaque groupe caché a un biais bk et toutes les unités visibles partager un seul biais c.

(8,9)

en utilisant les conditions de distribution (8,9), nous pouvons perfectionner l’algorithme Gibbs Sampling

Page 55: « Convolutional Deep Belief Networks »

5. Algorithmes

2. «  Probabilistic max-pooling »- architecture multicouche analogue à

DBN qui classe les CRBMs pour entraîner les représentations de haut niveau.

Page 56: « Convolutional Deep Belief Networks »

5. Algorithmes

La représentation de la translation-invariant (par exemple, les réseaux de convolution) implique souvent deux types de couches alternées:

Les couches « Detection », où les réponses sont calculées par la convolution d’un détecteur de caractéristiques de la couche précédente,

Page 57: « Convolutional Deep Belief Networks »

5. Algorithmes

La représentation de la translation-invariant (par exemple, les réseaux de convolution) implique souvent deux types de couches alternées:

Et les couches « Pooling », qui rétrécissent la représentation des couches de détection par un facteur constant.

Page 58: « Convolutional Deep Belief Networks »

5. Algorithmes

Fig.14 Représentation simplifiée du Max-Pooling et sa probabilité

Page 59: « Convolutional Deep Belief Networks »

5. Algorithmes

3. « Convolutional Deep Belief Network (CDBN)»

Fig.15 Structure simplifiée du CDBN

Page 60: « Convolutional Deep Belief Networks »

5. Algorithmes

Analogue à DBN, cette architecture se compose de plusieurs

Max-pooling-CRBMs empilés les uns sur les autres.

Page 61: « Convolutional Deep Belief Networks »

5. Algorithmes

Le réseau définit une fonction d'énergie en additionnant les fonctions d'énergie pour toutes les paires de couches individuelles. L’apprentissage est réalisé avec la même procédure:

une fois la couche donnée formée, ses poids sont gelés, et ses activations sont utilisées comme entrée pour la couche suivante.

Page 62: « Convolutional Deep Belief Networks »

62

Plan

1.Introduction2.Boltzmann Machine3.«Restricted Boltzmann

Machines»4.« Deep belief networks »5.Algorithmes6.Résultats expérimentaux7.Conclusion8.Références

Page 63: « Convolutional Deep Belief Networks »

6. Résultats expérimentaux

Obtenir les résultats dans un réseau à trois couches (200 × 200 images d'entrée):

- avec partage des poids, mais sans max-pool, est environ 10 fois plus lent.

- sans partage des poids est plus de 100 fois plus lent.

Page 64: « Convolutional Deep Belief Networks »

6. Résultats expérimentaux

Fig.16 Les premières bases de la couche (en haut) et les deuxièmes bases de couche (en bas) tirées des images naturelles. Chaque seconde couche de base (filtre) a été visualisée sous la forme d'une combinaison linéaire pondérée des premières bases de la couche.

Page 65: « Convolutional Deep Belief Networks »

6. Résultats expérimentaux

Tab.1 Précision de la classification de test pour les données Caltech-101.

Page 66: « Convolutional Deep Belief Networks »

6. Résultats expérimentaux

Fig.17 Colonnes 1-4: les bases de la deuxième couche (en haut) et les troisièmes bases de couche (en bas) apprises de catégories d'objets spécifiques. Colonne 5: les bases de la deuxième couche (en haut) et les troisièmes bases de couche (en bas) apprises d'un mélange de quatre catégories d'objets (visages, voitures, avions, motos).

Page 67: « Convolutional Deep Belief Networks »

6. Résultats expérimentaux

-image d'entrée

-reconstruction à partir des

deuxièmes unités de couches

- reconstruction à partir des deuxièmes unités de couches après 20 itérations

de Gibbs Sampling

Fig.18 Inférence probabiliste hiérarchique

Page 68: « Convolutional Deep Belief Networks »

68

Plan

1.Introduction2.Boltzmann Machine3.«Restricted Boltzmann

Machines»4.« Deep belief networks »5.Algorithmes6.Résultats expérimentaux7.Conclusion8.Références

Page 69: « Convolutional Deep Belief Networks »

7. Conclusion

Les auteurs ont présenté le CDBN, un modèle génératif évolutif pour l'apprentissage des représentations hiérarchiques à partir d'images non marquées, et ont montré que leur modèle fonctionne bien dans une variété de tâches de reconnaissance visuelle.

Page 70: « Convolutional Deep Belief Networks »

70

Plan

1.Introduction2.Boltzmann Machine3.«Restricted Boltzmann

Machines»4.« Deep belief networks »5.Algorithmes6.Résultats expérimentaux7.Conclusion8.Références

Page 71: « Convolutional Deep Belief Networks »

8. Références[1] «Unsupervised Learning of Hierarchical Representations

with Convolutional Deep Belief»; 2009Honglak Lee, Roger Grosse, Rajesh Ranganath, and Andrew Y. Ng;“Communication of the ACM”,octombre 2011|Vol.54|NO.10URL: https://people.csail.mit.edu/rgrosse/cacm2011-cdbn.pdf

[2] «Deep Boltzmann Machines»; 2009Ruslan Salakhutdinov, Geoffrey HintonURL: https://www.cs.toronto.edu/~hinton/absps/dbm.pdf

[3] «Neural Networks and Deep Learning» 2014Michael A. NielsenURL: http://neuralnetworksanddeeplearning.com/chap1.html

[4] Nando de FreitasURL: http://www.cs.ubc.ca/~nando/

Page 72: « Convolutional Deep Belief Networks »

72

Merci pour votre attention!!!

Montréal 2014