Materia
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
Nombre | Institución | Categoría | Doctor/a | Perfil docente | Área | |
---|---|---|---|---|---|---|
INZA CANO, IÑAKI | Universidad del País Vasco/Euskal Herriko Unibertsitatea | Profesorado Pleno | Doctor | Bilingüe | Ciencia de la Computación e Inteligencia Artificial | inaki.inza@ehu.eus |
Competencias
Denominación | Peso |
---|---|
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
Tipo | Horas presenciales | Horas no presenciales | Horas totales |
---|---|---|---|
Magistral | 10 | 15 | 25 |
P. Ordenador | 20 | 30 | 50 |
Actividades formativas
Denominación | Horas | Porcentaje de presencialidad |
---|---|---|
Clases magistrales | 25.0 | 40 % |
Prácticas con ordenador, laboratorio, salidas de campo, visitas externas | 50.0 | 40 % |
Sistemas de evaluación
Denominación | Ponderación mínima | Ponderación máxima |
---|---|---|
Trabajos Prácticos | 0.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: TPROYPrimero, 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