Академический Документы
Профессиональный Документы
Культура Документы
Types d’approches
SE: système expert RN: réseau de neurones artificiels
LC: logique classique AG: algorithme génétique
LF: logique floue RB: réseau bayésien
AD: arbres de décisions
ON: ontologies
SC: schémas
BC: système à base de cas
Évaluation
- -: mauvais +/- : variable selon variantes
- : plutôt mauvais
+: plutôt bon
++: bon
Adaptè de M. Negnèvistrsky et Benoit Lavoie.
Comparaison de modèles
• Avantages et limites de chaque approche …
évaluation proposée par Approches Approches
Negnevitsky symboliques sous-
symboliques
Caractéristiques SE LC LF AD ON SC BC RN AG RB
Compréhensibilité des + ++ ++ ++ ++ + + -- - -
Représentations
Tolérance à l’incertitude + ++ ++ + + + + ++ ++ ++
Tolérance à l’imprécision +/- -- ++ + - - + ++ ++ +
Adaptabilité -- - - + - -- +/- ++ ++ +
Capacité d’apprentissage -- -- -- ++ +/- -- + ++ ++ ++
Capacité de découverte/fouille -- - - +/- + - -- ++ + +/-
Capacité d’explication ++ ++ ++ + + + + -- - +
Facilité de développement -- - - ++ - -- -- - - +
Maintenabilité -- + + ++ +/- - - ++ + +
Support de connaissances + + + - ++ ++ + -- -- --
complexes
Moteur d’inférence
Facilités explicatives
Interface usager
Usager
La base de connaissances neuronale
Ailes
+1 -0.8
Règle 1 Oiseau
1.0
Queue -1.6 -0.7 +1
0 -0.2
-0.1
-1.1
Bec Règle 2 Avion
+1 2.2 1.0
0.0 1
-1.0
Plumes 2.8
+1 -1.6
-2.9 Règle 3 Aéroplaneur
-1.1 1.9 1.0 1
Moteur
1
-1.3
0.2 1.0
a2 1.0 R2 b1 R6 0.7
1.0 c1
0.1
-0.1 1.0
a3 1.0 R3 b2 R7
1.0
1.0 1.0 0.9
c2
1.0 0.9 1.0
a4 R4 b3 R8
1.0
1.0 0.6
a5 R5
Comment trouver les règles minimales ?
• Trouver et ordonner les poids contributeurs (ceux qui ne
diminuent pas le résultat)
• Identifier les antécédents en partant du poids le plus fort
Ailes
+1 -0.8
Règle 1 Oiseau
Plumes : 2.8 (1 2.8=2.8)
1.0
Queue -1.6 -0.7 +1
0 -0.2 Bec : 2.2 (1 2.2=2.2)
-0.1
Bec
-1.1
Règle 2 Avion Moteur : 1.1 (-1 -2.1=2.1)
+1 2.2
0.0
1.0 1 Queue : 0.2 (0 -0.2=0)
-1.0
Ailes : 0.8 (1 -0.8= - 0.8)
Plumes 2.8
+1 -1.6
-2.9 Règle 3 Aéroplaneur
-1.1 1.9 1.0 1
Moteur
1
-1.3
x1 x1
A2 R2
x1 A2 R2
wR3 C1
C1
A3 A3 R3 R3 wR6
y
wR1
B1 B1 R4 R4 wR2
x2 C2
wR4
C2
R5
x2 x2 B2 wR5
B2 R5
x2
R6
B3
B3 R6
Couche 1 : Agit comme un tampon qui transmet simplement les
données d’entrée à la couche de flouïfication. On a :
yi(1) xi(1)
Couche 2 : Les neurones de cette couche réalisent chacun un
ensemble flou qui servira dans les antécédents des règles. Chaque
neurone reçoit une valeur d’entrée précise et génère son degré
d’appartenance à l’ensemble flou représenté par le neurone.
Dans le cas d’ensembles flous triangulaires, on peut utiliser des
fonctions d’appartenance de même forme qui sont définies par deux
paramètres {a, b} :
b
if xi( 2)
a
1 1
0, 2
a = 4, b =6 a = 4.5, b =6 a = 4, b =6
0.8 0.8
a = 4, b =4
2 xi( 2) a
0.6 0.6
b b
yi( 2) 1 , if a xi( 2) a
b 2 2 0.4 0.4
( 2) b 0.2 0.2
0, if xi a
2
X X
0 0
0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8
1 A1 B1 R1
(3)
yi(3) x1(i3) x2(3i ) xk(3i ) yR
Couche 4 : Elle réalise les disjonctions des antécédents de règles
floues. Chaque neurone dans cette couche reçoit comme entrée les
degrés d’appartenance définis dans la couche 3. L’union floue est
réalisé à l’aide de l’opérateur ou probabiliste :
(4)
yi( 4) x1(i4) x2( 4i ) xli( 4) yC1 R3 R6 C1
C1 représente la force combinée des conjonctions implémentées par
les neurones R3 et R6.
Couche 5 : Chaque neurone dans cette couche prend les ensembles
flous précédent, écrêtés par la force des règles correspondantes, et
les combine en un seul ensemble flou. Ce dernier est alors déflouïfié
par une méthode standard.
Entraînement d’un système neuro-flou
• On utilise un algorithme de RNA (e.g. retropropagation)
• Exemple :
0
1
0
0
Mise en oeuvre avec un système neuro-flou à 5 règles
S 1
1 wR1
x2 0.99 wR5
0.8
L 2 0
S y 0.6
wR4
Weight
wR3
3 0.72
L 0.4
0.61
S 4
x2 0.2 wR2
0.79
L 5 0
0 10 20 30 40 50
Epoch
0.8
S 1 0 wR2 wR8
x1 2
0.7
0.78
3
0.6 wR3 wR5
L 0.69 S
0.5
4 y
0
0.62
0.4
5
0.3 wR6 & wR7
S 6 0 L
0 0.2
x2 wR1
7 0.1
0.80 wR4
L 8 0
0 10 20 30 40 50
Epoch
A1 1 N1 1
x1
A2 2 N2 2
y
B1 3 N3 3
x2
B2 4 N4 4
Couche 1 : Tampon pour les données d’entrée
Couche 2 : Neurones de flouïfication pour les
antécédents des règles. Dans le modèle de Jang, les
fonctions d’appartenance sont des gaussiennes.
Couche 3 : Chaque neurone correspond à une règle floue
de Sugeno. il reçoit les sorties des neurones de
flouïfication et calcule son activation. La conjonction
des antécédents est réalisée avec l’opérateur produit.
Ainsi, la sortie du neurone i de la couche 3 est donnée
par
k
yi(3) x (ji3) y(3) = A1 B1 = 1,
et 1
j 1
où 1 represente le degré de vérité de Règle 1.
Couche 4 : Chaque neurone calcule le degré de vérité
normalisé d’une règle floue donnée. La valeur obtenue
représente la contribution de la règle floue au résultat
final. Ainsi la sortie du neurone i de la couche 4 est :
xii( 4) i ( 4) 1
yi( 4) i yN 1 1
n n 1 2 3 4
jix ( 4)
j
j 1 j 1
Détermination de l’architecture :
Deux entrées, x1 and x2, et une sortie, y.
Chaque entrée possède deux valeurs
linguistiques
Donc le réseau ANFIS possède quatre règles.
Modèle ANFIS avec quatre règles
A2 2 N2 2
y
B1 3 N3 3
x2
B2 4 N4 4
Apprentissage du réseau
-1
-2
-3
1
0.5 10
8
0 6
-0.5 4
2
-1 0
x2 x1
Apprentissage sur 100 périodes
y
Training Data
2 ANFIS Output
-1
-2
-3
1
0.5 10
8
0 6
-0.5 4
2
-1 0
x2 x1
On peut améliorer la précision d’approximation en
augmentant le nombre de valeurs linguisitques
par entrée. Par exemple, pour 3 valeurs on
obtient un réseau ANFIS à 9 règles :
x1 x2
A1 1 N1 1
2 N2 2
x1
A2
3 N3 3
A3 4 N4 4
y
5 N5 5
B1 6 N6 6
7 N7 7
x2
B2
8 N8 8
B3 9 N9 9
Apprentissage sur 1 période en utilisant 3
fonctions d’appartenance par variable d’entrée
y
Training Data
2 ANFIS Output
-1
-2
-3
1
0.5 10
8
0 6
-0.5 4
2
-1 0
x2 x1
Apprentissage sur 100 périodes en utilisant 3
fonctions d’appartenance par variable d’entrée
y
Training Data
2 ANFIS Output
-1
-2
-3
1
0.5 10
8
0 6
-0.5 4
2
-1 0
x2 x1
Fonctions d’appartenance initiales et finales
1 1
0.8 0.8
0.6 0.6
0.4 0.4
0.2 0.2
0 0
0 1 2 3 4 5 6 7 8 9 10 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
x1 x2
(a) Initial membership functions.
1 1
0.8 0.8
0.6 0.6
0.4 0.4
0.2 0.2
0 0
0 1 2 3 4 5 6 7 8 9 10 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
x1 x2
(b) Membership functions after 100 epochs of training.
Et pourquoi pas « neuroniser » un arbre de
décision flou ?
Arbre de classification/régression neuro-flou
A1 An
…
RNA de Flouïfication
…
DIT grand Arbre de
décision flou
0.65 0.35
0 1 1 0
0.2 0.65 0.35 0.3
RNA de Déflouïfication
Valeur/classe prédite
Flouïfication
• Perceptron