logo_ipparis.png     TelecomParis_endossem_IPP_RVB_100pix.png Telecom Paris
Dep. Informatique & Réseaux

Dessalles_2018.png J-L. DessallesHome page

June 2021

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. The techniques and concepts that will be studied have however a broader scope in artificial intelligence and are used to study reasoning, decision making and symbolic machine learning. They include:


Students are supposed to have followed SD206 (Logic and knowledge representation), or equivalent.


Lecture 1 Introduction to symbolic NLP         Watch the lecture
    Slides: Intro to the course
    Slides: NLP & AI
    Slides: Parsing
Lecture 2 Introduction to linguistics         Watch the lecture
    Slides: Some other limitations of statistical ML
    Slides: Symbolic vs. Dynamic
    Slides: Natural Language
    Slides: Intro Linguistics
Lecture 3 Procedural semantics         Watch the lecture
    Slides: Procedural Semantics
Lecture 4 Word embeddings (Chloe Clavel)         Watch the lecture
    Slides: Word embedding (Chloé Clavel)
Lecture 5 Contrast and aspect         Watch the lecture on Contrast
        Watch the lecture on Aspect
    Slides: Aspect
    Slides: Contrast
Lecture 6 Knowledge representation,
application of knowledge bases,
rule mining (Fabian Suchanek)
        Watch the lecture (part 1)
        Watch the lecture (part 2)
    Slides: Knowledge representation & Information extraction    
Lecture 7 Relevance and argumentation      Watch the lecture on the relevance of events (60')
     Watch the lecture on relevance in argumentation (30')
    Slides: Relevance
    Simplicity Theory website
    Wikipedia page on BDI (belief-desire-intention)
Lecture 8 XAI: explainable Artificial Intelligence
(Etienne Houzé)
    Slides: XAI

Project, Quiz & evaluation     See 2021 quiz with answers

Lab sessions

1. Syntax & parsing
    05/05/2021    →    12/05/2021
2. Procedural Semantics
    12/05/2021    →    19/05/2021
3. Processing aspect     23/05/2021    →    02/06/2021
4. Relevance and argumentation     02/06/2021    →    16/06/2021

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 slides and your report.

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

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


Forum: Feedback
Please provide any useful comment about the course.



Introduction to AI

Introduction to NLP

About the limits of statistical AI

Cognitive Linguistics

Explainable AI