cnx cours2014 1 7 - sorbonne-universite.fr › sdi › isi › fr › img_auth.php › 5 › 54 ›...
TRANSCRIPT
-
Deep-learning
VI
B. Gas - V 0.1 (2014) UE 5AI02/5AK03 - ISIR/UPMC
-
Deep-network
« Deep-networks » MLP - N couches Réseaux diabolo
Diabolos codeurs Deep-MLP supervisé
Deep-MLP Diabolo
Importance du codage pour la classification: certains codages sont plus adaptés que d’autres pour une classification donnée. Les données complexes peuvent être décomposées en une somme de données moins complexe. Deep-Learning: architecture composée de multiples transformations non linéaires. Deep-learning: années 2000 (Hinton)
Deep-MLP non supervisé
-
Deep-network
Réseaux de neurones: - Approximateur universel - La couche cachée apprend des caractéristiques - Données complexes -> couche cachée complexe - Données complexes -> long temps d’apprentissage - Réseau complexe -> nécessite un grand nombre de
données d’apprentissage -> Ajouter des couches cachées.
« Deep-networks » MLP - N couches Réseaux diabolo
Diabolos codeurs Deep-MLP supervisé
Deep-MLP Diabolo
Deep-MLP non supervisé
-
Avantage
Avantage à utiliser un réseau de neurone de type « deep-network » « Deep-networks » MLP - N couches Réseaux diabolo
Diabolos codeurs Deep-MLP supervisé
Deep-MLP Diabolo
Deep-MLP non supervisé
-
Inconvénients
Les inconvénients de l’apprentissage traditionnel
Rappel:
- Initialisation aléatoire des poids - Rétropropagation de l’erreur sur toutes les couches
- Il est difficile de constituer d’importantes bases de d’apprentissage labélisées ( -> sur-apprentissage, mauvaise généralisation)
- La complexité des architectures de type deep-networks conduit à l‘augmentation des minima locaux
- L’ajout de couches cachées conduit à une diminution des amplitudes des
dérivées du gradient sur les premières couches, ce problème de
« diffusion des gradients » conduit à un déséquilibre de la vitesse
d’apprentissage entre les premières couches et les dernières couches
- Un effet collatéral de la « diffusion des gradients » est l’apprentissage des dernières couches sur des caractéristiques mal extraites par les
premières couches.
« Deep-networks » MLP - N couches Réseaux diabolo
Diabolos codeurs Deep-MLP supervisé
Deep-MLP Diabolo
Deep-MLP non supervisé
-
Réseaux diabolo
Les réseaux de neurone « diabolo » permettent de faire de la compression
ou de la classification par « modélisation ».
projection
reconstruction
Image Image estimée
« Deep-networks » MLP - N couches Réseaux diabolo
Diabolos codeurs Deep-MLP supervisé
Deep-MLP Diabolo
Deep-MLP non supervisé
-
Réseaux diabolo
Les réseaux de neurone « diabolo » permettent de faire de la compression
ou de la classification par « modélisation ».
Apprentissage par rétropropagation :
apprentissage
Image Erreur
« Deep-networks » MLP - N couches Réseaux diabolo
Diabolos codeurs Deep-MLP supervisé
Deep-MLP Diabolo
Deep-MLP non supervisé
-
Diabolos en classification
D4
D3
D2
D1
e2
e1
e3
e4
Forme à classer
Formes prédites Erreurs de prédiction
classe
« Deep-networks » MLP - N couches Réseaux diabolo
Diabolos codeurs Deep-MLP supervisé
Deep-MLP Diabolo
Deep-MLP non supervisé
-
Diabolos sur la base NIST
« Deep-networks » MLP - N couches Réseaux diabolo
Diabolos codeurs Deep-MLP supervisé
Deep-MLP Diabolo
Deep-MLP non supervisé
-
projection
Représentation « compacte » de l’image
Image Image estimée
Diabolos codeurs
« Deep-networks » MLP - N couches Réseaux diabolo
Diabolos codeurs Deep-MLP supervisé
Deep-MLP Diabolo
Deep-MLP non supervisé
-
Sursoir au problème de la diffusion des gradients: apprendre les couches
séparément les unes après les autres (greedy layer-wise training):
- Apprendre un MLP à une couche cachée - Puis apprendre un MLP à deux couches cachées - Etc. jusqu’à obtention de la structure finale…
Deep-MLP supervisé
« Deep-networks » MLP - N couches Réseaux diabolo
Diabolos codeurs Deep-MLP supervisé
Deep-MLP Diabolo
Deep-MLP non supervisé
-
Sursoir au problème de la diffusion des gradients: apprendre les couches
séparément les unes après les autres:
- A chaque étape une couche cachée est ajoutée - Les poids précédents sont les poids initiaux des étapes suivantes - Plus d’initialisation aléatoire globale
- Couches stabilisées au fur et à mesure par exploitation de la diffusion des gradients
- Le dernier ajout correspond à la structure finale
Deep-MLP supervisé
« Deep-networks » MLP - N couches Réseaux diabolo
Diabolos codeurs Deep-MLP supervisé
Deep-MLP Diabolo
Deep-MLP non supervisé
-
Avantage:
- Initialisation des poids non aléatoire -> l’apprentissage du réseau final démarre sur une meilleure configuration initiale des poids.
- Reste le problème du manque d’exemples de la base de données relativement à la complexité du problème
- Une base non étiquetée est plus facile à constituer qu’une base étiquetée -> apprentissage non supervisé.
2 étapes:
- Apprentissage non supervisé des couches cachées les unes après les autres (pile d’auto-encodeurs)
- Apprentissage supervisé de la structure finale
Deep-MLP non-supervisé
« Deep-networks » MLP - N couches Réseaux diabolo
Diabolos codeurs Deep-MLP supervisé
Deep-MLP Diabolo
Deep-MLP non supervisé
-
Apprentissage de la première couche cachée (diabolo non supervisé):
x1
x2
x3
xn
x̂1
x̂2
x̂3
x̂n
h(1)1
h(1)2
h(1)m1
Deep-MLP Diabolo
« Deep-networks » MLP - N couches Réseaux diabolo
Diabolos codeurs Deep-MLP supervisé
Deep-MLP Diabolo
Deep-MLP non supervisé
-
Apprentissage de la deuxième couche cachée (diabolo non supervisé):
h(1)1
h(1)2
h(1)m1
ĥ(1)1
ĥ(1)2
ĥ(1)m1
h(2)1
h(2)2
h(2)m2
Deep-MLP Diabolo
« Deep-networks » MLP - N couches Réseaux diabolo
Diabolos codeurs Deep-MLP supervisé
Deep-MLP Diabolo
Deep-MLP non supervisé
-
Apprentissage de la troisième couche cachée (diabolo non supervisé):
h(2)m2
h(2)2
h(2)1 h(3)1
h(3)2
h(3)m3 ĥ(2)m2
ĥ(2)2
ĥ(2)1
Deep-MLP Diabolo
« Deep-networks » MLP - N couches Réseaux diabolo
Diabolos codeurs Deep-MLP supervisé
Deep-MLP Diabolo
Deep-MLP non supervisé
-
x1
x2
x3
xn
x̂1
x̂2
x̂3
x̂n
h(1)1
h(1)2
h(1)m1
h(2)1
h(2)2
h(2)m2
h(3)1
h(3)2
h(3)m3
Apprentissage de la structure finale (MLP supervisé):
Deep-MLP Diabolo
-
Avantages de la solution :
- Structuration hiérarchisée du réseau: les couches apprennent les caractéristiques de 1er ordre, puis deuxième ordre, etc.
- Ensemble d’apprentissage potentiellement volumineux -> meilleure généralisation
- Meilleure optimisation (minimum optimal): la descente de gradient a plus de chances de converger vers un minimum local intéressant du fait de
l’apport d’informations « a priori » important par le processus non
supervisé.
- La dernière étape d’apprentissage est rapide et n’opère qu’un
ajustement fin des poids pour obtenir la classification finale
Deep-MLP Diabolo
« Deep-networks » MLP - N couches Réseaux diabolo
Diabolos codeurs Deep-MLP supervisé
Deep-MLP Diabolo
Deep-MLP non supervisé