TelecomParis_IPParis.png Telecom Paris
Dep. Informatique & Réseaux

Dessalles_2018.png J-L. DessallesHome page

July 2023


Cognitive Approach to Natural Language Processing (SD213)

                                other AI courses


Processing language is one of the most important and most challenging issues of Artificial Intelligence. NLP (Natural Language Processing) has many applications. It is commonly used in machine translation, in text mining, in speech recognition, in dialogue based applications, in text generation, in automatic summarization, in Web search, etc. Conversely, it is hard to imagine an "intelligent" machine that would be unable to understand language.
NLP remains a challenging task. Statistical techniques perform well in domains such as machine translation, but they are intrinsically limited to average meanings and cannot take contextual knowledge into account. This course explores some symbolic alternatives to mere statistics.
Some NLP techniques, like grammars, parsing and ontologies, are classic symbolic methods. Some others are inspired by cognitive modelling. They include procedural semantics, aspect processing, dialogue processing. The point is not only to adopt a "reverse engineering" approach to language, but also to adapt engineering techniques to human requirements to improve efficiency and acceptability.


This course presents different NLP methods that are inspired by the study of natural language and of the underlying cognitive processes. However, the techniques and concepts that will be studying have a broader scope in artificial intelligence and are used to study reasoning, decision making and symbolic machine learning. They include:


SD206 (Logic and knowledge representation) is recommended, but not required. Labs are currently being translated into Python (so that both Python and Prolog versions will be available). Basic notions about Prolog will nevertheless be useful to know (unification, recursion, backtracking, declarativity).


Lecture 1 Introduction to symbolic NLP and to Linguistics
            Watch the lecture        
    Intro to the course
    Should AI imitate cognitive mechanisms?    
    Linguistic resources, by M. Alam
    Natural Language Processing, by N. Holzenberger
Lecture 2 Procedural semantics
            Watch the lecture        
    Structures to represent meaning
    Procedural Semantics
Lecture 3 Contrast and aspect
        Watch the lecture on Aspect
Lecture 4 Relevance and argumentation     Relevance
    Argumentation examples         Argumentation theory
    CAN (conflict - abduction - negation)
    See also:         Simplicity Theory website
        Wikipedia page on BDI (belief-desire-intention)
Lecture 5 Linguistic Linked Data (Mehwish Alam)     Linguistic Linked Data
    Demo (notebooks)
Lecture 6 Cognition-inspired Visual Question Answering (Nils Holzenberger)     

Project, Quiz & evaluation See 2022 quiz with answers
   read →
PdfIcon.png     2023 Students’ micro-studies     

Lab sessions

1. Syntax & parsing
    19/04/2023    ➜    25/04/2023
2. Procedural Semantics
    10/05/2023    ➜    16/05/2023
3. Processing aspect
    17/05/2023    ➜    23/05/2023
4. Relevance and argumentation     24/05/2023    ➜    07/06/2023

Students are asked to complete the exercises of each session within 7 days.



Each student will choose a problem related to the above topics and perform a micro-research on that problem. Students will write a 3-page paper (typical structure: problem, relevant studies, claim, evidence, discussion, bibliography (with weblinks)).
Note: the project should include some programming (this is a computer science course). So pure bibliographic projects would not suffice.

The study should be related to symbolic NLP. The easiest way to do this study is to work on a topic closely related to one of the lab work sessions. You are free, however, to work on any other relevant topic. Be careful to keep it feasible: it’s supposed to be a mini-study.
Caveat: if your study involves statistical aspects, only the symbolic part will be considered in the evaluation. Implementation language should be Prolog or Python (ask in case of problem).

Examples: Extend a grammar to analyze more complex sentences (such as the fist sentence of this section); create a grammar for a different language; extend the lab work on procedural semantics to understand more sentences about chess; or to understand sentences about the genealogy of an actual family; extend the lab work on aspect to include more aspectual words (always, ancient, already, still, ...); create a mini-knowledge base on a specific domain (football, Roland-Garros...) and use CAN (last lab work) to propose interactive dialogues; etc.

Indicate the topic of your study     ➜    HERE
(you may change your mind at will).
You may also See already chosen projects.

Use this page to upload your report (see below report template).

Students may work in pairs. In this case, the respective contributions of each student should appear unambiguously. And the expectations are of course doubled.

Your small report will describe your project and what you found (typically: 2 or 3 pages of text). Don’t forget to use the template below.

The project itself can be handed in until June 29th.
Please post:


Introduction to AI

Introduction to NLP

About the limits of statistical AI

Cognitive Linguistics

Explainable AI