Le stimulant article de Jacques Printz ( https://gouvernance.news/2020/05/23/ia-le-grand-silence/ ) m’a poussé à repartir comme lui de la provocation lancée en juin 2008 par Chris Anderson dans Wired ( https://www.wired.com/2008/06/pb-theory/ ) : « The Data Deluge Makes The Scientific Method Obsolete ».
Un monde qui se passe de science ? Nous le voyons venir, et cela fait peur. Mais l’humanité devrait arriver à s’en passer pour agir efficacement.
D’abord, elle n’a pas attendu la science pour agir. On a vacciné avant Pasteur et fait voler des cerfs-volants sans disposer des lois Navaier-Stokes sur la dynamique des fluides. Et la vie a codé son génome sur des mots de 6 bits quatre milliards d’années avant la naissance de Shannon… et d’une informatique dont on se demande encore si elle est une science ou une technologie ( https://wikipedia.org/wiki/Informatique).
L’affirmation centrale d’Anderson, c’est que les corrélations suffisent pour l’action, qu’on peut se passer de modèles, a fortiori de théories causales. A preuve le succès des méthodes de correction d’orthographe, de traduction automatique, de reconnaissance des formes et, bien entendu de jeux. Ces méthodes ne sont pas basées sur des théories scientifiques. « Every time I fire a linguist, the performance of the speech recognizer goes up » a dit le linguiste Frederick Jelinek ( https://en.wikipedia.org/wiki/Frederick_Jelinek ).
Jean-Paul Haton distingue trois approches de l’IA : symbolique, statistique et connexioniste (https://streaming-canal-u.fmsh.fr/vod/media/canalu/documents/utls/190900.pdf )
L’IA symbolique est celle des années 1980, appliquant des règles logiques (du premier ordre, précise-t-on souvent) à une base de connaissances, pour répondre par déduction à des questions pratiques (systèmes experts). Ces machines peuvent justifier leurs réponses en expliquant leur raisonnement, en détaillant assertion par assertion comment leurs théories s’appliquent à la question. Quitte à le faire avec humour, comme cet agronome (je cite de mémoire) à qui un cogniticien demande, pour construire la base de connaissances : « Comment savez-vous quel est le type de champignon qui affecte ces tomates ? » Il répond très… logiquement : « Si la moisissure est bleuâtre et si je me suis mouillé les pieds sur le parking en arrivant au laboratoire, alors c’est cornicea mathilda ».
Cette forme d’IA a généralement été considérée comme un échec à la fin du siècle dernier. Pour une part, les professionnels se reportent alors vers la gestion des connaissances, moins durement modélisatrice (voir https://diccan.com/dicoport/AHDicncc.htm#Connaissance ). Daniel Susskind (1) exprime brutalement le sentiment général : « The first wave of AI, that has raised many hopes, ended in failure ». L’échec de la « cinquième génération » japonaise n’a fait que renforcer ce sentiment (https://www.lesechos.fr/1992/06/le-japon-tire-un-trait-sur-les-ordinateurs-de-cinquieme-generation-927244) Cependant des succès marquants ont été remportés en France [2].
C’est l’IA statistique qui est le plus universellement présente actuellement. Elle est à la base des outils linguistiques répandus jusque sur n’importe quel téléphone, ne serait-ce que pour faciliter la frappe sur ces petits claviers. Elle ne comporte pas de théorie à proprement parler, a fortiori causale, mais on peut l’analyser comme un ensemble de règles de succession : tel mot, telle suite de mots ou de lettres, sera très probablement suivi de telle autre lettre ou tel autre mot (processus des chaînes de Markov, ou engrammes).
Enfin, l’IA connexioniste est celle des réseaux neuronaux. C’est elle qui fait sensation en ce moment, surtout après la victoire incontestée et impressionnante de Google au jeu de Go. Mais, plus radicalement encore qu’avec l’IA statistique, la machine ne fournit aucune théorie, ne peut en aucun cas expliquer ses décisions (sinon sous forme d’une suite d’équations sans signification ontologique).
Ce type d’IA devrait beaucoup se développer, car il est d’emblée construit pour se former sur des masses considérables de données. Or actuellement, il y en a trop. C’est le déluge. Tant mieux pour l’IA. Tant pis pour les humains ? On peut se rassurer en notant que l’apprentissage (deep learning) d’un réseau neuronal est un processus long… mais on gagne du temps avec les GAN (Generative adversarial networks).
Les résultats ne sont pas toujours convaincants, et peuvent susciter quelque indignation. En art, par exemple (http://www.diccan.com/Blog7/Fall_2018.html ). On nous annoncé une dixième symphonie de Beethoven… Et un « à la manière de Rembrandt » s’est vendu 432 500 dollars chez Christies en octobre 2018. Avec un logiciel produit par une startup française, ce qui montre au moins qu’on peut faire des GAN sans avoir les moyens du Gafa.
Mais que des machines puissent être efficaces, prendre des « décisions » sans pouvoir les justifier est aussi une catastrophe. Cette incapacité est d’ailleurs en contradiction avec les règles de responsabilité démocratique, et notamment de la loi européenne RGPD de 2018.
Parviendra-t-on à concilier l’efficacité de l’IA avec notre impératif besoin de comprendre comment elle fonctionne, à reconstituer science et théorie derrière le comportement des réseaux neuronaux ? On tente de recoller des ontologies compréhensibles pour nous, avec le XAI (Explainable AI). Voir https://en.wikipedia.org/wiki/Explainable_artificial_intelligence . Mais le succès n’est pas encore au rendez-vous, autant que nous le sachions.
Pire, comme le dit Kevin Kelly répondant à Chris Anderson (en compagnie de quinze autres personnalités (lien perdu) : « Le problème n’est pas la fin des théories, mais la fin des théories que nous comprenions ».
Pierre Berger
[1] A World Without Work.Technology, Automation and How We Should Respond, par Daniel Susskind. (Metropolitan Books 2020).
[2] De beaux exemples que nous ont communiqués Jean Rohmer et Laurent Gouzenes
Parmi les plus actuels : Causality Links (https://causalitylink.com/ ) utilise massivement Prolog pour analyser des documents.
Chez Usinor, le système expert Sachem (Système d’aide à la conduite des hauts fourneaux) reste le fleuron de ces techniques. Voir le communiqué de l’Union européenne https://ec.europa.eu/research/press/2000/pr1910-sachemsyst-fr.html (lien qui semble perdu en 2021).
Usino encore utilise Prolog et Visual Basic pour « l’intégration de la gestion et du pilotage des processus » selon un article du Monde informatique : http://www.diccan.com/Utilisateurs-Entreprises/c_mecan/P729USI.HTM
A La Redoute, le dédoublonnage du fichier client (clientes comme on disait) a très bien fonctionné, avec de l’IA symbolique à base de règles. Dans le fichier d’envoi du catalogue papier, 10% des 12 millions d’adresses étaient des doublons, soit 1,1 million d’envois inutiles, avec un coût de 45 francs par envoi, dont 50 millions de francs de 1990.
Auparavant, le dédoublonnage était fait manuellement par des bataillons de personnels momentanément extraits des lignes de production, avec un taux de succès de 75 à 80%.
Un système expert a été écrit entièrement en Prolog, avec des règles issues d’une consultation des experts en dédoublonnage. Le taux de succès de cette solution automatique est passé à 98%. Le système a été exploité pendant des années en mode SasS (software as a service) cloud dans les années 90.
Chez Airbus, le programme A320 a gagné un an.
L’appareil embarque des centaines de pièces en matériaux composites, une
nouvelle technologie qui comptait très peu d’experts, avec un temps de
conception de 8 à 15 jours de travail par pièce. Il fallait former de 30 à 50
ingénieurs pour générer les plans, et deux ans de travail.
La solution en Prolog, un programme exploratoire à base de règles et métarègles
fournit un résultat en une minute, ainsi que les plans détaillés de fabrication
pour l’atelier. L’outil est mis à la disposition de tous les concepteurs.
Pour un fabricant français de moteurs de métiers à tisser, leader mondial et gros exportateur, il fallait concevoir des moteurs sur mesure et dans de nombreuses variantes. La complexité est de l’ordre de mille éléments (bielles, vis, boulon, tringles, etc.). Le temps de conception pour établir un devis et lancer la fabrication était de deux semaines, par deux personnes expérimentées.
La solution en Lisp + Smeci, à base de graphes et de spécifications de haut niveau, a permis de générer, en moins d’une minute, le devis, les plans de fabrication et des ordres pour le magasin, ainsi que le manuel d’assemblage.
Enfin, les satellites de télécommunication doivent
être testés extensivement et dans de nombreuses configuration activation des
composants du satellite, durée des mesures, nombreux récepteurs à activer dans
des bandes de fréquence variées, programmes en assembleur. Avec le projet
précédent, malgré un travail en 5x8, le retard était de six mois.
Solution : spécification des programmes de test en langage pseudo-naturel
(lisible par tous y compris les non-programmeurs), générateur automatique des
programmes de test, implémentation en Common Lisp. Avec un travail en 2x8, on a
pris trois semaines d’avance et le projet a reçu un « award of
achievement ».