(ab,in, dé)duction en Représentation Floue Hiérarchique. Un exemple.

(version abrégée)

Maurice Clerc 1995

mcft10@calva.net

Introduction

Un principe important dans HFR (acronyme anglais de Représentation Floue Hiérarchique), est que chaque "objet de mémoire" ou "mémobjet" est défini uniquement par ses relations (floues) avec tous les autres, dans un monde clos et fini. Un de ses objectifs est également de donner des résultats qui soient « psychologiquement valides », en termes de comparaisons, classification, et raisonnement. C'est pourquoi, autant que possible, certains paramètres sont issus de tests avec des sujets humains. À l'instar d'autres modèles, HFR ne différencie pas les formes classiques d'inférences (c.-à-d. abduction, induction, déduction), ni, d'ailleurs, aucune autre forme logique. Je montre ici comment il peut traiter un exemple simple, provenant d'un article de Pei Wang concernant son Système de Raisonnement Non-Axiomatique (NARS) [10] ,mais en utilisant une autre formalisation.

Phase 1: Formalisation (homme et ordinateur)

La relation d'activation/inhibition ou d'évocation est utilisée pour formaliser toutes les assertions telles que « est », « est un », « a », « n'est pas »... On peut l'interpréter ainsi :

« si x est évoqué (en mémoire), alors y aussi (avec la force s) »

La force d'évocation s (s comme "strength") est une valeur floue dont le support est soit dans [-1,0[ (inhibition), soit dans [0,1](activation). Avec ces notations, l'exemple de Pei Wang peut être ré-écrit (et traduit !) ainsi :

J1: oiseau vole

J2: colombe oiseau

J3: colombe nage

J4: cygne oiseau

J5: cygne vole

J6: cygne nage

J7: pingouin oiseau

J8: pingouin vole

J9: pingouin nage

Les données ne sont pas logiquement cohérentes, comme souvent dans le monde réel (voir J1, J7, J8). En l'occurrence, il n'y a aucunflou, mais, néanmoins tout ce qui suit reste valide dans le cas général, dans la mesure où l'on sait calculer des sommes et des produits de valeurs floues unimodales (cf. [4]).

Phase 2: Construction du réseau (ordinateur)

Sauf pour les liens inverses, la construction est évidente. J'ai choisi ici de très simples (et très classiques !) lois d'activation et de propagation (calculs de sommes pondérées, voir par ex. Ron Sun [9] ).

Liens inverses

Supposons que l'information « oiseau » soit complètement évoquée (activée) en mémoire. Dans le monde fini et clos défini par les connaissances initiales, cela implique que l'on doit avoir aussi, plus ou moins, « colombe », ou  «cygne », ou  « pingouin ». C'est pourquoi le système crée des liens depuis « oiseau » vers ces trois noeuds.

Figure 1. Réseau du monde clos défini par J1-J8

Phase 3: Représentations floues des concepts par progagation d'activation (ordinateur)

Dans HFR, d'une manière générale, un concept au niveau n est une constellation d'activations de noeuds du niveau n-1. En particulier, la constellation obtenue par l'activation initiale à 1 d'un seul noeud est appelée la signification de ce noeud [3]. Il est intéressant de noter qu'il y a une sorte de circularité,comme dans un dictionnaire, c.-à-d. que le « sens » de chaque objet dépend du contexte (tous les autres objets « co-évoqués »).C'est pourquoi je qualifie parfois les mondes générés par HFR de « mondes circulaires ».

Tableau 1. Représentation floue (signification) du concept oiseau

                           oiseau   vole      colombe     nage      cygne    pingouin  oiseau         pas de       1,00    0,80      0,42                   0,42    0,42                    temps 1                                                                                 pas de       1,00    0,80      0,42        0,33       0,42    0,42                    temps 2                                                                  

Phase 4: Evocations de concepts (ordinateur)

Il y a de nombreuses méthodes pour calculer une ressemblance entre deux ensembles flous (cf. par ex. [7] ), et ensuite la force d'évocation d'un concept par un autre, mais un bon choix (d'un point de vue psychologique) semble être une fonction non-linéaire de l'angle des deux significations, considérées comme des vecteurs [1,2, 8] .J'ai pris ici le cosinus, pondéré par une fonction asymétrique des normes.

Tableau 3. Evocations après stabilisation. Lire de gauche àdroite. Ex.: "oiseau" évoque "vole" (0.69).

                oiseau   vole      colombe     nage      cygne    pingouin   oiseau             1,00  0,69      0,54           0,44      0,75       0,32  vole               0,57  1,00      0,43           0,04      0,47      -0,25  colombe            0,59  0,56      1,00          -0,45      0,17      -0,17  nage               0,37  0,04      -0,35          1,00      0,54       0,54  cygne              0,86  0,65      0,18           0,73      1,00       0,43  pingouin           0,37  -0,34     -0,18          0,73      0,43       1,00  


Phase 5: Représentations floues de stéréotypes (ordinateur)

Après la phase 4, il est maintenant facile de construire des classes par agrégation floue des concepts (cf. par ex. [5,6] ), et leurs « représentants », appelés stéréotypes (et non prototypes comme il est trop souvent dit). Par exemple, la classe de oiseau est l'ensemble flou :

{oiseau/1, vole/0,69, colombe/0,59, nage/0,44, cygne/0,86, pingouin/0,37}

Pour chaque classe, le stéréotype est calculé par une moyenne pondéré, et ensuite normalisé afin de devenir une signification (max. des valeurs égal à 1)

Tableau 4. Signification du stéréotype _oiseau

                oiseau   vole      colombe     nage      cygne    pingouin   _oiseau          1,00    0,74      0,32        0,46       0,61      0,37     


Phase 6: Evocations de stéréotypes (ordinateur)

Exactement de la même manière que pour les concepts, nous pouvons calculer « combien » un stéréotype en évoque un autre. En fait, les stéréotypes sont des (nouveaux) concepts.

Tableau 5. Evocation d'un stéréotype par un autre. Ex.« _oiseau évoque _vole (0,94) «.

               _oiseau   _vole     _colombe     _nage     _cygne   _pingouin   _oiseau            1,00  0,94           0,91       0,51      0,97        0,43  _vole              0,82  1,00           0,96       0,24      0,75        0,14  _colombe           0,81  0,97           1,00       0,11      0,71        0,08  _nage              0,50  0,27           0,12       1,00      0,63        0,80  _cygne             0,98  0,88           0,82       0,66      1,00        0,54  _pingouin          0,28  0,11           0,06       0,54      0,28        1,00  

Il reste peut-être encore quelque incohérence entre (pingouin, oiseau, vole), mais pas de façon aussi évidente que dans les connaissances initiales.

Phase 7: Interprétation (homme et ordinateur)

Maintenant, nous pouvons répondre à quelques questions. En principe, toutes les requêtes à HFR sont de la forme « J'ai l'information X (avec la possibilité/plausibilité/confiance/force x); Qu'en est-il de Y ? ». Naturellement, ceci peut souvent êtreexprimé plus simplement.

Tableau 6..Quelques questions et quelques réponses. Le niveau «descripteurs » indique seulement les connaissances initiales.

                                                          NIVEAU                                                                     descripteurs    concepts/signification      stéréotypes                                                                  s                                   Un oiseau vole-t-il ?                0,80                 0,69                   0,94          Qu'est-ce qui est un oiseau     colombe (0,80)        cygne(0,86)            cygne(0,98)       "typique" ?                                                                                                                     cygne(0,80)         colombe (0,59)         colombe(0,81)                                      pngouin (0,80)      pingouin (0,37)        pingouin (0,28)              Un oiseau nage-t-il?        0,00                 0,44                   0,51          Une colombe vole-t-elle ?            0,00                 0,56                   0,97          

Commentaire du tableau 6

Les valeurs numériques doivent être interprétées sousforme linguistique, par ex. 0,8=« Très probable ». Il est intéressant de noter qu'il n'y a pas de monotonicité.

Un oiseau vole-t-il ?

Au début, il n'y a que le lien direct oiseau => vole. Aussi la réponse est-elle "Très probable" (0,80). En étudiant un peu plus la question, HFR est confronté à l'incohérence entre (pingouin, oiseau, vole). En particulier, un pingouin est plus ou moins un oiseau et ne vole pas. Aussi la "confiance" décroît-elle:  « Probablement » (0,69). Par construction, les stéréotypes peuvent être moins cohérents que les concepts initiaux, et c'est en effet le cas : « pingouin » est presque entièrement ignoré dans le stéréotype « _oiseau », aussi la confiance est-elle beaucoup plus forte « Presque sûr » (0,94), même si "oiseau" reste dans lestéréotype "_pingouin" (0,28). Même si nous n'avions pas vul'incohérence initiale, l'accroissement important (de 0,69 à 0,94) nous suggère une anomalie dans les données.

Qu'est-ce qui est un oiseau "typique" ?

Le cygne « gagne » : « Presque sûr » (0,86 et, ensuite, 0,94). Ceci pourrait être appelé une abduction (de J1 : un oiseau vole, et J5: un cygne vole).

Un oiseau nage-t-il ?

Finalement « Probablement » (0,61). À nouveau, la grande différence d'avec la valeur au niveau concept « Peut-être » (0,44) indique une éventuelle incohérence dans les données. Ceci pourrait être appelé une induction (de J4 : un cygne est un oiseau, et J6 : un cygne nage).

Une colombe nage-t-elle ?

Au niveau concept « Peut-être » (0,56). Cette valeur peut sembler faible. Après tout, on pourrait faire la déduction « naïve »:

J2 : une colombe est un oiseau (0,8) et J1 : un oiseau vole (0,8),donc une colombe vole (0,64=0,8*0,8)

Mais en fait une colombe n'est pas un très « bon » oiseau. Aussi 0,56 semble-t-il être un compromis acceptable. Ces « subtilités » disparaissent au niveau stéréotype, et la réponse devient « Sûrement » (0,97), et, cette fois, la valeur est trop grande.

Conclusion

Pour le moment, je n'ai pas suffisamment de résultats avec des sujets humains pour évaluer réellement la validié psychologique des réponses ci-dessus, mais, intuitivement, elles semblent raisonnables.

Et, au fait, quelles seraient VOS réponses ?

Références

[1]X. Chanet, Décompositions floues, ressemblances, catégorisations,1992, France Télécom: Annecy, France.

[2] M. Clerc, Validité psychologique des représentations floues. (Info. In Cognito, 1, Décembre 1995, 3-5) (English version available)

[3] M. Clerc, F. Guérin, et al. Représentations floues dans un mémoriel. in JIOSC (Journées Internationales d'Orsay sur les Sciences Cognitives). 1994. Orsay, France: CNRS.

[4] D. Dubois, H. Prade, La théorie des possibilités (Masson,Paris, 1985).

[5] T. Gu, B. Dubuisson, Similarity of classes and fuzzy clustering, Fuzzy Sets& Systems 34 (1990) 213-221.

[6] K. Hattori, Y. Torri, Effective algorithms for the nearest neighbor method in the clustering problem, Pattern recognition 26 (1993) 741-746.

[7] C.P. Pappis, A comparative assessment of measures of similarity of fuzzy values, Fuzzy Sets & Systems 56 (1993) 171-174.

[8] S.A. Sloman, Feature-based induction, Cognitive psychology 25 (1993)231-280.

[9] R. Sun, A neural network model of causality, IEEE transactions on neural networks 5 (1994) 604-611.

[10] P. Wang, From Inheritance Relation to Non-Axiomatic Logic, International Journal of Approximate Reasoning 11 (1994) 281-319.