Aller au contenu
coden

Systèmes neuro-flous (ANFIS) : des règles floues qui apprennent à partir des données

Un système flou de Sugeno sous forme de réseau à cinq couches, l’apprentissage hybride par moindres carrés et gradient, l’apprentissage d’une fonction à partir de données bruitées, le choix du nombre de règles et le surapprentissage, la lisibilité des règles apprises et le lien avec les réseaux RBF.

13 minutes Matěj Žalmánek 2026-10-15

Série Bases de l’IA Partie 37 sur 52
  1. Carte de l’intelligence artificielle : qu’est-ce qui est quoi et comment tout s’emboîte
  2. Brève histoire de l’intelligence artificielle : de Turing aux modèles de langage
  3. Données, modèle, entraînement, inférence : les notions de base sur un seul exemple
  4. Lire la notation mathématique : symboles, indices, sommes et quantificateurs
  5. Ensembles et relations : les briques dont sont faites les définitions en IA
  6. Fonctions et applications : pourquoi tout modèle d’IA est une fonction
  7. Logique et démonstrations : les règles selon lesquelles on raisonne en IA
  8. Graphes et arbres : la structure sur laquelle reposent la recherche et les réseaux de neurones
  9. Algèbre linéaire pour l’apprentissage automatique : vecteurs, matrices et pourquoi l’IA multiplie surtout
  10. Dérivées, gradient et règle de dérivation en chaîne : comment un modèle sait dans quelle direction apprendre
  11. Descente de gradient : comment un modèle apprend
  12. Qu’est-ce que la probabilité : du lancer de dé aux axiomes de Kolmogorov
  13. Probabilité conditionnelle et théorème de Bayes : comment réviser une estimation quand on apprend du nouveau
  14. Variable aléatoire et fonction de répartition : une seule fonction qui dit tout de la loi
  15. Fonction de densité et fonction de masse : pourquoi une variable continue a une probabilité nulle en chaque point
  16. Espérance, variance et covariance : où se situe une loi, quelle est sa largeur et ce qui varie avec quoi
  17. Panorama des lois de probabilité : Bernoulli, binomiale, Poisson, uniforme, normale et exponentielle
  18. Loi des grands nombres et théorème central limite : pourquoi les moyennes sont si prévisibles
  19. Statistique et estimation de paramètres : maximum de vraisemblance, MAP et intervalles de confiance
  20. Théorie de l’information : entropie, entropie croisée et divergence KL — d’où viennent les fonctions de perte
  21. Recherche dans l’espace d’états : BFS, DFS, UCS et A* en animations
  22. Jeux et adversaires : minimax, élagage alpha-bêta et Monte Carlo tree search
  23. Satisfaction de contraintes : backtracking, propagation de contraintes et AC-3 sur un sudoku et une carte des régions tchèques
  24. Logique et systèmes à base de connaissances : chaînage avant et arrière, résolution et systèmes experts
  25. Planification : STRIPS, monde des blocs, heuristiques par relaxation et planification dans les agents IA
  26. Recherche locale et recuit simulé : un voyageur de commerce à travers les chefs-lieux de région tchèques
  27. Algorithmes génétiques : population, croisement, mutation et sélection sur un sac à dos de randonnée
  28. Stratégies d’évolution et programmation génétique : de la règle du cinquième à la loi de Kepler
  29. Optimisation par colonies de fourmis : comment une piste de phéromone trouve un chemin court
  30. Optimisation par essaim de particules : inertie, expérience propre et expérience de l’essaim
  31. Neuroévolution : faire évoluer les poids et la forme des réseaux de neurones, et l’algorithme NEAT
  32. Ensembles flous et fonctions d’appartenance : comment écrire « un peu chaud »
  33. Logique floue et probabilité : pourquoi « un peu chaud » ne veut pas dire « probablement chaud »
  34. Logique floue : t-normes, implications et règles SI–ALORS
  35. Commande floue : Mamdani et Sugeno, du ventilateur au pendule inversé sur un chariot
  36. Clustering flou : l’algorithme fuzzy c-means et les points entre les clusters
  37. Systèmes neuro-flous (ANFIS) : des règles floues qui apprennent à partir des données
  38. Chaînes de Markov : matrice de transition, distribution stationnaire et PageRank
  39. Modèles de Markov cachés : l’algorithme de Viterbi et le casino malhonnête
  40. Réseaux bayésiens : pourquoi l’herbe est mouillée et ce que cela implique pour l’arroseur
  41. Le filtre de Kalman : comment estimer, à partir de mesures imprécises, où se trouve une voiture et à quelle vitesse elle roule
  42. Types d’apprentissage automatique : supervisé, non supervisé, semi-supervisé et plus
  43. Prompts, contexte et RAG : comment donner au modèle les bonnes informations
  44. Autoencodeurs variationnels (VAE) : de nouvelles images à partir d’un espace latent continu
  45. Réseaux antagonistes génératifs (GAN) : le faussaire contre le détective
  46. Modèles de diffusion : comment une image naît du bruit pur
  47. Processus de décision markoviens : états, actions, récompenses et équations de Bellman
  48. Q-learning et DQN : apprendre la valeur des actions, du tableau au réseau de neurones
  49. Policy gradient et PPO : apprendre directement la politique
  50. Comment fonctionne un agent IA : un modèle de langage en boucle avec des outils
  51. Programmer avec des agents IA : consigne, tests et vérification
  52. Évaluation et sécurité des systèmes d’IA : comment mesurer et comment surveiller

Programme complet de la série 52 sur 83 sujets publiés

Ce que vous retiendrez
  • Comment un système flou de Sugeno s’écrit sous forme de réseau et quels paramètres y sont appris.
  • Pourquoi l’apprentissage hybride (moindres carrés plus gradient) devance la descente de gradient pure.
  • Pourquoi multiplier les règles expose au surapprentissage et ce qui reste de la lisibilité des règles apprises.

Utile à connaître avant : Commande floue : Mamdani et Sugeno, du ventilateur au pendule inversé sur un chariot, Descente de gradient : comment un modèle apprend

Les régulateurs flous des parties précédentes avaient un point faible : quelqu’un devait inventer les règles comme les fonctions d’appartenance. Quand un opérateur expérimenté existe, c’est un avantage. Quand il n’existe pas — ou quand le système doit reproduire des données mesurées —, c’est un problème. Les réseaux de neurones sont de nature opposée : ils apprennent n’importe quoi à partir des données, mais personne ne peut lire ce qu’ils ont appris. En 1993, Jyh-Shing Roger Jang a réuni les deux dans le système ANFIS (Adaptive Neuro-Fuzzy Inference System) : un système flou de Sugeno écrit sous forme de réseau, dont les paramètres sont appris à partir des données. Cette partie clôt le module sur la logique floue.

Elle fait suite à Commande floue : Mamdani et Sugeno et à Descente de gradient.

1. Un système flou sous forme de réseau

Prenons un système de Sugeno du premier ordre à une entrée et quatre règles « SI x est Ai, ALORS y = pix + ri ». Chaque étape de son calcul est une couche du réseau :

x A1 w N f1 A2 w N f2 A3 w N f3 A4 w N f4 ∑ y 1. appartenance μ_A(x) c, σ 2. force w_i — 3. normalisation w_i / ∑ w — 4. conclusion w̄ (p x + r) p, r 5. somme ∑ —
ANFIS à une entrée et quatre règles ; en orange, les couches aux paramètres appris
Définition — ANFIS (Jang, 1993)
  1. Appartenance : μi(x) = exp(−(x − ci)2 / 2σi2) — une fonction gaussienne de centre ci et de largeur σi.
  2. Force de la règle : wi = produit des appartenances de la prémisse (avec une seule entrée, simplement μi(x)).
  3. Normalisation : w̄i = wi / ∑j wj.
  4. Conclusion : w̄i · (pix + ri).
  5. Somme : y = ∑i w̄i (pix + ri).

Les paramètres des prémisses sont ci, σi ; les paramètres des conclusions, pi, ri.

En termes simples

C’est exactement le régulateur de Sugeno de la partie précédente, simplement dessiné comme un réseau. Chaque règle a sa « zone d’influence » (une colline gaussienne) et, à l’intérieur, une prédiction linéaire. La sortie est la moyenne des prédictions, pondérée selon le degré auquel l’entrée se trouve dans la zone de chaque règle. Tout le système est dérivable, et on peut donc l’entraîner exactement comme un réseau de neurones.

y = ∑i wi / ∑j wj · (pix + ri)

y
sortie de tout le système pour l’entrée x — ce que l’on compare aux données et ce qui sert à mesurer l’erreur
∑i
somme sur toutes les règles — chacune contribue, aucune n’est « choisie » ; c’est pourquoi la sortie est lisse et dérivable
wi / ∑j wj
force normalisée w̄i — la division par la somme garantit que les poids ont pour somme 1, si bien que la sortie est une moyenne pondérée des conclusions et ne dépend pas de la hauteur des collines
pix + ri
conclusion linéaire de la règle — une droite locale qui décrit la fonction dans la zone de la règle ; une droite au lieu d’une constante permet de suivre aussi la pente avec peu de règles
La sortie est la moyenne des droites locales, pondérée par le degré auquel l’entrée appartient à la zone de chaque règle.

μi(x) = exp( − (x − ci)2 / 2σi2 )

μi(x)
degré d’appartenance dans [0, 1] — à quel point x est « autour de ci » ; l’exponentielle d’un nombre négatif est toujours entre 0 et 1 et vaut exactement 1 au centre
(x − ci)2
carré de la distance au centre — l’appartenance décroît de la même façon des deux côtés et reste lisse même au centre (avec une valeur absolue, elle y aurait une pointe et la dérivée n’existerait pas)
2σi2
largeur de la colline — la distance se mesure en unités de σi, si bien qu’à la distance σi du centre, l’appartenance vaut toujours e−1/2 ≈ 0,61 ; en apprenant σi, on change la portée de la règle
Exemple — propagation avant au point x = 3

Prenons le système après l’époque zéro de l’apprentissage (voir plus bas) : centres c = 0, 2, 4, 6, toutes les largeurs σ = 1 et des conclusions obtenues par les moindres carrés. Pour x = 3, les distances aux centres sont 3, 1, 1, 3, et donc

  1. appartenance et force : w = (e−4,5 ; e−0,5 ; e−0,5 ; e−4,5) = (0,0111 ; 0,6065 ; 0,6065 ; 0,0111) ;
  2. normalisation : la somme vaut 1,2353, donc w̄ = (0,0090 ; 0,4910 ; 0,4910 ; 0,0090) ;
  3. conclusions : les droites pix + ri aux coefficients appris (9,54x + 0,01 ; 9,34x − 17,38 ; 8,56x − 36,61 ; 2,60x − 18,90) valent au point 3 (28,63 ; 10,66 ; −10,94 ; −11,09) — les coefficients sont arrondis, les valeurs calculées à partir des coefficients exacts ;
  4. somme : y = 0,2574 + 5,2329 − 5,3698 − 0,0997 ≈ 0,021.

La vraie valeur est sin(3) = sin(32/3) ≈ 0,141. Remarquez que la sortie naît de la soustraction de deux grandes contributions presque égales — nous y reviendrons à propos de la lisibilité.

2. L’apprentissage hybride

Nous voulons minimiser l’erreur quadratique moyenne sur les données d’entraînement. On pourrait tout faire par descente de gradient. Jang a toutefois remarqué que la sortie est linéaire en les paramètres des conclusions.

Définition — erreur quadratique moyenne et RMSE

Pour des données (x1, y1), …, (xN, yN) et une sortie du modèle ŷ(x), l’erreur quadratique moyenne est E = (1/N) ∑k (ŷ(xk) − yk)2, et la RMSE (root mean square error) est sa racine carrée √E. Minimiser l’une ou l’autre revient au même ; on indique pourtant la RMSE, car elle a les unités de la sortie. Toutes les erreurs de cette partie sont des RMSE.

RMSE = √( (1/N) ∑k (ŷ(xk) − yk)2 )

ŷ(xk)
prédiction du système au k-ième point — le seul endroit par lequel les paramètres c, σ, p, r entrent dans l’erreur
− yk, puis au carré
écart à la valeur mesurée, élevé au carré — le signe ne compte pas, les grandes erreurs pèsent plus que les petites, et le carré se dérive sans accroc (et, pour les conclusions, permet une solution exacte par les moindres carrés)
(1/N) ∑k
moyenne sur les points — l’erreur sur 40 points d’entraînement et sur 121 points de test est alors comparable
La racine finale ramène l’erreur dans les unités de y : une RMSE de 0,1 signifie « typiquement à 0,1 près ».
Algorithme — apprentissage hybride

Avec des prémisses fixées, y(x) = ∑i (w̄ix) pi + w̄i ri est une fonction linéaire des paramètres des conclusions. À chaque époque, donc :

  1. en avant : calcule w̄i pour toutes les données et trouve exactement les paramètres des conclusions par la méthode des moindres carrés ;
  2. en arrière : avec les conclusions ainsi trouvées, fais un pas de descente de gradient pour les centres ci et les largeurs σi.
En termes simples

Là où un problème peut être résolu exactement, résolvez-le exactement ; ne laissez au gradient que ce qui ne peut pas l’être. La régression linéaire de la partie sur la statistique trouve la meilleure droite en un seul calcul — et ici, elle trouve d’un coup les meilleures conclusions linéaires de toutes les règles. Le gradient ne fait plus que déplacer et élargir les collines des fonctions d’appartenance.

Définition — moindres carrés pour les conclusions

Avec ci, σi fixés, les w̄i(xk) ne sont que des nombres. Rangeons les paramètres des conclusions dans un vecteur θ = (p1, r1, …, pn, rn) et formons pour chaque point la ligne

ak = (w̄1xk, w̄1, …, w̄nxk, w̄n), si bien que ŷ(xk) = ak · θ.

Les lignes forment une matrice A (N × 2n) et l’erreur vaut ‖Aθ − y‖2/N. Son minimum vérifie les équations normales ATA θ = ATy — un système de 2n équations linéaires. Pour 4 règles et 40 points, A est une matrice 40 × 8 et le système compte 8 équations. Notre calcul ajoute en outre 10−6 à la diagonale de ATA (un petit terme de crête), pour que le système reste soluble même avec des colonnes presque dépendantes, et le résout par élimination de Gauss.

Théorème — gradient par rapport au centre et à la largeur

Notons gi = pix + ri et W = ∑j wj. De ŷ = ∑j wjgj / W, la dérivée d’un quotient donne ∂ŷ/∂wi = (gi − ŷ)/W. Les dérivées de la colline gaussienne sont ∂wi/∂ci = wi(x − ci)/σi2 et ∂wi/∂σi = wi(x − ci)2/σi3. Par la règle de dérivation en chaîne,

∂E/∂ci = (2/N) ∑k (ŷ − yk) (gi − ŷ) w̄i (xk − ci)/σi2,

∂E/∂σi = (2/N) ∑k (ŷ − yk) (gi − ŷ) w̄i (xk − ci)2/σi3,

où ŷ, gi et w̄i sont pris au point xk.

∂E/∂ci = (2/N) ∑k (ŷ − yk) (gi − ŷ) w̄i (xk − ci)/σi2

∂E/∂ci
comment l’erreur change si l’on déplace le centre de la i-ième colline — le pas d’apprentissage va à l’opposé de ce signe
ŷ − yk
erreur au point — là où le système vise juste, le point ne demande rien et ne contribue pas au gradient
gi − ŷ
en quoi la conclusion de la règle diffère de la sortie globale — donner plus de poids à la règle tire la sortie vers sa conclusion ; quand la conclusion dit la même chose que l’ensemble, déplacer la colline n’a pas de sens
w̄i
part de la règle dans la sortie — les points éloignés de la colline, où la règle ne dit presque rien, n’influencent guère son centre
(xk − ci)/σi2
direction du déplacement — un point à droite du centre tire la colline vers la droite, un point à gauche vers la gauche ; au centre même, la colline est plate et un déplacement ne change rien
Pour la largeur, la formule est la même, seul le dernier terme devient (xk − ci)2/σi3 : les points éloignés veulent élargir ou rétrécir la colline, la direction n’a pas d’importance.

Tout l’apprentissage de l’exemple ci-dessous en pseudocode (pas η = 0,1, 300 époques) :

c = centres répartis uniformément sur [0, 6]   # pour 4 règles 0, 2, 4, 6
σ = moitié de l’écart entre les centres        # pour 4 règles 1
for epocha in 0 … 300:
    # en avant : couches 1–3, puis conclusions exactes par les moindres carrés
    wn[k][i] = w̄_i(x_k)  pour tous les points k et toutes les règles i
    A = lignes (wn[k][1]·x_k, wn[k][1], …, wn[k][n]·x_k, wn[k][n])
    p, r = résoudre (AᵀA + 10⁻⁶·I)·θ = Aᵀy
    if epocha == 300: break
    # en arrière : pas de gradient selon les formules ci-dessus
    gc, gσ = ∂E/∂c, ∂E/∂σ
    c = c − η·gc
    σ = max(0,05; σ − η·gσ)  # la colline ne doit pas disparaître

3. ANFIS apprend une fonction

La tâche : à partir de 40 échantillons bruités (bruit d’écart-type 0,1), apprendre la fonction y = sin(x2/3) sur l’intervalle [0, 6]. Vers la droite, la fonction ondule de plus en plus vite, si bien que quatre règles réparties uniformément ne sont pas idéales. Nous mesurons aussi l’erreur sur 121 points sans bruit, en dehors des données d’entraînement :

−101 01 0123456 époque 0 · erreur de test 0,394 époque 25 · erreur de test 0,367 époque 100 · erreur de test 0,202 époque 300 · erreur de test 0,173 entrée x (sans unité) sortie y (sans unité) appartenance μ (0–1)
Apprentissage d’un ANFIS à quatre règles : en haut la sortie, en bas les fonctions d’appartenance

Dès l’époque zéro — avec seulement les moindres carrés pour les conclusions et des collines régulières —, l’erreur de test est de 0,394 et l’erreur sur les données d’entraînement de 0,198. Puis les prémisses commencent à apprendre. Après 100 époques, l’erreur de test vaut 0,202, et après 300 époques 0,173. Sur les données d’entraînement, elle descend à 0,107 — sous le niveau de bruit des données (0,114) ; on ne peut raisonnablement pas faire mieux. Les centres des collines n’ont que peu bougé ; le changement principal concerne les largeurs — la dernière règle à droite, là où la fonction ondule le plus vite, s’est rétrécie de 1 à 0,64.

Définition — niveau de bruit des données

Les points d’entraînement sont yk = f(xk) + εk, où f(x) = sin(x2/3) et les εk sont des écarts aléatoires indépendants tirés d’une loi normale d’écart-type 0,1. Le niveau de bruit est la RMSE qu’aurait la vraie fonction elle-même sur les données d’entraînement : √((1/40) ∑k εk2) = 0,114. Il dépasse un peu 0,1 par pur hasard — dans nos 40 écarts tirés au sort.

Un modèle dont l’erreur sur les données d’entraînement est inférieure au niveau de bruit (0,107 < 0,114) commence déjà à copier aussi les écarts aléatoires. Avec une différence aussi faible, ce n’est pas encore gênant — l’erreur de test continue de baisser —, mais c’est un premier avertissement, auquel nous reviendrons à propos du nombre de règles.

00,20,40,6 0100200300 époque (nombre de passages sur les données) erreur de test (RMSE)
Erreur de test : apprentissage hybride contre gradient pur hybride gradient seul en pointillés, le bruit des données

La descente de gradient pure pour tous les paramètres part de conclusions nulles et apprend beaucoup plus lentement : après 300 époques, son erreur de test est de 0,387, et même après 3 000 époques (0,188), elle ne rattrape pas l’apprentissage hybride après 300. Un pas d’apprentissage plus grand mène en outre rapidement à la divergence. Séparer le problème en une partie linéaire et une partie non linéaire en vaut la peine.

4. Combien de règles ?

Nombre de règles2346812
Erreur sur les données d’entraînement0,5100,1810,1070,0980,0890,085
Erreur de test0,5900,1770,1730,1720,5660,319

À mesure que les règles s’ajoutent, l’erreur sur les données d’entraînement ne cesse de baisser. Sur le test, en revanche, elle augmente brusquement à partir de huit règles — le système s’est mis à apprendre le bruit : avec 40 points et 32 paramètres (8 règles × 4), il a assez de liberté pour osciller follement entre les points d’entraînement. C’est le surapprentissage, le même phénomène qu’avec une régression polynomiale trop tordue. Un nombre raisonnable de règles se situe ici entre trois et six.

Exemple — combien de paramètres compte un ANFIS

Avec une seule entrée, chaque règle a deux paramètres de prémisse (ci, σi) et deux paramètres de conclusion (pi, ri), soit 4n au total. Pour 40 points d’entraînement :

  • 4 règles : 16 paramètres, dont 8 linéaires — 5 points par paramètre linéaire ;
  • 8 règles : 32 paramètres, dont 16 linéaires — 2,5 points par paramètre linéaire, et les moindres carrés ont ainsi assez de liberté pour ajuster aussi le bruit ;
  • 12 règles : 48 paramètres — plus qu’il n’y a de points. Les moindres carrés ne déterminent certes « que » 24 conclusions à partir de 40 équations, mais les 24 autres paramètres des prémisses peuvent déplacer et rétrécir les collines exactement là où le bruit vient de s’écarter.

Une règle empirique utile : il devrait y avoir au moins plusieurs fois plus de points que de paramètres estimés à partir d’eux.

5. Ce que l’on peut lire

La promesse des systèmes neuro-flous est que le modèle appris reste lisible. Les prémisses le sont : quatre règles « autour de 0 », « autour de 2,2 », « autour de 4 » et « autour de 6,2 ». Les conclusions, non. La règle « SI x est autour de 2,2, ALORS y = 10,06 x − 13,83 » prédirait 8,25 en son centre, alors que la vraie valeur est 1,0. Les règles se compensent les unes les autres — les collines se chevauchent beaucoup et la sortie n’a de sens que comme un tout.

Exemple — comment les règles se compensent au point x = 2,195

Le centre appris de la deuxième règle est c2 = 2,195. Là, la deuxième règle a une appartenance pleine (w2 = 1), mais ses voisines n’ont pas une appartenance nulle : w = (0,140 ; 1 ; 0,331 ; 0,000), somme 1,471, donc

Règle1234
poids w̄i0,0950,6800,2250,000
conclusion gi12,648,25−25,64−31,68
contribution w̄igi1,2035,609−5,7690,000

La somme vaut y = 1,203 + 5,609 − 5,769 = 1,043, la vraie valeur sin(2,1952/3) = 0,999. La sortie est bonne, mais elle naît de la différence de deux contributions d’environ ±5,7 : la deuxième règle « tire trop haut » et la troisième la ramène vers le bas. Aucune règle ne dit à elle seule combien vaut y.

L’interprétabilité n’est donc pas gratuite. Des contraintes aident à la préserver : un moindre chevauchement des fonctions d’appartenance, une régularisation des conclusions, ou un Sugeno d’ordre zéro à conclusions constantes. On le paie en précision. C’est le même équilibre que partout en apprentissage automatique — entre ce que le modèle sait faire et ce que nous savons en dire.

6. ANFIS et les réseaux de neurones

  • La parenté avec les réseaux RBF. Jang et Sun ont montré en 1993 que les réseaux à fonctions de base radiales et les systèmes flous de Sugeno d’ordre zéro sont, sous des conditions peu restrictives, la même chose, simplement interprétée autrement.
  • La malédiction de la dimension. Avec n entrées et k termes par entrée, la grille des règles compte kn règles — pour 10 entrées et 3 termes, plus de 59 000. C’est pourquoi on utilise ANFIS pour peu d’entrées, ou avec des règles choisies par clustering (par exemple fuzzy c-means de la partie précédente).
  • Les applications. La prévision de séries temporelles (le test classique est la série chaotique de Mackey–Glass), la modélisation et la commande de systèmes pour lesquels on dispose de données mesurées, mais de peu de théorie.
  • Aujourd’hui. Les réseaux profonds ont depuis longtemps repris les tâches à nombreuses entrées. L’idée « entraînable, mais lisible » continue pourtant de vivre dans l’IA explicable — et des couches floues sont parfois ajoutées même aux réseaux profonds, là où il faut pouvoir expliquer la sortie par des règles.
Définition — réseau à fonctions de base radiales (RBF)

Un réseau RBF normalisé à n neurones cachés calcule

y(x) = ∑i vi φ(‖x − ci‖) / ∑j φ(‖x − cj‖),

où φ est une fonction décroissante de la distance au centre ci (typiquement gaussienne) et les vi sont les poids de sortie. Un système de Sugeno d’ordre zéro à appartenances gaussiennes, avec le produit comme « et », s’écrit y = ∑i w̄i ri — après la substitution wi = φ(‖x − ci‖) et vi = ri, c’est exactement la même formule. Pour simplifier : règle = neurone, fonction d’appartenance = fonction de base, conclusion = poids de sortie. (Jang et Sun, 1993, énumèrent les conditions précisément : même nombre de règles et de neurones, conclusions constantes, appartenances gaussiennes de même largeur au sein d’une même règle, le produit comme « et » et la même manière de composer la sortie — moyenne pondérée ou somme pondérée.)

Exemple — la malédiction de la dimension en chiffres

Avec n entrées et k termes par entrée, la grille complète compte kn règles. Une conclusion de Sugeno du premier ordre y = p1x1 + … + pnxn + r a n + 1 paramètres, si bien qu’il y a kn(n + 1) paramètres linéaires. Les paramètres des prémisses ne sont que 2kn — chaque entrée a ses k collines, partagées par toutes les règles.

Pour n = 10 et k = 3 : 310 = 59 049 règles, 59 049 · 11 = 649 539 paramètres de conclusion et 2 · 3 · 10 = 60 paramètres de prémisse. Les moindres carrés devraient résoudre un système à 649 539 inconnues — et il faudrait encore beaucoup plus de données.

7. Résumé

  • ANFIS est un système flou de Sugeno écrit sous forme de réseau à cinq couches : appartenance, force, normalisation, conclusion, somme.
  • L’apprentissage hybride trouve les conclusions linéaires exactement par les moindres carrés et affine par le gradient les centres et les largeurs des fonctions d’appartenance.
  • Sur la fonction sin(x2/3), l’apprentissage des prémisses a fait baisser l’erreur de test de 0,394 à 0,173 ; le gradient pur a eu besoin de dix fois plus d’époques pour un résultat moins bon.
  • Trop de règles mènent au surapprentissage — à partir de huit règles, l’erreur de test augmente brusquement.
  • Les prémisses restent lisibles, mais les conclusions se compensent les unes les autres ; l’interprétabilité doit être surveillée.

Cette partie clôt le module sur la logique floue : du mot « chaud » à un système qui apprend lui-même ses règles, en passant par la logique et les régulateurs. Envie de mettre la main à la pâte ? Demandez à un agent d’IA d’entraîner un ANFIS sur la consommation d’électricité en fonction de la température à partir de données publiques — puis regardez quelles règles ont du sens.

Vous voyez les choses autrement ? Écrivez à support@coden-app.com.

Un Agent sur votre ordinateur, piloté depuis votre téléphone