Deux intelligences limitées
Divulgâchage : Si on écoute les promesses commerciales des éditeurs d’IA, nous serions sur le point d’être dépassés par leurs produits qui pourront, prochainement, nous remplacer tous tant elles savent faire de choses. Qu’en est-il vraiment ?
On ne va pas se mentir, le Grand Projet des informaticiens, est (et a toujours été) de se décharger sur les machines ; si on peut automatiser quelque chose, un informaticien l’automatisera. Qu’importe le retour sur investissement. Parfois juste pour la beauté du geste.
Que dites-vous ?… C’est inutile ?… Je le sais ! Mais on ne se bat pas dans l’espoir d’un succès ! Non ! non, c’est bien plus beau lorsque c’est inutile !
Edmond Rostand, Cyrano de Bergerac, Acte V, scène 6, 1897.
Mais on n’automatise pas n’importe quoi ; en tant qu’informaticiens, notre spécialité c’est d’automatiser le traitement d’informations. C’est à dire automatisation des raisonnements. Donc faire des Intelligences Artificielles (et je vous explique plus loin pourquoi on ne le dit généralement pas comme ça).
Pour être honnête, dans le parcours de chaque informaticien, il y a un moment où on se dit « et si je développait une intelligence humaine ? » Ce serait formidable non ? Je pourrais lui poser n’importe quelle question et elle y trouverait la réponse, sans que je me fatigue.
On appelle ça une « Intelligence Artificielle Générale » et avec les derniers développements des algorithmes génératifs (e.g. GPT-4, midjourney, …) certains prophétisent déjà son arrivée prochaine et fantasment sur ses possibilités.
Que ce soit après avoir utilisé un de ces logiciels ou avoir lu un article dans la presse, il est souvent difficile de faire la part des choses entre la réalité et le mythe lorsqu’on n’est pas spécialiste du sujet. Corolaire, toutes nos connaissances nous ont posé la même question :
Vous en pensez quoi vous des IA ? Peuvent-elles nous remplacer ?
Nos connaissances
Réponse courte : c’est passionnant ! (je sais, ça ne répond pas à la question)
Théorème d’Incomplétude de Gödel
Pour bien comprendre le sujet (« les IA peuvent-elles nous remplacer »), on va devoir faire un petit détours préliminaire du côté des mathématiques. En particulier via un théorème fondamental pour l’informatique (qui n’est malheureusement pas enseigné).
Au début du XXème siècle, les mathématiciens se sont demandés s’ils pourraient, un jour, délimiter le vrai du faux. Partant des objets d’une théorie et des manipulation qu’elle autorise, peut-on, quel que soit l’énoncé, savoir s’il est vrai ou faux.
David Hilbert, qui dominait le sujet à l’époque pensait que oui, qu’avec de la patience et des efforts, on finirait par y arriver. Kurt Gödel après avoir prouvé que c’était possible en logique du premier ordre, a démontré en 1931 que c’est en fait impossible dès qu’on inclus au moins l’arithmétique.
Ce qu’il a démontré, c’est que si vous prenez n’importe quelle théorie qui comprend au moins l’arithmétique, ce système ne peut pas à la fois être complet et correcte.
- Complet : signifie que tous les énoncés qui sont vrai dans la théorie peuvent être démontrés (via un enchaînement de manipulation qui part des axiomes - les objets de base),
- Correcte : signifie que tous les énoncés démontrés sont vrais (vous ne pouvez pas, sans tricher, démontrer un énoncé faux).
Si une théorie est correcte, il existe donc des énoncés qui sont vrais mais pour lesquels vous n’avez pas de démonstration (on dit qu’ils sont indécidables). À l’opposé, les théories complètes n’ont pas ce problème d’indécidabilité puisqu’elles démontrent tout et son contraire (elles démontrent donc des énoncés faux).
Truc amusant (pour ceux qui aiment ce genre de choses), savoir si une théorie est complète ou correcte est indécidable. Corollaire plus amusant encore, les théories qui démontrent être correcte ne le sont donc plus1.
Intelligences artificielles
Mis à part certains fondamentalistes, on penses rarement aux programmes en tant que théories mathématiques dont l’exécution est une preuve de son résultat. Mais c’est pourtant le cas…
Lorsqu’un site web vous fourni une réponse, la trace de son exécution est la démonstration que le résultat est le bon ; sous réserve que les données d’entrée et la programmation soient correctes. D’où les efforts acharnés des départements qualité qui cherchent à s’assurer que les programmes mis en production soient corrects (cette question de la correction d’un programme étant bien sûr indécidable sinon ce ne serait pas amusant).
Les informaticiens n’y pensent pas forcément mais fondamentalement, leurs méthodes de raisonnement et leurs programmes se répartissent en deux familles, correspondant aux propriétés du théorème d’incomplétude de Gödel qu’ils préfèrent : correction vs complétude.
Systèmes corrects
Dans cette famille d’algorithmes et de programmes, on retrouve tous ceux qui ne se trompent jamais. Ils sont corrects, par conception et on dispose de preuves pour certains d’entre eux (les plus simples, forcément).
Vous retrouverez ici les programmes développés et enseignés de manière classique depuis les débuts de l’informatique qui sont, à la connaissance de leurs auteurs, corrects. Les réponses qu’ils fournissent sont celles prévues par les développeurs (sinon c’est un bogue).
En vrac, et sans être exhaustif, on peut penser aux traitements de textes, tableurs, bases de données. Mais aussi à certains sites webs (blog, commerce en ligne, forums, ENT) voir même aux systèmes d’exploitations, aux serveurs, aux navigateurs,…
Les systèmes les plus polyvalents que vous trouverez dans cette famille sont des systèmes de raisonnement automatique (e.g. Answer Set Progamming ou encore prolog). Mais vous devrez vous charger de leur fournir les objets, les règles pour les manipuler et l’énoncé que vous cherchez à démontrer, le tout sous forme abstraite et symbolique.
On considère rarement ces systèmes comme des Intelligences Artificielles, pour deux raisons.
- Officiellement car ils sont confinés au type de question pour lesquels ils ont été programmés. Ils ne savent rien faire d’autre que ce pourquoi on les a programmés et on attend plus de polyvalence d’un système qui se dit intelligent.
- Officieusement car ces algorithmes étants conçus pour être corrects, on peut comprendre leur fonctionnement et, surtout, on constate leur déterminisme. Notre égo n’apprécie pas d’être comparé à ces règles simples ; où serait son libre arbitre ?
Même s’ils font preuve de raisonnements bougrement intelligents (la plupart des humains ne savent pas les suivre), leur déterminisme mets ces programmes hors course pour le titre d’Intelligence Artificielle.
Systèmes complets
Puisque les programmes classiques ne méritent pas le titre d’intelligences artificielles, Les programmes vraiment intelligents doivent donc répondre à deux critères :
- Officiellement, pouvoir s’adapter à plusieurs situations, sans avoir été spécifiquement programmé pour les gérer.
- Officieusement, être inexplicables (voir cryptiques) pour que notre égo conserve sa conviction de libre arbitre.
On retrouve dans cette catégorie tout un tas de techniques qu’on qualifie « d’apprentissage automatique ». Puisqu’on ne peut plus développer une méthode correcte (car elle ne résoudrait qu’un problème précis et on la comprendrait), on va faire un système qui apprend tout seul (car il pourra s’adapter et on ne saura plus comment il se débrouille).
On y trouve des méthodes statistiques (i.e. analyse en composantes principales, plus proches voisins, …) ou s’inspirant du vivant (i.e. les fameux réseaux de neurones, plus ou moins profonds). Toutes ces techniques utilisent une première phase d’apprentissage où elles sont confrontées à des problèmes similaires et s’y adaptent.
Lorsqu’on dit que les réseaux de neurones profonds (ceux avec plein plein plein de neurones) sont bien plus intelligents que les systèmes d’apprentissage automatique classique, c’est officiellement parce qu’ils sont plus polyvalents mais officieusement parce qu’ils sont complètement inexplicables.
Mais il faut garder à l’esprit que ces techniques sont fondamentalement incorrectes (on dit aussi « incohérentes »). Lorsque vous interrogez un de ces algorithmes d’IA par apprentissage, vous espérez une bonne réponse mais vous devez vous attendre à ce qu’il réponde aussi n’importe quoi. En fait, ils n’ont raison qu’avec de la chance.
Au point que contrairement aux algorithmes corrects qui sont validés par des preuves ou des batteries de tests rigoureux (du moins en théorie), ces algorithmes par apprentissages doivent juste avoir un bon taux de réponse correctes. Ce taux n’est d’ailleurs pas toujours mesuré, et lorsqu’il l’est le seuil reste arbitraire et l’ensemble est encore plus rarement communiqué.
Par exemple, lorsqu’on utilise GPT-4, on sait que ce système a été conçu pour deviner les prochains mots d’un texte. Lorsqu’on lui fourni un prompt (un début de texte), il va simplement le compléter par des trucs au hasard, qui ressemblent à des choses qu’il a vu par ailleurs en espérant que ça fasse illusion. Si vous vouliez une réponse fiable, passez votre chemin.
C’est la même chose avec les algorithmes de génération d’images (e.g. midjourney ou DALL-E). Ils n’ont pas de modèle de la réalité mais vont simplement mettre des couleurs pour que ça ressemble à ce qu’ils voient d’habitude avec les mêmes mots clés. Tant pis pour le nombre de doigts, de jambes et autres détails compliqués tant que ça satisfait les utilisateurs.
Pour compenser toutes leurs bêtises, les utilisateurs sont appelés à guider leurs IA vers les réponses acceptables. En raffinant le prompt par modifications successives on peut aboutir à quelque chose de bien. Et bien sûr, ce ne sont que ces résultats finaux qui sont publiés et donnent une si bonne image de ces algorithmes (sauf quand ça peut être amusant).
Algorithmes mixtes
Dans l’euphorie ambiante, on pourrait croire qu’il suffit de coupler ces deux familles d’algorithmes pour dépasser leurs limitations individuelles. Le mariage des deux pourrait alors répondre sans erreur à toutes les questions ! Ce serait pas génial ?
Mais ce serait oublier que le théorème d’incomplétude s’applique également au résultat qui ne pourra donc être que correct ou complet, mais jamais les deux. Vous aurez parfois des algorithmes corrects (mais qui ne pourront pas traiter beaucoup de sujets), et la plupart du temps des algorithmes complets (qui pourront dire tout, et n’importe quoi).
Exemple récent de mixage d’algorithmes par l’armée Israélienne. Un premier algorithme par apprentissage pour reconnaître des cibles potentielles, qui sont fournies à un second algorithme classique d’optimisation pour déterminer qui tirera dessus. C’est plus rapide et ça permet d’optimiser les munitions, mais le ciblage reste un algorithme complet (donc incorrect).
C’est une limitation fondamentale. Même si le marketing nous dit qu’il suffit d’augmenter la puissance ou d’attendre une nouvelle technologie (i.e. l’informatique quantique), ça n’y changera rien. Ces réseaux de neurones et autres modèles de langues sont voués, intrinsèquement, à faire des boulettes car ils n’ont aucune notion de correction.
Intelligence humaine
À ce stade on pourrait penser que l’humanité est sauve. Les Intelligences Artificielles, étant des programmes soumis aux limitations de Gödel, elles ne pourront donc que dire des bêtises ou ne rien dire du tout et n’arriverons jamais à notre niveau d’intelligence.
Car c’est évident que nous autres, êtres humains, nous sommes rationnels et jamais à cours de réponse. Il nous arrive peut être parfois d’admettre ne pas connaître la réponse là tout de suite mais c’est évidement parce qu’il nous manque des données, du temps, ou du sucre pour nourrir notre merveilleux cerveau. Ce ne sont là que des limitations logistiques.
Mauvaise nouvelle, puisque nous sommes capables de faire de l’arithmétique, nous sommes sujets au théorème d’incomplétude de Gödel. Et tout comme il y a deux grandes familles d’algorithmes, notre cerveau utilise deux modes de raisonnement différents ; analytique vs heuristique (ou encore Système 1 vs Système 2).
Raisonnements analytique
Il s’agit des opérations mentales que nous effectuons pour trouver une réponse en nous assurant de sa validité. Qu’importe la question, nous voulons ne pas nous tromper. On peut parler de raisonnement logique, réfléchi, scientifique et dans une certaine mesure, de raisonnement rationnel2.
Pour y arriver nous devons poser les différentes étapes du raisonnement et nous assurer que nous ne pouvons passer de l’un à l’autre qu’avec des opérations elles-mêmes valides. Aucun raccourci n’est toléré au risque d’introduire une erreur qui invaliderait l’ensemble.
Ce mode de raisonnement est bien évidement correct du point de vue logique et nous permet d’obtenir des réponses fiables. Contrepartie à nos capacités arithmétiques, ce mode est également incomplet ; de nombreuses questions ne peuvent pas y avoir de réponse (ce qui peut mener à la paralysie d’analyse).
Et comme si cette limitation n’était pas suffisante, ce mode de raisonnement a deux problèmes supplémentaires :
- Il est coûteux pour notre cerveau. Que ce soit en énergie (67% de plus que le contrôle moteur) ou en attention, suivre un raisonnement réfléchi demande un effort de concentration soutenu. Il faut faire des pauses et prendre ensuite du repos.
- Il utilise des aires spécifiques (cortex préfrontal latéral) qui se développent une première fois dans la petite enfance (planification et raisonnement, jusqu’à 2 ans) puis une seconde fois à l’adolescence (raisonnement, stratégie et contrôle de l’attention, jusqu’à 30 ans).
Nous sommes donc équipé d’un système fiable mais qui met du temps à mûrir, qui coûte de l’énergie et qui ne peut pas répondre à toutes les questions. Pour éviter de nous épuiser futilement, nous utilisons donc un deuxième mode de raisonnement.
Raisonnement intuitif
Nous n’y faisons généralement pas attention mais notre cerveau passe son temps à prendre tout un tas de décisions sans nous consulter. Par quel pied commencer à se chausser, quelle céréale mettre dans la cuillère, quel vêtement enfiler en premier,… Comme ces décisions sont faciles et ne prêtent pas à conséquence, nous ne nous ne les remarquons plus.
Pour prendre ces décisions si facilement, le cerveau utilise des heuristiques. Il s’agit de raccourcis dans le raisonnement où on restreint l’ensemble des données et où on applique des recettes qui ont l’air chouette. C’est bien plus rapide mais on est aveugle à une partie du contexte et la recette appliquée, même si elle a déjà fait ses preuves dans le passé, peut ne pas marcher à chaque fois.
Et lorsque ces heuristiques se trompent, qu’on fait une boulette, on appelle ça des biais cognitifs. Des situations où nos heuristiques se trompent et où nous prenons une décision opposée à la décisions rationnelle. Il y en a des tas et avec l’effort de recherche dans le domaine on en découvre de nouveaux régulièrement.
- Biais de négativité : Le négatif a un poids plus important que le positif lors de prises de décisions, rejoint dans une certaine mesure l’aversion aux pertes et l’utilité marginale.
- Biais d’encrage : Les éléments du contexte fournis en premier qui n’ont pourtant rien à voir avec la question servent malgré tout de points de référence. L’effet de Halo est un proche parent.
- Biais des coûts irrécupérables : prendre en compte des coûts passés et pourtant perdus dans l’estimation de deux alternatives.
- Et biens d’autres (que vous pouvez trouver sur wikipedia).
Ce deuxième système est donc largement inconscient, très facile à mettre en œuvre et jamais à court de réponse. Corolaire, sa complétude le rend incorrect dans beaucoup de situations.
Raisonnement mixte
En réalité, ces deux systèmes ne sont pas séparés mais intriqués et fonctionnent de concert. Cette histoire de systèmes différents est surtout une métaphore correspondant aux extrêmes. On l’utilise car elle est pratique pour en parler (je vais donc continuer de le faire).
L’ensemble devant également respecter le Théorème d’Incomplétude, sommes-nous correct ou complet ? Sans surprise à ce stade, l’existence des biais cognitifs prouve que nous sommes globalement complets (donc incorrects).
Heureusement, avec de l’entraînement il est possible de réduire les erreurs de nos raisonnements intuitifs en prenant le recul de la réflexion :
- Lorsqu’on détecte des situations propices aux biais, d’où l’intérêt de les connaître,
- Lorsque la décision porte un enjeu particulier, dans ce cas, « la nuit porte conseil ».
On peut alors parler de raisonnement réflexif, aussi appelé méta-cognition où nous raisonnons sur nos manières de raisonner. Les programmes informatiques sont également doté de cette faculté (mais elle est rarement pratiquée). La méditation en pleine conscience est un moyen d’y arriver (mais elle est rarement pratiquée).
Finalement même avec tous ces efforts, gardez à l’esprit que nous ne seront jamais corrects car le fait même que nous nous considérions sérieusement comme des êtres rationnels prouve indubitablement que nous ne le sommes pas3. Et c’est tant mieux car si nous l’étions, notre espèce aurait disparu de la surface de la Terre, paralysée dans ses analyses.
Et maintenant ?
Si vous craigniez une Intelligence Artificielle Générale qui puisse dominer le monde en répondant correctement à toutes les situations, rassurez-vous, ça n’existera jamais car ça contreviendrait au Théorème d’Incomplétude de Gödel. Plus une IA est fiable, moins elle est autonome (et vice versa).
Si vous pensez que ça prouve que notre formidable esprit rationnel sera donc toujours supérieur aux machines, détrompez vous car nous sommes sujet à ces mêmes limitations. Nous pouvons faire preuve de rationalité de temps à autre mais la grande majorité de nos décisions sont intuitives et sujettes à de nombreux biais cognitifs.
Et c’est là que la question devient vraiment intéressante… Des machines peuvent-elles avoir les mêmes capacités que nous ? Voir les dépasser ?
Pour comparer, encore faudrait-il que nous soyons d’accord sur la manière de le faire. Côté humain, les tests psychométriques (dont les tests de QI) ciblent uniquement le raisonnement rationnel, montrent qu’il y a de grandes disparités et passent sous silence nos capacités d’adaptations. Côté machines, le Test de Turing ne cible qu’une discussion textuelle où la machine doit « donner le change » à un contrôleur humain, sans jamais prendre ses responsabilités.
Pour l’instant, le mieux dont on dispose, ce sont des outils aux services d’humains pour leur faciliter certaines tâches spécifiques :
- Les méthodes correctes (programmes classiques) sont plus efficaces que nous sur leurs problèmes très spécifiques mais il faut toujours un humain pour les développer et d’autres humains pour les piloter car ils n’ont pas l’autonomie suffisante.
- Les méthodes complètes (par apprentissage) sont plus rapides que nous sur les masses de données qu’elles manipulent mais leurs réponses ne sont que probablement bonne (et on ne sait pas toujours avec quelle probabilité). Il faut donc un humain pour les guider dans leur apprentissage et pour valider leurs réponses.
Ce qui me trouble personnellement, c’est que même si les robots conversationnels racontent des bêtises car ils ne font que mettre des mots bout à bout sans rien comprendre, j’ai rencontré des réponses humaines dont la bêtise n’avait rien à envier à celle des robots.
Pour le coup, la question est ouverte. On ne sait pas s’il est possible qu’un humain puisse créer une intelligence similaire à la sienne. Est-ce possible ?
J’ai envie de répondre : il faut une maman et un papa (ou une équipe médicale) puis de la patience et pas mal d’amour.
Et après ?
Comme à chaque fois qu’on a pu automatiser des choses, même s’il restait nécessaire qu’un humain supervise le robot, il a remplacé pas mal de monde. Certains y voient un progrès puisqu’on permet à tous ces gens de se consacrer à des métiers plus intéressants ; mais encore faut-il que ces nouveaux emplois existent (et soit effectivement plus intéressants)…
Avec les dernières IA génératives, si votre métier consiste à vendre des trucs produits au petit bonheur la chance en espérant que ça passe, vous allez avoir un problème car elles sont très forte à ce jeu. Puisque vos clients pourront aussi utiliser ces IA sans passer par vous, on peut s’attendre à la double peine : moins de travail, pour un salaire plus petit.
Les seuls qui vont y gagner, en dehors des éditeurs de logiciels, ce sont tous ceux qui vendent gratuitement du vent. Publicitaires, influenceurs et autres élus qui n’ont pour but que d’exister sur l’espace public en faisant plus de bruit que les autres. La baisse du coût de production va leur permettre d’augmenter leur production à une échelle industrielle. (Marche aussi avec certains managers.)
Dernier groupe, tous ceux à qui on fait appel pour la qualité et la validité de leur travail. Les seules IA utiles dans ce contexte sont celles qui fournissent des résultats fiable, donc des méthodes correctes (qui existent depuis un moment déjà et qui ne répondent qu’à des questions très précises). Les méthodes complètes (par apprentissage) seront très rarement utiles car elles nécessite beaucoup trop d’efforts pour les entraîner, les guider et enfin, vérifier les résultats (ce serait comme faire appel à un très mauvais stagiaire, au bout d’une journée on a compris qu’on irait plus vite sans lui).
Corolaire, si vous êtes le client ou le consommateur de toutes ces productions : vous avez compris qu’une information de qualité à un coût de production et surtout, que ces IA ne peuvent ni améliorer ces informations, ni baisser leur coût. Tout ce qu’elles savent faire, c’est mettre des mots bouts à bout en espérant que vous en soyez content.
Bien sûr vous rencontrerez toujours des charlatans
prestataires qui prétendront pouvoir vous vendre la même prestation de
qualité pour trois fois rien en faisant appel à des nouvelles IA
révolutionnaires. Qu’obtiendrez-vous ?
J’ai envie de répondre : vous en aurez eu pour votre argent.
Et sinon ?
Finalement, même si les questions précédentes sont passionnantes, celle que j’aimerais vraiment poser n’est pas tant « est-ce que ces IA peuvent exister ? » mais plutôt « pourquoi voulez-vous qu’elles existent ? »
J’ai envie de répondre : « par misanthropie ?! »