En este artículo, aprenderemos sobre la IA conversacional, así como sobre los algoritmos y la arquitectura que la impulsan.
¿Qué es la IA conversacional?
El procesamiento del lenguaje natural (NLP), el aprendizaje automático (ML), el aprendizaje profundo (DL) y el aprendizaje por refuerzo (RL) se utilizan en la IA conversacional para imitar las interacciones humanas. Los chatbots, los asistentes virtuales, el software de texto a voz y el software de reconocimiento de voz son algunos ejemplos. En esta serie, nos centraremos en el dominio de chatbot.
La PNL que se usa en el chatbot consta de tres pasos:
También te puede interesarDesarrollo de chatbots usando SpaCy. Introducción | por Ahilya | abr, 2023Existen numerosos documentos, arquitecturas y marcos que respaldan el desarrollo de varios tipos de chatbots. El Clasificador de DIETA se destaca y se analiza en detalle a continuación.
DIETAClasificador
DIETClassifier de Rasa proporciona un rendimiento de última generación para la clasificación de intenciones y la extracción de entidades. A continuación se muestra una oración con un ejemplo de intención y entidad. La entrada del modelo es un mensaje del cliente y sus salidas son la intención y la entidad previstas.
ညီမ ဘိုကင် တင် ချင် လို့ ပါ။ ၁ ရက်နေ့ မနက် ၇ နာရီ အတွက် ပါ ရှင့်။ နေရာ ကတော့ တောင်ကြီး ပါ။
intent - booking
entity - {"time" : "၁ ရက်နေ့ မနက် ၇ နာရီ", "location" : "တောင်ကြီး"}
¿Qué hace que DIET sea único? DIET es un transformador multitarea y una arquitectura modularizada. Los modelos clave incluidos en esto son Feed Forward Neural Network, Transformer y CRF.
Red neuronal de avance
También te puede interesarPor qué la Ley de Moore ha perdido su significado | de Ronit Batra | El científico moderno | abr, 2023
La estructura básica de una red neuronal de avance incluye una capa de entrada, una o más capas ocultas y una capa de salida. Cada capa consta de un conjunto de nodos, que están conectados a los nodos de las capas adyacentes mediante conexiones ponderadas. La capa de entrada recibe los datos sin procesar, que luego son transformados por las capas ocultas mediante un conjunto de funciones de activación no lineales. Finalmente, la capa de salida produce la predicción o salida de la red en función de los datos de entrada transformados.
Transformador
La arquitectura de Transformer consiste en un codificador y un decodificador, los cuales están compuestos por múltiples capas de redes neuronales de autoatención y feedforward. El codificador toma la secuencia de entrada y produce una secuencia de incrustaciones contextualizadas, que luego se pasan al decodificador. Luego, el decodificador usa un mecanismo de autoatención similar para generar la secuencia de salida, un token a la vez, condicionado a la secuencia de entrada y los tokens generados previamente.
FRC
También te puede interesar4 Métodos para “comunicarse” con los Muertos
Los campos aleatorios condicionales (CRF) son un tipo de modelo discriminativo que aprende a predecir etiquetas para una secuencia de entrada determinada, teniendo en cuenta las dependencias entre etiquetas adyacentes. A diferencia de los modelos generativos como los modelos ocultos de Markov (HMM), los CRF modelan la probabilidad condicional de la secuencia de salida dada la secuencia de entrada, en lugar de la probabilidad conjunta de ambas secuencias. La explicación adicional de CRF se puede leer en este artículo.
Procedimiento de entrenamiento
Una pérdida total a optimizar compuesta por tres pérdidas:
Pensamientos finales
También te puede interesarCree un chatbot con AWS utilizando Amazon Lex
Esta arquitectura utiliza el modelo de lenguaje preentrenado para obtener la información generalizada, que puede controlar el problema de sobreajuste cuando no hay suficiente conjunto de datos para entrenar.
Después de conocer la naturaleza de FFNN y Transformers, ¿Por qué están usando FFNN y Transformer nuevamente cuando ya están usando modelos pre-entrenados?
El respuesta es para adaptar el dominio del conjunto de datos de entrenamiento. Hay mas palabras mal escritas, jergas y textos dominantes, especialmente en un chatbot o contexto de redes sociales, por lo tanto volver a entrenar un modelo de lenguaje ayudaría al modelo a capturar este lenguaje específico de dominio.
Eso es todo por ahora !
Referencias :