Apprentissage Machine: Techniques et...

79
Apprentissage Machine: Techniques et applications Ange Tato Universit´ e du Qu´ ebec ` a Montr´ eal dans le cardre du cours INF7470 Prof. Roger Nkambou 29 novembre 2018 Ange Tato (UQAM) Machine Learning 29 novembre 2018 1 / 71

Transcript of Apprentissage Machine: Techniques et...

Page 1: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage Machine: Techniques et applications

Ange Tato

Universite du Quebec a Montreal

dans le cardre du cours INF7470

Prof. Roger Nkambou

29 novembre 2018

Ange Tato (UQAM) Machine Learning 29 novembre 2018 1 / 71

Page 2: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Overview

1 Introdution au machine learning : Reseaux de neuronnes

2 Apprentissage profondCNNRNNLSTM, Attention mechanismDeep RBMDeep AutoEncoderDeep Reinforcement LearningTechniques d’optimisation : Residual networks, Regularization,Algorithmes d’optimization

3 Metriques d’evaluation : MAE, MSE, Matrice de confusion etc.

4 Application de l’apprentissage profond aux STI

Ange Tato (UQAM) Machine Learning 29 novembre 2018 2 / 71

Page 3: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Introduction au ML (Machine Learning)

Simuler le fonctionnement du cerveau

Apprentissage machine ou Machine Learning : est une tentative decomprendre et reproduire la faculte d’apprentissage humaine dans dessystemes artificiels.

Algorithmes capables, a partir d’un nombre important d’exemples (lesdonnees correspondant a �l’experience passee �), d’en assimiler lanature afin de pouvoir appliquer ce qu’ils ont ainsi appris aux casfuturs.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 3 / 71

Page 4: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Introduction au ML (Machine Learning)

2 methodes d’apprentissage machine

Apprentissage supervise : L’algorithme apprends sur des exemplesd’entrees qui sont etiquetes avec les sorties souhaitees. Exemple :arbres de decision, reseaux de neurones, methodes bayesienne, etc.

Apprentissage non supervise : l’algorithme decouvre desassociations, des correlations et des tendances sur des donnees nonetiquetees. Exemple : algorithmes de clustering (K-plus prochesvoisins, etc.), reseaux de neurones, etc.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 4 / 71

Page 5: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Introduction aux Reseaux de neuronnes

Reseau de neurones artificiel (RNA) : unites de calcul elementairesinterconnectees. Un modele de calcul inspire du cerveau humain. Casparticulier des RNA : Le perceptron = RNA monocouche.

Chaque entree est plus ou moins valorisee vis a vis du neurone par lebiais d’un poids.

La i-eme information qui parviendra au neurone sera donc en faitwi ∗ xi .Le neurone artificiel va effectuer une somme ponderee de ses entrees.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 5 / 71

Page 6: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Introduction aux Reseaux de neuronnes

Les parametres d’un neurone :

Biais ou seuil : Entree qui permet d’ajouter de la flexibilite au reseauen permettant de varier le seuil de declenchement du neurone.

Entrees : Directement les entrees du systeme ou peuvent provenird’autres neurones.

Poids : Facteurs multiplicateurs qui affectent l’influence de chaqueentree sur la sortie du neurone.

Fonction d’activation : Integre toutes les entrees et le biais et calculla sortie du neurone.

Sortie : Valeurs distribuees vers d’autres neurones ou valeurs de sortiedu systeme.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 6 / 71

Page 7: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Introduction aux Reseaux de neuronnes

La fonction d’activation, ou fonction de transfert, ou ”potentield’activation” (en biologie), est un seuil de stimulation qui, une foisatteint entraıne une reponse du neurone.

Il y’a plusieurs fonctions d’activations possibles. Toutefois dans lapratique il y en a principalement 3 qui sont utilisees :

La fonction de Heaviside : ∀x ∈ R, h(x) = 1 si x ≥ 0, 0 sinonLa fonction sigmoıde : ∀x ∈ R, s(x) = 1

1+e−x

La fonction ReLU (Rectified Linear Unit ) : ∀x ∈ R, r(x) = max(0, x)

Ange Tato (UQAM) Machine Learning 29 novembre 2018 7 / 71

Page 8: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Introduction aux Reseaux de neuronnes

Reseaux de neurones multicouches ou Multilayer Perceptron (MLP).

Au moins 2 couches : Une couche cachee et une couche de sortie.

Une couche = un groupe de neurones sans connexion les uns avec lesautres

2 types de reseaux multicouches

Reseaux de neurones recurrents : avec cycleReseaux de neurones a propagation en avant : sans cycle

Ange Tato (UQAM) Machine Learning 29 novembre 2018 8 / 71

Page 9: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Introduction aux Reseaux de neuronnes

Exemple : Apprentissage de parite

Considerons un afficheur numerique a sept segments et formons unperceptron donnant la parite du chiffre ecrit, a savoir 0 s’il est pair et1 sinon.

Il est interessant de remarquer qu’un poids synaptique negatif fort aete attribue au 5eme segment.

A posteriori, on peut constater que l’activation de ce segmentinfluence fortement la parite du chiffre considere : l’apprentissage ainduit un debut d’intelligence artificiel.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 9 / 71

Page 10: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Reseaux de neuronnes : Apprentissage

Retro-propagation du gradient de l’erreur

Elle consiste a propager l’erreur a travers le reseau dans le sensinverse de la propagation des activations.

Cette technique permet de calculer la modification des poids desconnexions entre les couches cachees.

Elle tente de reduire la difference entre les sorties du reseau et lessorties desirees. Minimiser l’erreur du reseau.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 10 / 71

Page 11: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Reseaux de neuronnes : Apprentissage

Descente du gradient de l’erreur : Intuition

Objectif : Trouver les valeurs des poids qui minimisent la fonctiond’erreur E comme suit : wt+1 = wt − η ∂E

∂wt

Suivre la direction inverse de la derivee en chaque point de la courbede l’erreur.

L’erreur doit etre une fonction derivable.

Exemple : L’erreur quadratique moyenne (EQM) qui est definiecomme suit : E = 1

2

∑ni=1(Yi − xi )

2

Ange Tato (UQAM) Machine Learning 29 novembre 2018 11 / 71

Page 12: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Reseaux de neuronnes : Apprentissage

Descente du gradient de l’erreur : Strategies

Descente de Gradient classique (batch gradient descent) : On faitpasser la totalite des observations, le gradient est calcule et les poidssont corriges.

Online : le gradient est calcule pour chaque observation.

Mini-batch (traitement par lots) : On fait passer un groupe (effectif= parametre de l’algorithme) d’observations avant le calcul dugradient.

• Le traitement par lots permet d’ameliorer la convergence en reduisant lenombre de passage sur la base entiere.• Il permet egalement de se contenter de charger partiellement les donneesen memoire au fur et a mesure.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 12 / 71

Page 13: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Reseaux de neuronnes : Apprentissage

Descente du gradient de l’erreur : Algorithme

1 Initialiser les ωij aleatoirement

2 Propager un exemple X : Xi = f (νi ) avec νi =∑

j ωijXj

3 Retro-propager :

Couche de sortie : δi = −f ′(νi )(Yi − Xi )Couches cachees : δi = −f ′(νi )

∑k ωkiδk

4 Modifier les poids :

ωij(t + 1) = ωij(t)− η ∂E∂ωij

avec ∂E∂ωij

= δiXj

5 Si EQM assez petite alors FIN sinon aller au 2.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 13 / 71

Page 14: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Reseaux de neuronnes : Apprentissage

Descente du gradient de l’erreur : Exemple avec f = sigmoid

netj =∑n

i=1 ωijXij

cj = f (netj) = 1

1+e−netj

f ′(netj) = f (netj) ∗ (1− f (netj))

Equations de mis a jour des poids :

Couche de sortie : ∆ωij = −(Yj − cj) ∗ cj(1− cj)Xk

Couhes cachees : ∆ωij = cj(1− cj)∑

i (∆i ∗ ωji ) avec∆i = (Yj − cj) ∗ cj(1− cj)Xkj

Ange Tato (UQAM) Machine Learning 29 novembre 2018 14 / 71

Page 15: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Reseaux de neuronnes : Apprentissage

Exemple de descente du gradient :

Ange Tato (UQAM) Machine Learning 29 novembre 2018 15 / 71

Page 16: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Introduction aux Reseaux de neuronnes

Exemple de descente du gradient :

Ange Tato (UQAM) Machine Learning 29 novembre 2018 16 / 71

Page 17: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Reseaux de neuronnes : Apprentissage

Exemple de descente du gradient :

Ange Tato (UQAM) Machine Learning 29 novembre 2018 17 / 71

Page 18: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Reseaux de neuronnes : Apprentissage

Condition d’arret de l’apprentissage

Apres un certain nombre fixe d’iterations car :

Si trop faible, l’erreur n’est pas suffisamment reduiteSi trop grand, surapprentissage !

Lorsque les poids se stabilisent

Lorsque l’erreur descend en dessous d’une certaine borne

Ange Tato (UQAM) Machine Learning 29 novembre 2018 18 / 71

Page 19: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Introduction a l’apprentissage profond

Limite des reseaux de neurones (avant) :

Mise en contexte :

Apprendre des fonctions complexes avec les reseaux de neurones aplusieurs couches pour resoudre des problemes non lineaires.Si on ajoute plusieurs couches cachees a un reseau, on pourraitl’appeler �reseau profond�

Probleme :

Disponibilite des donneesBesoin de machines puissantesVanishing gradient : plus vous ajoutez de couches, plus il devientdifficile de �mettre a jour� vos poids parce que le signal devient deplus en plus faible.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 19 / 71

Page 20: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Introduction a l’apprentissage profond

Pourquoi l’apprentissage profond ?

Le manque de profondeur peut etre nuisible.

Le cerveau a une architecture profonde.

Les processus cognitifs semblent etre profonds.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 20 / 71

Page 21: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Introduction a l’apprentissage profond

Fonctionnement

Jusqu’a une vingtaine de couches dans le reseau

Le reseau de neurones approfondit sa comprehension avec desconcepts de plus en plus precis.

Pour reconnaıtre une personne, par exemple, la machine decomposel’image : d’abord le visage, les cheveux, la bouche, puis elle ira versdes proprietes de plus en plus fines, comme le grain de beaute.

Difference avec les autres approches d’apprentissage machine :

�plus intelligent�, �Plus naturel�, �meilleurs resultatsd’apprentissage�

Avec les methodes traditionnelles, la machine se contente decomparer les pixels.

Le deep learning permet un apprentissage sur des caracteristiques plusabstraites que des valeurs de pixels, qu’elle va elle-meme construire .

Ange Tato (UQAM) Machine Learning 29 novembre 2018 21 / 71

Page 22: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Introduction a l’apprentissage profond

Exemple 1 :

La premiere chose que notre cerveau fait lorsqu’il s’agit d’identifier lecarre entre ces 2 formes ?

verifier s’il y a 4 lignes associees a une figure ou non (concept simple).

Si il trouve 4 lignes, il verifie davantage, s’ils sont connectes, fermes,perpendiculaires et egaux (hierarchie imbriquee du concept).

Donc, nous avons pris une tache et l’avons divise en taches moinsabstraites. Le Deep Learning fait essentiellement cela a grande echelle.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 22 / 71

Page 23: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Introduction a l’apprentissage profond

Exemple 2 :

difference entre l’image d’un chat et d’un Homme ?Techniques standards d’apprentissage machine : caracteristiquesdefinies manuellement telles que si l’animal a des moustaches ou non,si l’animal a des oreilles et si oui, alors si elles sont pointues. Cecipermettra au systeme d’identifier quelles caracteristiques sont plusimportantes dans la classification d’un animal particulier.Apprentissage profond : decouvre automatiquement lescaracteristiques importantes pour la classification.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 23 / 71

Page 24: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Introduction a l’apprentissage profond

Plusieurs architectures existantes en fonction du champ d’application

Convolutional neural networks (CNN)

Restricted Boltzmann machine (RBM)

Recurrent Neural Networks (RNN)

AutoEncoder

Long Short Term Memory networks (LSTM)

Etc.

Apprentissage supervise = Apprentissage par des exemples

CNN, RNN, LSTM

Apprentissage non supervise = Apprentissage a l’aveugle

RBM, Autoencoder, Deep Belief Networks

Ange Tato (UQAM) Machine Learning 29 novembre 2018 24 / 71

Page 25: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : CNN

Reseau de neurones profond + ensemble de traitements sur lastructure des donnees en entree.

4 operations de bases :1 Convolution2 Fonction d’activation : Non Linearity ReLU (Rectified Linear Units)3 SubSampling ou MaxPooling4 Classification

Ange Tato (UQAM) Machine Learning 29 novembre 2018 25 / 71

Page 26: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : CNN

Figure – Comment un CNN fonctionne

Ange Tato (UQAM) Machine Learning 29 novembre 2018 26 / 71

Page 27: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : CNN

Dans l’exemple ci-dessous, l’image est une matrice 5 x 5 et le filtre qui lasurvole est une matrice 3 x 3. Une operation de convolution a lieu entrel’image et le filtre et la feature map est generee. Chaque filtre dans unCNN apprend differentes caracteristiques d’une image.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 27 / 71

Page 28: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : CNN

Dans l’exemple ci-dessous, l’image est une matrice 5 x 5 et le filtre qui lasurvole est une matrice 3 x 3. Une operation de convolution a lieu entrel’image et le filtre et la feature map est generee. Chaque filtre dans unCNN apprend differentes caracteristiques d’une image.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 27 / 71

Page 29: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : CNN

Dans l’exemple ci-dessous, l’image est une matrice 5 x 5 et le filtre qui lasurvole est une matrice 3 x 3. Une operation de convolution a lieu entrel’image et le filtre et la feature map est generee. Chaque filtre dans unCNN apprend differentes caracteristiques d’une image.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 27 / 71

Page 30: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : CNN

Dans l’exemple ci-dessous, l’image est une matrice 5 x 5 et le filtre qui lasurvole est une matrice 3 x 3. Une operation de convolution a lieu entrel’image et le filtre et la feature map est generee. Chaque filtre dans unCNN apprend differentes caracteristiques d’une image.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 27 / 71

Page 31: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : CNN

Dans l’exemple ci-dessous, l’image est une matrice 5 x 5 et le filtre qui lasurvole est une matrice 3 x 3. Une operation de convolution a lieu entrel’image et le filtre et la feature map est generee. Chaque filtre dans unCNN apprend differentes caracteristiques d’une image.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 27 / 71

Page 32: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : CNN

Dans l’exemple ci-dessous, l’image est une matrice 5 x 5 et le filtre qui lasurvole est une matrice 3 x 3. Une operation de convolution a lieu entrel’image et le filtre et la feature map est generee. Chaque filtre dans unCNN apprend differentes caracteristiques d’une image.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 27 / 71

Page 33: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : CNN

Dans l’exemple ci-dessous, l’image est une matrice 5 x 5 et le filtre qui lasurvole est une matrice 3 x 3. Une operation de convolution a lieu entrel’image et le filtre et la feature map est generee. Chaque filtre dans unCNN apprend differentes caracteristiques d’une image.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 27 / 71

Page 34: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : CNN

Dans l’exemple ci-dessous, l’image est une matrice 5 x 5 et le filtre qui lasurvole est une matrice 3 x 3. Une operation de convolution a lieu entrel’image et le filtre et la feature map est generee. Chaque filtre dans unCNN apprend differentes caracteristiques d’une image.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 27 / 71

Page 35: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : CNN

Dans l’exemple ci-dessous, l’image est une matrice 5 x 5 et le filtre qui lasurvole est une matrice 3 x 3. Une operation de convolution a lieu entrel’image et le filtre et la feature map est generee. Chaque filtre dans unCNN apprend differentes caracteristiques d’une image.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 27 / 71

Page 36: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : CNN

Les filtres

Les Features Map

Ange Tato (UQAM) Machine Learning 29 novembre 2018 28 / 71

Page 37: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : CNN

Exemple :

Ange Tato (UQAM) Machine Learning 29 novembre 2018 29 / 71

Page 38: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : CNN

Application :

Classification d’images

Reconnaissance de caracteres

Classification de texte

Robotique (Deep reinforcement Learning)

En general : Domaines ou l’on peut extraire des ”patterns visuels”

D’autres applications live (lien clickable)

Ange Tato (UQAM) Machine Learning 29 novembre 2018 30 / 71

Page 39: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : RNN

Reccurent Neural Networks (RNN) :

Reseau de neurones + recurrence dans l’apprentissage

Pourquoi les RNN ?

La reflexion humaine ne se fait a partir de 0. La pensee humaine aune persistance.

Nous essayons de comprendre notre environnement en fonction de ceque l’on sait, de ce que l’on a deja vu.

Les reseaux de neurones recurrents traitent de ce probleme. Ce sont desreseaux avec des boucles, permettant aux informations de persister.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 31 / 71

Page 40: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : RNN

Une boucle permet de transmettre l’information d’une etape dureseau a l’autre.

Cette architecture en chaıne montre que les RNNs sont intimementlies aux sequences et aux listes.

C’est l’architecture privilegiee dans le cas ou les donnees sontsequentielles (ex : donnees dependants du temps).

Cependant : Probleme de dependance a long terme.

Figure – RNN (Colah’s blog)

Ange Tato (UQAM) Machine Learning 29 novembre 2018 32 / 71

Page 41: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : RNN

Parfois, c’est uniquement l’information la plus recente qui a del’interet pour la tache presente. . . Les RNN peuvent etre efficacesdans ces cas.

Exemple : Supposons un modele essayant de predire le prochain mot apartir des mots precedents. Si nous essayons de predire le dernier mot decette phrase :

”Les nuages sont dans le ciel”

Nous n’avons pas besoin du contexte dans lequel a ete emis cette phrase.C’est evident que le prochain mot est ”Ciel”.

Figure – RNN (Colah’s blog)

Ange Tato (UQAM) Machine Learning 29 novembre 2018 33 / 71

Page 42: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : RNN

Parfois, il y a aussi des cas ou il faut un contexte pour pouvoir faire laprediction.

Exemple : Supposons un modele essayant de predire le prochain mot apartir des mots precedents. Si nous essayons de predire le dernier mot decette phrase :

”J’ai grandit au Quebec. Je parle couramment le Francais”

L’information recente (je parle couramment . . . ) suggere que leprochain mot est probablement une langue.

Cependant, si nous voulons savoir de quelle langue il s’agit, il faudraitetre informe du contexte (grandit au Quebec).

Ange Tato (UQAM) Machine Learning 29 novembre 2018 34 / 71

Page 43: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : LSTM

RNN special capable d’apprendre des dependances a long terme.

Capable de se ”souvenir” de l’information pendant de longuesperiodes.

Dans le RNN standard, le module repetitif a une structure tres simpletelle qu’une seule couche de TanH.

(a) RNN (b) LSTM

Ange Tato (UQAM) Machine Learning 29 novembre 2018 35 / 71

Page 44: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : LSTM

Le LSTM est capable de supprimer ou rajouter de l’information enfonction du besoin.

Le C est appele etat cellulaire ou cellule du LSTM. Elle represente lamemoire de l’architecture.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 36 / 71

Page 45: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : LSTM

Fonctionnement :

Etape 1 : Decider quelle information va etre sauvegarder ou detruite.

Grace au ”forget gate layer”.

Il regarde les 2 entrees, et produit un nombre entre 0 et 1 pourchaque element dans l’etat cellulaire C . Un 1 represente ”conserver”alors qu’un 0 represente ”se debarrasser”.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 37 / 71

Page 46: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : LSTM

Fonctionnement :

Etape 2 : Decider quelle est la nouvelle information a ajouter dans lacellule.

Le ”input gate layer” (represente par la sigmoide) decide de lavaleur qui sera mis a jour dans C .

Le tanh cree le vecteur des valeurs possibles a ajouter dans le C.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 38 / 71

Page 47: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : LSTM

Fonctionnement :

Etape 3 : Mettre a jour la cellule.

Multiplication de l’ancien etat par ft : Suppression des valeurs inutiles.

Les nouvelles valeurs candidates sont it ∗ Ct .

Ange Tato (UQAM) Machine Learning 29 novembre 2018 39 / 71

Page 48: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : LSTM

Fonctionnement :

Etape 4 : Decider de ce que sera la sortie.

Cette sortie sera calculee en fonction de l’etat C .

Ange Tato (UQAM) Machine Learning 29 novembre 2018 40 / 71

Page 49: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : LSTM

Remarque :Il existe plusieurs autres structures interne au LSTM

(a) Gers & Schmidhuber (2000) (b) Cho, et al. (2014)

Domaines d’application

Reconnaissance de la parole

Modelisation du langage

Traduction automatique, image captioning → Mechanismed’attentionEtc.Ange Tato (UQAM) Machine Learning 29 novembre 2018 41 / 71

Page 50: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : LSTM + Mechanisme d’attention

Avant le mechanisme d’attention

(a) Traduction

(b) Image captioning

Le decodage repose uniquement sur la compression de toutes lesinformations en entree (vecteur de contexte fixe).

Par exemple en traduction automatique, une phrase contenant descentaines de mots, entraınera certainement une perte d’informations,une traduction inadequate, etc.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 42 / 71

Page 51: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : LSTM + Mechanisme d’attention

Fonctionnement :

Figure – Mechanisme d’attention (de Medium’s blog)

L’attention : permet de ”consulter” toutes les informations contenuesdans l’entree d’origine, puis de generer le resultat approprie enfonction de la sortie actuel et du contexte (variable).Ange Tato (UQAM) Machine Learning 29 novembre 2018 43 / 71

Page 52: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Deep RBM

Reseau de neuronnes a 2 couches

Reduction de dimensions, representation des donnees

Extraction automatique de caracteristiques discriminants

Couche d’entrees (ou couche visible) + Couche cachee

Ange Tato (UQAM) Machine Learning 29 novembre 2018 44 / 71

Page 53: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Deep RBM

La reconstruction : Le RBM apprend a reconstruire les donnees parlui-meme avec plusieurs passages foward + backward

Les activations de la couche cachee deviennent les entrees du RBM.

Les poids w restent les memes que pour le foward pass

La sortie (r) de cette operation de �backward� est une reconstructiondes entrees

Algorithme pour l’apprentissage des poids : Backpropagation

Ange Tato (UQAM) Machine Learning 29 novembre 2018 45 / 71

Page 54: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Deep RBM

L’equilibre est atteint lorsque les reconstructions sont presquesemblables aux entrees initiales

Le resultat se trouve alors au niveau de la couche cachee

Exemple : reconnaıtre un elephant ou un chien sur une imageSoit un RBM dont les donnees d’entrees sont uniquement des images dechiens et d’elephants qui ne possede que deux nœuds de sortie, un pourchaque animal.

Ce que le RBM se pose comme question dans le foward pass :�Compte tenu de ces pixels, mes poids devraient-ils envoyer un signalplus fort au nœud correspondant a l’elephant ou au nœudcorrespondant au chien ?�

Et dans le backward pass : �Etant donne un elephant, quelledistribution de pixels j’attendrais ?�

Ange Tato (UQAM) Machine Learning 29 novembre 2018 46 / 71

Page 55: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Deep Belief Network

Ange Tato (UQAM) Machine Learning 29 novembre 2018 47 / 71

Page 56: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Deep AutoEncoder

Meme utilite qu’un RBM mais structure differente

Les sorties sont les entrees

Deep Autoencoder = Plusieurs couches dans l’autoencoder

Variational AE = distribution gaussienne au niveau de l’encodeur

(a) AutoEncoder (b) Deep AutoEncoder

Ange Tato (UQAM) Machine Learning 29 novembre 2018 48 / 71

Page 57: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Deep Reinforcement Learning

Reinforcement Learning :

Q-learning : prochaine action choisis en fonction de la recompensefuture attendue la plus elevee.

Q-function : pour calculer cette recompense. C’est une fonctionmathematique qui prend deux arguments : l’etat actuel du jeu et uneaction donnee.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 49 / 71

Page 58: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Deep Reinforcement Learning

Reinforcement Learning :

Dans l’etat S , on estime toute les recompenses futures de chacunedes actions possibles a partir de S .

La recompense future attendue Q(S ,A) pour un etat donne S et uneaction A, est calculee comme etant la recompense immediate R, plusla recompense future attendue par la suite Q(S ′,A′).

Nous supposons que l’action suivante A′ est optimale et que l’etat S ′

est l’etat ou mene cette action.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 50 / 71

Page 59: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Deep Reinforcement Learning

Reinforcement Learning :

En raison de l’incertitude sur l’avenir, nous reduisons la valeur deQ(S ′,A′) a l’aide d’un facteur gamma γ appele facteur de reduction(discout)

Q(S ,A) = R + γ ∗maxQ(S ′,A′)

Comment une machine peut-elle estimer une bonne fonction Q ? C’estici qu’intervient le deep reiforcement learning (ou deep Q-learning).

Ange Tato (UQAM) Machine Learning 29 novembre 2018 51 / 71

Page 60: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Deep Reinforcement Learning

Deep Reinforcement Learning :

Quand on joue a un jeu, on genere beaucoup d’experiences. Cesexperiences consistent en :

l’etat initial, Sl’action effectuee, Ala recompense gagnee, Ret l’etat qui a suivi, S ′

Ces experiences sont des donnees d’entraınement.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 52 / 71

Page 61: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Deep Reinforcement Learning

Deep Reinforcement Learning :

Le probleme de l’estimation de Q(S ,A) = probleme de regression.Reseaux de neuronnes comme solution.

Soit un vecteur d’entree constitue de S et A, le reseau neuronal estsuppose predire la valeur de Q(S ,A) qui est egale a :R + γ ∗maxQ(S ′,A′).

Si nous sommes capables de predire Q(S ,A) pour differents etats Set actions A, nous avons une bonne approximation de la fonction Q.

Remarque : Q(S ′,A′) est estime a travers le meme reseau deneurones que Q(S ,A).

Ange Tato (UQAM) Machine Learning 29 novembre 2018 53 / 71

Page 62: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Deep Reinforcement Learning

Deep Reinforcement Learning :

Ange Tato (UQAM) Machine Learning 29 novembre 2018 54 / 71

Page 63: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Deep Reinforcement Learning

Deep Q-Learning :

Avec un batch d’experiences < S ,A,R,S ′ >, le processusd’entrainement du reseau se presente comme suit :

Pour chaque action possible A, predire la recompense future attendueQ(S ,A) en utilisant le reseau.Choisir la valeur la plus elevee des trois predictions sous la formemaxQ(S ,A)Calculer R + γ ∗maxQ(S ′,A′). C’est la valeur cible pour le reseau deneurones.Entraıner le reseau neuronal en utilisant une fonction de perte. Cettefonction calcule a quel point la valeur predite est proche ou eloignee dela valeur cible.loss = 1

2 (preditQ(S ,A)− cible)2 comme fonction de perte.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 55 / 71

Page 64: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Deep Reinforcement Learning

Plus loin ... Policy-gradients :

Deep-Q-learning est une methode basee sur une iteration parvaleurs, tandis que le Policy Gradient est une methode basee sur uneiteration par politique.

Calcul direct de la polique π sans passer par un calcul de chaqueQ(S ,A)

π(A|S)→ Probabilite de prendre l’action A sachant l’etat S

Classification → log likelihood ou cross entropy.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 56 / 71

Page 65: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Deep Reinforcement Learning

Plus loin ... Policy-gradients :

Ange Tato (UQAM) Machine Learning 29 novembre 2018 57 / 71

Page 66: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Optimisation

Pourquoi optimiser une achitecture profonde :

Eviter le Surapprentissage

Accelerer l’apprentissage

Trouver la solution optimale

Vanishing gradient

Ange Tato (UQAM) Machine Learning 29 novembre 2018 58 / 71

Page 67: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Residual Networks

Le cadre d’apprentissage residuel facilite l’entrainement des reseaux etleur permet d’etre beaucoup plus profonds

Permet d’ameliorer les performances en resolvant le probleme duVanishing Gradient.

La derivee de la fonction identite = 1 → Preservation du gradient.

Figure – A Residual block - Element fondamental des reseaux residuels

Ange Tato (UQAM) Machine Learning 29 novembre 2018 59 / 71

Page 68: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Regularisation

Regularisation = Ensemble de techniques pour combattre lesurapprentissage

Ange Tato (UQAM) Machine Learning 29 novembre 2018 60 / 71

Page 69: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Regularisation

Dropout = Desactiver au hasard une partie des neuronnes et leursconnections pendant l’entrainement.

reactiver ces neurones dans la phase de testing et de prediction.

Permet d’empecher la co-adaptation sur les donnees d’entraınement.

La co-adaptation limite le pouvoir individuel de chaque neurone.

Figure – Srivastava, Nitish, et al. ”Dropout : a simple way to prevent neuralnetworks from overfitting”, JMLR 2014

Ange Tato (UQAM) Machine Learning 29 novembre 2018 61 / 71

Page 70: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Regularisation

Regularisation L2 et L1 : Ajout d’une penalite a la fonction d’erreur.

Cost function = Loss (EX : binary cross entropy) + Regularizationterm

L2 (Ridge Regression) : Somme des poids au carre .costfunction = Loss + λ ∗

∑‖w‖

L1 (Lasso Regression) : Somme des valeurs absolues des poids.costfunction = Loss + λ ∗

∑∥∥w2∥∥

λ = facteur de regularisation

Ange Tato (UQAM) Machine Learning 29 novembre 2018 62 / 71

Page 71: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Apprentissage profond : Algorithmes d’optimisation

Algorithmes d’optimisation : minimiser ou maximiser une fonctionobjectif (fonction d’erreur dans le cas des RN).

Techniques avec taux d’apprentissage constant : SGD, NAG,momemtumSGD, etc.

Techniques avec taux d’apprentissage qui s’adapte : AdaGrad,Adam, RMSprop, etc.

Lequel choisir : Methodes adaptatives car convergence plus rapide etfonctionnent bien sur les donnees sparses.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 63 / 71

Page 72: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Metriques d’evaluation

L’accuracy est la metrique la plus utilisee pour la mesure de laperformance des modeles, mais n’est pas suffisante pour reellemenntevaluer un modele.Accuracy = Predictions correctes

Total des predictions

Plusieurs metriques selon que l’on fait une classification ou uneregression.

Logarithmic LossMatrice de confusionF1 scoreMean Absolute Error (MAE)Mean Squared Error (MSE)

Ange Tato (UQAM) Machine Learning 29 novembre 2018 64 / 71

Page 73: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Metriques d’evaluation : Logarithmic Loss

Penalise les mauvaises classifications.

Excellent pour les classifications avec plusieurs classes.

Supposons qu’il y’a N instances appartenant a M classes

LogLoss = − 1N

∑Ni=1

∑Mj=1 yij ∗ log(pij)

yij indique si l’instance i appartient a la classe j ou paspij indique la probabilite que l’instance i appartient a la classe j

Une valeur proche de 0 indique une bonne performance

Ange Tato (UQAM) Machine Learning 29 novembre 2018 65 / 71

Page 74: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Metriques d’evaluation : Matrice de confusion

Supposons une classification binaire (OUI, NON)

Supposons un modele qui predit une de ces 2 classes sachant uneentree x

Apres avoir teste notre modele sur 165 instances, on obtient :n=165 Predit : NON Predit : OUI

Reel : NON 50 10

Reel : OUI 5 100

Il y’a 4 termes importants :

True Positives (TP) : Predit = OUI et Reel = OUITrue Negatives (TN) : Predit = NON et Reel = NONFalse Positives (FP) : Predit = OUI et Reel = NONFalse Negatives (FN) : Predit = NON et Reel = OUI

Ange Tato (UQAM) Machine Learning 29 novembre 2018 66 / 71

Page 75: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Metriques d’evaluation : F1 Score

Moyenne Harmonique de la Precision et du Rappel

Nous informe sur comment notre modele est precis et combien et ilest robuste.

Haute precision + bas rappel = Modele tres precis mais mauvais dansla classification des instances difficiles a classifier

F1 Score proche de 1 → Meilleur modele

F1 = 2 ∗ 11

Precision + 1Rappel

Precision = TPTP+FP

Rappel = TPTP+FN

Ange Tato (UQAM) Machine Learning 29 novembre 2018 67 / 71

Page 76: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Metriques d’evaluation : MAE

Moyenne de la difference entre le reel et le predit

Evalue la distance entre ce que le modele predit et ce qui est attendu

MAE = 1N

∑Nj=1 |yi − yj |

Ange Tato (UQAM) Machine Learning 29 novembre 2018 68 / 71

Page 77: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Metriques d’evaluation : MSE

Identique au MAE, sauf que l’on considere la moyenne des carres dela difference entre le predit et le reel

Avantage : Facile de calculer le gradient compare au MAE.

MSE = 1N

∑Nj=1(yi − yj)

2|

Ange Tato (UQAM) Machine Learning 29 novembre 2018 69 / 71

Page 78: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

References

G. F. Luger (2002)

Artificial Intelligence : Structures and Strategies for Complex Problem Solving.

Fourth Edition, Addison-Wesley Chapitre 10.

Goodfellow, I., Bengio, Y., Courville, A., & Bengio, Y. (2016)

Deep learning

Cambridge : MIT press. (Vol. 1).

Stuart Russel et Peter Norvig (2009)

Artificial Intelligence : A Modern Approach

Third Edition. Prentice Hall Chapitre 18.

Ange Tato (UQAM) Machine Learning 29 novembre 2018 70 / 71

Page 79: Apprentissage Machine: Techniques et applicationsgdac.uqam.ca/inf7470/notesDeCours/machine-learning-part1.pdfIntroduction au ML (Machine Learning) 2 m ethodes d’apprentissage machine

Science is a wonderful thing ifone does not have to earn one’sliving at it

Albert Einstein

Ange Tato (UQAM) Machine Learning 29 novembre 2018 71 / 71