Logic and Knowledge Representation
➜ other AI courses
Module SD206
[
Description en français ] [
➜ Site pédagogique (Course Website) ]
Logic and knowledge representation
Jean-Louis Dessalles
Dép. Informatique & Réseaux
The future of Artificial Intelligence requires to think beyond massive data processing. Future intelligent systems will be able to process structures and symbolic data.
The SD206 module (Logic and knowledge representation) is an introduction to symbolic AI.
It will introduce the Prolog programming language and fundamental notions of symbolic AI related to problem solving, formal Logic, symbolic machine learning, knowledge representation, natural language processing and Complexity.
Prolog is a unique language. It is a declarative language. With Prolog, problems are addressed in terms of constraints rather than in terms of procedures. Programmers ideally provide knowledge to the machine, which then takes over the solving job. Prolog is the best opportunity to study fundamental notions of Computer Science, such as recursivity, declarativity, unification and backtracking. Prolog has been invented to address symbolic AI problems: knowledge processing, natural language processing, reasoning. Its principles are used in ontologies, in unification grammars and in constraint programming.
Topics presented in SD206 belong to the symbolic branch of AI, which rely on the use of structures and Logic. They will be taken from the following list:
- Prolog (recursivity, backtracking, unification)
- Formal Logic (propositions, predicates, proof by refutation)
- Natural language processing (DCG, parsing through unification)
- Symbolic machine learning (symbolic induction, minimum of complexity)
- Knowledge representation
- Problem solving
SD206 is part of the ‘Data Science’ track in Telecom ParisTech.
It finds a natural follow-up in
SD213 (
Symbolic Natural Language Processing, SNLP).
Logique et représentation des connaissances
[
➜ Site pédagogique (Course Website) ]
L’avenir de l’Intelligence Artificielle se situe au-delà de l’exploitation massive des données.
L’IA du futur demande la maîtrise des structures et des représentations symboliques. Le module SD206 (Logique et représentation des connaissances) propose une introduction à l’IA symbolique.
Il introduit une technique : la programmation en Prolog, et plusieurs concepts fondamentaux de l’IA, relatifs à la résolution de problèmes, à la logique formelle, à l’apprentissage automatique, à la représentation des connaissances, au traitement du langage naturel et à la complexité.
Prolog est un langage unique. Il s’agit d’un langage déclaratif. Prolog permet de penser les problèmes en termes de contraintes plutôt qu’en termes de procédure. Idéalement, le programmeur se contente de donner des connaissances à la machines, et celle-ci fait le reste. Prolog repose sur plusieurs notions fondamentales de la science informatique, comme la récursivité, la déclarativité, l’unification et le retour-arrière (backtracking). Prolog a été imaginé pour attaquer les problèmes de l’Intelligence Artificielle symbolique : gestion des connaissances, traitement du langage naturel, raisonnement. Ses principes de fonctionnement sont réutilisés dans les ontologies, dans les grammaires d’unification et dans les systèmes de planification par contraintes.
Les thèmes de ce cours se rapportent à la partie ‘symbolique’ de l’intelligence artificielle. Les modèles symboliques sont caractérisés par l’emploi de structures et ils reposent sur l’utilisation de la Logique. Les thèmes abordés seront pris dans la liste suivante :
- Le langage Prolog (Récursivité, backtracking, unification)
- Logique formelle (propositions et prédicats, démonstration, preuves par réfutation)
- Traitement du langage naturel (DCG, parsage par unification)
- Apprentissage (induction symbolique, minimum de complexité)
- Représentation des connaissances (logiques de description, ontologies, Web sémantique)
- Résolution de problèmes
Le module SD206 s’inscrit dans la filière Science des Données (SD).
Il trouve une continuation naturelle dans
SD213 (
Symbolic Natural Language Processing, SNLP).
.