Module 5 - Réseaux de neurones Exercices - Corrigé Exercice 1 On possède l’ense
Module 5 - Réseaux de neurones Exercices - Corrigé Exercice 1 On possède l’ensemble d’entraînement suivant : xi yi [3, 2, 1] 0 [1, 1, 1] 1 [1, 2, 3] 1 1. La simulation de l’algorithme du perceptron est la suivant : — Pour x1 : Z = x11 ∗w1 + x12 ∗w2 + x13 ∗w3 + b Z = 0.5, ce qui est plus grand que 0, alors, f(x1) = 1. Puisque la prédiction est fausse, alors nous devons mettre à jour les poids. w′ = w + η ∗(d −y) ∗x w1′ = 0 + 0, 1 ∗(0 −1) ∗3 = −0, 3 w2′ = 0 + 0, 1 ∗(0 −1) ∗2 = −0, 2 w3′ = 0 + 0, 1 ∗(0 −1) ∗1 = −0, 1 b′ = 0, 5 + 0, 1 ∗(0 −1) ∗1 = 0, 4 — Pour x2 : Z = x21 ∗w′ 1 + x12 ∗w′ 1 + x13 ∗w′ 3 + b′ Z = −0.2, ce qui n’est pas plus grand que 0, alors, f(x2) = 0. Puisque la prédiction est fausse, alors nous devons mettre à jour les poids. w′′ = w + η ∗(d −y) ∗x w1′′ = −0, 3 + 0, 1 ∗(0 −1) ∗1 = −0, 2 w2′′ = −0, 2 + 0, 1 ∗(0 −1) ∗1 = −0, 1 w3′′ = −0, 2 + 0, 1 ∗(0 −1) ∗1 = 0 b′ = 0, 4 + 0, 1 ∗(0 −1) ∗1 = 0, 5 — Pour x3 : Z = x31 ∗w′′ 1 + x32 ∗w′′ 1 + x33 ∗w′′ 3 + b′′ Z = 0.1, ce qui est plus grand que 0, alors, f(x3) = 1. Ce qui est correct, alors aunue mise à jours des poids n’est requise. 2. La simulez de l’algorithme du perceptron sur cet ensemble de données en utilisant le logiciel R : 1 perceptron <- function(x, y, lr) { 2 # initialisation du vesteur poids 3 poids <- c(0.5 ,0 ,0 ,0) 4 # Boucle pour les d o n n e s d’ e n t r a n e m e n t 5 for (j in 1: length(y)){ 6 z <- 0 7 for (i in 1:3) { 8 # P r d i r e le "label" binaire 9 z <- z +poids[i+1]*as.numeric(x[i,j]) 10 } 11 z <- z + poids [1] 12 if(z <= 0) { 13 ypred <- 0 14 } else { 15 ypred <- 1 16 } 17 for (i in 1:3){ 18 poids[i+1] <- poids[i+1] + lr * (y[j] - ypred) *as.numeric( x[i,j]) Dernière mise à jour le 2 novembre 2018. 1 19 } 20 poids [1] <- poids [1] + lr * (y[j] - ypred) 21 # afficher le poids 22 print(poids) 23 } 24 } 25 26 x <- matrix(c(3,2,1,1,1,1,1,2,3),ncol = 3, nrow = 3) 27 y <- c(0,1,1) 28 29 err <- perceptron(x, y ,0.1) Exercice 2 1. Calculer la distance euclidienne entre les entrées et les poids : D1 = Σ(X −w1)2 = (0, 5 −0, 3)2 + (0, 2 −0, 7)2 = 0, 29 D2 = Σ(X −w2)2 = (0, 5 −0, 6)2 + (0, 2 −0, 9)2 = 0, 5 D3 = Σ(X −w3)2 = (0, 5 −0, 1)2 + (0, 2 −0, 5)2 = 0, 25 D4 = Σ(X −w4)2 = (0, 5 −0, 4)2 + (0, 2 −0, 3)2 = 0, 02 D5 = Σ(X −w5)2 = (0, 5 −0, 8)2 + (0, 2 −0, 2)2 = 0, 09 Alors le neurone gagnant est le neurone numéro 4. 2. La valeur du poids mise à jours pour le neurone numéro 4 est calculé à l’aide de la fonction suivante : w(nouveau) = w(ancien) + a(x + w(ancien)) Alors : w41(nouveau) = 0, 4 + 0, 2 ∗(0, 5 + 0, 4) = 0, 58 w42(nouveau) = 0, 3 + 0, 2 ∗(0, 2 + 0, 3) = 0, 4 3. Les valeurs mises à jours pour les autres neuronnes : w11(nouveau) = 0, 3 + 0, 2 ∗(0, 5 + 0, 3) = 0, 46 w12(nouveau) = 0, 7 + 0, 2 ∗(0, 2 + 0, 7) = 0, 88 w21(nouveau) = 0, 6 + 0, 2 ∗(0, 5 + 0, 6) = 0, 82 w31(nouveau) = 0, 1 + 0, 2 ∗(0, 5 + 0, 1) = 0, 22 w32(nouveau) = 0, 5 + 0, 2 ∗(0, 2 + 0, 5) = 0, 64 w51(nouveau) = 0, 8 + 0, 2 ∗(0, 5 + 0, 8) = 1, 06 w52(nouveau) = 0, 2 + 0, 2 ∗(0, 2 + 0, 2) = 0, 28 Dernière mise à jour le 2 novembre 2018. 2 uploads/Geographie/ inf1421-corrige-module5-v3.pdf
Documents similaires










-
28
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Oct 05, 2021
- Catégorie Geography / Geogra...
- Langue French
- Taille du fichier 0.3652MB