This course is an introduction to most relevants problems involved in Natural Language Processing, the most relevant techniques and resources used and the theories they are based on. The course includes an overview of Natural Language applications.
The course is focused on the two most relevant approaches to Natural Language processing: knowledge based and empirical ( both statistical and machine learning).
Person in charge
Jordi Turmo Borrás (
Marta Gatius Vila (
Generic Technical Competences
CG1 - Capability to plan, design and implement products, processes, services and facilities in all areas of Artificial Intelligence.
CG3 - Capacity for modeling, calculation, simulation, development and implementation in technology and company engineering centers, particularly in research, development and innovation in all areas related to Artificial Intelligence.
Technical Competences of each Specialization
CEA5 - Capability to understand the basic operation principles of Natural Language Processing main techniques, and to know how to use in the environment of an intelligent system or service.
CEP4 - Capability to design, write and report about computer science projects in the specific area of ??Artificial Intelligence.
CEP6 - Capability to assimilate and integrate the changing economic, social and technological environment to the objectives and procedures of informatic work in intelligent systems.
CEP7 - Capability to respect the legal rules and deontology in professional practice.
CT3 - Ability to work as a member of an interdisciplinary team, as a normal member or performing direction tasks, in order to develop projects with pragmatism and sense of responsibility, making commitments taking into account the available resources.
CT4 - Capacity for managing the acquisition, the structuring, analysis and visualization of data and information in the field of specialisation, and for critically assessing the results of this management.
CT6 - Capability to evaluate and analyze on a reasoned and critical way about situations, projects, proposals, reports and scientific-technical surveys. Capability to argue the reasons that explain or justify such situations, proposals, etc..
Understand the fundamental concepts of Natural Language Processing, most well-known techniques and theories as well as most relevant existing resources.
Understand most relevant applications of NLP and the theories, tecniques and resources they use.
Design and development of programs to solve specific problems in the NLP context, involving the selection of most appropiate techniques and resources as well as the use of existing resources. There would be one larger programs to be developed in groups of two students.
Reason (ocassionally, in group) about several problems in the NLP context that imply considering different techniques and resources.
1. Introduction to Natural Language Processing
3. Language models.
1. Introduction to Natural Language Processing.
Computational Linguistic and Natural Language Processing (NLP). Motivation and applications. Main challenges in NLP. Basic levels in lingusitic description.
Resources used for processing Natural Language.
3. Language models.
Statistical language models. Finite state techniques. Markov model, Hidden-markov model
Basic levels of lingusitic description: textual, lexical and morphology processing. Dicitonaries and lexicons
There are three types of sessions: theory, exercise and laboratory.
In the theory sessions we will introduce new concepts together with the challenges they present and the approaches to face them.
In the sessions of exercises we will work on the concepts, techniques and algorithms introduced in the theory sessions.
In the laboratory sessions small practices will be developed using the appropriate NLP tools to practice and reinforce the knowledge of the theory classes.
There will be a unique exam at the end of the course and two projects. The exam will include all the course contents.
The grade of the projectes will be computed by considering the deliverables presented by the students.
. In particular, the final grade of the course will be calculated as follows:
Course grade = final exam grade* 0.6 + projects grade average * 0.4
Speech and Language Processing: An Introduction to Natural Language Processing, Speech Recognition and Computational Linguistics -
Jurafsky, Daniel & Martin, James H., Prentice-Hall, Inc. ,