Tecnologies Avançades del Llenguatge Humà

Esteu aquí

Crèdits
5
Tipus
  • MIRI: Complementària d'especialitat (Ciència de les Dades)
  • MAI: Optativa
Requisits
Aquesta assignatura no té requisits, però té capacitats prèvies
Departament
CS;TSC
Can a machine learn to correct the grammaticality of text? Can a machine learn to answer questions we make in plain English? Can a machine learn to translate languages, using Wikipedia as a training set?

This course offers an in depth coverage of methods for Natural Language Processing. We will present fundamental models and tools to approach a variety of Natural Language Processing tasks, ranging from syntactic processing, to semantic processing, to final applications such as information extraction, human-machine dialogue systems, and machine translation. The flow of the course is along two main axis: (1) computational formalisms to describe natural language processes, and (2) statistical and machine learning methods to acquire linguistic models from large data collections.

Professors

Responsable

  • Lluis Padro Cirera ( )

Hores setmanals

Teoria
2
Problemes
0
Laboratori
1
Aprenentatge dirigit
0
Aprenentatge autònom
5.3

Competències

Competències Tècniques Generals

Genèriques

  • CG3 - Capacitat per a la modelització, càlcul, simulació, desenvolupament i implantació en centres tecnològics i d'enginyeria d'empresa, particularment en tasques de recerca, desenvolupament i innovació en tots els àmbits relacionats amb la Intel·ligència Artificial.

Competències Tècniques de cada especialitat

Acadèmiques

  • CEA3 - Capacitat de comprendre els principis bàsics de funcionament de les tècniques principals d'Aprenentatge Automàtic, i saber utilitzar-les en l'entorn d'un sistema o servei intel·ligent.
  • CEA5 - Capacitat de comprendre els principis bàsics de funcionament de les tècniques de Processament del Llenguatge Natural, i saber utilitzar-les en l'entorn d'un sistema o servei intel·ligent.

Competències Transversals

Treball en equip

  • CT3 - Ser capaç de treballar com a membre d'un equip interdisciplinari, ja sigui com un membre més o duent a terme tasques de direcció, amb la finalitat de contribuir a desenvolupar projectes amb pragmatisme i sentit de la responsabilitat, tot assumint compromisos considerant els recursos disponibles.

Raonament

  • CT6 - Capacitat d'avaluar i analitzar de manera raonada i crítica sobre situacions, projectes, propostes, informes i estudis de caracter cientific-tecnic. Capacitat d'argumentar les raons que expliquen o justifiquen aquestes situacions, propostes, etc.

Analisis i sintesis

  • CT7 - Capacitat d'anàlisi i resolució de problemes tècnics complexos.

Bàsiques

  • CB6 - Que els estudiants sàpiguen aplicar els coneixements adquirits y la seva capacitat de resolució de problemes en entorns nous o poc coneguts dins de contexts més amplis (o multidisciplinaris) relacionats amb la seva àrea d'estudi.
  • CB8 - Que els estudiants sàpiguen comunicar les seves conclusions i els coneixements i raons darreres que les sustenten- a públics especialitzats i no especialitzats d'una manera clara i sense ambigüitats.
  • CB9 - Que els estudiants posseeixin les habilitats d'aprenentatge que els permetin continuar estudiant d'una manera que haurà de ser en gran mesura autodirigida o autònoma.

Objectius

  1. Learn to apply statistical methods for NLP in a practical application
    Competències relacionades: CEA3, CEA5, CT3, CB6, CB8,
  2. Understand statistical and machine learning techniques applied to NLP
    Competències relacionades: CEA3, CG3, CT6, CT7, CB6,
  3. Develop the ability to solve technical problems related to statistical and algorithmic problems in NLP
    Competències relacionades: CEA3, CEA5, CG3, CT7, CB6, CB8, CB9,
  4. Understand fundamental methods of Natural Language Processing from a computational perspective
    Competències relacionades: CEA5, CT7, CB6,

Continguts

  1. Syntactic Parsing
    Three lectures of the course will be devoted to syntactic parsing:

    1.- Statistical parsing. The core are SCFG. Learning (supervised from treebanks or unsupervised using the inside/outside algorithm), parsing (Viterbi). Pros & Cons of SCFG. Other probabilistic approaches.

    2.- Dependency Parsing. Projective and non projective dependency trees. Eisner & Chu, Liu, Edmonds algorithms. Transition-based parsing.

    3.- Robust parsing. Chunking. HMM-based chunkers. Cascaded FSM chunkers, grammars for chunking.
  2. Distances and Similarities
    Distances (and similarities) between linguistic units. Textual, Semantic, and Distributional distances. Semantic spaces (WN, Wikipedia, Freebase, Dbpedia).
  3. Semantic Role Labelling
    The concept of semantic role. Mapping syntactic dependencies into semantic roles. Semantic arguments of a predicate. Semantic Role Labelers. Resources for learning SRL: VerbNet, PropBank.
  4. Semantic Parsing
    Semantic Representation. Semantic parsing. Building semantic grammars. Learning semantic parsers.
  5. Distributional models
    Distributional models of semantics. Vector Space Model (VSM). Dimensionality reduction. Latent Semantic Indexing (LSI). Using Topic models: Latent Dirichlet Allocation (LDA).
  6. Linguistic Inference
    Detecting inference between linguistic units. Recognizing Textual Entailment. The case of paraphrasing.
  7. Deep Learning for NLP
    Three lectures will be devoted to Deep Learning for NLP

    1.- Using standard Python modules for ML approaches to NLP tasks: Scipy, sklearn for basic ML models. Neural Networks. Linear models. Feed Forward NN. Simple Perceptron. Multilayer Perceptron (MLP). NLP applications.

    2.- Libraries and languages for NN: Theano, TensorFlow, Keras. More advanced NN. Convolutional NN, Embeddings of words and more complex units. Word2Vec and other embeddings. NLP applications.

    3.- Recurrent NN (RNN), Combination of RNN, NN with memory: GRU, LSTM. NLP applications.

Activitats

Activitat Acte avaluatiu


Course Introduction

Review of the field of Natural Language Processing, and the main challenges in the field. Review of the statistical paradigm. Review of language models. The student has to understand the basic questions for which we will see a variety of techniques during the course.
Objectius: 4 2
Teoria
2h
Problemes
1h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h

Classification in NLP

These lectures present machine learning algorithms used in the field of NLP. Special attention is given to the difference between generative and discriminative methods for parameter estimation. We will also present the type of features that are typically used in NLP in discriminative methods. We expect that students already have some background in machine learning, and the goal of these lectures is to see how machine learning is applied to NLP.
Objectius: 4 2
Continguts:
Teoria
5h
Problemes
3h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h

Problem Set 1


Objectius: 4 2 3
Setmana: 4
Tipus: entrega
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
6h

Sequence Models in NLP

These lectures will present sequence models, an important set of tools that is used for sequential tasks. We will present this in the framework of structured prediction (later in the course we will see that the same framework is used for parsing and translation). We will focus on machine learning aspects, as well as algorithmic aspects. We will give special emphasis to Conditional Random Fields.
Objectius: 4 2
Continguts:
Teoria
6h
Problemes
4h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h

Problem Set 2


Objectius: 4 2 3
Setmana: 7
Tipus: entrega
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
6h

Syntax and Parsing

We will present statistical models for syntactic structure, and in general tree structures. The focus will be on probabilistic context-free grammars and dependency grammars, two standard formalisms. We will see relevant algorithms, as well as methods to learn grammars from data based on the structured prediction framework.
Objectius: 4 2
Continguts:
Teoria
6h
Problemes
3h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h

Problem Set 3


Objectius: 4 2 3
Setmana: 10
Tipus: entrega
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
6h

Statistical Machine Translation

We will present the basic elements of statistical machine translation systems, including representation aspects, algorithmic aspects, and methods for parameter estimation.
Objectius: 4 2
Continguts:
Teoria
4h
Problemes
2h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h

Unsupervised Methods in NLP

We will review several methods for unsupervised learning in NLP, in the context of lexical models, sequence models, and grammatical models. We will focus on bootstrapping and cotraining methods, the EM algorithm, and distributional methods.
Objectius: 4 2
Continguts:
Teoria
4h
Problemes
2h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h

Problem Set 4


Objectius: 4 2 3
Setmana: 14
Tipus: entrega
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
6h

Final Exam


Objectius: 4 2 3
Setmana: 15
Tipus: examen de teoria
Teoria
3h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
10h

Project


Objectius: 4 2 1
Setmana: 16
Tipus: entrega
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
45h

Metodologia docent

The course will be structured around five main blocks of lectures. In each theory lecture, we will present fundamental algorithmic and statistical techniques for NLP. This will be followed by problem lectures, where we will look in detail to derivations of algorithms and mathematical proofs that are necessary in order to understand statistical methods in NLP.

Furthermore, there will be four problem sets that students need to solve at home. Each problem set will consist of three or four problems that will require the student to understand the elements behind statistical NLP methods. In some cases these problems will involve writing small programs to analyze data and perform some computation.

Finally, students will develop a practical project in teams of two or three students. The goal of the project is to put into practice the methods learned in class, and learn how the experimental methodology that is used in the NLP field. Students have to identify existing components (i.e. data and tools) that can be used to build a system, and perform experiments in order to perform empirical analysis of some statistical NLP method.

Mètode d'avaluació

Final grade = 0.5*FE + 0.5*LP

where

FE is the grade of the final exam

LP is the grade of the lab project

Bibliografia

Bàsica:

Web links

Capacitats prèvies

- Introductory concepts and methods of Natural Language processing.

- Introductory concepts and methods of Machine Learning.

- Programming.