Remarque préalable
Ce présent article ne va que très peu aborder R et encore moins le PMSI (ce sera pour un second temps). Les opinions qu’il contient, sont ce quelles sont : des opinions. Vous avez tout à fait le droit de ne pas les partager, mais respectez-les.
Depuis quelques temps déjà (depuis le début de la bulle IA de 2023 en fait…) je me dis qu’il faut que je fasse un article sur ce domaine de l’IA, principalement pour remettre en contexte et aussi pour faire toucher du doigt qu’il n’y a rien de magique ou d’hors de portée. Ensuite seulement, dans d’autres articles, nous programmerons des trucs adaptés à l’information médicale.
Au commencement… était l’humain
L’Intelligence Artificielle n’est pas quelque chose de nouveau tant au titre de fantasme qu’au titre d’avancée technologique. Tout comme homo habilis a appris a maitriser l’outil pour soulager/adapter le travail physique, homo sapiens (et son descendant homo sapiens sapiens) se caractérise par l’investissement d’outils afin de soulager son intellect.
Au titre du fantasme, nombreuses sont les références antiques à des robots humanoïdes ou animaloïdes (des géants principalement ou d’autres réalisations d’Héphaïstos) qui impliquent l’intelligence pour comprendre les ordres, les exécuter ou simplement être. Mais aussi plus tard les golems dans la légende juive (créature humanoïde d’argile obéissant aux ordres de son maitre).
D’un point de vue technique, si on prend l’intelligence dans une vision large (= tout activité abstraite nécessitant l’usage des fonctions supérieures), on peut dire qu’elle devient artificielle dès qu’un outil physique (ou virtualisé) remplace un fonctionnement cérébral. On peut alors trouver de nombreux exemples ne serait-ce que spéculer sur la fonction des peintures rupestres préhistoriques ou, dans les traces plus définitives, les éphémérides et autres almanachs, ou encore les cadrans solaires dont des traces perdurent depuis l’antiquité. Tout est une question de où on place le curseur..

Dans un style plus mécanique, n’oublions pas par exemple la clépsydre, appareil qui par l’écoulement d’un liquide, décharge l’homme de la mesure du temps.

Mais on pourrait aussi évoquer le boulier (qui est né un peu partout dans le monde de façon indépendante et à diverses époques) permettant des pratiques arithmétiques dépassant ce que l’homme pouvait traiter facilement « de tête ».
Et enfin, perle du calcul astronomique antique (1er siècle avant J.C.) dont nous ne savons toujours pas comment elle a pu exister, la machine d’Anticythère et sa 20aines d’engrenages à la précision micrométrique.
Petit bond dans le temps…

Nous arrivons maintenant en 1642, lorsque Pascal invente la Pascaline, première calculatrice (mécanique) digitale, extension au calcul de « machines à compter » digitales préexistantes.
Là aussi une fonction humaine supérieure, l’addition de nombres à 6 chiffres est déportée dans un machine qui ne nécessite que de tourner une manivelle.
Ce traitement mécanique sera progressivement étendu par d’autres (multiplication etc) jusqu’à arriver à la conceptualisation de la « Machine de Babbage » en 1834 et ses premières machines arithmétiques programmables (les machines à différences et la machine analytique, combinaison de machine à calculer mécanique à un métier Jacquard pour la programmation/commande des fonctions).
Nous pourrions encore longtemps égrainer les avancées techniques incrémentales dont bénéficieront dans les décennies suivantes les machines mécaniques programmables.
Je ne saurais refermer ce préambule sans parler d’une de mes préférées : la Machine de Phillips ou MONIAC (MOnetary National Income Analogue Computer) qui vise à simuler un système financier/monétaire par une transposition dans l’écoulement d’un liquide. Elle date de 1949 soit tout juste après la création du premier ordinateur « électronique », l’ENIAC (en 1945).
Mais pourquoi parle-t-il de tout ça ?
Tout ce que j’ai décrit plus haut correspond à des aides techniques de l’intelligence humaine. Leur particularité est que se sont des aides efficaces (quoi que parfois approximatives dans leurs premières versions) et peu « chères ». Et même si elles ne rentrent pas dans la définition actuelle de l’Intelligence Artificielle, avoir recours d’abord à des techniques peu « chères » vaut souvent mieux que de lancer une machine de guerre pour calculer 1+1…
et puis dites-vous qu’un jour un boulier représentait le summum technologique !
Turing et son test
Alan Turing (1948-1954) a fait beaucoup de choses dans sa vie, mais ce qui nous intéresse pour notre sujet est qu’il est à l’origine de l’énonciation d’un test (découlant d’une première publication en 1950) qu’on qualifie d’ailleurs de « Test de Turing ». Celui-ci part du postulat qu’une Intelligence Artificielle passera le test lorsqu’elle pourra tenir une conversation humaine sans qu’un observateur puisse trancher entre la nature humaine ou artificielle de son interlocuteur. Ce test a de nombreux biais, en particulier il met trop l’accent sur l’interaction et l’élément conversationnel, et je vous laisse fouiller Wikipedia et le Web en général pour vous en faire une idée. Cependant, cette prédominance de l’aspect conversationnel est l’une des raisons pour laquelle nous sommes en 2025 dans une bulle technologique de l’IA : En 2025, une machine est capable grâce au niveau technologique actuel de se faire passer pour un humain dans bien des cas communs et l’importance de cette caractéristique interactive dans la construction humaine des générations actuelles (qui ont été élevées dans un monde où seul l’humain était doté de cette capacité) induit une généralisation : « Si il me parle comme un humain, alors c’est un humain, donc il a les connaissances d’un humain, et je lui fais confiance comme à un autre humain. » (et c’est bien sûr faux !)
Par contre, ce que les programmes informatiques qui ont tenté le test de Turing ne savaient pas faire était de répondre correctement à des questions tout en ayant l’air humain. Nous (pas moi, je n’étais pas né) nous retrouvions donc devant 2 utilisations potentielles de l’ordinateur :
- une utilisation pertinente : l’opérateur pose une question non équivoque dans un langage compréhensible par l’ordinateur (par le biais d’un programme), il exécute le programme et donne la ou les réponses
- une utilisation « artistique » : l’opérateur donne des informations à la manière d’un humain et la machine répond ce qu’elle peut pour paraitre le plus humain possible. La qualité intrinsèque de la réponse n’a pas de pertinence seule la ressemblance à une réponse humaine étant importante.
Toute la problématique a toujours été de concilier ces 2 objectifs dans les limites de la puissance des ordinateurs au fil du temps. Ou a défaut savoir laquelle de ces deux approches est désirée (perso, je préfère avoir une bonne réponse mal formulée qu’une mauvaise bien enrobée)
Mon premier ordinateur en 1984 était un Commodore 64, disposant de 38911 octets de mémoire vive disponible soit l’équivalent si je ne le remplissais que de textes d’environ 26 pages et 7000+ mots (à ce moment là de l’article nous sommes déjà à 1000 mots bruts soit 1/7e de la mémoire de mon 1er ordinateur ! Argh !)… le moteur GPT-3.5 est réputé avoir été entrainé sur 355 milliards de paramètres et prétend utiliser la génération sur un ngram potentiel de 3000 tokens (on reviendra dessus lorsqu’on jouera avec des données dans un prochain article). En résumé, mon C64 savait faire 1+1 de manière déterministe, mais n’aurait jamais pu me donner la même réponse en se faisant passer pour un humain.
Vraiment ? [Entre ELIZA]
ELIZA est le premier chatbot (oui oui, chat comme chatGPT), supposé simuler un psychothérapeute rogérien (c’est à dire que le professionnel accompagne la réflexion du patient et n’est que le verbalisateur d’un auto-questionnement afin que le patient réponde lui-même à ses interrogations (à peu près, je ne suis pas du métier)).
Ecrit en 1964-68 (donc bien avant , il tournait sur une machine professionnelle destinée à la recherche qui ne nécessitait « que » le double de la mémoire totale de mon C64 soit 128ko. Et si on ne pouvait pas la confondre avec un humain, elle pouvait parfois semer le doute pendant quelques minutes. (Vous pouvez jouer avec ELIZA en ligne, par exemple à : https://web.njit.edu/~ronkowit/eliza.html). Sa principale limitation est qu’elle n’y connait rien à rien et répond généralement par de la périphrase et en retournant la question à l’utilisateur. Cependant de par le postulat initial du type d’entretien psychologique, ça n’était pas si discriminant. Le pan non-déterministe de l’IA était lancé.
Les machines à réfléchir
Un autre des axes de recherche (n’oublions pas que nous sommes dans les premières décennies de l’après WW2, le transistor date de 1954, le premier circuit imprimé de 1958 et le premier microprocesseur de 1969, l’informatique est balbutiante et tout est à découvrir) est l’Intelligence Artificielle (et oui ça s’appelait déjà comme ça) c’est à dire la résolution de problèmes (ou y participer). Divers axes sont alors étudiés, toujours avec en toile de fond la limitation technologique. Les premières pistes comportent l’analyse récursive (détailler le problème en taches plus petites, à résoudre pour résoudre le tout) et le parcours heuristique d’arbre de solution (définir des règles pour choisir quelles branches de solution explorer ou non), première tentative d’optimisation mais c’est aussi à cette période qu’est évoqué le réseau de neurones. Les limitations techniques ont été le plus gros frein, il faut bien dire que le résultat était loin des attendus et l’IA est tombée en désuétude pendant quelques années.
Dans les années 70-80, un regain d’intérêt apparait grâce à l’augmentation des capacités de calcul et de stockage liée à la démocratisation (dans le milieu professionnel d’abord) de l’informatique qui fait chuter les prix. On voit apparaitre des nouveaux langages dédiés et des systèmes qualifiés de « Systèmes experts ». Ils fonctionnent sur le principe d’une collection de faits et de règles qui alimentent un moteur inférentiel. L’entrée/question est une règle incomplète (à trou) et la sortie d’un tel programme la liste des valeurs possibles pour le « trou ». L’un de ces langage est le PROLOG et il est français ! (et oui) En voici un exemple (très simple) :
% Les Faits
% D'abord le sexe des membres des familles
homme(paul).
homme(arthur).
homme(leonard).
homme(jacques).
homme(pierre).
homme(marc).
homme(pierrot).
femme(anne).
femme(benedicte).
femme(pierrette).
femme(julie).
femme(louise).
femme(marie).
femme(claire).
% Ensuite les relations parent-enfant
%
% une première famille :
%
% Paul Anne Arthur Bénédicte
% |--- Jacques ---| |--- Julie ---|
% |--- Marie ---| Marc
% |--- Claire ---|
%
% une 2ème famille :
%
% Léonard Pierrette
% |--- Pierre ---| Louise
% |--- Pierrot ---|
parent(paul, jacques). % Paul est parent de Jacques
parent(anne, jacques). % Anne est parent de Jacques
parent(arthur, julie). % etc...
parent(benedicte, julie).
parent(leonard, pierre).
parent(pierrette, pierre).
parent(pierre, pierrot).
parent(louise, pierrot).
parent(jacques, marie).
parent(julie, marie).
parent(marc, claire).
parent(marie, claire).
% Règles (contraintes relationnelles)
grandparent(GP, X) :- parent(GP, P), parent(P, X).
% un grand parent de X et le parent de P où P est le parent de X.
grandpere(GP, X) :-
grandparent(GP, X),
homme(GP).
% un grandpere est un grandparent de sexe masculin.
grandmere(GM, X) :-
grandparent(GM, X),
femme(GM).
% une grandmere est un grandparent de sexe féminin.
mere(M, X) :-
parent(M, X),
femme(M).
% une mere est un parent de sexe féminin.
pere(P, X) :-
parent(P, X),
homme(P).
% un pere est un parent de sexe masculin.
PrologUne fois cette liste de faits et de règles écrite, on peut l’interroger :
% qui est le père de claire ?
?- pere(X, claire).
X = marc
false
% marc est le pere de claire et c'est la seule réponse (présence du false)
% qui est la grand-mère de pierrot ?
?- grandmere(X, pierrot).
X = pierrette
false
% pierrette est la grand-mère de pierrot
% paul est-il le grand-père de pierrot ?
?- grandpere(paul, pierrot).
false
% paul n'est pas le grand-père de pierrot (false d'emblée)
% paul est-il le grand-père de marie ?
?- grandpere(paul, marie).
true
% et oui paul est le grand-père de marie (true d'emblée)
% quel est le petit-enfant de paul ?
?- grandparent(paul, P).
P = marie
false
% marie est le petit-enfant de paul
% quels sont tous les grand-parents de marie ?
?- grandparent(X, marie).
X = benedicte
X = arthur
X = anne
X = paul
false
% Les grands-parents de marie sont bénédicte, arthur, anne et paul.
PrologSi vous voulez vous amuser, vous pouvez copier-coller la première partie du code à gauche sur la page https://tau-prolog.org/sandbox/ (ou un autre compilateur prolog en ligne), cliquer sur « reconsult » et poser la question de votre choix dans la case à droite (sans saisir le ?- qui sera automatiquement ajouté).1
Ce qu’on note est que le résultat est déterministe. PROLOG liste TOUTES les réponses possibles (jusqu’à arriver à false) mais ne sait pas gérer les données incomplètes si la règle ne le permet pas.
Il existe des systèmes experts à destination médicale, vous pouvez par exemple vous renseigner sur INTERNIST-1 et CADUCEUS qui sont des systèmes de règles datant respectivement des années 70 et 80 supposés permettre de faire du diagnostic. Mais là aussi le problème était de poser le diagnostic sur des données incomplètes.
et surtout à traduire
Un autre domaine où l’IA sauce 80-90 a eu un certain succès d’estime est le traitement automatique des langues (on dit TAL pour faire ché-bran2) entre autre avec la traduction automatique, la grammaire générative et en particulier les théories de Chomsky.
A l’époque j’avais écrit un programme pour générer automatiquement mes signatures de post sur Usenet (un système de forums de discussions, lisez ma thèse si ça vous intéresse). Il était écrit en encore un autre langage Perl, excellent dans le traitement de chaines de caractères. Il produisait des phrases intelligibles à partir de règles d’enchainement et de substitutions. (Je vais fouiller, mais je ne sais pas où sont le source et le fichier de configuration).
Grosso modo cela donnait qu’avec le fichier de configuration de règles et mon petit moteur en perl :
$salutation => Bonjour
$salutation => Bonsoir
$sujet1 => Je
$sujet3 => Pierre
$sujet3 => Pierre, $emotion ,
$sujet3 => Il
$sujet3 => Le directeur
$sujet3 => Le directeur, $emotion ,
$emotion => fatigué
$emotion => énervé
$emotion => en furie
$action => de ne rien faire
$action => d'aller courir
$sujetverbecomplement => $sujet1 suis $emotion
$sujetverbecomplement => $sujet3 décida $action
$sujetverbecomplement => $sujet3 est $emotion
$phrase => $salutation , $sujetverbecomplement .
Il produisait aléatoirement par substitution (vu la petite taille de la grammaire ci-dessus, on peut le faire à la main) :
Bonjour, Je suis énervé.
Bonsoir, Le directeur, en furie, décida de ne rien faire.
Bonsoir, Il décida d'aller courir.
Bonjour, Pierre est fatigué
(etc.)
(attention, il pouvait aussi produire)
Bonjour, Pierre, fatigué, est énervé.
Bonjour, Pierre, fatigué, est fatigué.
(ce qui est moins crédible mais c'est une question de configuration)
Avec un plus gros fichier, des subordonnées, la gestion des accords en genre et en nombre, etc, je produisais des petits paragraphes grammaticalement corrects, sémantiquement adaptés, même si ils racontaient in fine n’importe quoi… (c’était une machine à ragots en fait 🙂 ). Pour le fun j’en ai retrouvé quelques uns dans les archives de Usenet sur Google Groups :
Kirk à l'inter : En avant Warp Facteur 5
Lieutenant Urhura, ouvrez un canal ! NCC 1701-C à vaisseau klingon.
Préparez-vous à être arraisonné.
De toute façon, tout le monde sait que Rhapsody a inventé le joystick avant
Ms-Windows...
Selon Voici.net : Windows est à chier !
Citation ! L'illustrissime Mark Baunnod aurait dit en répondant à un troll
dans fr.comp.lang.c++ : L'illustrissime Casimir à poil sur fr.rec.musiques !
(Info rapportée par Sylvain Neriverze)
Information exclusive à prendre au conditionnel : Apple a inventé le Bus ISA
avant Ms-Windows...
Si vous voulez jouer (en anglais), vous pouvez vous tourner vers le chomskybot originel ou bien un des générateurs de pseudo-articles tel https://www.elsewhere.org/journal/pomo/ qui produit des « papiers » sur le postmodérnisme juste en rechargeant la page.
Ce qu’il faut bien comprendre, c’est qu’à ce jour, tous les chatbots IA même chatGPT ont toujours le même travers : l’emphase est plus sur l’aspect humain de la sortie que sur la rigueur du contenu (qui n’est lui-même qu’un moyen de paraitre plus humain). Ils doivent être crédibles avant d’être factuels.
Aucun de ces programmes ne comprend stricto sensu ce qu’il produit.
La situation actuelle
Depuis les années 80-90, les capacités de traitement des ordinateurs ont explosées, surtout la mémoire (de travail et de stockage) et les capacités de parallèlisation de traitement. Ce qui prenait des secondes ou des jours à l’époque se fait en un battement de cils et là où l’entrainement se faisait sur 1 document, il peut maintenant se faire sur tout le web visible. Mais certains biais sont conceptuels.
Le résultat est que nous assistons à une nouvelle convergence du TAL (avec la génération de textes pouvant troubler ou tromper un humain) et de la construction de réponse plus adaptée. Cependant, il ne faut pas tomber dans l’angélisme. Si le test de Turing est désormais accessible, c’est parce qu’il est avant tout une épreuve sociologique. Sa réussite ne nécessite pas une haute qualité de réponse.
Pour explorer ce problème de qualité de réponse, je vous conseille de dégainer votre GPT préféré et lui poser une question pointue ou un peu polémique sur un domaine que vous maitrisez parfaitement et voir la mauvaise qualité intrinsèque de la réponse enrobée dans une posture affirmative tout à fait inadaptée et vous dire que sur les domaines que vous ne maitrisez pas les réponses ne sont en réalité pas mieux (je vous l’illustrerai dans un prochain article). Par ailleurs, « l’imagination » dont ces logiciels tentent de faire preuve n’est que du saupoudrage d’aléa statistique à divers endroits de la chaine de génération (de la même manière que ma machine à signature faisait varier ses réponses mais en plus subtile). Aucun n’a d’imagination, tout au plus cela génère-t’il ce qu’on appelle des hallucinations (c’est à dire des réponses qui ne sont plus seulement approximatives mais totalement fausses et induisant en erreur par l’aplomb dans la réponse).
Cependant, rien n’est perdu car ces biais de réponse ne sont pas réellement graves, TANT QU’ON EN A CONSCIENCE. Le problème est donc plutôt dans le marketing actuel qui vend les GPT et autres réseaux neuronaux comme une universelle panacée.
En conclusion, l’IA actuelle n’est qu’une évolution de méthodes antérieures dont il est nécessaire de connaitre les limites. Leur prépondérance actuelle est surtout le résultat d’un marketing outrancier qui est en train de former une bulle technologique et financière (La levée de fonds dans le domaine de l’IA en 2024 est estimée à 1,4 milliards rien qu’en France (10% du déficit de la sécu pour l’échelle). C’est un marché de startups dont aucune n’est rentable actuellement, elles se battent juste pour avoir leur place au soleil et se faire racheter par un plus gros). Cette bulle est par ailleurs majorée par l’atmosphère de baisse globale du niveau scientifique avec le développement d’une ère de post-vérité et de complotisme depuis quelques années, où le message et la façon dont il est asséné a plus d’importance que les bases et preuves…
Dans le prochain article, je vais d’abord vous montrer comment vous passer de l’IA, puis un peu plus tard, vous présenterai un de ces domaines qui a le vent en poupe actuellement et est la brique de base, le réseau de neurones. A très bientôt !
L’illustration en tête de l’article a été produite par Sora, le générateur d’images d’OpenAI. En zoomant, vous pourrez voir toutes les petites anomalies qu’un humain n’aurait pas faites ou laissées.
- Pour l’anecdote, un programme en PROLOG a participé à ma victoire au vénérable jeu connecté NOKIAGame 2002 en résolvant automatiquement une des épreuves pendant que je travaillais (j’étais généraliste remplaçant à l’époque, je risquais de ne pas avoir le temps de traiter le problème manuellement). ↩︎
- N’oublions pas que nous sommes dans les années 80. On est ché-bran à l’époque même au plus haut niveau de l’état ! ↩︎
Enfin un article pour remettre une peu de contexte et de raison dans le folie furieuse autour de l’IA qui s’empare de nos tutelles et directions. Le traitement de l’image est également un pan (bien plus abouti) de l’IA puisque cela fait déjà un certain temps que les machines excellent à détecter des micro lésions mammographiques (mais elles n’auraient jamais été capable de le faire sans les dizaines de milliers d’images interprétées par des professionnels qui on servies à leur apprentissage).
Cordialement
On voit que ce commentaire n’est pas le fruit d’une IA, il y a des fautes d’orthographe 🙂