Materia

Contenido de XSL

Aprendizaje Automático (II)

Datos generales de la materia

Modalidad
Presencial
Idioma
Inglés

Descripción y contextualización de la asignatura

El curso pone el foco en un conjunto de técnicas inspiradas en la inteligencia artificial y la estadística. En la última década, estos campos han experimentado un crecimiento notable, particularmente relacionado con el análisis de grandes cantidades de datos mediante técnicas y algoritmos de base matemática, estadística y de optimización heurística. La aplicación de técnicas de aprendizaje automático está ampliamente expandido en áreas como la bioinformática, finanzas, y también el procesamiento de textos.

El alumnado estudiará las principales técnicas para la minería de datos, y aumentará sus habilidades en usos de populares herramientas de software que implementan estas técnicas. Todo ello mediante la demostración sobre aplicaciones reales de procesamiento de texto.

Profesorado

NombreInstituciónCategoríaDoctor/aPerfil docenteÁreaEmail
INZA CANO, IÑAKIUniversidad del País Vasco/Euskal Herriko UnibertsitateaProfesorado AgregadoDoctorBilingüeCiencia de la Computación e Inteligencia Artificialinaki.inza@ehu.eus

Competencias

DenominaciónPeso
Habilidad para manejar las estrategias y herramientas basadas en conocimiento para el procesamiento del lenguaje humano.30.0 %
Habilidad para el manejo y la adaptación de los métodos simbólicos y basados en corpus (aprendizaje automático) más relevantes para la investigación en las tecnologías de la lengua.70.0 %

Tipos de docencia

TipoHoras presencialesHoras no presencialesHoras totales
Magistral101525
P. Ordenador203050

Actividades formativas

DenominaciónHorasPorcentaje de presencialidad
Clases magistrales25.040 %
Prácticas con ordenador, laboratorio, salidas de campo, visitas externas50.040 %

Sistemas de evaluación

DenominaciónPonderación mínimaPonderación máxima
Trabajos Prácticos0.0 % 100.0 %

Resultados del aprendizaje de la asignatura

Conocimiento de los principales escenarios de aprendizaje automático.



Identificar el tipo de técnica a aplicar en cada escenario de clasificación.



Conocer los pasos básicos, standard, de un pipeline-flujo de análisis de datos,



Uso de librerías de R-project para la creación de un corpus y su "document-term matrix" asociada, y la posterior aplicación de técnicas de aprendizaje automático sobre ella.

Convocatoria ordinaria: orientaciones y renuncia

Sistema de Evaluación Continua: TPROY

Primero, es necesario que el alumno acuda al menos al 80% de las sesiones. A partir de ahí, la evaluación consistirá en un proyecto a desarrollar de manera individual por el alumno. Un resumen del proyecto a realizar es el siguiente.

A partir de un texto en crudo (e.g. tweets o comentarios en redes sociales, texto en html, documentos en distintos ficheros, etc.), se deberá primero importar el texto y crear un corpus. Este corpus debe basarse en un problema supervisado con textos de distinto etiquetado. El corpus se preprocesará mediante filtros básico de text-mining (e.g. removing stop-words, stemming, eliminación de términos de escasa aparición, etc.). Para ello, utilizaremos el paquete “tm” (“text-mining”) del software R. El corpus se transformará a un formato matricial para que pueda ser manipulado mediante software especializado en aprendizaje automático. Aquí, se utilizará el popular paquete “caret” de R, aplicando al menos estos clásicos pasos de un proceso de clasificación supervisada: carga y exploración y visualización de los datos, preprocesado de las variables, partición para la validación, aplicación de técnicas de selección y extracción de variables, aplicación de técnicas en situaciones de desbalanceo de clases, aprendizaje de modelos supervisados y “tuning” de los parámetros asociados, predicción de la etiqueta sobre nuevos textos, comparativa estadística de los modelos.

El proyecto se realizará en un formato “notebook”, alternando el código implementado junto con la descripción de las funciones utilizadas, y se mostrará el “output” del proceso.





Sistema de Evaluación Final: TPROY

En caso de que el alumno no pueda acudir a clase y solicite una única evaluación final, ésta consistirá en la realización del proyecto individual descrito previamente.

Convocatoria extraordinaria: orientaciones y renuncia

En caso de que el alumno no pueda acudir a clase y solicite una única evaluación final, ésta consistirá en la realización del proyecto individual descrito previamente.

Temario

1. Principales escenarios de clasificación. Formalismos y aplicaciones en cada escenario: clasificación supervisada, clustering, “weakly supervised classification” (“positive unlabeled learning”, “learning from label proportions”, “partial labels”, “crowd learning”, etc.)

2. Técnicas y filtros generales para el preprocesamiento de datos. Software: WEKA

3. Principales técnicas para la selección de variables. Software: WEKA

4. Validación de modelos de clasificación. Uso de tests estadísticos para la comparativa entre clasificadores. Software: WEKA, R, recursos web

5. El paquete “tm” (text-mining) del software R. Construcción mediante operadores de “text-mining” una “document-term” matrix para su posterior análisis mediante técnicas de aprendizaje automático. Notebook-tutorial

6. “The machine learning approach”: clustering de términos y clasificación de documentos”. Uso del paquete “caret” de R. Notebook-tutorial

7. Primeros pasos en “deep learning” para la clasificación de documentos. Aplicación de técnicas “word2vec”. Uso del paquete “h2o” de R. Notebook-tutorial

Bibliografía

Bibliografía básica

*M. Kuhn, K. Johnson (2013). Applied Predictive Modeling. Springer.

*ParallelDots, online text analysis APIs for several tasks: sentiment analysis, tags' prediction, keyword generator, entity extraction, comparing similarity of texts, different emotions analysis, intent analysis, abusive text prediction, etc. https://www.paralleldots.com/text-analysis-apis

* sentiment140: an interesting project for automatic sentiment categorization of tweets: http://help.sentiment140.com/

* Stanford TreeBank project. "Recursive deep models for semantic compositionality over a semantic treebank". https://nlp.stanford.edu/sentiment/

* RDataMining website: Text mining with R: Twitter data analysis: http://www.rdatamining.com/docs/text-mining-with-r

* Awesome sentiment analysis: A curated list of Sentiment Analysis methods, implementations and misc. https://github.com/xiamx/awesome-sentiment-analysis

* "5 things you need to know about sentiment analysis and classification": https://www.kdnuggets.com/2018/03/5-things-sentiment-analysis-classification.html

* Bing Liu's website on "Opinion mining, sentiment analysis and opinion spam detection: the machine learning approach". https://www.cs.uic.edu/~liub/FBS/sentiment-analysis.html

* 18 NLP key terms, explained for ML practitioners and NLP novices: https://www.kdnuggets.com/2017/02/natural-language-processing-key-terms-explained.html