Tabla de contenidos

Introducción

Este es el segundo post que he escrito sobre la integración de HumanFirst y Co:here, puedes encontrar el primer post aquí.

Para este prototipo he utilizado el conjunto de datos ATIS Airline Travel Information System de Kaggle. Este conjunto de datos consta de 5.000 expresiones de usuarios etiquetadas con intenciones. Algunas expresiones están etiquetadas con intenciones jerárquicas para probar la gestión de esta función en Studio.

Además, en HumanFirst Studio he creado dos conjuntos de pruebas:

  • La primera prueba se basó en el conjunto de datos con intenciones etiquetadas.
  • La segunda prueba se realizó con el conjunto de datos sin el etiquetado de intenciones.

Objetivos

Los objetivos de este artículo son los siguientes…

  • Alejarse de los datos simples y limpios, y hacer uso de los enunciados complejos de los usuarios, que son más largos, con intenciones y entidades compuestas. A continuación, se presentan algunas frases de ejemplo para ilustrar los tipos de enunciados.
i would like a list of round trip flights between indianapolis and orlando florida for the twenty seventh and the twenty eighth of decemberi would like to find out what flights there are on friday june eleventh from st. petersburg to milwaukee and then from milwaukee to tacoma thank youi would like to find a flight from kansas city to salt lake city on delta and arriving at about 8 o'clock in the evening could you please tell me the aircraft and the flight number thank youi want to travel from kansas city to chicago round trip leaving wednesday june sixteenth arriving in chicago at around 7 o'clock in the evening and returning the next day arriving in kansas city at around 7 o'clock in the evening which airlines fly that route
  • Probar la desambiguación en HumanFirst Studio.
  • HumanFirst Studio admite las intenciones jerárquicas, y el objetivo era poner a prueba este elemento con la integración de co:here.
  • Por último, se probaron los enunciados complejos etiquetados con intenciones jerárquicas, y a continuación se probaron los enunciados con todas las etiquetas de intención eliminadas.

Observaciones de la creación de prototipos

He aquí un resumen de las observaciones del prototipo:

  • Continúa la tendencia en la que Co:here tiene una intención de alta confianza para los enunciados de prueba. El NLU de HumanFirst identifica la misma intención pero con un porcentaje de confianza más bajo, seguido de dos o tres alternativas, o falsos positivos.
  • Estos falsos positivos son útiles para crear menús de contexto conversacional y desambiguación.
  • En la evaluación, Co:here tiene mejores puntuaciones de F1, Precisión y Recall que HumanFirst NLU, pero Co:here no tiene en cuenta las intenciones con menos de 10 enunciados.
  • Co:here obtiene un buen rendimiento en los intentos con datos de entrenamiento limitados.
  • El clustering de Co:here parece ser más granular que el de HumanFirst NLU, con las mismas configuraciones de clustering. Esta agrupación refinada conduce a la precisión en la definición de las intenciones.

Consulta de endpoint NLU

En esta comparación específica se utilizaron intenciones no jerárquicas, y de nuevo Co:here tiene una alta confianza en la intención única, mientras que HumanFirst NLU tiene la misma intención, pero con otras alternativas de falsos positivos. De nuevo, los falsos positivos son útiles para el contexto, la desambiguación y las preguntas de seguimiento.

En ambos casos, se encontró la intención atis_flight_no, con una confianza del 99% para Co:here y del 72% para HumanFirst NLU.

El siguiente ejemplo ilustra lo bien que HumanFirst Studio maneja las intenciones jerárquicas para ambos entornos NLU. En el ejemplo de Co:here se identifica la intención primaria de atis_ground_service, con la sub-intentación atis_ground_fare.

HumanFirst NLU también identificó la misma intención jerárquica de atis_ground_fare/atis_ground_fare, y un falso positivo de la intención padre atis_ground_fare.

Desambiguación

HumanFirst Studio dispone de una excepcional herramienta de desambiguación, que permite desambiguar una intención con respecto a otras.

Una vez seleccionada una intención, las expresiones individuales de la intención se muestran con confidencias, y las expresiones pueden moverse entre las intenciones. Esto ayuda a evitar el solapamiento de intenciones y la ambigüedad.

Como se aprecia en la imagen, durante la desambiguación Co:here tiene una mayor confianza y, por tanto, menos falsos positivos.

Conclusión

Esta POC pone de manifiesto que HumanFirst Studio tiene la flexibilidad necesaria para integrarse en diferentes API de NLU, incluidos los Large Language Models. Esto permite a HumanFirst Studio abordar la larga cola de NLU aprovechando los LLM.

Esto también se consigue a través de una interfaz no técnica y sin código, lo que democratiza el acceso al procesamiento avanzado del lenguaje.

Hay que decir que los LLM dan mejores resultados, pero los modelos más pequeños tienen un lugar y un propósito definidos, con ventajas como las instalaciones en la nube local o privada. Mejor gestión de los costes, aprovechamiento del código abierto, etc.

Por Cobus Greyling

Rasa Hero. NLP / NLU, Chatbots, Voz, UI / UX conversacional, Diseñador CX, Desarrollador, Interfaces de usuario ubicuas.

Un comentario en «Prueba de expresiones complejas con la integración de Co:here y HumanFirst»
  1. Muy interesante el articulo, la mejor parte fue ver el ejemplo claro de lo que se midió, los enunciados que se usaron también como ejemplo y como los dos modelos lidian con las diferentes intenciones!
    Gracias por enseñarnos la diferencia y como funciona 🙂

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *