apprentissage et fouille de données visuellesviennet/ens/afdv/03-cours-deep.pdf · introduction...

Post on 22-May-2020

9 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Apprentissage et Fouille de Données Visuelles

E. Viennet

L2TIUniversité Paris 13

2018-2019

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 1 / 44

Plan du cours1 Introduction2 Bases de l’apprentissage (machine learning)

Apprentissage superviséApprentissage non-superviséApprentissage et généralisationRésumé du cours 1

3 Introduction au Deep LearningQuelques applications au traitement d’images ou de vidéosPrincipe généralHistoire du connexionnismePerceptrons multi-couchesApprentissage par descente du gradientArchitecture d’un réseau multicouche (MLP)Apprentissage d’un réseauOutils logicielsOutils de calculImplémentation en PyTorchE. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 2 / 44

Introduction

Plan1 Introduction2 Bases de l’apprentissage (machine learning)

Apprentissage superviséApprentissage non-superviséApprentissage et généralisationRésumé du cours 1

3 Introduction au Deep LearningQuelques applications au traitement d’images ou de vidéosPrincipe généralHistoire du connexionnismePerceptrons multi-couchesApprentissage par descente du gradientArchitecture d’un réseau multicouche (MLP)Apprentissage d’un réseauOutils logicielsOutils de calculImplémentation en PyTorchE. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 3 / 44

Bases de l’apprentissage (machine learning)

Plan1 Introduction2 Bases de l’apprentissage (machine learning)

Apprentissage superviséApprentissage non-superviséApprentissage et généralisationRésumé du cours 1

3 Introduction au Deep LearningQuelques applications au traitement d’images ou de vidéosPrincipe généralHistoire du connexionnismePerceptrons multi-couchesApprentissage par descente du gradientArchitecture d’un réseau multicouche (MLP)Apprentissage d’un réseauOutils logicielsOutils de calculImplémentation en PyTorchE. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 4 / 44

Bases de l’apprentissage (machine learning) Résumé du cours 1

Résumé du cours 1

Nous avons introduit :apprentissage à partir de données : concept et applications ;outils (Python) pour les sciences des données et le machinelearning ;Principaux modèles pour l’apprentissage supervisé etnon-supervisé.

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 5 / 44

Introduction au Deep Learning

Plan1 Introduction2 Bases de l’apprentissage (machine learning)

Apprentissage superviséApprentissage non-superviséApprentissage et généralisationRésumé du cours 1

3 Introduction au Deep LearningQuelques applications au traitement d’images ou de vidéosPrincipe généralHistoire du connexionnismePerceptrons multi-couchesApprentissage par descente du gradientArchitecture d’un réseau multicouche (MLP)Apprentissage d’un réseauOutils logicielsOutils de calculImplémentation en PyTorchE. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 6 / 44

Introduction au Deep Learning Apprentissage par descente du gradient

Résumé du cours 2

applications du Deep Learning aux images et vidéosprincipes : approximation de fonctions, apprentissagehistoriqueperceptrons multicouches (MLP)apprentissage par descente du gradient

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 7 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Couches complètement connectées

Chaque cellule est connectée à toutes les cellules de la coucheprécédente. La couche réalise un produit de matrice.

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 8 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Couche à convolution

Exemple en une dimension :

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 9 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Couche à convolution (2d)

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 10 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Filtres appris

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 11 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple : convolution 2D sur 3 canaux

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 12 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 13 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 14 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 15 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 16 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 17 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 18 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 19 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 20 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 21 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 22 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 23 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 24 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 25 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 26 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 27 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 28 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 29 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 30 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 31 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 32 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 33 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Couches de pooling

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 34 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Couche ReLU (rappel)

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 35 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Architecture multicouche

alternance de convolutions et de pooling

Biais

Couche 1: filtrage

Couche 2: sous-echantillonnage

Couche 3: filtrage

Couche 4: sous-echantillonnage

Couche 5: classification

Pixels de l’image

Sortie: classes

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 36 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

LeNet (1990)

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 37 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

AlexNet (2012)

Reconnaissance d’images, ImageNet classification with deep convolutionalneural networks, Alex Krizhevsky, Ilya Sutskever, Geoffrey E. Hinton, 2012

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 38 / 44

Source: figure : Han et al. 2017

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Exemple : GoogleLeNet

Reconnaissance d’images, Going Deeper with Convolutions, C. Szegedy atal., 2014

22 couches.

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 39 / 44

Introduction au Deep Learning Architecture d’un réseau multicouche (MLP)

Neural Network Zoo

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 40 / 44

Source: van Veen, 2016

Introduction au Deep Learning Apprentissage d’un réseau

Techniques d’apprentissage

Descente stochastique du gradient (SGD)Stochastique vs mini-batch vs batch?momentumbatch normalizationCritère d’arrêt, early stopping

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 41 / 44

Introduction au Deep Learning Outils logiciels

Outils logiciels

Tensor Flow (Google)KerasPyTorch (Facebook research)Caffe (2013)Theano (U. Montreal, 2007)

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 42 / 44

Introduction au Deep Learning Outils de calcul

GPU

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 43 / 44

Source: Wikipedia

Introduction au Deep Learning Implémentation en PyTorch

Création d’un réseau en PyTorch (rappel)

N1 = 2N2 = 2c lass Net ( nn . Module ) :

def _ _ i n i t _ _ ( s e l f ) :super ( Net , s e l f ) . _ _ i n i t _ _ ( )s e l f . fc1 = nn . L inear (2 , N1)s e l f . fc2 = nn . L inear (N1, N2)s e l f . fc3 = nn . L inear (N2, NbClass )

def forward ( s e l f , x ) :x = F . r e l u ( s e l f . fc1 ( x ) )x = F . r e l u ( s e l f . fc2 ( x ) )x = s e l f . fc3 ( x )r e t u r n x

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 44 / 44

Introduction au Deep Learning Implémentation en PyTorch

Exemple complet en PyTorch

Voir le notebook exemple_nn_classif_lenet_MNIST.ipynb

E. Viennet (Université Paris 13) Apprentissage et Fouille de Données Visuelles 2018-2019 45 / 44

top related