Rym Guibadj - LISIC - Laboratoire d’Informatique Signal ...guibadj/IA3/apprentissage.pdf · Un...

Post on 15-Sep-2018

251 views 0 download

Transcript of Rym Guibadj - LISIC - Laboratoire d’Informatique Signal ...guibadj/IA3/apprentissage.pdf · Un...

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

.

.Apprentissage automatique

Rym Guibadj

LISIC, EILCO

Rym Guibadj Apprentissage automatique 1 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

.Contenu..

.

IntroductionApprentissage superviséApprentissage non superviséApprentissage par renforcement

.Volume horaire..

.

6 x (1h30) Cours3 x 3h TD3 x 3h TP

.Evaluation..

.

TPExamenNote module = 0.3 x TP + 0.7 x Examen

Rym Guibadj Apprentissage automatique 2 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Références

Apprentissage artificiel : Concepts et algorithmes, AntoineCornuéjols et Laurent MicletIntelligence Artificielle, Stuart Russel et Perter Norving, editionPearsonNotes du cours de Fabien Tytaud (Université du Littoral Côted’Opale)

Rym Guibadj Apprentissage automatique 3 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Apprentissage automatique

.5 domaines de l’IA..

.

Déduction logiqueRésolution de problèmesApprentissage automatique (artificiel)Représentation des connaissancesSystèmes multiagents

Rym Guibadj Apprentissage automatique 4 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Apprentissage automatique

.Définitions..

.

L’apprentissage automatique fait référence audéveloppement, à l’analyse et à l’implémentation de méthodesqui permettent à une machine d’évoluer et ainsi de remplirdes tâches qu’il est difficile ou impossible de remplir par desmoyens algorithmiques plus classiques.

"L’apprentissage dénote des changements dans un systèmequi ... lui permet de faire la même tâche plus efficacement laprochaine fois". Herbert Simon.

Rym Guibadj Apprentissage automatique 5 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Apprentissage automatique

On dira qu’une machine apprend dès lors qu’elle change sastructure, son programme ou ses données en fonction dedonnées en entrée ou de réponses à son environnement de sorteà ce que ses performance futures deviennent meilleures

L’objectif de l’apprentissage automatique est de concevoirdes programmes pouvant s’améliorer automatiquementavec l’expérience

Rym Guibadj Apprentissage automatique 6 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Pourquoi l’apprentissage automatique ?

Certaines tâches ne sont bien définies que via un ensembled’exemples

Pour découvrir des relations importantes dans des données(fouille de données)

Les machines peuvent ne pas fonctionner sur tous lesenvironnements

La quantité de connaissances disponibles à propos de certainessituations sont telles que le cerveau humain ne puisse lesexpliciter

L’environnement change constamment

Rym Guibadj Apprentissage automatique 7 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemples de systèmes apprenant :

Un robot ayant la capacité de bouger ses membres mais nesachant initialement rien de la coordination des mouvementspermettant la marche, peut apprendre à marcher.

La reconnaissance de caractères manuscrits est une tâchecomplexe car deux caractères similaires ne sont jamaisexactement égaux

Rym Guibadj Apprentissage automatique 8 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Des applications diverses :

Reconnaissance de la parole.Diagnostique médical.Moteurs de recherche.Les jeux.Conduite autonome....

Rym Guibadj Apprentissage automatique 9 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Classification, classement, régression

Classification : Reconnaître des classes à partir de leursdescripteurs.Régression : Classification sur des valeurs numériques.Clustering : Regrouper des ensembles d’exemples nonsupervisés en classes.

Rym Guibadj Apprentissage automatique 10 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple d’apprentissage :

Imaginons un étang sur lequel nagent des oies et des cygnes(nous admettons qu’il n’y a pas d’autres oiseaux dans cetterégion).Deux personnes arrivent dont l’un est expert et l’autredébutant.Le débutant souhaite apprendre à distinguer une oie d’uncygne. Il doit se contenter de mesurer ce qui lui paraîtcaractéristique : le niveau de gris du plumage et la taille de labête.

Rym Guibadj Apprentissage automatique 11 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple d’apprentissage :

Le premier graphique représente les mesures de chaque oiseauprise par l’amateurLe second graphique représente les mêmes oiseaux étiquetéspar l’expert

Rym Guibadj Apprentissage automatique 12 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple d’apprentissage :

Il faut maintenant que l’amateur trouve une règle permettantde séparer les exemples en minimisant l’erreur.

Rym Guibadj Apprentissage automatique 13 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple d’apprentissage :

Une règle de décision simple et une règle de décision complexepour séparer les oies des cygnes.

Rym Guibadj Apprentissage automatique 14 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple d’apprentissage :

Le test de la règle simple sur d’autres oiseaux.

Rym Guibadj Apprentissage automatique 15 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Types d’apprentissage :

Apprentissage superviséChaque exemple est associé à une étiquetteObjectif : prédire l’étiquette de chaque donnéeLe système apprend à classer les données

Apprentissage non superviséLes exemples ne sont pas étiquetésObjectif : trouver une structure aux donnéesLe système apprend une classification des données

Apprentissage par renforcementLes exemples sont (parfois) associés à une récompense ou unepunitionObjectif : trouver les actions qui maximisent les récompensesLe système apprend une politique de décision

Rym Guibadj Apprentissage automatique 16 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Apprentissage supervisé

Aussi appelé analyse discriminante

Les données d’apprentissage sont etiquetéesUn expert ou oracle doit préalablement étiqueter desexemples.

Le processus se passe en deux phases :

La phase d’apprentissage (hors ligne ) : déterminer unmodèle de données étiquetéesLa phase de test (en ligne ) : prédire l’étiquette d’unenouvelle donnée, connaissant le modèle préalablement appris.

Rym Guibadj Apprentissage automatique 17 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Définition formelle

Données d’apprentissageN couples entrée sortie (xn, yn)1<=n<=N avec xn ∈ X etyn ∈ YOn suppose que ces données sont tirées selon une loi (deprobablilité) inconnue

Objectif de l’apprentissagedéterminer une fonction de prédiction f : X → Y qui soit enaccord avec le données d’apprentissage

.Les différentes représentations..

.

Si f est une fonction continue on parle alors de régression.Si f est une fonction discrète on parle alors de classification.Si f est une fonction binaire on parle alors d’apprentissage deconcept.

Rym Guibadj Apprentissage automatique 18 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Méthodes d’apprentissage supervisé

.Liste non exhaustive..

.

Les k plus proches voisins

Arbre de décision

Les réseaux de neurones

Les machines à vecteur support

etc.

Rym Guibadj Apprentissage automatique 19 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Algorithme des K plus proches voisins.Comment classer le carré noir ?..

.Rym Guibadj Apprentissage automatique 20 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Algorithme des K plus proches voisins.Comment classer le carré noir ?..

.Rym Guibadj Apprentissage automatique 21 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Algorithme des K plus proches voisins

.Comment classer le carré noir ?..

.

On cherche le plus proche voisin.On tag le nouveau point avec la classe correspondante.

.Cas des points aberrants..

.

Un point aberrant change fortement la frontière apprise.Comportement non souhaité.

.Une solution..

.

Utiliser plus de 1 voisin.Compter les K plus proches voisins et prendre la classedominante.

Rym Guibadj Apprentissage automatique 22 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Algorithme des K plus proches voisins

Choix de K ?

Rym Guibadj Apprentissage automatique 23 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Algorithme des K plus proches voisins

Données :L’ensemble des points d’apprentissage (xi , yi ).Le nouveau point à classer x .

Algorithme :Toutes les distances D(xi , x).Sélection des K plus proches exemples x1...xk .Choix de la classe la plus présente parmi les y1...ykcorrespondants.

Rym Guibadj Apprentissage automatique 24 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Arbres de décision

Exemple :

Température < 37,5

Gorge irritée

oui non

oui non

malade

malade

bien portant

Rym Guibadj Apprentissage automatique 25 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Arbres de décision

Exemple :

Température < 37,5

Gorge irritée

oui non

oui non

malade

malade

bien portant

Remarque : un arbre code en fait un ensemble de régles(conjonctions, disjonctions)

SI Température < 37.5 ET gorge irritée ALORS maladeSI Température < 37.5 ET gorge non irritée ALORS maladeSI Température <= 37.5 ALORS malade

Rym Guibadj Apprentissage automatique 26 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Arbres de décision

Un arbre de décision est un arbre au sens informatique

Les noeuds internes sont les noeuds de décision.

Un noeud de décision est étiqueté par un test qui peut êtreappliqué à chaque description d’un individu d’une population.

Chaque test examine la valeur d’un unique attribut.

Dans les arbres de décision binaires on omet les labels des arcs.

Les feuilles sont étiquetées par une classe.

Rym Guibadj Apprentissage automatique 27 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Arbres de décision

.Construction d’un arbre :..

.

Noeuds internes : sélectionner un attribut comme étiquette,les arcs sont étiquetés par les valeurs de l’attributFeuilles : couper l’arbre avec une valeur de l’attribut cible

.On veut en général :..

.

Un taux d’erreur faibleUne bonne généralisationUn arbre de petite taille compréhensible pour un non expertetc.

Nombreux algos : ID3, C4.5, CART, CHAID, algo. évo., etc.

Rym Guibadj Apprentissage automatique 28 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple : Banque

client M A R E I1 moyen moyen village oui oui2 élevé moyen bourg non non3 faible âgé bourg non non4 faible moyen bourg oui oui5 moyen jeune ville oui oui6 élevé âgé ville oui non7 moyen âgé ville oui non8 faible moyen village non non

M : La moyenne des montants sur le compteA : Tranche d’âge du clientR : Localité de résidence du clientE : Etudes supérieuresI : Consultation du compte par Internet

On veut construire un arbre de décision pour savoir si un clientconsulte son compte par Internet.

Rym Guibadj Apprentissage automatique 29 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple : Banque

On construit l’arbre d’une façon descendante

On choisit un test, on divise l’ensemble d’apprentissage S eton réapplique récursivement l’algorithme.

On initialise avec l’arbre vide.

Des 8 éléments de S , 3 sont de classe oui et 5 de classe non.

S est caractérisée par (3, 5).

Si le noeud n’est pas déjà terminal on choisit un test.

Ici il y a 4 choix (M,A,R,E )

Rym Guibadj Apprentissage automatique 30 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Les 4 choix

(1,2) (2,1) (0,2)

M

faible moyen élevé

(1,0) (2,2) (0,3)

A

jeune moyen âgé

(1,1) (1,2) (1,2)

R

village bourg ville

(3,2) (0,3)

E

oui non

Quel test choisir ?

Rym Guibadj Apprentissage automatique 31 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Quel test choisir ?

Un test est intéressant s’il permet une bonne discrimination.

Une fonction qui mesure le degré de mélange des exemplesdoit :

prendre son maximum lorsque les exemples sont équirépartis(ici par exemple (4,4)).prendre son minimum lorsque les exemples sont dans unemême classe ((0,8) ou (8,0)).

Rym Guibadj Apprentissage automatique 32 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Mesure d’entropie

.Entropie H..

.

Mesure de la quantité d’incertitude dans un ensemble (dispersion)

H(S) = −∑x∈X

p(x) log2 p(x)

S : ensemble des donnéesX : ensemble des classes de Sp(x) : proportion de la classe x ∈ X dans S

Lorsque H(S) = 0, S est parfaitement classé.

Rym Guibadj Apprentissage automatique 33 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Mesure d’entropie

Voir exemple de calcul au tableau

Rym Guibadj Apprentissage automatique 34 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Gain d’information

.Information gain (information mutuelle)..

.

Mesure de la différence d’entropie entre avant et après lepartitionnement selon un attribut

IG (S ,T ) = H(S)−i=t∑i=1

p(Si )H(Si )

T = {S1, . . . , St} sous-ensembles du partitionnement de S ,S = ∪i=t

i=1Si

p(Si ) = |Si |/|S |H(S), H(Si ) : entropies de S et de Si

Rym Guibadj Apprentissage automatique 35 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Gain d’information

Voir exemple de calcul au tableau

Rym Guibadj Apprentissage automatique 36 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Pseudo code

.

.

ID3(exemples, cible, attributs) :si tous les exemples sont positifs (resp. négatifs) alors

retourner une feuille avec l’étiquette positif (resp. négatif)si attributs est vide alors

retourner une feuille avec l’étiquette la plus fréquentesinon

A← attribut de plus grand gain d’informationconstruire un noeud avec l’étiquette Apour chaque valeurs vi de A

ajouter la branche vi au noeudsi exemples(A = vi ) est vide alors

ajouter à la branche la feuilleavec l’étiquette la plus fréquente

sinonajouter à la branche le sous-arbreID3(exemples(A = vi ), cible, attributs −A)

Rym Guibadj Apprentissage automatique 37 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

C4.5 (Ross Quinlan, 1993)

.Amélioration de ID3..

.

Le critère du gain avantage les attributs discrets ayantbeaucoup de valeurs distinctesUtilisation du ratio de gain d’information au lieu de IG :

ratioIG (S ,T ) = IG (S ,T )/SplitInfo(S ,T )

SplitInfo(S ,T ) =i=k∑i=1

−|Si ||S |∗ log2

|Si ||S |

S : ensemble d’exemples.Si : nombre d’exemples valant Ai pour l’attribut T .k : nombre de valeurs de l’attribut

Rym Guibadj Apprentissage automatique 38 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

C4.5 (Ross Quinlan, 1993)

.Amélioration de ID3..

.

Possibilité de valeur "null" :Exemple ignoré lors dans le calcul du noeud

Prise en compte des attributs à valeur continue :Discrétisation par P(A < ai )pour toutes les valeurs possibles de A, calcul de IG

Elagage (pruning) pour réduire la taille de l’arbre :Technique bottom-up : branches finales élaguéeslorsque taux d’erreur plus grand qu’en remplaçant par une feuille

Wind

StrongWeakNONOYES

3/5 1/5

avec classemajoritaire

3/10

Rym Guibadj Apprentissage automatique 39 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Les erreurs.Relation entre erreurs..

.

Erreur d’apprentissage : taux d’erreur sur l’ensemble desexemples d’apprentissageErreur "vraie" : erreur sur l’ensemble de tous les exemplespossibles

taille ens. d'apprentissage

tx e

rreu

r erreur "vraie"erreur entrainement

Rym Guibadj Apprentissage automatique 40 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Sur-apprentissage.Excès d’apprentissage..

.

Sur-spécialisation du modèle sur l’ensemble d’entrainement⇒ Perte de capacité de généralisation≈ Apprentissage "par coeur"

complexité du modèle

tx e

rreu

r erreur "vraie"erreur entrainement

sur-apprentissage

Mesure de complexité d’un arbre de décision : nombre de feuillesRym Guibadj Apprentissage automatique 41 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Evaluation d’un modèle d’apprentissage.Technique..

.

Partitionner l’ensemble des exemples en :un ensemble d’apprentissage (≈ 70%)un ensemble indépendant de test (≈ 30%)

Le taux d’erreur est estimé (sans biais) sur l’ensemble de test.

.Inconvénient..

.

Requiert un nombre important d’exemplesDilemme :

Plus on met d’exemples dans le test, plus l’estimation estprécisePlus on met d’exemples dans l’apprentissage, meilleur est lemodèle (a priori)

Rym Guibadj Apprentissage automatique 42 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Elagage des arbres de décisions

.Généralités..

.

La poursuite de l’algorithme de construction jusqu’à son termenaturel fabrique un arbre avec des feuilles correspondant à desclasses parfaitement homogènes.Il y a là un apprentissage par coeur et donc un risque desous-estimation de la probabilité d’erreur par le taux d’erreurapparent (qui vaut 0 ).Le nombre de noeuds de l’arbre de décision est un critère decomplexité simple et efficaceChercher la valeur "optimale" du nombre de noeuds revientdonc à trouver une technique pour contrôler la taille de l’arbre

Rym Guibadj Apprentissage automatique 43 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Elagage des arbres de décisions

.Le pré-élagage..

.

On cesse de diviser un noeud lorsque la pureté des points estsuffisantes (inférieure à un certain seuil).Utilisation de critères locaux (à une feuille)On peut manquer un très bon développement.

.Le post-élagage..

.

Elaguer l’arbre lorsqu’il est parfaitement développé.Utiliser un ensemble indépendant de l’ensembled’apprentissage (ensemble de validation).Mesurer l’erreur commise sur cet ensemble.

Rym Guibadj Apprentissage automatique 44 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Elagage des arbres de décisions

Soit T0 un arbre de décision à élaguerOn construit l’ensemble T de tous les arbres de décisionobtenus à partir de T0 en remplaçant certains noeuds internespar des feuilles : T = {T0,T1,T2, ...,Tn} tel que Tn estl’arbre constitué d’une seule feuille.L’idée est de comparer le coût de l’arbre élagué et de l’arbrenon élagué.On s’arrête si le coût du premier est supérieur.

Rym Guibadj Apprentissage automatique 45 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Elagage des arbres de décisions

.Choisir le noeud v qui minimise :..

.

Pour chaque noeud interne v d’un arbre Tk on calcule le coûtsuivant :

w(Tk , v) =∆RS

v ,k

n(k) ∗ (nt(v , k)− 1)

∆RSv ,k : le nombre d’erreurs supplémentaires que commet

l’arbre Tk sur S lorsqu’on élague à la position vn(k) : le nombre de feuilles de Tk

nt(v , k) : le nombre de feuilles du sous-arbre de Tk situéessous le noeud v . Il représente le nombre de feuilles supprimées

.Objectif...Trouver le meilleur compromis entre taille et taux d’erreur apparent.

Rym Guibadj Apprentissage automatique 46 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Elagage des arbres de décisions

.Processus itératif..

.

Tk+1 obtenu à partir de Tk auquel on coupe la branche quipermet un w minimal.Soit {T0, ....,Tk , .....,Tn} la suite obtenue où Tn est réduit àune feuille.Sélection de l’arbre Tk dont le nombre d’erreurs calculées surensemble de validation Sval est minimal

Rym Guibadj Apprentissage automatique 47 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Un exemple d’élagage

.

.

Rym Guibadj Apprentissage automatique 48 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Un exemple d’élagage

.Arbre T0..

.

Rym Guibadj Apprentissage automatique 49 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Un exemple d’élagage.Calcul des valeurs sur T0..

.

w(T0, v1) =∆RS

v1,0n(k)∗(nt(v1,0)−1) =

95∗(5−1) =

920

w(T0, v2) =1

5∗(3−1) =110

w(T0, v3) =2

5∗(2−1) =25

w(T0, v4) =1

5∗(2−1) =15

Rym Guibadj Apprentissage automatique 50 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Un exemple d’élagage

.Arbre T1..

.

Rym Guibadj Apprentissage automatique 51 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Un exemple d’élagage

.Calcul des valeurs sur T1..

.

w(T1, v1) =9−1

3∗(3−1) =43

w(T1, v2) =2−1

3∗(2−1) =13

Rym Guibadj Apprentissage automatique 52 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Un exemple d’élagage

.Arbre T2..

.

Rym Guibadj Apprentissage automatique 53 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Un exemple d’élagage

.Choix de l’arbre..

.

Le choix de l’arbre se fera sur un ensemble de validation parmiT0 , T1 et T2 .L’arbre qui aura la meilleure estimation du taux d’erreur declassification sera choisi.

Rym Guibadj Apprentissage automatique 54 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Un exemple d’élagage.Par exemple, sur cet ensemble de validation..

.

Erreur T0 : 316

Erreur T1 : 116 ⇒ choisir T1

Erreur T2 : 216

Rym Guibadj Apprentissage automatique 55 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Perceptron (Rosenblatt, 1957)

X1

X2

Xn

1

.

.

. hw(x)

Threshold

w1

w2

wn

b

.Définition..

.

Le perceptron est un classifieur linéaire.Il a une seule sortie à laquelle toutes les entrées sontconnectées.

Rym Guibadj Apprentissage automatique 56 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Perceptron (Rosenblatt, 1957)

X1

X2

Xn

1

.

.

. hw(x)

Threshold

w1

w2

wn

b.Principe..

.

Le vecteur de poids W correspond aux paramètres du modèle

On ajoute également un biais b, qui équivaut à ajouter une entréexn+1 = 1

A partir de l’échantillon d’apprentissage, il faut trouver le vecteur depoids W et le biais b, tel que :

W .X + biais{≥ 0≤ 0 ⇒ X ∈

{c1c2

Rym Guibadj Apprentissage automatique 57 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Perceptron (Rosenblatt, 1957)

X1

X2

Xn

1

.

.

. hw(x)

Threshold

w1

w2

wn

b

.Principe..

.

Idée : modéliser la décision à l’aide d’une fonction linéaire, suivid’un seuil :

hW (x) = Threshold(W .X )

où Threshold(z) = 1 si z ≥ 0, sinon Threshold(z) = 0

Rym Guibadj Apprentissage automatique 58 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Algorithme du perceptron

...1 Pour chaque paire de l’ensemble d’apprentissage (xt , yt) ∈ DCalculer la réponse produite par le perceptronhw (xt) = Threshold(w .xt)Si yt = hw (xt) alors l’exemple est bien classé : ne rien faireSinon (yt ̸= hw (xt)) mettre à jour les poids et le biais selon larègle suivante :

wi ← wi + α(yt − hw (xt)) ∗ xt,i ∀i

...2 Retourner à 1 jusqu’à l’atteinte d’un critère d’arrêt : nombremaximal d’itérations atteint ou tous les exemples sont bienclassés

La mise à jour des poids est appelée la règle d’apprentissage duperceptron. Le multiplicateur α est appelé le taux d’apprentissage

Rym Guibadj Apprentissage automatique 59 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Ensemble d’apprentissage D

xt yt

[2, 0] 1[0, 3] 0[3, 0] 0[1, 1] 1

On initialise les poids et le biais aléatoirement : w ← [0, 0] ,b = 0.5On choisit le pas égal à 0.1 : α = 0.1On lit le prochain exemple.On calcule la sortie.On met à jour les poids si nécessairewi ← wi + α(yt − hw (xt)) ∗ xt,i

On ré-itère tant qu’on n’a pas convergé et qu’on a du temps

Rym Guibadj Apprentissage automatique 60 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Ensemble d’apprentissage D

xt yt[2, 0] 1[0, 3] 0[3, 0] 0[1, 1] 1

Iteration Exemple b w1 w2∑

xt,i ∗ wi hw (xt) yt1 [2, 0] 0.5 0 0 0.5 1 1

Puisque h(x1) = y1, on ne fait pas de mise à jour w et b

Rym Guibadj Apprentissage automatique 61 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Ensemble d’apprentissage D

xt yt[2, 0] 1[0, 3] 0[3, 0] 0[1, 1] 1

Iteration Exemple b w1 w2∑

xt,i ∗ wi hw (xt) yt1 [2, 0] 0.5 0 0 0.5 1 12 [0, 3] 0.5 0 0 0.5 1 0

Puisque h(x2) ̸= y2, on met à jour w et b :

w ← w + α ∗ (y2 − h(x2)) ∗ x2 = [0, 0] + 0.1 ∗ (0− 1)[0, 3] = [0,−0.3]

b ← b + α ∗ (y2 − h(x2)) = 0.5 + 0.1(0− 1) = 0.4

Rym Guibadj Apprentissage automatique 62 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Ensemble d’apprentissage D

xt yt[2, 0] 1[0, 3] 0[3, 0] 0[1, 1] 1

Iteration Exemple b w1 w2∑

xt,i ∗ wi hw (xt) yt1 [2, 0] 0.5 0 0 0.5 1 12 [0, 3] 0.5 0 0 0.5 1 03 [3, 0] 0.4 0 −0.3 0.4 1 0

.Calcul de la séparatrice..

.

b + w1x1 + w2x2 = 0

x2 = −w1w2∗ x1 − b

w2

x2 = − 0−0.3 ∗ x1 − 0.4

−0.3

x2 = 0.12

Rym Guibadj Apprentissage automatique 63 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Ensemble d’apprentissage D

xt yt[2, 0] 1[0, 3] 0[3, 0] 0[1, 1] 1

Iteration Exemple b w1 w2∑

xt,i ∗ wi hw (xt) yt1 [2, 0] 0.5 0 0 0.5 1 12 [0, 3] 0.5 0 0 0.5 1 03 [3, 0] 0.4 0 −0.3 0.4 1 0

Rym Guibadj Apprentissage automatique 64 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Ensemble d’apprentissage D

xt yt[2, 0] 1[0, 3] 0[3, 0] 0[1, 1] 1

Iteration Exemple b w1 w2∑

xt,i ∗ wi hw (xt) yt1 [2, 0] 0.5 0 0 0.5 1 12 [0, 3] 0.5 0 0 0.5 1 03 [3, 0] 0.4 0 −0.3 0.4 1 0

Puisque h(x3) ̸= y3, on met à jour w et b :

w ← w + α ∗ (y3 − h(x3)) ∗ x2 = [0,−0.3] + 0.1 ∗ (0− 1)[3, 0] = [−0.3,−0.3]

b ← b + α ∗ (y3 − h(x3)) = 0.4 + 0.1(0− 1) = 0.3

Rym Guibadj Apprentissage automatique 65 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Ensemble d’apprentissage D

xt yt[2, 0] 1[0, 3] 0[3, 0] 0[1, 1] 1

Iteration Exemple b w1 w2∑

xt,i ∗ wi hw (xt) yt1 [2, 0] 0.5 0 0 0.5 1 12 [0, 3] 0.5 0 0 0.5 1 03 [3, 0] 0.4 0 −0.3 0.4 1 04 [1, 1] 0.3 −0.3 −0.3 −0.3 0 1

Rym Guibadj Apprentissage automatique 66 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Ensemble d’apprentissage D

xt yt[2, 0] 1[0, 3] 0[3, 0] 0[1, 1] 1

Iteration Exemple b w1 w2∑

xt,i ∗ wi hw (xt) yt1 [2, 0] 0.5 0 0 0.5 1 12 [0, 3] 0.5 0 0 0.5 1 03 [3, 0] 0.4 0 −0.3 0.4 1 04 [1, 1] 0.3 −0.3 −0.3 −0.3 0 1

Puisque h(x4) ̸= y4, on met à jour w et b :

w ← w +α ∗ (y4− h(x4)) ∗ x2 = [−0.3,−0.3] + 0.1 ∗ (1− 0)[1, 1] = [−0.2,−0.2]

b ← b + α ∗ (y4 − h(x4)) = 0.3 + 0.1(1− 0) = 0.4

Rym Guibadj Apprentissage automatique 67 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Ensemble d’apprentissage D

xt yt[2, 0] 1[0, 3] 0[3, 0] 0[1, 1] 1

Iteration Exemple b w1 w2∑

xt,i ∗ wi hw (xt) yt1 [2, 0] 0.5 0 0 0.5 1 12 [0, 3] 0.5 0 0 0.5 1 03 [3, 0] 0.4 0 −0.3 0.4 1 04 [1, 1] 0.3 −0.3 −0.3 −0.3 0 15 [2, 0] 0.4 −0.2 −0.2 0 1 1

Rym Guibadj Apprentissage automatique 68 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Ensemble d’apprentissage D

xt yt[2, 0] 1[0, 3] 0[3, 0] 0[1, 1] 1

Iteration Exemple b w1 w2∑

xt,i ∗ wi hw (xt) yt1 [2, 0] 0.5 0 0 0.5 1 12 [0, 3] 0.5 0 0 0.5 1 03 [3, 0] 0.4 0 −0.3 0.4 1 04 [1, 1] 0.3 −0.3 −0.3 −0.3 0 15 [2, 0] 0.4 −0.2 −0.2 0 1 1

Puisque h(x1) = y1, on ne met pas à jour w et b

Et ainsi de suite, jusqu’à l’atteinte d’un critère d’arrêt...

Rym Guibadj Apprentissage automatique 69 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Ensemble d’apprentissage D

xt yt[2, 0] 1[0, 3] 0[3, 0] 0[1, 1] 1

Iteration Exemple b w1 w2∑

xt,i ∗ wi hw (xt) yt1 [2, 0] 0.5 0 0 0.5 1 12 [0, 3] 0.5 0 0 0.5 1 03 [3, 0] 0.4 0 −0.3 0.4 1 04 [1, 1] 0.3 −0.3 −0.3 −0.3 0 15 [2, 0] 0.4 −0.2 −0.2 0 1 16 [0, 3] 0.4 −0.2 −0.2 −0.2 0 07 [3, 0] 0.4 −0.2 −0.2 −0.2 0 08 [1, 1] 0.4 −0.2 −0.2 0 1 1

Arrêt de l’algorithme car tous les exemples sont bien classés.

Rym Guibadj Apprentissage automatique 70 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple 2 de déroulement

Apprendre la fonction OU logique

Ensemble d’apprentissage D

xt yt

[0, 0] 0[0, 1] 1[1, 0] 1[1, 1] 1

On initialise les poids et le biais aléatoirement : w ← [0, 1] ,b = −1On choisit le pas égal à 1 : α = 1

Rym Guibadj Apprentissage automatique 71 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple 2 de déroulement

Iteration Exemple b w1 w2∑

xt,i ∗ wi hw (xt) yt1 [0, 0] −1 0 1 −1 0 02 [0, 1] −1 0 1 0 1 13 [1, 0] −1 0 1 −1 0 14 [1, 1] 0 1 1 2 1 15 [0, 0] 0 1 1 0 1 06 [0, 1] −1 1 1 0 1 17 [1, 0] −1 1 1 0 1 18 [1, 1] −1 1 1 1 1 19 [0, 0] −1 1 1 −1 0 0

Rym Guibadj Apprentissage automatique 72 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Surface de séparation

Le perceptron cherche un séparateur linéaire entre les deuxclasses

.La surface de décision d’un classifieur est la surface quisépare les deux régions classifiées dans les deux classesdifférentes

Rym Guibadj Apprentissage automatique 73 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Convergence et séparabilité

Si les exemples sont linéairement séparables, le perceptrongaranti de converger à une solution avec une erreur nullesur l’ensemble d’entraînement, pour tout α

.Sinon, pour garantir la convergence à une solution ayant laplus petite erreur possible en entraînement, on doitdécroître le taux d’apprentissage, par ex. selon αk = α

1+βk

Rym Guibadj Apprentissage automatique 74 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Courbe d’apprentissage

La courbe d’apprentissage est la courbe du taux d’erreur (ou desuccès) en fonction du nombre de mises à jour des paramètresUtile pour visualiser la progression de l’apprentissage

linéairement séparable pas linéairement séparable taux d’apprentissage

décroissant

Rym Guibadj Apprentissage automatique 75 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Apprentissage vue comme la minimisation d’une perte

Le problème de l’apprentissage peut être formulé comme unproblème d’optimisation

pour chaque exemple d’entraînement, on souhaite minimiserune certaine distance Loss(yt , hw (xt)) entre la cible yt et laprédiction hw (xt)on appelle cette distance une perte :Loss(yt , hw (xt)) = (yt − hw (xt))

2

On peut dériver l’algorithme du perceptron de cette façon ...

Rym Guibadj Apprentissage automatique 76 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Rappel : Dérivée

On peut obtenir de l’information sur la variation d’unefonction via sa dérivée

f ′(x) =∂f (x)∂x

= lim∆→0

f (x +∆)− f (x)∆

Le signe de la dérivée est la direction d’augmentation de fsigne positif indique que f (x) augmente lorsque x augmentesigne négatif indique que f (x) diminue lorsque x augmente

La valeur absolue de la dérivée est le taux d’augmentation de f

Rym Guibadj Apprentissage automatique 77 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Rappel : Dérivée

Dérivées usuelles defonctions∂a∂x = 0

∂xn

∂x = nxn−1

∂log(x)∂x = 1

x

∂exp(x)∂x = exp(x)

Dérivées de composition defonctions∂af (x)∂x = a∂af (x)

∂x

∂f (x)n∂x = nf (x)n−1 ∂f (x)n

∂x

∂exp(f (x))∂x = exp(f (x))∂af (x)

∂x

∂log(f (x))∂x = 1

f (x)∂af (x)∂x

* a et n sont des constantes

Rym Guibadj Apprentissage automatique 78 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Rappel : Dérivée partielle

Dans notre cas, la fonction à optimiser dépend de plus d’unevariable : elle dépend de tous nos paramètres.On va considérer alors les dérivées partielles, c.-à-d. ladérivée par rapport à chacune des variables en supposant queles autres sont constantes :

∂f (x , y)∂x

= lim∆→0

f (x +∆, y)− f (x , y)∆

∂f (x , y)∂y

= lim∆→0

f (x , y +∆)− f (x , y)∆

Rym Guibadj Apprentissage automatique 79 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Rappel : Dérivée partielle

On va appeler gradient ∇f d’une fonction f le vecteurcontenant les dérivées partielles de f par rapport à toutes lesvariables

∇f (x , y) =[∂f (x , y)

∂x,∂f (x , y)

∂y

]Exemple f (x , y) = x2

y :

∇f (x , y) =[2xy,−x2

y2

]

Rym Guibadj Apprentissage automatique 80 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Algorithme de descente de gradient

Rym Guibadj Apprentissage automatique 81 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Algorithme de descente de gradient

Le gradient donne la direction (vecteur) ayant le tauxd’accroissement de la fonction le plus élevé

Rym Guibadj Apprentissage automatique 82 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Algorithme de descente de gradient

Le gradient donne la direction (vecteur) ayant le tauxd’accroissement de la fonction le plus élevé

Rym Guibadj Apprentissage automatique 83 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Algorithme de descente de gradient

En apprentissage automatique, on souhaite optimiser :

1|D|

∑(xt ,yt)∈D

Loss(yt , hw (xt))

Le gradient par rapport à la perte moyenne contient lesdérivées partielles :

1|D|

∑(xt ,yt)∈D

∂wiLoss(yt , hw (xt)) ∀i

Devrait calculer la moyenne des dérivées sur tous les exemplesd’entraînement avant de faire une mise à jour des paramètres !

Rym Guibadj Apprentissage automatique 84 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Descente de gradient stochastique

Descente de gradient stochastique : mettre à jour lesparamètres à partir du gradient d’un seul exemple, choisialéatoirement :Initialiser w aléatoirementPour T itérationsPour chaque exemple d’entraînement (xt , yt)

wi ← wi − α∂

∂wiLoss(yt , hw (xt)) ∀i

Cette procédure est plus efficace lorsque l’ensembled’entraînement est grand

Rym Guibadj Apprentissage automatique 85 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Retour sur le perceptron

On utilise le gradient pour déterminer une direction de mise àjour des paramètres :

∂wiLoss(yt , hw (xt)) =

∂wi(yt − hw (xt))

2 =

2(yt − hw (xt)) ∗∂

∂wi(yt − hw (xt)) ≃ −2(yt − hw (xt))xt,i

Pour mettre à jour les paramètres, on va dans la directionopposée de ce gradient :

wi ← wi − α∂

∂wiLoss(yt , hw (xt)) ∀i

on obtient la règle d’apprentissage du perceptron

wi ← wi + α(yt − hw (xt))xt,i ∀iRym Guibadj Apprentissage automatique 86 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Apprentissage vu comme la minimisation d’une perte

La procédure de descente de gradient stochastique estapplicable à n’importe quelle perte dérivable partoutDans le cas du perceptron, la dérivée de hw (x) n’est pascontinue lorsque w .x = 0

L’utilisation de la fonction Threshold fait que la courbed’entraînement peut être instable.

Rym Guibadj Apprentissage automatique 87 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Régression logistique (sigmoid)

.Idée..

.

Plutôt que de prédire une classe, prédire une probabilitéd’appartenir à cette classe :hw (x) = p(y = classe1|x) = Logistic(w .x) = 1

1+e−w.x

Choisir la classe la plus probable selon lemodèle

Si hw (xt) >= 0.5 choisir la classe 1Sinon choisir la classe 2

Rym Guibadj Apprentissage automatique 88 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Régression logistique (sigmoid)

Pour obtenir une règle d’apprentissage, on définit d’abord une perte :

∂wiLoss(yt , hw (xt)) =

∂wi(yt − hw (xt))

2 =∂

∂wi(yt − Logistic(w .xt))

2

On dérive la règle d’apprentissage :∂

∂wiLoss(yt , hw (xt)) = 2(yt − Logistic(w .xt))

∂∂wi

(yt − Logistic(w .xt))

= −2(yt − Logistic(w .xt)) ∗ Logistic ′(w .xt) ∗ ∂∂wi

(w .xt)

= −2(yt − Logistic(w .xt)) ∗ Logistic ′(w .xt) ∗ xt,i

La dérivée de la fonction logistique vérifie :

Logistic ′(z) = Logistic(z) ∗ (1− Logistic(z))

On a donc∂

∂wiLoss(yt , hw (xt)) = −2(yt − Logistic(w .xt)) ∗ Logistic(w .xt)

∗(1− Logistic(w .xt)) ∗ xt,i

On obtient la règle d’apprentissage suivante

wi ← wi +α(yt −Logistic(w .xt))∗Logistic(w .xt)∗ (1−Logistic(w .xt))∗ xt,i ∀i

Rym Guibadj Apprentissage automatique 89 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Limitation des classifieurs linéaires

Si les données d’entraînement sont linéairement séparables, leperceptron va trouver cette séparation

L’algorithme des k plus proches voisins est non-linéaire, maiscoûteux en mémoires et temps de calcul

Rym Guibadj Apprentissage automatique 90 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Limitation des classifieurs linéaires

La majorité des problèmes de classification ne sont pas linaires

Un classifieur linéaire ne peut même pas apprendre la fonctionXOR !

Rym Guibadj Apprentissage automatique 91 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Limitation des classifieurs linéaires

On pourrait transformer l’entrée de façon à rendre le problèmelinéairement séparable.Dans le cas de XOR, on pourrait remplacer

x1 par AND(x1, x2)x2 par OR(x1, x2)

Rym Guibadj Apprentissage automatique 92 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Réseau de neurones artificiel

.Principe..

.Apprentissage des poids afin d’entraîner le réseau à effectuer destâches de classification ou de régression

Rym Guibadj Apprentissage automatique 93 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Réseau de neurones artificiel.Principe..

.

Un neurone d’entrée est une unité correspondant à unedonnée d’entrée.Un neurone de sortie est une unité qui fournit une hypothèsed’apprentissage.Un neurone caché est une unité interne du réseau, qui n’estni une entrée ni une sortie.

Rym Guibadj Apprentissage automatique 94 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Réseau de neurones artificiel

Réseau de neurones avec 4 couches dont deux couches cachées

On note aj l’activité du jeme "neurone", incluant les neuronesd’entrée et de sortiePour les neurones d’entrée on aura aj = xi

Pour les autres neurones aj = Logistic(∑

i wi ,jai )

Rym Guibadj Apprentissage automatique 95 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Visualisation de la rétropropagation

L’algorithme d’apprentissage commence par une propagationavant

aj = Logistic(∑

i

wi ,jai )

Rym Guibadj Apprentissage automatique 96 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Visualisation de la rétropropagation

Ensuite, le gradient (le Delta) sur la sortie est calculé

∆[i ] = Logistic(ini ) ∗ (1− Logistic(ini )) ∗ (yi − ai )

ini =∑

k∈precedents(i)

wk,iak

Rym Guibadj Apprentissage automatique 97 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Visualisation de la rétropropagation

Le gradient (le Delta) est rétropropagé

∆[i ]← Logistic(ini ) ∗ (1− Logistic(ini )) ∗∑

j∈suivants(i)

wi ,j∆[j ]

ini =∑

k∈precedents(i)

wk,iak

Rym Guibadj Apprentissage automatique 98 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Visualisation de la rétropropagation

Mettre à jour les poids wi ,j de tous le réseau en appliquant la règled’apprentissage généralisée

wi ,j ← wi ,j + α ∗∆[j ] ∗ ai

Rym Guibadj Apprentissage automatique 99 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Algorithme de rétropropagation.Algorithme de rétropropagation (exemples, réseau)..

.

initialiser les poids du réseau wi,j aléatoirementwhile le critère d’arrêt n’est pas atteint do

/* propagation des entrées pour le calcul des sorties */for chaque neurone j de la couche d’entrée doaj ← xiend forfor l = 2 to L do

for chaque neurone j de la couche l doaj ← Logistic(

∑i wi,jai )

end forend for/* rétropropagation des ∆ de la couche de sortie jusqu’à la couche d’entrée */for chaque neurone i de la couche de sortie do∆[i ]← Logistic(ini ) ∗ (1− Logistic(ini )) ∗ (yi − ai )end forfor l = L− 1 to 1 do

for chaque neurone i de la couche l doini ←

∑k∈precedents(i) wk,iak

∆[i ]← Logistic(ini ) ∗ (1− Logistic(ini )) ∗∑

j∈suivants(i) wi,j∆[j]endfor

endforRym Guibadj Apprentissage automatique 100 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Algorithme de rétropropagation

.Algorithme de rétropropagation (suite)..

.

/* mise à jour des poids du réseau en utilisant les ∆ */for chaque poids wi,j dowi,j ← wi,j + α ∗∆[j] ∗ aiendfor

end while

Rym Guibadj Apprentissage automatique 101 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Exemple : x=[2,-1], y=0

2

-1

0.5

1.5

-1

-2

1

-1

3

-4

1

-3

Propagation avant

aj = Logistic(∑

i

wi ,jai )

Rym Guibadj Apprentissage automatique 102 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Exemple : x=[2,-1], y=0

2 0.378

-1

0.5

1.5

-1

-2

1

-1

3

-4

1

-3

Propagation avant

Logistic(0.5 ∗ 2 + 1.5 ∗ −1) = Logistic(−0.5) = 0.378

Rym Guibadj Apprentissage automatique 103 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Exemple : x=[2,-1], y=0

2 0.378

-1 0.5

0.5

1.5

-1

-2

1

-1

3

-4

1

-3

Propagation avant

Logistic(−1 ∗ 2 +−2 ∗ −1) = Logistic(0) = 0.5

Rym Guibadj Apprentissage automatique 104 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Exemple : x=[2,-1], y=0

2 0.378

-1 0.5

0.867

0.085

0.648

0.5

1.5

-1

-2

1

-1

3

-4

1

-3

Propagation avant

Rym Guibadj Apprentissage automatique 105 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Exemple : x=[2,-1], y=0

2 0.378

-1 0.5

0.867

0.085

0.648

0.5

1.5

-1

-2

1

-1

3

-4

1

-3

Rétropropagation

∆[i ] = Logistic(ini ) ∗ (1− Logistic(ini )) ∗ (yi − ai )

Rym Guibadj Apprentissage automatique 106 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Exemple : x=[2,-1], y=0

2 0.378

-1 0.5

0.867

0.085

0.648

0.5

1.5

-1

-2

1

-1

3

-4

1

-3

= -0,148

Rétropropagation

∆ = 0.648 ∗ (1− 0.648) ∗ (0− 0.648) = −0.148

Rym Guibadj Apprentissage automatique 107 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Exemple : x=[2,-1], y=0

2 0.378

-1 0.5

0.867

0.085

0.648

0.5

1.5

-1

-2

1

-1

3

-4

1

-3

= -0,148

Rétropropagation

∆[i ] = Logistic(ini ) ∗ (1− Logistic(ini )) ∗∑

j∈suivants(i)

wi ,j ∗∆[j ]

Rym Guibadj Apprentissage automatique 108 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Exemple : x=[2,-1], y=0

2 0.378

-1 0.5

0.867

0.085

0.648

0.5

1.5

-1

-2

1

-1

3

-4

1

-3

= -0,148

= -0,017

Rétropropagation

∆ = 0.867 ∗ (1− 0.867) ∗ (1 ∗ −0.148) = −0.017

Rym Guibadj Apprentissage automatique 109 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Exemple : x=[2,-1], y=0

2 0.378

-1 0.5

0.867

0.085

0.648

0.5

1.5

-1

-2

1

-1

3

-4

1

-3

= -0,148

= -0,017

= 0,035

Rétropropagation

∆ = 0.085 ∗ (1− 0.085) ∗ (−3 ∗ −0.148) = 0.035

Rym Guibadj Apprentissage automatique 110 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Exemple : x=[2,-1], y=0

2 0.378

-1 0.5

0.867

0.085

0.648

0.5

1.5

-1

-2

1

-1

3

-4

1

-3

= -0,148

= -0,017

= 0,035

= -0,012

Rétropropagation

∆ = 0.378 ∗ (1− 0.378) ∗ (1 ∗ −0.017 +−1 ∗ 0.035) = −0.012

Rym Guibadj Apprentissage automatique 111 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Exemple : x=[2,-1], y=0

2 0.378

-1 0.5

0.867

0.085

0.648

0.5

1.5

-1

-2

1

-1

3

-4

1

-3

= -0,148

= 0,035

= -0,017 = -0,012

= -0,048

Rétropropagation

∆ = 0.5 ∗ (1− 0.5) ∗ (3 ∗ −0.017 +−4 ∗ 0.035) = −0.048

Rym Guibadj Apprentissage automatique 112 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Exemple : x=[2,-1], y=0

2 0.378

-1 0.5

0.867

0.085

0.648

0.5

1.5

-1

-2

1

-1

3

-4

1

-3

=-0,012

= -0,048

= -0,017

= 0,035

= -0,148

Mise à jours des poids avec α = 1

wi ,j ← wi ,j + α ∗∆[j ] ∗ ai

Rym Guibadj Apprentissage automatique 113 / 114

..Introduction PPV Arbre de décision Perceptron Réseau de neurones

Exemple de déroulement

Exemple : x=[2,-1], y=0

2 0.378

-1 0.5

0.867

0.085

0.648

0.5

1.5

-1

-2

1

-1

3

-4

1

-3

=-0,012

= -0,048

= -0,017

= 0,035

= -0,148

w1,3 ← 0.5+1∗−0, 012∗2 = 0, 48

w1,4 ← −1+1∗−0, 048∗2 = −1.10

w2,3 ← 1, 5+1∗−0, 012∗−1 = 1.51

w2,4 ← −2+1∗−0, 048∗−1 = −1.95

w3,5 ← 1+1∗−0, 017∗0, 378 = 0.99

w3,6 ← −1+1∗0, 035∗0, 378 = −0.99

w4,5 ← 3+1∗−0, 017∗0, 5 = 3

w4,6 ← −4+1∗0, 035∗0, 5 = −3.98

w5,7 ← 1+1∗−0, 148∗0, 867 = 0.87

w6,7 ← −3+1∗−0, 148∗0, 085 = −3.01

Rym Guibadj Apprentissage automatique 114 / 114