Presentación del taller
¿Te gustaría charlar con tu personaje favorito cuando quieras? Usando inteligencia artificial (IA) puedes construir un chatbot para ello. El pasado jueves 18/3/2021 realizamos el taller “¿Quieres conocer a un nuevo amigo? Crea tu propio Chatbot!” de la mano de Epitech y Saturdays.AI durante el cual exploramos las bases teóricas y prácticas de los modelos de procesamiento del lenguaje natural (PLN o NLP en inglés), con un especial énfasis en los actuales modelos de tokenización como Transformers y los muy espectaculares “large language models” como GPT3.
El objetivo principal del taller es entender los fundamentos de la IA aplicada al lenguaje y la implementación de un modelo para desplegar un chatbot siguiendo el estilo de un personaje de ficción.
Conceptos teóricos
El procesamiento del lenguaje natural es una rama de la inteligencia artificial, cuyo objetivo es comprender los textos y posteriormente ser capaces de extraer información de estos. La historia del NLP tiene dos etapas diferenciadas; la época determinista en donde se definían las reglas que rigen los textos de manera manual y posteriormente la época del “Deep Learning” el cual ha revolucionado este ámbito.
Aplicaciones
Mediante una Jupyter Notebook se ha procedido a mostrar diversos ejemplos de las aplicaciones que tienen el NLP en la comprensión de textos.
En primer lugar se ha explicado cómo funcionan los algoritmos por dentro, cuál es el preprocesado que debe realizarse antes de pasar los datos por el modelo, destacando la importancia de mantener la coherencia con el modelo que se va a emplear.
También se han mostrado ejemplos de:
- Question answering: Se le muestra un texto al modelo y se le hacen una serie de preguntas al respecto.
- Fill the blank: Se deja un espacio en blanco en un texto y debe ser capaz de rellenarlo de manera coherente
- Causal language modeling: El objetivo es ir completando una frase de palabra en palabra
- Text generation: Ser capaz de devolvernos un texto a partir de una frase completa
Herramientas y resultados del taller
En primer lugar se han visto las limitaciones que tiene un algoritmo de NLP básico sin personalizar ni añadir parámetros específicos:
Se ha decidió usar
una técnica que permite personalizar un algoritmo mediante nuestros propios datos; en este caso se ha empleado un Dataset de la serie
. En este caso sí que se ha observado una adaptación al entorno en que se encuentra y una personificación de Rick.
Finalmente, después de hablar con el chatbot Rick, concluimos el taller y animamos a los participantes a seguir aprendiendo Inteligencia Artificial.
Puedes ver el taller completo aquí: