El 1 de marzo de 2022, IBM mejoró la detección de irrelevancia de Watson Assistant.
El algoritmo de clasificación de detección se mejoró para usar cualquier contraejemplo proporcionado como parte del entrenamiento. Se garantiza que los espacios de trabajo existentes sin ejemplos contrarios no se verán afectados.
La actualización es relevante para los idiomas: inglés, francés, español, italiano. Y muy importante, el modelo general de lenguaje universal.
Algunas consideraciones clave:
- La detección de irrelevancia es una característica clave y distintiva de IBM Watson Assistant. Las mejoras son clave y este desarrollo es sin duda una buena señal.
- Esta característica solo está disponible en el clásico IBM Watson Assistant.
- Todas las instancias nuevas de Watson Assistant apuntan al nuevo WA. No se puede crear una nueva instancia de WA en el WA clásico (con habilidades de diálogo).
- Por lo tanto, esta función solo está disponible en las instancias clásicas de WA existentes.
- Esperemos que pronto Dialog Skills esté disponible en el nuevo WA. O acceso a nuevas instancias clásicas otorgadas.
Las expresiones con una intención asignada pueden marcarse como irrelevantes y guardarse como contraejemplos en el espacio de trabajo. Y por lo tanto incluido como parte de los datos de entrenamiento. Esto le enseña al chatbot a no responder explícitamente a declaraciones de esta naturaleza.
Tabla de contenidos
Desarrollar para la entrada del usuario no relevante para tu diseño
En general, los chatbots están diseñados y desarrollados para un dominio específico. Estos dominios son estrechos y aplicables a la preocupación de la organización a la que sirven. Por lo tanto, los chatbots son personalizados y creados específicamente como una extensión de la operación de la organización, generalmente para permitir que los clientes se autoservicio.
Como elemento adicional para hacer que el chatbot sea más interactivo y realista, y para antropomorfizar la interfaz, se introduce una pequeña charla. También conocido como charla.
Pero, ¿qué sucede si la expresión de un usuario queda fuera de este estrecho dominio? Con la mayoría de las implementaciones, la intención de puntuación más alta se asigna a la expresión del usuario, en un intento frenético de responder a la consulta.
Negar asignación de intención falsa
A menudo, en lugar de indicar que la intención está fuera del alcance, en un intento desesperado por manejar la expresión del usuario, el chatbot asigna la intención que mejor se adapta al usuario; a menudo mal.
Alternativamente, el chatbot continúa informando al usuario que no entiende; y hacer que el usuario reformule continuamente la entrada. En lugar de que el chatbot simplemente indique que la pregunta no es parte de su dominio.
Un elemento de diseño útil es tener dos o tres oraciones que sirvan como introducción para los usuarios primerizos; esbozar la esencia del dominio chatbot.
Los enfoques tradicionales son:
- Muchos ejemplos «fuera de alcance» se imaginan y se ingresan. Que casi nunca tiene éxito.
- Se intenta eliminar la ambigüedad de la entrada del usuario.
Pero en realidad, el chatbot simplemente debe indicar que la consulta está fuera de su dominio y brindar orientación al usuario.
DOO e identificación
Por lo tanto, la entrada del usuario se puede dividir en términos generales en dos grupos, entradas en el dominio (ID) y fuera del dominio (OOD). Las entradas de ID son donde puede adjuntar la entrada del usuario a una intención basada en los datos de entrenamiento existentes. La detección OOD se refiere al proceso de etiquetar datos que no coinciden con ninguna etiqueta en el conjunto de entrenamiento; intención.
Tradicionalmente, el entrenamiento de OOD requiere grandes cantidades de datos de entrenamiento, por lo que OOD no funciona bien en los entornos de chatbot actuales.
Una ventaja de la mayoría de los entornos de desarrollo de chatbots es que se requiere una cantidad muy limitada de datos de entrenamiento; a menudo de 15 a 20 ejemplos de enunciados por intención.
Nadie quiere que los desarrolladores dediquen grandes cantidades de tiempo a un elemento que no forma parte del núcleo del bot.
El desafío es que, como desarrollador, debes proporcionar datos de capacitación y ejemplos. El OOD o entrada irrelevante es posiblemente una cantidad infinita de escenarios, ya que no existe un límite que defina la irrelevancia.
Lo ideal es construir un modelo que pueda detectar entradas OOD con un conjunto muy limitado de datos que definen la intención; o ningún dato de entrenamiento OOD en absoluto.
Siendo la segunda opción la ideal…
Definición de la irrelevancia con Watson Assistant
En BM Watson Assistant, puede enseñar a su habilidad de diálogo a reconocer cuándo la entrada es sobre temas que son OOD.
Las conversaciones de los usuarios se pueden revisar y marcar como temas fuera de tema y, por lo tanto, irrelevantes.
Estas expresiones de usuario marcadas como irrelevantes se guardan como contraejemplos y se incluyen como parte de los datos de entrenamiento.
Por lo tanto, entrenar al asistente para que explícitamente no responda a expresiones de este tipo.
Mientras pruebas tu cuadro de diálogo, puedes marcar una intención, según una entrada del usuario, como irrelevante directamente desde el panel Pruébelo.
Se debe tener cuidado durante este proceso…
- No hay forma de acceder o cambiar las entradas desde la interfaz de usuario más adelante.
- La única forma de revertir la identificación de una entrada como irrelevante es usar la misma entrada en un canal de integración de prueba y luego asignarla explícitamente a una intención.
Cuando configuras la Detección de irrelevancia en habilitada, se activa un método alternativo para evaluar la relevancia de un enunciado enviado recientemente además del método estándar.
Para activar esta función para IBM Watson Assistant:
- En la página Habilidades, abra su habilidad.
- En el menú de habilidades, haga clic en Opciones.
- En la página Detección de irrelevancia, elija Mejorado.
Este método complementario examina la estructura de la nueva expresión y la compara con la estructura de las expresiones de ejemplo de usuario en sus datos de entrenamiento.
Este enfoque ayuda a los chatbots que tienen pocos o ningún contraejemplo a reconocer expresiones irrelevantes.
Mirando la imagen de arriba, la habilidad no tiene intención de estado de cuenta. Por lo tanto, con la detección de irrelevancia desactivada, el valor predeterminado es #Saldos.
Con la función activada, la expresión pasa correctamente al estado Irrelevante.
Para crear un chatbot que brinde una experiencia más personalizada, deseas que use información de los datos que se derivan del dominio de la aplicación. Y agregando tus propios contraejemplos. Aunque solo sean unos pocos.
¿Como funciona?
Entender lo que dicen tus usuarios se basa en dos pilares:
- Intentos que necesita que aborde el chatbot. Ejemplos de esto para una empresa de mensajería podrían ser el seguimiento de pedidos, la recolección de paquetes, etc. La capacitación se lleva a cabo mediante la definición de intenciones y la adición de declaraciones de usuario de ejemplo. Estas expresiones de los usuarios se agrupan según la intención según lo que los usuarios podrían decir.
- Definición de contraejemplos que deben considerarse irrelevantes o que deben ignorarse.
Se puede dedicar tiempo a comprender el dominio de la audiencia objetivo y las intenciones específicas. Y, posteriormente, elabora o obten datos de capacitación en consecuencia.
Los contraejemplos deben ser parte de estos datos de entrenamiento.
El objetivo de la detección de irrelevancia mejorada es mitigar cualquier vulnerabilidad en los contraejemplos.
Según IBM:
Cuando está habilitado, se activa un método alternativo para evaluar la relevancia de un enunciado enviado recientemente además del método estándar.
El mejor enfoque es agregar ejemplos de dominio y también contrarrestar ejemplos de forma iterativa con un seguimiento continuo.
Conclusión
Este es un tema que no disfruta de la atención que merece y, a menudo, se pasa por alto, ya que, en la mayoría de los casos, las pruebas se basan estrechamente en las intenciones del dominio.
Comunicar al usuario de manera clara dónde están los límites del dominio puede salvar al usuario de la frustración y al chatbot del abuso. 🙂