Introduction

La représentation formelle des connaissances et du raisonnement logique sont au cœur de l'intelligence artificielle. Pendant des décennies, cette approche symbolique a dominé la recherche en IA. Bien que l'apprentissage automatique soit maintenant plus populaire, la logique formelle et les systèmes de raisonnement restent cruciaux dans de nombreuses applications pratiques, particulièrement dans les domaines où le raisonnement transparent et vérifiable est nécessaire.

Ce cours explore comment représenter explicitement le savoir et comment les systèmes peuvent raisonner à partir de cette connaissance pour tirer des conclusions. Comprendre ces fondamentaux est essentiel, même si vous travaillez principalement avec des approches modernes basées sur le machine learning.

Logique Formelle

La logique formelle fournit un langage précis et rigoureux pour exprimer des énoncés et raisonner sur leur validité. La forme la plus simple est la logique propositionnelle, qui traite des propositions (énoncés qui sont vraies ou faux) et de leurs combinaisons.

En logique propositionnelle, nous utilisons des variables booléennes (p, q, r, etc.) qui peuvent être vraies (T) ou fausses (F). Nous les combinons avec des opérateurs logiques : ET (∧), OU (∨), NON (¬), IMPLIQUE (→), et ÉQUIVALENT (↔). Par exemple, "S'il pleut (p) ET il fait froid (q), alors je vais rester à l'intérieur (r)" s'écrit formellement : p ∧ q → r.

La logique des prédicats (ou logique du premier ordre) est plus puissante. Elle ajoute les quantificateurs (pour tous: ∀, il existe: ∃) et permet de parler de propriétés d'objets et de relations entre eux. Par exemple, "Tous les humains sont mortels" s'écrit : ∀x (Humain(x) → Mortel(x)). "Il existe quelqu'un qui est sage" s'écrit : ∃x Sage(x).

Ces systèmes logiques formels nous permettent de raisonner automatiquement. Si nous savons que p→q (si p alors q) et que p est vrai, nous pouvons conclure que q est vrai par modus ponens. Des systèmes informatiques peuvent appliquer ces règles d'inférence mécaniquement.

Représentation des Connaissances

Comment représentons-nous ce qu'un système d'IA doit savoir ? La représentation des connaissances est l'art et la science de coder les informations sur le monde d'une manière que les machines peuvent utiliser efficacement pour raisonner et résoudre des problèmes.

Les graphes de connaissance sont une représentation populaire. Ils représentent les entités (objets du monde réel) comme des nœuds et les relations entre elles comme des arêtes. Par exemple, dans un graphe de connaissance médicale, les nœuds pourraient être des maladies, des symptômes, et des traitements, et les arêtes pourraient être des relations comme "cause", "traite", "symptôme_de".

Les ontologies fournissent un niveau plus élevé de structure. Une ontologie définit les concepts (classes) d'un domaine, leurs propriétés, et comment ils se rapportent les uns aux autres. Une ontologie médicale pourrait définir que "Patient" est une classe de personnes, que chaque patient a une "date_de_naissance", une "liste_de_maladies", etc. Les ontologies modernes sont souvent exprimées en OWL (Web Ontology Language) ou RDF (Resource Description Framework).

Les cadres (frames) ou schémas représentent des stéréotypes ou des structures génériques. Un cadre pour "Restaurant" pourrait avoir des emplacements (slots) pour "cuisine", "prix", "localisation", "évaluations". Lorsque nous parlons d'un restaurant spécifique, nous instancions ce cadre avec des valeurs concrètes.

Systèmes Experts

Les systèmes experts sont parmi les applications les plus réussies de l'IA. Un système expert reproduit les connaissances et le raisonnement d'un expert humain dans un domaine spécifique. Il peut diagnostiquer des maladies, configurer des systèmes complexes, ou conseiller sur des décisions d'affaires.

La structure classique d'un système expert comporte trois composants : la base de connaissances qui contient les faits et les règles du domaine, le moteur d'inférence qui applique les règles pour déduire de nouveaux faits, et l'interface utilisateur qui permet à l'utilisateur de converser avec le système.

Un exemple simple : une base de connaissances pour le diagnostic d'allergies pourrait contenir des faits ("Marie éternue fréquemment", "Les yeux rouges sont un symptôme d'allergie") et des règles ("SI eternuements fréquents ET yeux rouges ET éxposition à la poussière ALORS probable allergie à la poussière"). Le moteur d'inférence enchaîne ces règles pour atteindre des conclusions.

Les systèmes experts des années 1980 ont été très populaires, mais leur développement et maintenance étaient coûteux. L'émergence du machine learning a réduit leur utilisation, car les modèles apprenants pouvaient souvent faire des prédictions aussi bonnes qu'un système expert sans nécessiter une codification manuelle des règles. Cependant, ils restent précieux dans les domaines où la transparence et l'explicabilité sont critiques.

Raisonnement et Inférence

Le raisonnement est le processus de déduction de nouvelles connaissances à partir de connaissances existantes. Il existe plusieurs formes de raisonnement. Le raisonnement déductif tire des conclusions qui doivent logiquement être vraies si les prémisses sont vraies. C'est le raisonnement de la logique formelle. Si tous les oiseaux volent, et un moineau est un oiseau, alors un moineau vole.

Le raisonnement inductif va du particulier au général. Nous observons plusieurs cas (ce moineau vole, cette corneille vole, ce pigeon vole) et concluons une règle générale (tous les oiseaux volent). C'est plus fragile que la déduction - notre conclusion pourrait être contredite par une observation future - mais c'est ainsi que nous apprenons généralement du monde.

Le raisonnement abductif (ou inférence à la meilleure explication) cherche la meilleure explication pour une observation. Si nous observons que la route est mouillée, nous pourrions conclure qu'il a plu récemment. C'est le type de raisonnement utilisé dans le diagnostic : observant certains symptômes, nous déduisons la cause la plus probable.

Gestion de l'Incertitude

Le monde réel est rempli d'incertitude. Nous n'avons généralement pas de certitude absolue sur les faits. La logique classique doit être étendue pour traiter l'incertitude et la probabilité.

La probabilité bayésienne fournit un cadre pour raisonner avec l'incertitude. Le théorème de Bayes établit comment mettre à jour nos croyances à la lumière de nouvelles preuves. Formellement : P(H|E) = P(E|H) × P(H) / P(E), où H est une hypothèse et E est une preuve. P(H|E) est la probabilité de l'hypothèse donnée la preuve (ce que nous voulons), P(E|H) est la probabilité de la preuve si l'hypothèse est vraie, P(H) est la probabilité a priori de l'hypothèse.

Les réseaux bayésiens structurent ces probabilités de manière graphique, montrant comment les variables dépendent les unes des autres. Dans un réseau bayésien médical, une maladie pourrait influencer plusieurs symptômes, et chaque symptôme dépend de la maladie avec une certaine probabilité. Donné observé certains symptômes, le réseau peut calculer la probabilité de la présence de la maladie.

Les systèmes modernes combinent souvent logique et probabilité. Un système d'IA peut utiliser la logique pour structurer le raisonnement et les probabilités pour gérer l'incertitude. Cette combinaison est parfois appelée "logique probabiliste" ou "inférence probabiliste symbolique".

💡 À retenir

Bien que les approches modernes utilisent davantage le machine learning, une compréhension solide de la logique, de la représentation des connaissances, et du raisonnement formel reste un atout précieux pour tout professionnel de l'IA.

❓ Questions fréquentes

La logique formelle est-elle obsolète avec l'IA moderne ?

Non, elle n'est pas obsolète mais complémentaire. Le machine learning excelle pour les tâches d'apprentissage à partir de données, tandis que la logique formelle excelle pour le raisonnement structuré et transparent. Les systèmes modernes les plus sophistiqués combinent souvent les deux approches.

Qu'est-ce qui rend un système expert meilleur qu'une recherche d'IA standard ?

Un système expert incorpore l'expertise humaine de manière directe et explicite. Cela rend les décisions compréhensibles et justifiables - vous pouvez tracer exactement pourquoi le système a conclu quelque chose. Un système de recherche pure peut trouver une solution mais peut ne pas l'expliquer.

Comment les graphes de connaissance diffèrent-ils des réseaux de neurones ?

Les graphes de connaissance représentent explicitement les relations du monde réel de manière structurée et compréhensible. Les réseaux de neurones apprennent des motifs implicites à partir de données. Les graphes de connaissance sont explicables mais nécessitent une construction manuelle. Les réseaux de neurones sont automatiques mais souvent opaques.

Le théorème de Bayes est-il vraiment utilisé en IA pratique ?

Absolument. Les réseaux bayésiens sont utilisés en diagnostic médical, en détection de spam, en systèmes de recommandation, et dans de nombreuses applications. Même les modèles de machine learning modernes ont des fondements bayésiens - par exemple, la régularisation en ML peut être interprétée comme l'imposition de priors bayésiens.

✍️ À propos de cet article

Rédigé par Axel Louni, fondateur d'InfoBoxTV et consultant en agents IA pour PME. Ce guide s'appuie sur des sources primaires vérifiées (documentation officielle, publications académiques, retours terrain auprès de PME françaises). Pour toute correction factuelle : contact InfoBoxTV.

📚 Voir aussi