Cours Hiver 2018 Séance 1: Marco Pedersoli Introduction au … · Communication Diapositives +...

Preview:

Citation preview

Marco Pedersoli Cours 1 -

Apprentissage MachineSéance 1:

Introduction au cours ETS

dep. de génie de la production automatiséMarco Pedersoli

Cours Hiver 20181

Marco Pedersoli Cours 1 - 2

Organisation du cours:● Présentation du prof● Plan de cours● Project

Introduction à l’apprentissage machine● Contexte historique● Applications de l’apprentissage machine

Plan de la séance:

Marco Pedersoli Cours 1 -

Biographie: Marco Pedersoli●

●●●

3

Marco Pedersoli Cours 1 -

Axes de recherche● PhD, Autonomous University of

Barcelona & Computer Vision CenterEfficient Object Detection with Deformable Models

● Post-Doc, KU Leuven with Tinne Tuytelaars & Luc Van GoolDetection, Deformation, Deep Learning

● Post-Doc, INRIA-Grenoble with Jakob Verbeek & Cordelia SchmidRecurrent Nets and Attention Models

Efficient Learning

Efficient Data Data

Exploration

4

Marco Pedersoli Cours 1 -

Apprentissage Efficace● DeepProposal: Hunting Objects by Cascading

Deep Convolutional Layers, A. Ghodrati, A. Diba, M. Pedersoli, T. Tuytelaars, L. Van Gool, in ICCV 2015.

● A scalable 3D HOG model for fast object detection and viewpoint estimation, M. Pedersoli, T. Tuytelaars, in 3DV 2014.

● Toward Real-Time Pedestrian Detection Based on a Deformable Template Model, M. Pedersoli, J. Gonzàlez, X. Hu, X. Roca, in IEEE IITS 2013.

● Hierarchical Multiresolution Models for fast Object Detection, M. Pedersoli, Phd Thesis 2012.

● A Coarse-to-fine approach for fast deformable object detection, M. Pedersoli, A. Vedaldi, J. Gonzàlez, in CVPR 2011.

● Recursive Coarse-to-Fine Localization for fast Object Detection, M. Pedersoli, J. Gonzàlez, A. D. Bagdanov, J. J. Villanueva, in ECCV 2010.

5

Marco Pedersoli Cours 1 -

Utilisation efficace des données● Learning where to position parts in 3D, M. Pedersoli, T,

Tuytelaars, in ICCV 2015.● Weakly Supervised Object Detection with Convex

Clustering, H. Bilen, M. Pedersoli, T. Tuytelaars, in CVPR 2015.

● Is 2D information enough for viewpoint estimation?, A. Ghodrati, M. Pedersoli, T. Tuytelaars, in BMVC 2014.

● Weakly Supervised Object Detection with Posterior Regularization, H. Bilen, M. Pedersoli, T. Tuytelaars, in BMVC 2014.

● Using a deformation field model for localizing faces and facial points under weak supervision, M. Pedersoli, R. Timofte, T. Tuytelaars, L. Van Gool in CVPR 2014.

● An Elastic Deformation Field Model for Object Detection and Tracking, M. Pedersoli, R. Timofte, T. Tuytelaars, L. Van Gool, IJCV 2014.

● Object Classification with Adaptable Regions, H. Bilen, M. Pedersoli, V. Namboodiri, T. Tuytelaars, L. Van Gool, in CVPR 2014.

Deformable part model

Deformation field model

6

Marco Pedersoli Cours 1 -

Exploration des données● Combining where and what in change detection for

unsupervised foreground learning in surveillance, I. Huerta, M. Pedersoli, J. Gonzàlez, A. Sanfeliu, in Pattern Recognition 2015.

● Areas of attention for Image captioning, M. Pedersoli, T. Lucas, J. Verbeek, C. Schmid, ICCV 2017.

Marco Pedersoli Cours 1 -

Membres et expertises− Ben Ayed, Ismail: Computer Vision, Machine Learning, Pattern Recognition, Combinatorial

Optimization, Convex Optimization, Medical Image Analysis, Information Theory− Desrosiers, Christian: Data Mining; Medical Imaging; Collaborative Recommendation Systems;

Network Analysis; Business Intelligence; Combinatorial Optimization− Granger, Eric: Adaptive Pattern Recognition; Multi-Classifier Systems; Computational

Intelligence; Face Recognition; Video Surveillance; Biometrics− Koerich, Alessandro: Fine-Grained Classification; Computer Vision; Biometrics; Machine

Learning; Musical Information Retrieval.− Sabourin, Robert: Document et Signature Analysis; Pattern Recognition and Learning;

Information Fusion; Evolutionary Algorithms; Intelligent Bio-Watermarking − Toews, Matthew: Medical Image Analysis; Computer Vision; Machine Learning− Wong, Tony: Distributed Processing; Multi-Objective Evolutionary Optimization

11

Marco Pedersoli Cours 1 -

Exemples de projets

Gestion de écosystèmes

Analyse des récifs coralliens

Traitement automatique des chèques bancaires (vérification de signature)

Biomarqueur rapide des documents numérisés

Analyse multi-spectrale pour la télédétection des catastrophes naturelles

Analyse d’images medicales Détection de visagesin the “wild”

12

Marco Pedersoli Cours 1 -

– PUCPR, UFPR, UFAM, UFT – Brésil– Télécom ParisTech, Eurecom et CNES – France– Center for Machine Vision Research – Finland – University of Stellenbosch – South Africa– Laboratoire de systèmes complexes – U de Montréal– CENPARMI – Concordia U– GREMM - Recherche sur les mammifères marins– Agriculture and Agri-Food Canada and Parcs Canada– Defence R&D Canada – Valcartier and Ottawa– Canada Border Services Agency– Genetec Inc., VIASAT GeoTechnologies Inc.– BancTec Inc., NVS Learning Inc. Face4 Systems Inc.

Partenaires académiques et industrielsPartenaires académiques et industriels

13

Marco Pedersoli Cours 1 -14

Organisation du cours:● Présentation du prof● Plan de cours● Project

Introduction à l’apprentissage machine● Contexte historique● Applications de l’apprentissage machine

Plan de la séance:

Marco Pedersoli Cours 1 -

Prérequis● Algèbre linéaire + Calcul

○ Vecteurs et matrices et leurs dérivés

● Probabilités et statistiques● Programmation

○ Python, Matlab○ Programmation vectorielle: Matlab or Numpy○ Biblothèques: Pytorch, Tensorflow, Keras, etc..

15

Marco Pedersoli Cours 1 -

Communication● Diapositives + Articles + Travaux:

○ Moodle: https://ena.etsmtl.ca/

● Questions:○ marco.pedersoli@etsmtl.ca

16

Marco Pedersoli Cours 1 -

Organisation du cours● Cours:

○ 13 séances de 3 heures chacune○ pas d’examens○ pas de laboratoire○ projet:

■ présentations orales■ remises

17

Marco Pedersoli Cours 1 -

Organisation du Cours● S1: Introduction● S2: Méthodes

d’apprentissage● S3: Réseaux de neurones● S4: Propositions de projet● S5: Entraînement I● S6: Entraînement II● S7: Réseaux convolutifs

18

● S8: Réseaux récurrents● S9: Détection et segmentation● S10: Réduction de la

complexité● S11: Modélisation générative● S12: App. par renforcement● S13: Présentation des projets● (S14: Présentation des projets)

Marco Pedersoli Cours 1 -

Organisation du Cours● S2: Méthodes d’apprentissage

○ L’apprentissage machine○ Types d’apprentissage○ Types de supervision○ Composants de l’apprentissage○ Fonction de coût et Optimisation○ Validation et Test○ Mesures de performance

19

Entraînement

Validation

Sélection du Modèle

Evaluation

Paramètres

Paramètres et hyper-paramètres

Marco Pedersoli Cours 1 -

Organisation du Cours● S3: Réseaux de neurones

○ Architecture d’un neuron ○ Réseaux multicouches○ Rétropropagation

20

Marco Pedersoli Cours 1 -

Organisation du Cours● S4: Propositions de projet

○ Développement, amélioration ou évaluation d’une ou plusieures méthodes d’apprentissage machine

○ Projet ouvert: à vous de proposer● soit sur votre sujet de recherche ● soit sur un autre sujet

21

?

Marco Pedersoli Cours 1 -

Organisation du Cours● S5: Entraînement I

○ Gradient et autres méthodes○ Coefficient d’apprentissage○ Gradient Stochastique○ Momentum○ Algorithmes plus sophistiqués

22

Marco Pedersoli Cours 1 -

Organisation du Cours● S6: Entraînement II

○ Typologies de réseaux○ Régularisation○ Normalisation du lot○ Augmentation des données

23

Marco Pedersoli Cours 1 -

Organisation du Cours● S7: Réseaux Convolutifs

○ Motivation○ Convolution○ Pooling○ Architectures

24

Marco Pedersoli Cours 1 -

Organisation du Cours● S8: Réseaux Récurrents

○ Motivation○ Réseau récurrent basique○ Problème de disparition du gradient○ LSTM et autres

25

Marco Pedersoli Cours 1 -

Organisation du Cours● S9: Détection et Segmentation

○ La famille R-CNN■ slow R-CNN■ fast R-CNN■ faster R-CNN

○ Modèles de segmentation d’images

26

Marco Pedersoli Cours 1 -

Organisation du Cours● S10: Réduction de la complexité

○ Quantification○ Réduction de paramètres○ Régularisation (Sparseness inducing)

27

Marco Pedersoli Cours 1 -

Organisation du Cours● S11: Modélisation Générative

○ Auto-encodeurs○ Pixel RNN et CNN○ Réseaux adversaires génératifs

28

Marco Pedersoli Cours 1 -

Organisation du Cours● S12: Apprentissage par renforcement

○ Introduction○ Programmation dynamique○ Différence temporelle○ Exemples

29

Marco Pedersoli Cours 1 -

Organisation du Cours● S13: Présentation des projets

○ Motivation○ Bibliographie○ Méthode○ Expériences

30

?

Marco Pedersoli Cours 1 -

Organisation du cours● Bibliographie:

○ I. Goodfellow, Y. Bengio, A. Courville. Deep Learning, MIT Press, http://www.deeplearningbook.org.

○ M. Nielsen. Neural Networks and Deep Learning http://neuralnetworksanddeeplearning.com/index.html

○ C. M. Bishop. Pattern Recognition and Machine Learning, Springer.○ S. Haykin. (2009). Neural Networks and Learning Machines, 3 e éd.,

Pearson Education.○ R. S. Sutton, A. G. Barto. Reinforcement Learning: An Introduction

31

Marco Pedersoli Cours 1 -32

Organisation du cours:● Présentation du prof● Plan de cours● Project

Introduction à l’apprentissage machine● Contexte historique● Applications de l’apprentissage machine

Plan de la séance:

Marco Pedersoli Cours 1 -

Organisation du cours● Projet:

○ Développement, amélioration ou évaluation d’une ou plusieures méthodes d’apprentissage machine

○ Projet ouvert: à vous de proposer■ soit sur votre sujet de recherche ■ soit sur un autre sujet

33

Marco Pedersoli Cours 1 -

Organisation du cours● Exemple du projet:

○ Étude et évaluation des méthodes pour améliorer la performance des réseaux convolutifs (CNN)■ Motivation: CNN constituent l'état de l’art dans la reconnaissance

visuelle!■ Focus: performance de classification, pas coût computationnel■ Bibliographie: ResNet, DenseNet, CNN déformables, etc.■ Analyse: avantages et inconvénients de chaque méthode■ Expériences: base de données: CIFAR10, mesure de performance,

résultats, comparaison avec l’état de l’art, discussion

34

Marco Pedersoli Cours 1 -

Organisation du cours● Évaluation du projet:

○ Présentation (~3 mins): Proposition du projet (S4) [10%]○ À remettre (~3 pages): Proposition du projet (S5) [15%] ○ À remettre(~7 pages): Synthèse de la littérature (S8)

[30%]○ Présentation (~7 mins): Projet complet (S13) [15%]○ À remettre (~10 pages): Étude expérimentale (S14) [30%]

35

Marco Pedersoli Cours 1 -36

Organisation du cours:● Présentation du prof● Plan de cours● Project

Introduction à l’apprentissage machine● Contexte historique● Applications de l’apprentissage machine

Plan de la séance:

Marco Pedersoli Cours 1 -

Contexte historique● ~1950: Début de l’intelligence artificielle

○ Perceptron de McCulloch et Pitts○ Apprentissage de Rosenblatt○ Théorie du calcul de Turing○ Théorie de l’information de Shannon○ Minsky et le problème de l’XOR○ Jeu de dames artificiel de Samuel

37

Marco Pedersoli Cours 1 -

Contexte historique:Neurone Artificiel: Perceptron

38

Marco Pedersoli Cours 1 -

Contexte historique:● Apprentissage du Perceptron

○ Initialisation des poids au hasard○ Pour chaque échantillon:

■ Estimer la sortie y:● Si y n’est pas correcte:

○ Changer le poids pourcorriger l’erreur

○ Répéter jusqu’à plus d’erreurs

39

Marco Pedersoli Cours 1 -

Contexte historique:● Minsky et le problème du XOR

○ Perceptron ne peut pas résoudre un XOR!

40

C2

C1

x2

x1

Marco Pedersoli Cours 1 -

Contexte Historique:● Réseau de Neurones Multicouche (MPL)

○ Plusieurs neurones■ chaque neurone représente une fonction différente

○ Plusieurs couches■ les sorties d’une couche sont les entrées de la suivante

41

Marco Pedersoli Cours 1 -

Contexte historique:● ~1970: 1er Hiver de l’intelligence artificielle

○ Pessimisme de Minsky■ Si on ne peut pas résoudre l’XOR avec le perceptron, comment

peut-on penser à résoudre des problèmes plus complexes?■ Réseau multicouches peuvent résoudre l’XOR, mais on ne sait pas

comment faire l’apprentissage!

○ Promesses trop optimistes, non tenues■ Ex: Newell et Simon: un ordinateur vaincra aux échecs avant 70s

○ Coupure des investissements en IA○ Par contre: Rétro-propagation!!!

42

Marco Pedersoli Cours 1 -

Contexte historique:● Rétro-propagation:

○ Algorithme pour l’apprentissage d’un réseau multicouche (utilisé avec tous genres de fonctions)+ Efficace: O(N), N nombre d’exemples+ Générique: basé sur le descente du gradient, on l’utilise encore aujourd’hui avec tout type de réseau- Local: pas de garantie que la solution trouvée soit optimale

43

Marco Pedersoli Cours 1 -

Contexte historique:● ~1990: Retour de l’intelligence artificielle

○ Réseau Récurrent par Hochreiter et Schmidhuber■ Représentation de séquences■ LSTM (long-short term memory)

○ Deep Blue bat Kasparov aux échecs○ Reconnaissance automatique de caractères par

LeCun et Button■ basée sur un réseau de neurones convolutif

44

Marco Pedersoli Cours 1 -

Contexte historique:● ~2000: 2e Hiver de l’intelligence artificielle

○ Pas de justification théorique des propriétés des réseaux de neurones

○ SVM séparateurs à vaste marge et méthodes à noyaux ■ performance comparable mais plus simples■ moins de hyper-paramètres à ajuster■ démonstration de généralisation

45

Marco Pedersoli Cours 1 -

Contexte Historique:● ~2010: Début de l’apprentissage profond

○ 2006: Méthodes pour exploiter les réseaux de plus de 2-3 couches■ Deep Bolzman Machines de Hinton■ Pré-entraînement non supervisé■ Apprentissage par couche

○ 2012: Apprentissage profond

46

Marco Pedersoli Cours 1 -

Contexte historique:● Pré-entraînement non supervisé

○ Réseau Multicouche entraîné par Rétro-propagation convergeant à un minimum local.

○ Initialisation des poids avec des Auto-encodeurs pour la reconstruction des données

○ Entraînement par couche

47

Marco Pedersoli Cours 1 -

Contexte historique:Entraînement des Auto-encodeurs par couche

48Source: www.frontiersin.org

Marco Pedersoli Cours 1 -

Contexte historique:● Apprentissage profond:

○ Réseau convolutif amélioré■ ReLu, Augmentation des données, Dropout

○ Capacité de calcul■ GPUs

○ Base de données■ ImageNet

49

Marco Pedersoli Cours 1 -

Contexte historique:● ImageNet:

○ Images pour chaque catégorie de WordNet

○ 100k de classes○ 16M d’images

● ImageNet Challenge:○ 1,000 Catégories○ 1,000,000 d’images

50Source: qz.com

performance humaine

Marco Pedersoli Cours 1 -

Contexte historique:AlexNet

51Source: sqlml.azurewebsites.net

Marco Pedersoli Cours 1 -

Contexte historique:AlexNet

52Source: www.sushiscience.worldpresse.com

Marco Pedersoli Cours 1 -

Contexte Historique:● Aujourd’hui: Apprentissage profond partout

○ Reconnaître des objets ou des actions en images (Vision Artificielle)

○ Comprendre la langue parlée et générer du texte en langage naturel (Analyse du discours et Traitement du Langage Naturel)

○ Gérer des agents ou des robots dans un environnement inconnu (Robotique)

53

Marco Pedersoli Cours 1 -54

Organisation du cours:● Présentation du prof● Plan de cours● Project

Introduction à l’apprentissage machine● Contexte historique● Applications de l’apprentissage machine

Plan de la séance:

Marco Pedersoli Cours 1 -

Vision Artificielle● Détection d’objets en images et vidéos● Segmentation d’objets● Estimation de la pose/ du point de vue● Reconstruction 3D● Informatique affective● Description d’images

55

Marco Pedersoli Cours 1 -

Vision Artificielle

56Source: NVIDIA

Marco Pedersoli Cours 1 -

Vision Artificielle

57

Marco Pedersoli Cours 1 -

VisionArtificielle

58

Détection d’objets en temps réel

Marco Pedersoli Cours 1 -

VisionArtificielle

59

Estimation de la pose humaine en temps réel

Marco Pedersoli Cours 1 -

VisionArtificielle

60

Description automatique d’images et de vidéos

Marco Pedersoli Cours 1 -

Vision Artificielle:

61

Marco Pedersoli Cours 1 -

Vision Artificielle: défis● Très haute dimensionnalité

○ couleur^pixels, ex. 256^(256x256)

● Variabilité de conditions:○ Éclairage, perspective

● Visibilité Partielle:○ du monde 3D à image 2D, occlusions

● Classification Sémantique○ Objets similaires mais dans des classes différentes

62

Marco Pedersoli Cours 1 -

Traitement du Langage Naturel● Compréhension du langage humain● Traduction Automatique● Génération Automatique de documents● Aide aux usagers● Chatbots

63

Marco Pedersoli Cours 1 -

Traitement du Langage Naturel

64

Marco Pedersoli Cours 1 -

Traitement du Langage NaturelTraduction automatique

DeepL65

Marco Pedersoli Cours 1 -

Traitement du Langage NaturelChatbots et aide en ligne

66

Marco Pedersoli Cours 1 -

Traitement du Langage Naturel: Défis● Contexte:

○ Mon patron m’utilise / J’utilise un patron (couture)

● Dépendances/Références à long terme○ Une personne … elle m’a dit … je lui ai parlé

● Langage inventé par l’homme● Test de Turing

67

Marco Pedersoli Cours 1 -

Robotique● Localisation et Construction d’une carte

(SLAM)● Contrôle de véhicules autonomes● Vol de drones● Contrôle de robots humanoïdes

68

Marco Pedersoli Cours 1 -

RobotiqueLocalisation et Construction d’une carte (SLAM)

69

Marco Pedersoli Cours 1 -

RobotiqueContrôle de véhicules autonomes

70

Marco Pedersoli Cours 1 -

RobotiqueContrôle de robots humanoïdes

71

Marco Pedersoli Cours 1 -

Robotique: défis● Environnement non-contrôlé

○ facteurs non prédictibles○ pas d’exemples (simulations)

● Environnement partiellement observable○ on voit seulement une petite partie de l'état○ mémoire pour utiliser hypothèses markoviennes

● Prise de décision non différentiable!

72

Marco Pedersoli Cours 1 -

et Aussi...● Changer le style d’une image● Génération automatique d’images● Apprendre à jouer jeux vidéo● Apprendre à jouer à GO

73

Marco Pedersoli Cours 1 -

Deep Dreams

74

Marco Pedersoli Cours 1 -

Transference du style

75Source: genekogan.com

Marco Pedersoli Cours 1 -

Génération d’images● À partir

d’images réelles de célébrités

76

Marco Pedersoli Cours 1 -

Jouer à jeux vidéo

77

Marco Pedersoli Cours 1 -

Alpha GO!● Une

machine a Battu le champion du monde de GO!

78

Marco Pedersoli Cours 1 -

Prochain cours:● L’apprentissage machine● Types d’apprentissage● Types de supervision● Composants de l’apprentissage● Mesures de performance

79

Recommended