Departamentos

Lingüística y Lenguas Aplicadas Plan 2019

Grado y Doble Grado. Curso 2024/2025.

PROGRAMACIÓN PARA EL PROCESAMIENTO DEL LENGUAJE NATURAL - 805144

Curso Académico 2024-25

Datos Generales

SINOPSIS

COMPETENCIAS

Generales
Competencias generales transversales (CGT)
CGT1: Capacidad de análisis y síntesis
CGT2: Capacidad de aplicar los conocimientos en la práctica.
CGT5: Conocimientos sobre el área de estudio.
CGT6: Conocimientos de informática y tecnologías.
Específicas
CE31: Capacidad para utilizar la informática como herramienta de apoyo al estudio de la Lingüística.
CE32: Capacidad para aplicar los conocimientos adquiridos en Lingüística y lenguas a cuestiones básicas del procesamiento del lenguaje natural.
CE33: Capacidad para utilizar los conocimientos de Lingüística computacional en el análisis lingüístico.
CE34: Capacidad de construir una aplicación de procesamiento del lenguaje natural.
CE35: Capacidad para diseñar y construir componentes lingüísticos básicos utilizados en el procesamiento del lenguaje natural.
CE36: Capacidad para valorar los resultados de una aplicación de procesamiento del lenguaje natural.
Otras
Competencias sistémicas (CS)
CS1: Capacidad de aprender.
CS2: Capacidad crítica y autocrítica.
CS3: Capacidad de resolución de problemas.
CS5 Capacidad de generar nuevas ideas.

Competencias personales (CP)
CP1: Habilidad para trabajar de forma autónoma.
CP2: Capacidad de trabajar en equipo.
CP3: Habilidad para trabajar en un contexto internacional.

ACTIVIDADES DOCENTES

TOTAL
- Créditos presenciales: Se valorará muy positivamente la asistencia y la participación en las discusiones de clase, así como la realización y entrega en fecha de los ejercicios prácticos.
- Créditos no presenciales: Trabajos de investigación, lecturas y realización de ejercicios y prácticas propuestos en clase. Realización de prácticas propuestas en clase.

Presenciales

2

No presenciales

4

Semestre

7

Breve descriptor:

El procesamiento del lenguaje natural (PLN) es un área interdisciplinar que se ocupa de la construcción de sistemas informáticos capaces de comprender y generar lenguaje natural. Para ello se utilizan diversos modelos de representación del lenguaje y del procesamiento del lenguaje que proceden de áreas de conocimiento como la Lingüística, la Informática, la Matemática (especialmente la Estadística), Ingeniería de Telecomunicaciones, Psicología Cognitiva y Neurobiología, entre otras.

Esta asignatura presenta una introducción a los lenguajes de programación orientados a tareas de Procesamiento del Lenguaje Natural. En concreto, en ella ahondaremos en Python (https://www.python.org), un lenguaje de programación cuya sintaxis favorece la legibilidad y que es ampliamente utilizado en el área de la Lingüística Computacional.

Requisitos

Los requisitos previos de la asignatura se alcanzan una vez completado con éxito las asignaturas Iniciación a la Informática (I y II) del módulo 1 y el módulo 2 completo.

Objetivos

El objetivo principal de esta asignatura es conocer los problemas a los que se enfrenta en Procesamiento del Lenguaje Natural y abordar, de manera automática o semi¬automática, la resolución de pequeñas tareas de procesamiento y análisis de texto, implementando sencillos programas de ordenador.

Contenido

 1. Introducción a la programación
1.1. Máquinas, computadores y lenguajes de programación
1.2. Compiladores e intérpretes
1.3. Modelos abstractos de cómputo: modelo funcional, modelo de flujo de datos, modelo de programación lógica y modelo imperativo
1.4. Introducción a la programación en Python
1.5. Python para el Procesamiento del Lenguaje Natural
1.6. Evaluación de los conocimientos

2. Variables, expresiones y sentencias
2.1. Valores y tipos
2.2. Variables y sentencias
2.3. Orden de las operaciones
2.4. Petición de información al usuario
2.5. Expresiones regulares
2.6. Práctica

3. Ejecución condicional
3.1. Expresiones booleanas y operadores lógicos
3.2. Ejecución condicional y ejecución alternativa
3.3. Tratamiento de excepciones
3.4. Práctica

4. Iteración
4.1. Bucles definidos usando while
4.2. Las sentencias break y continue
4.3. Bucles definidos usando for
4.4. Práctica

5. Cadenas: 
5.1. Las cadenas como secuencias
5.2. Invocación de métodos sobre cadenas
5.3. Práctica

6. Listas, diccionarios y tuplas
6.1. Listas: operaciones y métodos sobre listas
6.2. Diccionarios: métodos sobre diccionarios y recorrido mediante bucles
6.3. Tuplas: operaciones sobre tuplas y diccionarios como listas de tuplas
6.4. Práctica

7. Funciones
7.1. Parámetros y argumentos
7.2. Flujo de ejecución
7.3. Funciones internas
7.4. Práctica

8. Ficheros

8.1. Apertura de ficheros
8.2. Lectura de ficheros y búsquedas en ficheros
8.3. Escritura de ficheros
8.4. Práctica

9. Introducción al uso de librerías
9.1. Librerías de PLN: Instalación e importación
9.2. Funciones básicas de liberarías de PLN
9.3. Práctica


Evaluación

La evaluación será fundamentalmente continua y se realizará a partir de las calificaciones obtenidas en las prácticas de clase y las tareas de entrega obligatoria.

Los plazos de entrega de entrega de las prácticas son únicos y no se permite la entrega de prácticas para la convocatoria de julio. Las prácticas suspensas o no presentadas únicamente podrán recuperarse si se superan los módulos del examen final de los temas correspondientes.

La calificación final se obtendrá de la forma siguiente:
- El 10% se obtiene de la asistencia y la participación en las sesiones presenciales.
- El 30% se obtiene de la evaluación de las tareas prácticas en clase y las entregas durante el curso.
- El 20% se obtiene de un examen intermedio.

- El 40% se obtiene de un examen al final del cuatrimestre sobre los contenidos teóricos y prácticos desarrollados durante el curso. Es requisito indispensable aprobar el examen al margen de que la media final supere el 5.

Aunque el alumno no supere la evaluación continua, podrá presentarse al examen final. En ese caso, la calificación final de la asignatura será la del examen, en el que todos los módulos deberán estar aprobados.

Bibliografía

Severance, C. Python para informáticos: Explorando la información con Pyhton 3 (Fernando Tardío, trad.). 2016. Disponible en: http://do1.dr-chuck.com/pythonlearn/

Bibliografía complementaria:

BaezaYates, R., RibeiroNeto, B. Modern Information Retrieval. ACM Press. 1999. http://books.google.es/books?id=GcPuAAAAMAAJ
Bird, S., Klein, E. , Loper, E. Natural Language Processing with Python. O¿Reilly Media. 2009. http://books.google.es/books?id=KGIbfiiP1i4C
Bratko, I. Programming for Artificial Intelligence. Pearson. 2001. https://scholar.google.com/citations?user=JzzOTvgAAAAJ&hl=es
Einsenstein, J. Introduction to Natural Language Processing. 2019. Borrador disponible en: https://github.com/jacobeisenstein/gt-nlp-class/blob/master/notes/eisenstein-nlp-notes.pdf
Hortalá, M. T., Leach, J., Rodríguez, M. Matemática discreta y lógica matemática. Editorial Complutense. 3a edición. 2008. https://books.google.es/books/about/Matemática_discreta_y_lógica_matemáti.html?id=i7-bsfuIKIIC&redir_esc=y
Jurafsky, D. and Martin, J.H. Speech and Language Processing. Pearson Prentice Hall. 2008. http://books.google.es/books?id=fZmj5UNK8AQC. Borrador de la tercera edición disponible en: https://web.stanford.edu/~jurafsky/slp3/
Llisterri, J, Martí, M. A. (Eds). Tratamiento del Lenguaje Natural. Edicions Universitat de Barcelona. 2003. http://books.google.es/books?id=em69wKZi3pUC
Manning, C. and Schütze, H. Foundations of Statistical NLP. MIT Press. 1999. https://books.google.es/books?id=YiFDxbEX3SUC
Manning, C., Raghavan, P. and Schütze, H. Introduction to Information Retrieval. Cambridge University Press. 2008. https://nlp.stanford.edu/IR-book/pdf/irbookonlinereading.pdf

Estructura

MódulosMaterias
No existen datos de módulos o materias para esta asignatura.

Grupos

Clases teóricas y/o prácticas
GrupoPeriodosHorariosAulaProfesor
Grupo A12/09/2024 - 13/12/2024MARTES 10:30 - 12:30Aula de informáticaDOAA SAMY KHALIL SHAWER
MIÉRCOLES 10:30 - 12:30Aula de informáticaDOAA SAMY KHALIL SHAWER