Fonctionnement des intelligences naturelles et artificielles

De Assothink Wiki
Aller à la navigation Aller à la recherche

Cette page fait partie de la théorie sous-jacente à la démarche Assothink.

Pour une intelligence naturelle, comprendre et simuler une intelligence artificielle, telle qu'un ordinateur, est lent mais possible.

Pour une intelligence artificielle, comprendre et simuler une intelligence naturelle semble très complexe, voire impossible.

Préalables

Expérience personnelle

Il y a quelques temps j'ai lu un document très intéressant sur l'intelligence artificielle, et les 4 théories qui l'entourent.

Cela s'est baladé un peu dans mes neurones...

A mon réveil ce matin, je me suis demandé à laquelle des 4 théories j'adhérerais. Je me suis convaincu que j'adhérais plutôt à la seconde.

"Le sentiment de conscience immédiate est le produit de l'activité du cerveau. Il peut être simulé par un calcul, mais il ne se réduit pas lui-même au calcul."

Ensuite j'ai imaginé les modalités de le seconde théorie, et c'est ce qui m'a amené à écrire cet article.


Deux problèmes

Il y a deux problèmes:

  • comprendre ou deviner le fonctionnement des intelligences naturelles, et en particulier celle, supposée performante, de l'homo sapiens
  • imaginer les rouages de machines dotées d'intelligence artificielle, quelque chose comme un nouveau type d'ordinateur

Ces deux problème n'en sont qu'un, ou du moins les solutions sont étroitement liées. C'est d'ailleurs assez paradoxal. Implicitement cela signifierait que rechercher la 'meilleure forme d'intelligence' revient à comprendre celle des HS. Cela signifierait que l'intelligence des HS est la plus performante possible. C'est particulièrement anthropocentrique. Mais cela peut s'expliquer, de deux manières au moins. Cela peut s'expliquer par l'efficacité du dispositif essai/sélection propulsant la sélection naturelle. Cela peut aussi s'expliquer par les limites de ceux qui se posent ce genre de questions: vous et moi. Le champs de ce que nous pouvons comprendre ou imaginer est vraisemblablement limité par le fonctionnement de notre propres intelligence. Le mieux que nous puissions concevoir serait notre réalité, fut-elle subtile, complexe, cachée. Là dedans s'inscrivent mon réveil, et l'intuition que j'essaye de décrire plus bas.

Je ne suis ni psychologue, ni neurologue, ni expert en intelligence artificielle. Ma spécialité est la modélisation, et j'ai pris le problème par les bouts suivants:

  • L'introspection: comment fonctionnent mes perceptions, mes souvenirs, et ce qui en découle
  • L'engineering modélisant: comment concevoir une machine remplissant la fonction d'intelligence

Dans ce ce qui suit, les mots neurones et canaux n'ont pas une signification biologique. Ce sont les composants d'un certain modèle abstrait qui est décrit en rapport avec les problèmes mentionnés plus haut.

Emergence

L'intelligence est un processus explosif. Des causes et des dispositifs simples génèrent des effets et des dispositifs complexes. C'est un processus d'émergence.  L'émergence est d'autant plus remarquable que les composants sont rudimentaires, et les résultats complexes.

Ce qu'il y a d'excitant dans l'émergence est lié à la surprise. On assemble des pièces élémentaires, et on se demande s'il peut en émerger quelque chose de remarquable. La surprise possible, la surprise espérée, la curiosité sont des moteurs pour la démarche de cet article.

On peut imaginer et espérer diverses formes d'émergence:

  • calme et excitation
  • émissions linguistiquement structurées
  • transposition symbolique
  • conscience
  • imagination
  • innovation

Nouveauté ?

A quel point ceci est est-il neuf ? A quel point ceci coïncide-il avec des travaux et résultats obtenus au moyens de réseaux neuronaux ? Aucune idée ! A vérifier bientôt.

Composants du modèle : neurones, canaux, messages [ ancien et mauvais ]

Message

Un message est un petit signal élémentaire.

Il est caractérisé, en tout et pour tout, par une amplitude (la 'force du signal'), et par un pattern (structure, digitale ou analogique).

L'amplitude peut être considérée comme la force du signal.

Le pattern est une structure généralement quelconque, digitale ou analogique. La seule caractéristique remarquable d'un pattern est de pouvoir être comparé à un autre pattern.

Neurone

Le neurone est lié à d'autres neurones par des canaux.

Le neurone reçoit et envoie des messages par les canaux auxquels il est connecté.

Le neurone enregistre un ou plusieurs pattern de message reçus. C'est une forme de mémoire. Le contenu de la mémoire évolue dans le temps en fonction des patterns arrivants, mais ceci est infiniment plus lent que transfert de messages.

Le neurone conserve également des variables d'états liées à son histoire. Ce sont

  • son activité (son niveau d'activité) qui traduit la fréquence et l'amplitude des messages reçus et envoyés, récemment et par rapport à un état moyen.
  • son adéquation (son niveau d'adéquation) qui reflète la ressemblance récente entre patterm mémorisés et meilleur pattern reçu, récemment et par rapport à un état moyen.

Le neurone propage les messages reçus et/ou les message enregistrés. Il en accroît ou décroît l'amplitude dans la mesure où le message reçu ressemble au pattern local enregistré. Il en accroît ou décroit l'amplitude en fonction d'effet d'aiguillage entre les canaux entrant et sortant.

La performance principale du neurone est donc une mesure de ressemblance.

D'une manière, le neurone agit comme une 'résistance'. Si la résistance est forte l'amplitude du signal est diminuée.  Si la résistance est faible l'amplitude est augmentée. Dans le cas d'une amplitude moyenne, l'amplitude est inchangée.

Le neurone est un relais de messages.

Canal

Un canal lie deux neurones et véhicule des messages de l'une à l'autre de ses extrémités.

Le canal ne change pas le pattern des messages transmis.

Proportionnellement à sa propre fréquence d'utilisation, le canal conserve l'amplitude des messages transmis.  Un canal très actif conserve l'amplitude des messages. Un canal peu actif entraîne une perte d'amplitude.

Groupes de réception et d'émission

Un canal de réception est un canal qui, au lieu de lier deux neurones, lie une source externe de pattern à un neurone. Ce dernier, neurone de réception, peut lire des messages sur le canal, mais pas en écrire. Un groupe de réception est un ensemble de canaux de réception et de neurones de réception. Un canal d'émission est un canal qui, au lieu de lier deux neurones, lie un récepteur externe de pattern à un neurone. Ce dernier, neurone d'émission, peut écrire des messages sur le canal, mais pas en lire. Un groupe d'émission est un ensemble de canaux d'émission et de neurones d'émission.

De plus les groupe d'émissions et de réceptions sont liés par des boucles de contrôle. Les émissions sont réintroduites par des groupes de réception spécialisés. [ est-ce nécessaire ? ]

La description générale d'une intelligence naturelle ou artificielle se ramène à la relation entre ses canaux de réception et ses canaux d'émissions. La complexité de cette relation et l'apparition de forme d'émergence sont les propriétés espérées et la mesure de l'intelligence observée ou construite.

Mauvais !?

Ce modèle est mauvais, parce qu'il met en jeu des hypothèses dont on se passer.

Ainsi en est-il de l'hypothèse du contenu pattern des messages circulant entre neurones.

On peut faire sans. C'est plus acceptable concernant la description d'intelligences biologiques. C'est plus simple et plus léger concernant la construction d'intelligences artificielles. Meilleure est l'idée de réseaux résonnants, dans laquelle l'existence et l'état des connecteurs suffit, combiné à la définition de ses extrémités.

Fonctionnement basique

Conditions initiales

Quelques neurones simples et vierges (sans pattern) existent.

Des canaux d'entrées envoient des messages à ces neurones. Ces messages sont structurés par l'environnement. Ces canaux d'entrée ne sont que des capteurs.

Les canaux d'entrées continueront à fonctionner sans interruption.

Construction et destruction de neurone

Les neurones les plus actifs se scindent. Les deux neurones résultant de la scission héritent soit du (des) même(s) pattern(s), soit se partagent les patterns au hasard.

Les deux neurones résultant sont liés par un canal neuf.

Les deux neurones résultant héritent des canaux de connections au hasard.

Construction et destruction de canal

Un canal totalement inactif ne transmet plus rien, et disparaît.

Les canaux les plus actifs se dédoublent.

Evolution des patterns neuronaux

Les patterns locaux mémorisé dans les neurones évoluent.

Si les patterns des messages entrants sont très différent des patterns neuronaux, les patterns neuronaux ne sont pas affectés.

Si les patterns des messages entrants sont totalement identiques aux patterns neuronaux, les patterns neuronaux ne sont pas affectés.

S'il existe de faibles différences entre pattern entrants et pattern neuronal, celui-ci subit une légère modification, qui tend à le rendre plus proche du pattern entrant.

Mesure de ressemblance de pattern

La mesure de ressemblance est l'activité principale du neurone.

Cette mesure est une valeur en logique floue. C'est une valeur sur une échelle scalaire (mettons de 0.0 à 1.0) obtenue par comparaison de deux patterns.

Appelons ici la mesure de ressemblance entre deux patterns pa et pb, R(pa,pb). A l'inverse la dissemblance est D(pa,pb), et D(pa,pb) = 1.0 - R(pa,rb)

L'algorithme (naturel ou artificiel) doit obéir aux conditions suivantes:

  1. Une ressemblance maximale (mettons la valeur 1.0) est obtenue entre deux patterns identique. D(pa,pa) = 0.0
  2. Une ressemblance minimale (mettons la valeur 0.0) est obtenue entre deux patterns ne présentant aucune similitude.
  3. Deux patterns indépendants et aléatoires ont une ressemblance espérée très faible (très proche de 0.0).
  4. Symétrie : R(pa,pb) = R(pa,pb)             D(pa,pb) = D(pa,pb)
  5. Triangulation (inégalité triangulaire) : 1.0 - R(pa,pb) <= 1.0 - R(pa,pc) + 1.0 - R(pb,pc)          D(pa,pb) <= D(pa,pc) + D(pb,pc)

Les points 1, 4 et 5 correspondent à la stricte définition mathématique de distance, pour la dissemblance.

Aiguillage des canaux

Lorsqu'un message pattern arrive à un neurone, la propagation du message dépend de la ressemblance entre pattern local et pattern entrant, mais cette propagation est différente selon le pattern entrant. Il existe une table d'aiguillage (ou plutôt de pondération privilégiée) entre canaux entrants et sortants.

Si un neurone <3+> reçoit le message pattern <4>, il transfère ce message vers <6>, <7>, <8>, mais l'aiguillage entre l'entrant <4> et le sortant <7> présente beaucoup plus de perméabilité que les autres.

Si un neurone <traduc> reçoit le message pattern <"S:ver">, il transfère ce message vers un grand nombre de canaus, mais ceux qui présentent l plus forte perméabilité, la plus forte résonnance, sont <vert>, <vers>, <verre>... 

Synesthésie ?

L'aiguillage des canaux reflète le composant R(elation) dans le modèle SCSR, décrit plus loin.

L'aiguillage prioritaire se fait par un mécanimse d'apprentissage avec feedback positif (récompense), mais ceci mérite de larges développements ultérieurs.

Récemment et par rapport à un niveau moyen

L'expression "récemment et par rapport à un niveau moyen" a été utilisée à propos des variables internes du neurone.

Concrètement, un variable quelconque devient "récente et par rapport à un niveau moyen" par le processus simple que voici:

  1. soit L+ la transformée par lissage exponentiel de la variable initiale, avec une constante de lissage longue
  2. soit L- la transformée par lissage exponentiel de la variable initiale, avec une constante de lissage courte
  3. le rapport L-/L+ donne la variable transformée demandée

Tolérance algorithmique et perturbation stochastique

Tous les processus décrits ici sont flous et imprécis. Le fonctionnement général du dispositif est insensible aux imprécisions algorithmiques, aux imprécisions d'amplitude,...

Dans le même ordre d'idée, une faible perturbation stochastique (aléatoire) des processus n'a qu'une plus faible encore répercussion sur son état et sur son comportement.

Performances

Les hypothétiques dispositifs naturels effectuant les processus décrits ici sont probablement très petits et très rapides. Ils sont donc aussi très nombreux dans un espace limité.

Les dispositifs artificiels simulant ceci doivent être aussi rapides, petits et nombreux que possible pour obtenir des performances notables.

Modalités matérielles

Peu importe comment cela marche. Ici, se limitant au modèle, on admet juste au titre de postulat qu'il est possible:

  • d'imaginer des processus physiques, chimiques, biochimiques qui remplissent les fonctions décrites
  • d'imaginer des simulateurs algorithmiques, des intelligences artificielles, probablement lents et rudimentaires par rapport aux intelligences naturelles

Il est juste utile de signaler que les simulateurs algorithmiques seront très probablement réduits aux traitements digitaux, tandis que rien n'interdit de penser que les processus naturels soient analogiques.

Comparaison d'intelligences naturelles et artificielles

Sans entrer dans une classification subtile, on peut distinguer, dans le cadre de la problématique Assothink, différentes formes d'intelligences.

Une preière distinction oppose les composants digitaux (binaires, traitables aisément par les ordinateurs) des éléments analogiques (non binaires, traitant caractéristiquement des grandeurs variables selon des shcémas de proportionnalité, de dérivation d'intégration.

Voici ensuite les formes d'intelligences existantes et prévisibles.

  • Les Intelligences Naturelles (IA), intrinsèquement analogiques, résultat des processus de la sélection naturelle, présentes chez l'homo sapiens et chez diverses autres espèces de manière moins perfectionnée, opérationnelles depuis des millions d'années. C'est une forme d'intelligence hautement parallélisée et distribuée, dans laquelle l'apprentissage et la maintenance sont complexes et aussi cruciaux.
  • Les Intelligences Numériques Digitales (IND), c'est à dire les ordinateurs classiques, présents depuis ... 1950 ... jusqu'à aujourd'hui (2012) et probablement pour un long futur encore. Ces intelligences sont toujours construites autour d'un petit nombre de processeurs, d'un espace mémoire hiérarchisé selon les volumes traités et la rapidité d'accès: registres, caches, RAM, disques et périphériques.
  • Les Intelligences Artificielles Associatives Digitales (IAAD), construites sur réseau résonnant type Assothink. Elles sont les plus proches des intelligences naturelles. Elles sont encore très loin d'apparaître concrètement, car elles demandent des technologies à concevoir, tester et mettre en place. Les IAAD seront (seraient) fortement parallèles, comme les IA.
  • Les Intelligences Artificielles Associatives Binaires (IAAB), construites sur réseau résonnant type Assothink. Elles sont un peu moins proches des intelligences naturelles. Elles sont encore loin d'apparaître concrètement, mais rien n'empêche aujourd'hui (2012) une société acapble de produires des circuits de traitements de signaux, de construire une machine de ce genre: le projet est complexe et volumineux, mais toutes les technologies sont disponibles. Les IAAB seront (seraient) fortement parallèles, comme les IA et les IAAD. Les machines IAAB seront très probablement hybrides, c'est à dire combinants des IND comme contrôleurs/hôtes/gestionnaires de communicatiuons et des circuits IAAB proprement dits, perçus au sein de l'hôte IND comme un composant spécialisé résolvant des tâches spécifiques, et structurant uen forme de connaissance voire de personnalité.
  • les Simulateurs Numériques d'Intelligence Associative (SNIA). C'est l'étape la plus proche, réalisable dès 2012 par un homme ou une petite équipe en utilisant des technolgies disponibles et peu couteuses. Aujourd'hui Assothink est focalisé à ce niveau, parce qu'il permet déjà de bons exercices d'ajustements des modèles et des tests instructifs. Les technologies à utiliser sont les ordinateurs numériques classiques, un langage de programmation orienté objet (Java), les sources de connaissances floues (wikipédia et dictionnaires), etc... La parralélisation est ici fictive et programmatique, puisque bien sûr ce sont les processeurs classiques qui doivent in fine simuler l'activité des millions de noeuds et de canaux.

Construction d'une intelligence artificielle

A partir d'ici, les concepts exposés plus haut sont exploités pour la construction d'une intelligence artificielle, tandis que l'observation de l'intelligence naturelle est délaissée.

Concrètement:

  • les canaux, messages et neurones deviennent des objets dans un langage orienté objet (Java ca va ?)
  • les neurones sont organisés dans un ou - de préférence - plusieurs machines communiquant entre elles, de préférence vite
  • les canaux d'entrées peuvent être des caméras génératrices de pattern, des micros générateurs de pattern, des capteurs textuels... Un exemple de capteur textuel serait un robot parcourant des sites webs informatifs et en extrayant un contenu textuel, au hasard d'abord, en fonction de l'état interne des neurones ensuite
  • les canaux de sorties sont du texte écrit, du texte prononcé, des moteurs capables d'actionner notamment les canaux d'entrée.