Algoritmos supervisados y convenciones
de anotación para tareas de
procesamiento del lenguaje natural

Material para el seminario de la carrera de Letras de la UBA


Project maintained by seminario-algosups Hosted on GitHub Pages — Theme by mattgraham
Algoritmos Supervisados

Presentación

Este espacio está pensado para servir de soporte al seminario “Algoritmos supervisados y convenciones de anotación para tareas de procesamiento del lenguaje natural”, dictado durante el primer cuatrimestre de 2025 para la carrera de Letras de la Facultad de Filosofía y Letras de la Universidad de Buenos Aires. El seminario está a cargo de Fernando Carranza como profesor adjunto interino con dedicación simple y Fernando Schiaffino con asignación de funciones.

Modalidad

En la cursada vamos a utilizar el campus para disponibilizar la bibliografía y para comunicarnos a través del foro. El resto de los materiales de clase se van a centralizar en esta página y su respectivo repositorio. El repositorio se puede clonar para correr el código de las clases de manera local, siempre y cuando se haya instalado correctamente antes Jupyter Notebook, Python y las librerías relevantes. También es posible correr el código desde una cuenta de Google Colab.

Cronograma de clases y materiales

Clase Fecha Docente Temas Materiales
01 22/03/2025 Carranza
  • Presentación seminario
  • 1.i) la inteligencia artificial
  • 1.ii) programación clásica vs. el aprendizaje automático (*machine learning*).
  • 1.iii) Procesamiento del lenguaje natural: definición, tareas y enfoques;
  • 1.iv) lenguaje de programación Python en Google Colab (tipos de datos, variables, sintaxis básica)
02 29/03/2025 Schiaffino
  • 1.iv) lenguaje de programación Python en Google Colab (funciones, librerías, archivos)
  • 1.v) Exploración de algunos recursos de libre acceso relevantes: Kaggle y Huggingface, GitHub.
03 05/04/2025 Schiaffino
  • 2.i) Aprendizaje supervisado y no supervisado.
  • 2.ii) Métricas usuales para medir el rendimiento de modelos de clasificación (accuracy, precisión y cobertura).
  • 2.iii) Anotación como tarea a resolver por un modelo predictivo.
  • 2.iv) Datos estructurados y no estructurados: manejo de estructuras de almacenamiento de datos (json, csv).
04 12/04/2025 Schiaffino
  • 2.v) Vectorización (conversión de un texto en tanto dato no estructurado en un arreglo numérico estructurado; CountVectorizer, TfidfVectorizer).
  • 2.vi) Modelos de clasificación: Bayesiano ingenuo.
05 19/04/2025
(Semana Santa)
clase virtual
Schiaffino
  • 2.vi) Modelos de clasificación: Regresión Logística, Máquina de soporte vectorial (Support Vector Machines).
06 26/04/2025 Carranza
  • 3.a.i) nociones básicas de morfología: raíz, lema, tema y forma de palabra, morfología flexiva y derivativa;
  • 3.a.iv) etiquetamiento en CONLL-U: columnas de ID, de palabra y de lema.
07 03/05/2025
(Fin de semana largo
por día del trabajador)
clase virtual
Schiaffino
  • 3.a.ii) tokenización, stemming y lemmatizing de NLTK;
  • 3.a.iii) lemmatizer de Spacy basado en reglas y basado en aprendizaje automático
  • TP1 en clase
08 10/05/2025 Carranza
  • 3.a.ii) Postag NLTK con tagset BNC
  • 3.b.i) etiquetas de BNC
  • 3.b.ii) Postag NLTK con tagset Universal y postag de Spacy y Stanza
  • 3b.i) etiquetas de Universal. Práctica de anotación en clase de Universal con CONLL-U con una noticia.
09 17/05/2025
(No hay clase por
cierre de Facultad)
10 24/05/2025 Carranza
  • 3.b.ii) etiquetamiento en CONLL-U de clase de palabra con EAGLES y de rasgos morfológicos
  • 4.i) Análisis basado en constituyentes y gramáticas basadas en dependencias.
  • 4.iii) Penn Treebank. Sistema de anotación sintáctica basada en constituyentes.
  • 4.ii.a) Parser basado en constituyentes BLLIP
11 31/05/2025 Carranza
  • 4.ii.b) parsers basados en dependencias Spacy y Stanza.
  • 4.iv) Análisis sintáctico basado en dependencias y su anotación en CONLL-U.
  • 4.ii) Representación del texto como bolsa de palabras.
  • iii) Representación del texto como arreglo numérico: matrices ralas (término-término, término-documento) y matrices densas (embeddings).
  • Entrega consigna de TP2
12 07/06/2025 Schiaffino
  • 5.c.i) armado de dataset con oraciones. ii) métodos de medición de similitud semántica (similitud coseno, similitud por presencia de token, word2vec, FastText)
  • 5.b.i) Sistemas de anotación (BOU, BILOU). ii) NER de Spacy y Stanza y extracción de relaciones.
  • 5.b.iii) Extracción de información en reportes médicos.
  • 5.b.iv) Detección de relaciones en informes médicos.
  • Entrega TP2
13 14/06/2025 Schiaffino
  • 5.ai) el análisis de sentimiento. Modelos disponibles en NLTK y Stanza.
  • 5.a.v) Detección de lenguaje de odio. Pysentimiento. Comentar sobre el diseño del entrenamiento, pasos, selección y evaluación de anotadores.
  • Consigna de TP3
14 21/06/2025 Schiaffino
  • 5.a.iv) Entrenamiento de modelos de clasificación para análisis de sentimiento (Bayesiano Ingenuo, Regresión Logística y Máquina de soporte vectorial) y comparación de su rendimiento.
  • Entrega de TP3
15 28/06/2025 Carranza
  • 5.d. Entendimiento del lenguaje natural (*Natural Language Understanding*) en la era de los grandes modelos de lenguaje.
  • Cierre de cursada.
  • Presentación consignas para trabajo final