Bouton retour vers l’accueil
Revenir à la section précédente
Choisissez une section
Allez à la section suivante
Allez à l'introduction. Allez à la section 1.4.
Allez au début du chapitre 0. Allez à la section 1.5.
Allez à la section 0.1. Allez à la section 1.6.
Allez à la section 0.2. Allez à la section 1.7.
Allez à la section 0.3. Allez à la section 1.8.
Allez à la section 0.4. Allez à la section 1.9.
Allez à la section 0.5. Allez à la section 1.10.
Allez à la section 0.6. Allez à la section 1.11.
Allez au début du chapitre 1. Allez à la section 1.12.
Allez à la section 1.1. Allez à la section 1.13.
Allez à la section 1.2. Allez à la section 1.14.
Allez à la section 1.3. Allez à la section 1.15.

1.10 Turing, le prophète de l’intelligence artificielle

1.10.1 L’exploit de Turing : une machine imaginaire

Printemps 1935, soit quelques années après la publication des théorèmes d’incomplétude de Gödel. Un jeune mathématicien anglais suit un séminaire sur les fondements des mathématiques. Un an plus tard, inspiré par l’ingéniosité des preuves de Gödel, il complète l’invention d’un nouveau langage de calcul qui finira par convaincre la communauté entière des mathématiciens que le calcul effectué par la main humaine peut être entièrement exécuté par une machine imaginaire. Je parle de machine imaginaire, d’autres préféreront parler de machine abstraite, car elle a été conçue sur papier et ne sera jamais construite comme telle. Il s’agit en fait uniquement d’un plan de machine exposé en termes entièrement mathématiques. Mais à quoi peut bien servir cette machine? Cette question a deux volets : qu’est-ce que la machine fait? Et quel problème sert-elle à régler?

Commençons par la seconde question. Le séminaire que suit Alan Turing (1912-1954) en 1935 l’introduit au « problème de la décision » (« Entscheidungsproblem ») formulé par Hilbert. La question est de savoir s’il existe une méthode mathématique (de calcul) permettant de décider en tout temps si une équation mathématique admet une solution calculable. Peut-on prouver qu’il existe une telle méthode universelle? Les théorèmes d’incomplétude de Gödel constituaient déjà une sérieuse mise en garde contre ce projet. Les machines de Turing vont clouer le couvercle du cercueil du programme fondationnaliste de Hilbert.

Le nœud des théorèmes d’incomplétude consiste dans la traduction du métalangage logique dans le langage arithmétique. Gödel parvenait ainsi à formuler des énoncés mathématiques vrais mais non prouvables par un système formel arithmétique. Mais Gödel ne répond pas encore à la question de Hilbert, puisqu’il ne montre pas qu’il existe une méthode systématique et universelle pour décider si un (type de) calcul ne finit pas par se contredire. Le génie de Turing est d’avoir inventé un langage numérique qui permet de définir une machine à calculer automatique qui imite si bien l’activité du calculateur humain que le calcul mathématique apparaît alors universellement mécanisable. (C’est la thèse de Church-Turing.) Voyons de quoi il s’agit.

Ce n’est un secret pour personne, l’invention de la machine de Turing découle clairement d’une analogie entre l’activité d’un calculateur humain et l’activité d’une machine à calculer. (Voir Turing 1936) Commençons par imaginer comme l’a fait Turing l’activité du calculateur humain, penché sur sa feuille de papier, crayon à la main, que fait-il? Son regard va de gauche à droite, son attention se déplace entre les termes des équations qu’il veut résoudre. Imaginons que chaque symbole des équations à calculer occupe une case distincte. Nous pouvons donc suivre à la trace le déplacement de son regard. Une autre action essentielle qui accompagne ce mouvement des yeux de case en case est celui de la lecture et de la mémorisation du symbole lu. La lecture et la mémorisation des données symboliques sont traitées par une opération mentale simple, l’application d’une table de calcul du genre de celle que l’on mémorise depuis l’école primaire. Voici un exemple simple :

+ 0 1 ...
0
0
1
...
1
1
2
...
...
...
...
...

Une entrée en haut, une entrée à gauche, et hop! un résultat à la rencontre de la colonne et de la rangée. Selon Turing, chaque calculateur humain a mémorisé un nombre fini de ces tables de calcul et s’y réfère constamment au gré des équations mathématiques qu’il doit résoudre. Il s’y réfère en fonction des données lues et mémorisées temporairement. Cela signifie qu’il prend une certaine position dans une table de calcul mémorisée. Il récolte un résultat qu’il écrit dans une case vide de son cahier ou qu’il mémorise temporairement à son tour. Voilà en somme qu’il existe un choix limité d’actions nécessaires au calcul humain : déplacer ou non son attention d’une case à une autre, lire ou non le symbole inscrit dans un case, mémoriser ou non un symbole, écrire ou non un symbole dans un case, effacer ou non une case, consulter ou non une table de calcul interne. Pour vous en convaincre voici l’exemple d’une addition. Appliquez la méthode d’addition avec retenue que vous avez apprise au primaire pour calculer « 25+37 » :

...
 
 
1
2
5
+
3
7
=
6
2
 
 
...

Avez-vous noté les étapes du calcul, le parcours de vos yeux d’une case à l’autre, la lecture d’une case, la mémorisation d’un symbole, l’opération mentale définie par une table de calcul mémorisée, l’écriture d’un résultat? Comme Turing l’a bien remarqué, il y a un nombre limité d’actions à poser pour obtenir un résultat (nous pouvons même numéroter ces actions pour les identifier). Qui plus est, le « patron de calcul » (comme l’envisageait déjà Babbage) aurait été la même pour calculer « 14+73 » ou «  58+29 ». Le patron de calcul ou la liste d’instructions commune à tous les calculs d’un même type s’appellent un algorithme. Remarquez qu’on aurait pu aussi présenter le calcul sous une forme horizontale. C’est d’ailleurs la forme que privilégie Turing, un ruban d’une longueur théoriquement infinie :

...   1     2 5 + 3 7 = 6 2      ...

Si vous avez pu exécuter le calcul, c’est que vous avez suivi une séquence bien définie d’étapes, où chaque étape est une action décrite par un numéro, jusqu’à ce que le calcul soit terminé. À ce moment, vous le calculateur, vous vous arrêtez ou vous passez à un autre calcul.

Tout cela semble presque trivial. Mais si cela résume bien toute l’activité du calculateur humain, il est parfaitement possible de concevoir une machine imaginaire qui peut exécuter ces mêmes actions dans le même ordre. La machine est composée d’un ruban découpé en case, d’une tête de lecture, d’effacement et d’écriture de symboles, et d’une table de calcul interne contenant toutes les instructions sur les actions à poser (dans quel ordre les exécuter) pour finalement écrire le résultat du calcul et s’arrêter. Ces instructions sont organisées sous la forme d’une table de configurations internes dont la consultation se fait de manière systématique suivant un algorithme de calcul. Et voici toute l’ingéniosité gödelienne à l’œuvre dans la machine de Turing : un même algorithme peut se présenter sous deux formes numériques, soit celle d’une table numérique d’états internes, soit celle d’un code numérique qui permet de manipuler les valeurs numériques et d’exprimer le résultat des calculs. Autrement dit, le langage numérique servant à décrire les actions du calculateur humain est universel parce qu’il permet de concevoir des machines qui pourront exécuter les calculs de tout autre machine ou calculateur humain. Il suffit de fournir à la machine universelle le code de la machine à imiter et les données de départ du calcul. Dépendamment du type de calcul à exécuter, la machine universelle et la machine à imiter seront équivalentes, elles s’arrêteront avec le même résultat à l’issue de leur calcul respectif. Notons qu’il est aussi possible qu’elles ne s’arrêtent pas, par exemple lorsque les deux machines calculent le développement décimal infini du nombre π.

Selon l’analogie de Turing (que l’on appelle plus communément la thèse de Church-Turing, je laisse au lecteur le soin de découvrir le Church en question), tout ce qui est effectivement calculable (par un calculateur humain ou tout autre machine à calculer) peut être calculé par une machine de Turing. Voici maintenant comment la machine de Turing permet de répondre au problème de la décision, celui de définir une méthode de calcul qui permettra de décider si une équation mathématique (un autre calcul) admet une solution calculable ou non. Turing convainc tout le monde (même Gödel) que si une telle méthode de calcul existe, alors elle doit utiliser un langage et une méthode de calcul équivalents à ceux de ses machines numériques. Et Turing prouve à la clé que le problème de la décision n’a pas de solution. Pour s’en convaincre, supposons une machine qui calcule (décide) si le calcul d’une autre machine ne s’arrête pas. Autrement dit, si la machine ne s’arrête pas, le calcul n’a pas de fin, il est infini. Le problème de la décision appliquée à cette machine soulève LA question piège : Est-ce que cette machine s’arrêtera (décidera) si on lui demande de calculer si elle-même ne s’arrête pas? Si elle ne s’arrête pas, cela veut dire qu’elle doit s’arrêter. Mais si elle est une machine qui s’arrête, alors elle ne doit pas s’arrêter. Élégant paradoxe inspiré directement de la preuve des théorèmes d’incomplétude de Gödel.

1.10.2 Le test de la pensée par le jeu de l’imitation

Dans son article classique « Computing machinery and Intelligence », Turing se demande d’entrée de jeu : « Une machine peut-elle penser? » (Turing 1995(1950)) Il continue sur sa lancée en nous mettant en garde d’essayer de bien définir les termes de cette question. Une bonne définition devrait refléter l’usage ordinaire des termes, cela nous amènerait à sonder la population sur ce qu’elle en pense, mais définir un terme par sondage serait absurde, décrète Turing de manière assez expéditive.

Turing reprend alors la même stratégie qu’il avait adopté pour concevoir ses machines. Il observe le comportement, il fait de cette observation clairement béhavioriste la base d’un nouveau raisonnement analogique qui prend la forme du « jeu de l’imitation ». Et la nouvelle question sera : si une machine gagne plus souvent qu’un humain à ce jeu, est-ce que l’usage permettra d’affirmer que la machine pense? Il s’agit d’un véritable test que nous faisons passer à la machine. Est-ce que ce test est suffisant pour nous faire admettre qu’une machine pense? Pour en juger, voyons d’abord en quoi consiste le jeu.

Ma présentation du jeu de l’imitation n’entrera pas dans tous les détails de l’article de Turing. Je me contente de l’essentiel pour ma thèse. L’enjeu est de réussir à concevoir et construire une machine qui saura suffisamment bien imiter un être humain. Mais il ne saurait être question de juger de l’apparence ou de la performance physique des deux concurrents. Le jeu se limite à l’évaluation du comportement purement intellectuel. La machine devra se contenter d’imiter le comportement écrit d’un être humain, (un homme ou une femme, peu importe). Selon le scénario de Turing, un humain (prenons ici un homme), une machine, et un juge humain (prenons une femme) sont placés dans trois pièces séparées, et la juge doit interroger les deux concurrents par écrit en posant les questions qu’elle veut puis décider dans quelle pièce se trouve l’humain et dans quel pièce se trouve la machine. La machine l’emporte si elle se trompe. Autrement dit, elle aura jugé que la machine et l’homme étaient équivalents, interchangeables.

Turing conjecture que dans les cinquante années qui suivront la parution de l’article, les machines deviendront assez puissantes pour tromper la juge trois ou quatre fois sur dix. À ce moment, la sagesse populaire admettra l’idée que les machines peuvent penser.

Après la présentation du jeu de l’imitation, Turing explique un peu mieux de quel machine il entend parler. Il s’agit, on s’en doute, de la machine universelle de Turing, une machine à calculer digitale. À ce titre, il est clair que les ordinateurs que nous utilisons chaque jour sont l’incarnation concrète de ces machines imaginaires. Nous réalisons donc que le test de Turing peut vraiment s’appliquer aujourd’hui. Il est communément admis par les spécialistes que les ordinateurs modernes ne parviennent pas encore à imiter au sens où Turing le souhaitait.

Qu’à cela ne tienne, Turing examine lui-même quelques objections qui pourraient discréditer son test a priori, c’est-à-dire avant même de pouvoir l’appliquer concrètement. Je ne passerai pas en revue les huit objections qui sont toutes à leur façon intéressantes. Je n’en examinerai rapidement que deux.

La première objection nous ramène aux théorèmes d’incomplétude de Gödel. Comme nous l’avons vu, l’incomplétude des systèmes formels se traduit et se prouve à nouveau dans les machines à calculer de Turing, c’était d’ailleurs la « solution » de Turing au problème de la décision de Hilbert. La possibilité de formuler un énoncé logique vrai pour un calculateur humain mais non prouvable par une machine de Turing laisse croire que l’esprit humain n’est pas soumis à ce genre de limitation purement mathématique et mécanique. La réplique de Turing est cinglante :

Pour répondre brièvement à cet argument, nous dirons qu’il existe des limitations évidentes aux pouvoirs d’une machine particulière, mais qu’on a seulement déclaré, sans aucune sorte de preuve, qu’aucune limitation de cette sorte ne s’applique à l’intelligence humaine. (Turing 1995(1950), p.268)

Et si on prend la peine d’y penser, on comprend très vite que l’intellect humain est loin d’être infaillible sur ce point. Supposons que l’intellect humain est imité par une machine de Turing. Est-ce que cette machine devrait être infaillible? Clairement, non. L’intellect humain fait régulièrement des erreurs de calculs, des erreurs de preuve, des erreurs de jugements de toutes sortes. Une machine qui imiterait l’intellect se devrait de faire des erreurs semblables, incluant des erreurs qui pourraient découler de son incomplétude. Est-ce que cela l’empêcherait d’imiter un humain? Au contraire, l’imitation n’en serait que plus réaliste…

Passons maintenant à notre deuxième objection. Turing brandit l’argument de la conscience en s’inspirant d’un texte de 1949 d’un certain Professor Jefferson. Autrement dit, le thème de la machine qui pense était dans l’air du temps. Cet argument s’appuie sur une identité entre la pensée et la conscience. Ainsi, pour penser, il faut être conscient, conscient du monde, conscient de nos pensées, de nos émotions, de nos désirs. C’est la conscience qui préside à la pensée humaine. Or une machine ne pourra jamais être consciente comme un humain peut l’être. Donc elle ne pourra jamais se comporter comme un humain, non seulement par exemple lire et écrire des sonnets, mais aussi pouvoir les commenter et les analyser en fonction des émotions qu’ils suscitent.

Turing analyse l’argument :

Cet argument semble une dénégation de notre test. Selon la forme la plus extrême de ce point de vue, la seule façon d’être sûr qu’une machine pense, c’est d’être la machine et de se sentir penser. On pourrait alors décrire ces sentiments au monde mais, bien entendu, il n’y aurait aucune raison d’en tenir compte. De plus, selon ce point de vue, la seule façon de savoir qu’un homme pense c’est d’être cet homme particulier. C’est en fait un point de vue solipsiste. C’est peut-être la plus logique, mais elle rend la communication des idées difficile. A est enclin de croire « A pense mais B non » tandis que B croit « B pense mais A non ». Au lieu de discuter continuellement sur ce point, on a l’habitude de convenir courtoisement que tout le monde pense. (Turing 1995(1950), p.269)

La réponse de Turing est faible. On ne peut s’empêcher d’y constater une forme d’antipsychologisme inavoué, dans la lignée de Frege. Turing parle de la pensée mais ne s’intéresse pas du tout à ce que les psychologues ont à dire sur la question. Il ne croit pas qu’il soit pertinent de montrer comment la conscience pourrait elle aussi être imitée par la machine. Mais à ce titre, nous ne savons pas plus comment notre prochain vit et expérimente sa propre conscience. On ne peut imiter directement la conscience des autres humains. On se contente d’assumer ou de déduire de leurs comportements que les autres humains sont conscients, mais nous ne le savons pas vraiment. À ce compte, nous pouvons bien donner le bénéfice du doute aux machines de Turing, diront ses partisans.

Comme Turing le souligne lui-même, ce n’est pas tant la conscience que l’apprentissage qui est le véritable enjeu ici. Sera-t-il possible de construire des machines qui pourront apprendre comme des humains?

Nous pouvons espérer que les machines feront éventuellement concurrence aux hommes dans tous les domaines purement intellectuels. Mais quels sont les meilleurs pour commencer? Même cela est une question difficile. Beaucoup de gens pensent qu’une activité très abstraite, comme le jeu d’échecs, devrait être la meilleure. On peut aussi soutenir que le mieux c’est de doter la machine des meilleurs organes des sens pécuniairement accessibles et ensuite de lui apprendre à comprendre et à parler anglais. C processus devrait inspirer de l’enseignement normal à un enfant. Les choses devraient être montrées et nommées, etc. À nouveau, je ne sais pas quelle est la bonne réponse mais je pense qu’on devrait essayer les deux approches. (Turing 1995(1950), p.284)

Pour Turing, les deux approches sont possibles et à vrai dire, se complètent. Mais nous qui avons le recul des années, nous savons maintenant que ces approches n’ont pas donné des résultats très convaincants. Oui, il existe des ordinateurs qui battent les champions humains aux échecs, mais c’est une autre histoire lorsqu’il s’agit d’apprendre comme un humain, en particulier apprendre à parler comme le font la plupart des enfants dès l’âge de deux ans. Les cinquante dernières années de recherches en intelligence artificielle n’ont pas donné les résultats escomptés par Turing.

1.10.3 Devrions-nous oublier le test de Turing?

Le « test de la pensée » qu’a défini Turing l’a poussé à formuler quelques prédictions qui se sont révélées fausses. Devrions-nous en conséquence reconsidérer la validité du test? Je ne sais pas pour vous, mais pour moi, il est clair que ce test n’a pas beaucoup d’autre utilité que de faire couler de l’encre des imprimantes universitaires. Si on en croit Turing dans la citation précédente, il suffit de fournir à la machine les meilleurs organes sensoriels que nous pouvons construire, et le tour sera joué. Les « meilleurs organes sensoriels que l’argent peut se permettre » ne sont pas suffisants, ils sont encore aujourd’hui incomparablement primitifs par rapport à nos sens humain. Si le corps humain est une machine biologique (comme on le propose aujourd’hui), alors c’est une machine dont nous n’avons encore aucune idée comment construire.

Turing a proposé à ces contemporains (philosophes, logiciens, mathématiciens et ingénieurs) une idée de l’esprit entièrement mécanique et définissable sur papier. Turing a inventé un langage numérique qui réunit mathématiquement l’esprit et la machine. Mais il s’agit d’une mécanique abstraite, qui ne s’intéresse qu’à ce que peut faire l’esprit, et non au corps humain. Turing discrédite l’idée d’un test qui compareraient les performances physiques ou corporelles de l’humain et de la machine. Il rappelle ainsi le dualisme cartésien en séparant ainsi les performances du corps et celles de l’esprit. Mais là où le cartésianisme se limite à la métaphore du corps humain comme machine, l’innovation mathématique de Turing fait aussi de l’esprit une machine.

Je crois que, dans une cinquantaine d’années, il sera possible de programmer des calculateurs ayant une capacité de mémorisation d’environ 109 pour les faire si bien jouer au jeu de l’imitation qu’un interrogateur moyen n’aura pas plus de 70% de chances de faire une bonne identification après cinq minutes de questionnement. Je crois que la question originale « Les machines peuvent-elles penser? » trop insignifiante pour mériter discussion. Je pense, néanmoins, qu’à la fin du siècle l’usage des mots et l’opinion générale éduquée auront tellement évolué qu’on pourra parler de machines pensantes sans s’attendre à être contredit. De plus, je crois que cela ne sert à rien de dissimuler ces convictions. L’opinion courante selon laquelle les scientifiques avancent inexorablement de fait bien établi en fait bien établi sans jamais être influencés par la moindre conjecture non démontrée est très fallacieuse. À condition que clarifier ce que sont des faits prouvés et ce que sont des conjectures, cela ne crée aucun problème. Les conjectures sont très importantes en ce qu’elles suggèrent des directions utiles de recherche. (Turing 1995(1950), p.265)

Une dernière question pour conclure. Le test de Turing est-il vraiment nécessaire? Autrement dit, est-il possible que l’usage finisse par consacrer l’idée que les machines pensent sans pour autant qu’il soit nécessaire de tester ces machines? En effet, aujourd’hui, on constate que la seule habitude de côtoyer les ordinateurs personnels est suffisante pour introduire dans la langue courante tout un vocabulaire qui anthropomorphise ces machines. Il est courant d’entendre qu’un ordinateur ne « veut » pas exécuter une tâche ou qu’il « mémorise » un fichier et « se souvient » d’un mot de passe, d’une donnée ou de l’identité d’un utilisateur. Mais ce serait encore une erreur de croire que cette anthropomorphisation est le résultat progressif de l’utilisation quotidienne des ordinateurs. Il faut plutôt comprendre que cette anthropomorphisation a été nécessaire à l’invention même de l’ordinateur. En ce sens, le test de Turing n’est qu’une distraction rhétorique. En réalité, la « machine pense » parce que l’ordinateur a été inventé grâce à une métaphore longuement préparée entre la mécanique de la pensée humaine et les machines à calculer. Sur ce point, Turing est complètement aveugle.

En 1936, à Cambridge (Royaume-Uni), Turing invente sur papier une machine à calculer universelle, une étape décisive pour l’invention de l’ordinateur moderne. Mais c’est bien beau imaginer une machine, encore faut-il la fabriquer. Notre périple historique nous mène maintenant sur le territoire américain rejoindre la compagnie des remarquables mathématiciens ingénieurs qui ont matérialisé l’invention de Turing. Celui-ci a bien tenté de construire sa propre machine, avec un certain succès d’ailleurs. Mais ses efforts n’ont pas connu la postérité éclatante de ceux de ses collègues américains, ceux que je désignerai comme les pré-cybernéticiens.

Dans ce « retour au concret » qui reprend tout en le renouvelant le projet de machine analytique laissé en plan par Babbage un siècle plus tôt, je vais m’intéresser à trois figures marquantes, chacune par l’intermédiaire d’un article ou d’un court texte qui a fait date. En 1937-1938, Claude Shannon montre comment appliquer la logique booléenne à la conception de circuits électriques, ce qui révolutionne complètement les méthodes des ingénieurs électriques de l’époque. En 1943, Warren McCulloch et son collègue Walter Pitts montrent cette fois comment l’organisation neuronale du cerveau peut être modélisée grâce à la logique propositionnelle. Deux ans plus tard, John von Neumann, très inspiré par l’article précédent, met sur papier les principes de l’architecture matérielle et logicielle de ce qui deviendra l’ordinateur digital électronique moderne.

 

Retour au haut de la page
Bouton retour vers l’accueil
Revenir à la section précédente
Choisissez une section
Allez à la section suivante

Allez à l'introduction. Allez à la section 1.4.
Allez au début du chapitre 0. Allez à la section 1.5.
Allez à la section 0.1. Allez à la section 1.6.
Allez à la section 0.2. Allez à la section 1.7.
Allez à la section 0.3. Allez à la section 1.8.
Allez à la section 0.4. Allez à la section 1.9.
Allez à la section 0.5. Allez à la section 1.10.
Allez à la section 0.6. Allez à la section 1.11.
Allez au début du chapitre 1. Allez à la section 1.12.
Allez à la section 1.1. Allez à la section 1.13.
Allez à la section 1.2. Allez à la section 1.14.
Allez à la section 1.3. Allez à la section 1.15.