Magazine

Copycat

Publié le 17 janvier 2010 par Serdj
CopycatSelon Douglas Hoftstadter, le "pape de l'analogie" en intelligence artificielle, La question centrale de l’analogie est celle-ci :  qu’est-ce qui est à … ce que … est à … ? (vous pouvez mettre ce que vous voulez dans les pointillés, par exemple : Qu’est-ce qui est à l’Angleterre ce que la « première dame » est aux USA ?). Et, nous dit Hofttadter, comme la question générale (avec les pointillés) est une question bien trop générale pour y répondre simplement, je vous propose d’en examiner un petit sous-ensemble, en nous concentrant sur la seule question : qu’est-ce qui est à X ce que Y  est à Z ?, mais en restreignant X,Y, et Z à des suites de lettres de l’alphabet. C’est ce que fait mon programme Copycat. Par exemple, vous lui posez la question : « qu’est-ce qui est à ijk ce que abd est à abc ? (ou encore : si abc devient abd, que devient ijk ?), et Copycat vous répondra « ijl », bien sûr !
Bien sûr… sauf que la réponse n’est en rien évidente, pour un ordinateur ! Pour répondre, il faut qu’il sache que les lettres se suivent dans un certain ordre, qu’il remarque que dans abc et ijk les lettres se suivent dans l’ordre, que dans abd le « d » joue un rôle spécial car il « saute » la lettre c, et que par conséquent la bonne réponse est sans doute de faire « sauter » aussi une lettre après la séquence ij pour donner ijl
Et encore, c’est un cas simple.  Que pensez vous de la question suivante :
Qu’est-ce qui est à  i j k k ce que a a b d est à a a b c ?
On encore : si « a a b c » se transforme en « a a b d », que deviendrait «  i i k k » ?
Voyons voir : a a b c se transforme en a a b d, donc en appliquant le raisonnement que nous avons tenu pour l’exemple précédent, la réponse pourrait être i j k l.  Oui… sauf que ça ne nous satisfait pas.  D’abord , dans cette réponse, toutes les lettres sont dans l’ordre, alors que dans a a b d c’est loin d’être le cas.  Ensuite, il semble y avoir une histoire de lettre doublée. Dans la séquence a a b c -> a a b d, on n’a pas touché à cette paire a a Ce serait bien qu’on préserve aussi la paire k k dans notre réponse. D’où une réponse possible : i j l l, dans laquelle on a remplacé le concept de « augmenter la lettre la plus à droite » par « augmenter le groupe de lettre le plus à droite ». Mais il y a d’autres réponses possibles. Je peux dire qu’en passant de a a b c vers a a b d, j’ai  augmenté la lettre la plus éloigné de la paire a a (qui se trouve être le c) : donc en augmentant dans  i j k k la lettre la plus éloignée de la paire k k, je trouve … j j k k. Ah oui, mais c’est pas génial parce qu’il y a maintenant deux paires de lettres dans ma réponse, alors que dans l’exemple a a b d il n’y en a qu’une. Non, décidément, la bonne réponse semble être i j l l .
Aussi incroyable que cela puisse paraître, le programme Copycat, dû à Melanie Mitchell et Douglas Hosftadter, tient effectivement tous ces raisonnements ! Selon Hoftstadter, l’objectif du programme n’est pas tant de « faire des analogies » que de simuler un raisonnement fluide. Copycat procède par « glissements de perception ». Pour lui, un point de vue, c’est un ensemble de rôles que le programme assigne aux  lettres de l’exemple (par exemple une lettre peut « être la lettre précédente augmentée de 1 », ou « membre d’une paire », ou « être en début d’une séquence (ou sous-séquence) ». Mais lorsque ce point de vue ne convient pas, Copycat change de point de vue, et choisit un autre rôle pour certaines lettres.
Par exemple :
« si a a a a donne a c e g, qu’est ce que devient z z z z ? »
(cherchez un peu avant de passer au paragraphe suivant)
La réponse de Copycat pour cet exemple a nécessité l’invention du concept « d’inversion du sens » : (au lieu de commencer par a et de monter, je commence par z et je descend), alors qu’il ne connaissait pas ce concept. De plus le programme a choisi d’inverser le sens parce que z est, en quelque sorte, l’inverse de a dans la suite des lettres.  Et, naturellement, puisqu’à à chaque « pas » dans a c e g je monte de deux lettres, je dois descendre de deux lettres à chaque pas de la réponse, qui est bien sûr ( !)  z x v t. N’est-ce pas une magnifique preuve d’intelligence ? Certaines réponses données par Copycat (comme pour les deux questions précédentes) dénotent un véritable « agilité d’esprit ».
Ce qui est extraordinaire, c’est que Copycat invente les rôles lui même, au fur et à mesure des problèmes qu’on lui pose. Au départ, il ne connaît que les lettres de l’alphabet, et laquelle est la première et la dernière. Point final. Copycat est, comme Eurisko, un programme qui se modifie lui-même.  Les objets internes du programme sont des cadres, qui possèdent des champs comme « facile à voir », « importance », « concepts similaires », etc.
Pour traiter les répétitions de lettres, Copycat a inventé le concept de nombre. Mais il n’est pas allé au delà de 5, ce qui n’est pas très grave parce que les gens ne comptent pas les lettres « d’un seul coup d’œil » au delà de 5, précisément. Les capacités de Copycat pour faire des analogies dans le domaine des lettres sont très voisines de celles d’un humain, pas moins bonnes, pas meilleures. Mais c’est déjà tout à fait remarquable.
Les sous-programmes fabriqués par Copycat, les Codelets, sont de véritables agents qui possèdent une valeur « d’urgence » qui les pousse à agir (s’exécuter) ou pas dans une situation donnée. Bien sur un codelet peut appeler un autre codelet. Il n’y a aucun processus global qui supervise le fonctionnement des agents, qui sont tous autonomes. Le comportement global intelligent de Copycat émerge réellement de l’interaction d’une multitude d’agents inintelligents.
Essayez de répondre à la question suivante
Si a b c devient a b d, que devient i i j j k k ?
Il y a a priori plusieurs réponses possibles : i i j j l l,   i i j j d di i j j k l,  i i j j k d, ou même a b d ou a a b b d d  Il y a plusieurs justifications possibles pour ces réponses. En général les gens jugent certaines réponses meilleures que d’autres. Souvent, la meilleure réponse (i i j j l l) n’est pas la plus simple ou la plus évidente. Malgré sa simplicité apparente, le domaine des problèmes couverts par Copycat est extrêmement riche et subtil.
On pourrait penser que le « domaine des lettres de l’alphabet » est très réductif, et qu’un système qui pourrait faire des analogies sur tous les domaines devrait être beaucoup plus compliqué que Copycat.  Par exemple trouver que la « première dame » d’Angleterre est probablement la femme du premier ministre (ou son mari si c’est une femme) semble plus intelligent que de trouver la réponse à un « simple jeu de lettres ». Mais, dit Hofstadter, c’est une illusion. Le domaine des lettres de l’alphabet capture tant de caractéristiques de ce que nous appelons analogie que n’importe quel domaine n’est pas, en réalité, plus compliqué. En fait le domaine de la question « si X devient Y, que devient Z » ? capture toute les formes de raisonnement logique. Par exemple le cas particulier « si X devient Y, que devient Y ? » est ce qu’on appelle l’extrapolation. Qu’est ce qui est aux Beatles ce que les Beatles sont à Mozart ? Voilà une question intéressante !
Autre exemple, si DA donne AA, DB donne BB et DC donne CC, que donne DD ? Il est clair d’après les trois exemples que D est un « duplicateur », c’est à dire que son rôle est de dupliquer ce qui le suit. DD donne alors DD, c’est à dire lui-même. Toute structure capable de supporter la duplication permet l’autoréférence. Et l’autoréférence est au cœur de la conscience.
Pour montrer que l’architecture interne de Copycat, le « moteur d’analogie », peut être appliqué à presque toutes les situations où les humains font preuve d’intelligence, Hosfstadter a donné carte blanche à ses étudiants, pour qu’ils inventent de nouveau programmes « intelligents ». L’un de ces programmes mérite une attention particulière, il s’agit de Phaeaco.

NB: cette page est extraite de mon livre "L'esprit, l'IA et la SIngularité".

La suite>: Phaeaco
 
Partagez / votez pour cette page :
http://www.wikio.fr PUBLIER CETTE PAGE OU VOTER POUR CET ARTICLE SUR DIGG-FRANCE.COM

Retour à La Une de Logo Paperblog

A propos de l’auteur


Serdj 10439 partages Voir son profil
Voir son blog

l'auteur n'a pas encore renseigné son compte l'auteur n'a pas encore renseigné son compte