IA neuro-symbolique

L'IA neuro-symbolique (Neuro-symbolic AI en anglais) est un type d'intelligence artificielle qui combine des architectures d'IA neuronales et symboliques, pour remédier aux faiblesses de chacune et ainsi fournir une IA robuste capable de raisonnement, d'apprentissage et de modélisation cognitive.

Histoire modifier

L'intelligence artificielle (IA) s'est au XXe siècle divisée en deux courants théoriques, basés sur des hypothèses opposées, de modélisation de l'intelligence humaine[1] :

  1. l'intelligence artificielle symbolique, qui cherche à représenter et reproduire le raisonnement cognitif humain au moyen d'un système de représentation logique des connaissances[2] et postulant que des symboles sont absolument nécessaires pour cela ;
  2. l'intelligence artificielle statistique (et surtout l'Intelligence artificielle connexionniste dont les modèles, au contraire, se passent du langage logique, en fonctionnant avec des réseaux de neurones), avec comme inconvénient d'être moins « explicable »[3].

Au XXIe siècle, les experts du domaine de l'IA cherchent à réconcilier et réunir ces deux approches pour bénéficier des avantages de chacune, tout en réduisant les inconvénients de chacune[4].

Ainsi, selon Leslie Valiant[5] et ses collègues[6],[7], pour obtenir un bon modèle cognitif informatique et riche d'IA, il faut combiner un raisonnement symbolique et un apprentissage automatique efficace.

Pour Gary Marcus : « Nous ne pouvons pas construire de modèles cognitifs riches de manière adéquate et automatisée sans le triumvirat d'une architecture hybride, de riches connaissances préalables et de techniques de raisonnement sophistiquées »[8]. Et « pour construire une approche robuste et axée sur la connaissance de l'IA, nous devons disposer de la machinerie de manipulation des symboles dans notre boîte à outils. Trop de connaissances utiles sont abstraites pour procéder sans outils qui représentent et manipulent l'abstraction, et à ce jour, le seul mécanisme connu capable de manipuler de telles connaissances abstraites de manière fiable est l’appareil de manipulation de symboles »[9].

Henry Kautz[10], Francesca Rossi[11] et Bart Selman[12] ont aussi plaidé pour une telle synthèse. Leurs arguments tentent d'aborder les deux types de pensée, comme indiqué dans le livre de Daniel Kahneman, Système 1 / Système 2 : Les deux vitesses de la pensée, qui décrit la cognition comme englobant deux composantes :

  1. le système 1, qui est rapide, réflexif, intuitif et inconscient ; c'est celui qui reconnaît les formes ;
  2. le système 2 qui est plus lent, travaille étape par étape et qui est plus explicite. C'est lui qui gère la planification, la déduction et la pensée délibérative.

De ce point de vue, l'apprentissage profond gère mieux le premier type de cognition, tandis que le raisonnement symbolique gère mieux le second type.

Les deux sont nécessaires pour une IA robuste et fiable, capable d'apprendre, de raisonner et d'interagir avec les humains pour accepter des conseils et répondre à des questions.

De tels modèles (à double processus, avec des références explicites aux deux systèmes contrastés) sont explorés depuis les années 1990[13],[14], à la fois en IA et en sciences cognitives, par de nombreux chercheurs[15].
Le bond en avant de l'IA générative (IAg) au tout début des années 2020 a mis en exergue des difficultés de biais, d'explicabilité et d'interprétabilité ou encore de robustesse de l'IAg, liées aux limite des approches d'apprentissage en profondeur ; un nombre croissant de chercheurs en IA ont alors appelé à combiner le meilleur des deux approches (symboliques et des réseaux neuronaux)[16],[17], et à aborder de front les situations où les deux approches ont des difficultés (ex. : sens commun, raisonnement de bon sens)[18].

Approches intégratives modifier

Ces approches sont diverses. Une taxonomie des architectures neuro-symboliques a été proposée par Henry Kautz[19], présentée ci-dessous, avec quelques exemples :

  • Symbolique neuronale symbolique : c'est l'approche actuelle de nombreux modèles neuronaux dans le traitement du langage naturel, où les mots (ou des jetons de sous-mots) sont l'entrée et la sortie ultimes des grands modèles de langage. Les exemples incluent BERT, RoBERTa et GPT-3.
  • Symbolique [neuronal] ; avec par exemple AlphaGo, où des techniques symboliques sont utilisées pour invoquer des techniques neuronales. Dans ce cas, l’approche symbolique est la recherche arborescente de Monte Carlo et les techniques neuronales apprennent à évaluer les positions du jeu.
  • Neuronal | Symbolique : utilise une architecture neuronale pour interpréter les données perceptuelles comme des symboles et des relations raisonnées symboliquement. Neural-Concept Learner[20] en est un exemple.
  • Neural : Symbolique → Neural ; s'appuie sur un raisonnement symbolique pour générer ou étiqueter des données d'entraînement qui sont ensuite apprises par un modèle d'apprentissage en profondeur, par exemple pour entraîner un modèle neuronal pour le calcul symbolique en utilisant un système mathématique symbolique de type Macsyma pour créer ou étiqueter des exemples.
  • Neural_{Symbolique} : utilise un réseau neuronal généré à partir de règles symboliques. Un exemple est le Neural Theorem Prover[21] qui construit un réseau neuronal à partir d'un arbre de preuve AND-OR généré à partir de règles et de termes de la base de connaissances. Les réseaux de tenseurs logiques entrent également dans cette catégorie.
  • Neural[Symbolique] — permet à un modèle neuronal d'appeler directement un moteur de raisonnement symbolique, par exemple pour effectuer une action ou évaluer un état. Un exemple serait ChatGPT utilisant un plugin pour interroger Wolfram Alpha.

Ces catégories ne sont pas exhaustives (elles n'incluent pas les systèmes multi-agents).

En 2005, Bader et Hitzler ont proposé une catégorisation affinée, étudiant par exemple des systèmes utilisant des symboles incluant la logique et si c'était le cas, si cette logique était propositionnelle ou du premier ordre[22].

La catégorisation de 2005 et la taxonomie de Kautz ci-dessus sont comparées et contrastées dans un article de 2021[19].

Récemment, Sepp Hochreiter a soutenu que les réseaux de neurones graphiques " ou "GNN" (une classe de réseaux de neurones artificiels conçus pour traiter des données représentées sous forme de graphes.)...sont les modèles prédominants de l'informatique neuro-symbolique[23] " car "décrivant les propriétés des molécules, simulent les réseaux sociaux ou prédisent les états futurs en physique et dans les applications d'ingénierie . applications avec des interactions particule-particule[1].

Intelligence générale artificielle modifier

Marcus soutient que « ... des architectures hybrides combinant l'apprentissage et la manipulation de symboles sont nécessaires pour une intelligence robuste, mais pas suffisantes »[24] ,et qu'il existe :

"... quatre prérequis cognitifs pour construire une intelligence artificielle robuste :

  • "des architectures hybrides combinant l'apprentissage à grande échelle avec les pouvoirs de représentation et de calcul de la manipulation de symboles,
  • "des bases de connaissances à grande échelle — exploitant probablement des cadres innés — qui intègrent des connaissances symboliques ainsi que d'autres formes de connaissances,
  • "des mécanismes de raisonnement capables d'exploiter ces bases de connaissances de manière exploitable,
  • « des modèles cognitifs riches fonctionnant avec ces mécanismes et bases de connaissances »[25].

Ceci fait écho aux appels antérieurs en faveur de modèles hybrides, émis dès les années 1990[26],[27].

Histoire modifier

Garcez et Lamb ont décrit les recherches dans ce domaine comme étant en cours au moins depuis les années 1990.

Une série d'ateliers sur l'IA neuro-symbolique a lieu chaque année depuis 2005 sur l'intelligence artificielle neuro-symbolique[28]. Au début des années 1990, une première série d’ateliers sur ce sujet a été organisée[26].

Recherche modifier

De nombreuses questions de recherche clés demeurent[29], dont :

  • Quelle est le meilleur moyen d’intégrer les architectures neuronales et symboliques ?
  • Comment les structures symboliques doivent-elles être représentées au sein des réseaux de neurones ; et comment les en extraire ?
  • Comment apprendre et raisonner les connaissances du sens commun ?
  • Comment gérer des connaissances abstraites difficiles à encoder logiquement ?

Mise en œuvre modifier

Les implémentations d’approches neuro-symboliques comprennent par exemple :

  • Scallop : un langage basé sur Datalog qui prend en charge le raisonnement logique et relationnel différenciable. Scallop peut être intégré à Python et avec un module d'apprentissage PyTorch[30] ;
  • réseaux de tenseurs logiques : codez des formules logiques sous forme de réseaux de neurones et apprenez simultanément les codages de termes, les poids de termes et les poids de formule ;
  • DeepProbLog : combine les réseaux de neurones avec le raisonnement probabiliste de ProbLog ;
  • SymbolicAI : une bibliothèque de programmation compositionnelle différentiable ;
  • réseaux de neurones explicables (XNN) : combinent des réseaux de neurones avec des hypergraphes symboliques et sont formés à l'aide d'un mélange de rétropropagation et d'apprentissage symbolique (appelé induction)[31].

Références modifier

  1. S Guillemin, L Dujourdy, L Journaux et A Roxin, « IA neuro-symbolique pour l'interprétation granulaire des données des bases STUPS\copyright et OTARIES\copyright : défis applicatifs et perspectives », CNIA 2023,‎ (lire en ligne, consulté le ).
  2. (en) Mariusz Flasiński, « Symbolic Artificial Intelligence », Springer International Publishing, (ISBN 978-3-319-40020-4, DOI 10.1007/978-3-319-40022-8_2, 2016., consulté le ), p. 15–22.
  3. (en) Roza Dastres et Mohsen Soori, « Artificial Neural Network Systems », International Journal of Imaging and Robotics, vol. 21, no 2,‎ , p. 13-25 (ISSN 2231-525X, HAL hal-03349542, lire en ligne).
  4. Pascal Hitzler, Aaron Eberhart, Monireh Ebrahimi et Md Kamruzzaman Sarker, « Neuro-symbolic approaches in artificial intelligence », National Science Review, vol. 9, no 6,‎ (ISSN 2095-5138 et 2053-714X, DOI 10.1093/nsr/nwac035, lire en ligne, consulté le ).
  5. Valiant 2008.
  6. Garcez et al. 2015.
  7. (en) Artur d'Avila Garcez, Luis C. Lamb. et Dov M. Gabbay, « Neural-Symbolic Cognitive Reasoning », Cognitive Technologies,‎ (ISSN 1611-2482, DOI 10.1007/978-3-540-73246-4, lire en ligne).
  8. Marcus 2020, p. 44.
  9. Marcus et Davis 2019, p. 17.
  10. Kautz 2020.
  11. Rossi 2022.
  12. Selman 2022.
  13. Osório F.S (1998) Inss: Un système hybride neuro-symbolique pour l'apprentissage automatique constructif (Doctoral dissertation, Institut National Polytechnique de Grenoble-INPG).
  14. Lallement Y (1996) Intégration neuro-symbolique et intelligence artificielle: applications et implantation parallèle (Doctoral dissertation, Université Henri Poincaré-Nancy 1).
  15. Sun 1995.
  16. (en) Francesca Rossi, « Thinking Fast and Slow in AI », AAAI (consulté le ).
  17. (en) Bart Selman, « AAAI Presidential Address: The State of AI », AAAI (consulté le ).
  18. Marcus et Davis 2019.
  19. a et b Md Kamruzzaman Sarker, Lu Zhou, Aaron Eberhart et Pascal Hitzler, « Neuro-symbolic artificial intelligence: Current trends », AI Communications, vol. 34, no 3,‎ , p. 197–209 (DOI 10.3233/AIC-210084, S2CID 239199144, lire en ligne).
  20. Mao et al. 2019.
  21. Tim Rocktäschel et Sebastian Riedel « Learning Knowledge Base Inference with Neural Theorem Provers » () (DOI 10.18653/v1/W16-1309, lire en ligne, consulté le )
    « (ibid.) », dans Proceedings of the 5th Workshop on Automated Knowledge Base Construction, San Diego, CA, Association for Computational Linguistics, p. 45–50
    .
  22. Bader et Hitzler 2005.
  23. L.C. Lamb, A.S. d'Avila Garcez, M.Gori, M.O.R. Prates, P.H.C. Avelar, M.Y. Vardi (2020). "Graph Neural Networks Meet Neural-Symbolic Computing: A Survey and Perspective." CoRR abs/2003.00330 (2020)
  24. Marcus 2020, p. 50.
  25. Marcus 2020, p. 48.
  26. a et b Sun et Bookman 1994.
  27. Honavar 1995.
  28. « Neuro-Symbolic Artificial Intelligence », people.cs.ksu.edu (consulté le ).
  29. Sun 2001.
  30. (en) Ziyang Li, Jiani Huang et Mayur Naik, « Scallop: A Language for Neurosymbolic Programming », .
  31. (en) « Model Induction Method for Explainable AI », USPTO, .

Voir aussi modifier

Bibliographie modifier

Articles connexes modifier

Liens externes modifier