Especialización en Comprensión del Lenguaje Natural y Neurolingüística (python).
Del Procesamiento a la Comprensión Automática del Lenguage Natural.
Programa con metodología SyncTeractive Learning: Clases online en directo con dinámicas participativas, grupos reducidos, plataforma e-learning y tutorización personalizada.
Ejes del programa
- Procesamiento y Comprensión del Lenguaje Natural.
- Análisis de sentimiento, opiniones, intenciones, etc.
- Centrado en Python, múltiples entornos, APIs y bibliotecas.
- NLTK, Spacy, TextBlob, TF/Keras, Stanford CoreNLP, IBM Watson, etc.
- Modelos clásicos de frecuencias y análisis semántico.
- Modelos actuales de vectores de espacio latente (embeddings).
- Modelos generativos de lenguaje.
- Modelos secuenciales y recurrentes (LSTM, GRU).
- Modelos basados en mecanismos de atención (BERT).
- Agentes conversacionales y chatbots.
Introducción
El concepto «lenguaje natural» hace referencia al lenguaje usado por los humanos, como el inglés o el español. La producción y la comprensión del lenguaje son procesos aparentemente simples para un humano. Sin embargo, eso es solo la percepción intuitiva que tenemos, en realidad conlleva procesos tremendamente complejos.
Desde la disciplina de la Inteligencia Artificial, utilizamos multitud de técnicas para automatizar, en la medida de los posible, tanto la comprensión como la producción del lenguaje natural. De este modo, el área conocida como Procesamiento del Lenguaje Natural (NLP) integra múltiples técnicas provenientes de la lingüística, la estadística, el aprendizaje automático y las redes de neuronas artificiales.
En la actualidad existen muchas herramientas y bibliotecas de código para resolver diversos problemas típicos de NLP, como son el reconocimiento de entidades, la clasificación de documentos, la detección de temas, etc. En este curso, no nos centramos en ninguna herramienta específica, sino que usamos el lenguaje de programación Python como vehículo para la formación y aprovechamos lo mejor de cada una de las herramientas más populares, haciendo énfasis en el procesamiento del español.
Objetivos
- Comprender las variedad de procesos que se pueden realizar en el tratamiento de datos desestructurados compuestos por texto en lenguaje natural.
- Estudiar las principales técnicas de procesamiento del lenguaje natural.
- Familiarizarse con el uso del lenguaje de programación python para realizar tareas de procesamiento del lenguaje natural.
- Descubrir los principales algoritmos que existen para extraer conocimiento accionable a partir del lenguaje natural.
- Descubrir los diferentes enfoques que se plantean para la comprensión del lenguaje, llegando al análisis semántico.
- Aprender a usar algunas de las herramientas más populares en el ámbito del procesamiento del lenguaje natural.
- Analizar algunas de las teorías que tratan de explicar cómo los humanos procesan el lenguaje.
- Conocer las mejores prácticas en cuanto al procesamiento de texto libre.
- Entender cómo funcionan los agentes conversacionales y chatbots.
A quién va dirigido el programa
Este programa formativo es de nivel avanzado y está diseñado para perfiles con conocimientos previos de informática y programación. No es necesario tener experiencia específica en python, pero sí con otros lenguajes de programación, manejo de tipos de datos, algoritmia, etc.
La experiencia de aprendizaje está diseñada para aquellas personas que:
- Ya trabajan procesando o analizando conjuntos de datos estructurados y quieren dar el paso al procesamiento del lenguaje natural.
- Quieren iniciarse en la aplicación de técnicas de aprendizaje automático en el ámbito del lenguaje natural.
- Necesitan extraer variables semánticas a partir del texto y no consiguen hacerlo utilizando técnicas tradicionales.
- Buscan incorporar fuentes de datos basadas en lenguaje en sus procesos de modelado predictivo y analítica avanzada.
- Requieren ampliar sus operaciones de Inteligencia de Cliente extrayendo información acerca del sentimiento, las opiniones o los intereses de los consumidores.
Metodología
Plataforma Online
Se utilizará Moodle como plataforma de formación online (LMS), incluyendo las herramientas habituales en este tipo de cursos: acceso a los contenidos, foros de discusión, entrega de actividades, calificación de trabajos, etc.
Cada alumno contará con un usuario de Moodle y de esta forma tendrá acceso a todos los recursos disponibles del programa formativo. Así mismo, se monitorizará el acceso y la participación de los alumnos en la plataforma (incluyendo datos de acceso, tiempo de participación, actividades realizadas, fechas de entrega, asistencia a clases online, etc.).
Las clases online se realizarán a través de videoconferencia con la herramienta Zoom, que estará integrada en la plataforma Moodle.
Dinámica del Curso
El curso se realiza combinando sesiones síncronas en directo con actividades que se realizan de forma asíncrona en la plataforma. La duración total del programa puede variar entre uno y tres meses (dependiendo del periodo entre sesiones que se establezca en cada edición – consultar más abajo el programa específico de cada edición).
El programa consta de 6 sesiones síncronas de 2 horas (12 horas de clase en total) más la realización de actividades entre sesiones y el trabajo final de curso (se estima un total de al menos 16 horas de dedicación del alumno, equivalente a 0,5 créditos ECTS).
Las sesiones online combinan de forma dinámica contenidos teóricos con ejercicios prácticos (código en cuadernos interactivos python), de forma que el alumno pueda adquirir las competencias especificadas anteriormente de forma ágil y natural.
Se espera que los alumnos dediquen algún tiempo entre las sesiones para practicar con los conceptos aprendidos en la sesión anterior y plantear dudas concretas en la sesión siguiente.
Como parte del programa formativo, los alumnos desarrollarán un proyecto final de integración de conocimientos, que se irá desarrollando, de forma tutorizada, desde el inicio del curso. La tutorización del proyecto se realizará de forma asíncrona a través de los foros correspondientes en Moodle y de forma síncrona a través de dos sesiones de tutoría online incluidas en la programación.
Evaluación, Diploma y Certificado de Realización
Tras la realización del curso con aprovechamiento los alumnos recibirán el correspondiente certificado. Para obtener el certificado de «Actualización Profesional en Comprensión del Lenguaje Natural con Python«, se deberá superar la evaluación del proyecto final de curso (este programa no tiene evaluación basada en exámenes).
Plan de Estudios
Sobre los conocimientos previos necesarios: Los contenidos específicos de cada sesión se personalizarán y adaptarán al nivel técnico del grupo. Algunas técnicas requieren conocimientos específicos y avanzados de aprendizaje automático y aprendizaje profundo, pero pueden utilizarse con APIs de alto nivel, sin tener que implementar y parametrizar los algoritmos a nivel bajo.
Sesión 1. Análisis del Lenguaje.
- Qué es el lenguaje natural.
- Tipos de lenguajes.
- Niveles de estudio del lenguaje.
- Bases neurológicas del lenguaje verbal humano.
- Automatización del lenguaje (del NLP a los chatbots).
- Panorámica de herramientas y entornos.
- Tareas en procesamiento del lenguaje natural.
- Enfoques algorítmicos en NLP.
Sesión 2. Procesamiento del texto.
- Lenguaje oral y escrito. Transcripción automática.
- Diseño de investigación y modelado del problema.
- Preprocesamiento del texto y análisis exploratorio.
- Transformación de variables.
- Preprocesamiento del texto.
- «Tokenización» y palabras vacías.
- Detección de raíces semánticas y morfológicas (stemming).
- Detección de funciones gramaticales (PoS).
- Detección de entidades (NER).
- Detección de dependencias sintácticas.
Sesión 3. Modelos basados en frecuencias
- Ingeniería de características en lenguaje natural.
- Modelos basados en saco de palabras (BoW).
- Frecuencia de términos (TF/IDF).
- Modelos basados en N-gramas.
- Análisis semántico latente (LSA).
- Asignación latente de Dirichlet (LDA).
- Detección de temas y su aplicación.
- Modelos generativos simples.
Sesión 4. Representaciones vectoriales de espacio latente.
- Introducción a Word2Vec y Embeddings.
- Entrenamiento de embeddings con CBoW y Skip Gram.
- Uso de modelos Word2Vec pre-entrenados.
- Sentence2Vec y Doc2Vec.
- Uso de «sentence encoders» pre-entrenados.
- Modelos secuenciales (LSTM) y embeddings.
- Entrenamiento de modelos predictivos avanzados.
Sesión 5. Deep Learning y Mecanismos de Atención.
- Deep Learning aplicado al lenguaje (más allá del Word2Vec).
- Mecanismos de atención y explicabilidad.
- LSTMs versus Transformers.
- Modelos BERT y GPT.
- Ingeniería de características usando transformers.
- Transferencia de aprendizaje con BERT pre-entrenado.
Sesión 6. Agentes Conversacionales y Chatbots.
- Arquitectura típica de un agente conversacional.
- Panorámica de herramientas y marcos de desarrollo.
- Chatbots y aprendizaje automático.
- Agentes, entidades, contextos, intenciones y eventos.
- Respuestas dinámicas e integraciones.
- Ejemplo práctico en español con DialogFlow.
Equipo Formador
Raúl Arrabales Moreno.
Senior Data Scientist, Consultor Big Data, Doctor en Inteligencia Artificial, MBA.
Raúl es un profesional interdisciplinar con 20 años de experiencia en negocio, tecnología, investigación, gestión y docencia, habiendo desarrollado su carrera en diferentes centros de reconocido prestigio. Ha liderado proyectos y start-ups de base tecnológica en compañías como IBM, Orange, Altran y Accenture. Actualmente Raúl es Socio en Psicobōtica.
Próximas Ediciones
Si estás interesad@ en participar en este programa formativo, podrías apuntarte para alguna de las siguientes ediciones:
- Edición intensiva noviembre 2020 (CLN/2020/2):
- Inicio 16 de noviembre.
- Duración: 1 semana.
- Exclusivo para colectivo docentes UNIR.
- Edición intensiva febrero 2021 (CLN/2020/3):
- Inicio febrero 2021.
- Duración: 3 semanas.
- Máximo 20 participantes.
- Precio reducido online: 145 €.
- Horario: por determinar.
- Ediciones personalizadas InCompany
- Adaptadas para organizaciones.
- Presenciales u online.
- Consultar condiciones.
Solicitud de Admisión y Pre-Inscripción
Para pre-inscribirte o aclarar cualquier duda sobre este curso, rellena el siguiente formulario (la admisión a los programas formativos está sujeta a la revisión del perfil del candidato/a y el número de plazas disponibles):