TD3: Classification: Exercice 1

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 6

TD3 : Classification

Exercice 1 :
On veut classer les clients d’une banque en deux classes (bon pour un crédit, mauvais pour un
crédit). Nous possédant des données à partir de l’historique des clients. Ces données sont
décrit par 4 variables : Marital status {married, single, divorced}, Gender {male, female},
Age {[18..30[, [30..50[, [50..65[, [65+]}, Income {[10K..25K[, [25K..50K[, [50K..65K[,
[65K..100K[, [100K+]}.
Donner l’architecture d’un réseau de neurones qui peut classer un nouveau client.
• Couche d’entrée :
o Marital status : 3 neurones
o Gender :2 neurones
o Age : 4 neurones
o Income : 5 neurones
• Couche de sortie :
o 2 neurones : deux classes
• Couche intermédiaire :
o 8 neurones : (N entrée+ N sorties) /2

Exercice 2 :
Soit le réseau de neurones suivant, les poids et les biais sont initialisés comme présentés dans
la figure au-dessus. Ce réseau de neurones est dédié à la classification entre les clous et les vis.
Les données d’apprentissage sont comme suit :
T1{0.6, 0.1, clou}
T2{0.2, 0.3, vis}
Sachant que le learning rate est données par 𝜂 = 0.1, effectuez la forward propagation en
utilisant T1, puis effectuez les mise à jour des poids en utilisant la back propagation.
En utilise T1 comme entrée : T1{0.6, 0.1, clou}
Feed Forword :
La couche intermédiaire
Net3 =o1*w13 + o2*w23 +b3 = 0.6*0.1+0.1*(-0.2)+0.1 =0.14
On va utiliser la fonction d’activation sigmoid
1
O3= 1+𝑒 −𝑁𝑒𝑡3 = 0.53

Net4= o1*w14 + o2*w24 +b4 =0*0.6+0.1*0.2+0.2=0.22


1
O4=1+𝑒 −0.22 = 0.55

Net5 = o1*w15 + o2*w25 +b5 = 0.6*0.3+0.1*(-0.4)+0.5=0.64


1
O5 = = 1+𝑒 −0.64 = 0.65

La couche de sortie
Net6= (-0.4)*0.53+0.1*0.55+0.6*0.65-0.1 = 0.13
1
O6 = = = 0.53
1+𝑒 −0.13

Net7 = o3*w37+ o4*w47+o5 * w57 + b7 =0.53*0.2+0.55*(-0.1)+0.65*(-0.2)+0.6 = 0.52


O7=0.63
Backward pass en utilisant T1 : T1{0.6, 0.1, clou} on pose que le vecteur clou= [d6 d7]=[1
0] et le vecteur vis =[d6 d7] = [0 1]
Couche de sortie :
𝛿6=(d6-o6)*𝑓 ′ (𝑛𝑒𝑡6)= =(d6-o6)*o6*(1-o6) = (1-0.53)*0.53*(1-0.53) = 0.12
𝛿7=(d7-o7)*𝑓 ′ (𝑛𝑒𝑡7)= =(0-0.63)*0.63*(1-0.63) = -0.15
Mise à jour des poids :
∆𝑤36 = 𝜂 ∗ 𝑜3 ∗ 𝛿6= 0.1*0.53*0.12 =0.006
𝑤36 𝑛𝑒𝑤 = 𝑤36 + ∆𝑤36 = −0.4 + 0.006 = −0.394
∆𝑤36 = 𝜂 ∗ 𝑜3 ∗ 𝛿7= 0.1 * (-0.15) *0.53 = -0.008
𝑤37 𝑛𝑒𝑤 = -0.19
On fait la même chose pour 𝑤46 , 𝑤47 , 𝑤56 𝑒𝑡 𝑤57
La mise à jour des biais :
∆𝑏6 = 𝜂 ∗ 𝛿6 ∗ 𝑑6 = 0.1 ∗ 0.12 ∗ 1 = 0.012
b6_new = -0.1 +0.012 =-0.012
Couche intermédiaire :
𝛿3 = (𝑤36 𝑛𝑒𝑤 ∗ 𝛿6 + 𝑤37 𝑛𝑒𝑤 ∗ 𝛿7) ∗o3*(1-o3) = (- 0.394*0.12+0.19*(-0.15))*0.53*(1-
0.53) = -0.019
On fait la même chose pour 𝛿4 𝑒𝑡 𝛿5.
Mise à jour des poids :
∆𝑤13 = 𝜂 ∗ 𝛿3 ∗ 𝑜1 = 0.1 ∗ (−0.019) ∗ 0.6=-0.0011
𝑤13 𝑛𝑒𝑤 = 0.1 − 0.0011=0.0989
On fait pareil pour 𝑤23 𝑛𝑒𝑤, 𝑤14 _𝑛𝑒𝑤, 𝑤24 _𝑛𝑒𝑤, 𝑤15_ 𝑛𝑒𝑤 𝑒𝑡 𝑤25 _𝑛𝑒𝑤

Exercice 3 :
En utilisant la base de données suivante prédire la classe de l’échantillon (E) en utilisant le
Naive Baysien :
E : age<=30, income=medium, student=yes, credit-rating=fair
Solution :
𝑃(𝐸1⁄𝑦𝑒𝑠)𝑃(𝐸2⁄𝑦𝑒𝑠)𝑃(𝐸3⁄𝑦𝑒𝑠)𝑃(𝐸4⁄𝑦𝑒𝑠)𝑃(𝑦𝑒𝑠)
𝑃(𝑦𝑒𝑠/𝐸) = 𝑃(𝐸)

Le Naïve bayésien prédit que la classe buys_computer = yes

Exercice 4 :
Les données suivant sont les valeurs météo pour savoir si la décision de jouer un match de
Tennis va être positive ou négative (play = yes ou play =no)
On veut faire la prédiction pour le jeu pour la météo suivante :
outlook=overcast, temperature=60, humidity=62, windy=false.
On cherche d’abord la moyenne et l’écart type des variables continues :

Donc, on doit calculer f(temperature=60|yes), f(temperature=60|no), f(humidity=62|yes) et


f(humidity=62|no) en utilisant la densité de probabilité.
9 5
𝑃(𝑦𝑒𝑠) = 14 = 0.643 𝑃(𝑛𝑜) = 14 = 0.357

Puisque, P(outlook=overcast|no)=0, on utilise Laplace pour la variable outlook. Cette variable


comporte 3 valeurs (sunny, rain, overcast)

Enfin, on peut calculer les probabilités :

La classe play =yes

Vous aimerez peut-être aussi