En los chatbots, ¿cuándo es bueno el aprendizaje automático y cuándo es malo?

Permítame abordar el concepto de aprendizaje, si puede resultar crítico para cualquier respuesta a su pregunta.

  • El alcance

    Necesitamos aclarar lo que vamos a esperar de nuestra máquina:

    ¿El alcance debe incluir habilidades cognitivas, como memoria, cálculo, análisis y resolución de problemas? La respuesta debe ser un claro SÍ.

    ¿También requerimos habilidades motrices (psico), como moverse y mover cosas, tal vez conducir un automóvil? Este no sería un objetivo principal para un chatbot, aunque probablemente apreciaríamos hablar con el robot que conduce nuestro automóvil. Sorprendentemente, la adición de habilidades motoras, aunque se sumaría a la complejidad del sistema, en realidad podría agregar restricciones importantes que son identificables en el espacio físico que pueden utilizarse para aumentar la calidad de la interacción con el chatbot. ¿Como funciona esto? Los entornos físicos proporcionarían información que se puede agregar al conjunto de instrucciones que limitan el espacio de temas relevantes.

    Finalmente, ¿la máquina necesita habilidades afectivas, es decir, necesita saber acerca de cosas que puedan gustarle o aborrecer, necesita saber acerca de la tristeza y la alegría? Obviamente, una máquina que reconoce, navega y negocia con precisión tales asuntos parecería más empática.

  • Sentidos y sensores

    Aunque probablemente tengamos menos de 10 sentidos, se puede inferir de la literatura sobre los sentidos y la percepción de que los humanos pueden procesar información relacionada con varios cientos de sentidos más o menos distintos. Además de ver, oír, sentir cinestésicamente, oler y saborear, también tenemos sentido del equilibrio, sentido de los negocios, sentido de la equidad y mucho más.
    Un chatbot se limitaría a tratar con aquellas partes que se pueden cosechar adecuadamente con cualquier conjunto de sentidos que pueda estar conectado a la máquina. En la mayoría de los casos, esto solo significaría trabajar con información escrita, pero, muy pronto, también con información auditiva (bueno, esto ya es parcialmente una tecnología de trabajo).

  • La naturaleza del aprendizaje.

    Todo potencial para el aprendizaje (cognitivo) comienza con el reconocimiento de algún hecho (a través de los sentidos o en base a la detección previa, o incluso solo en base al pensamiento y a la toma de conciencia).

    Podemos denotar esto por “esto / aquello”.

    En el nivel más básico, y no se necesita aprendizaje para esto, podemos incluir un poco más de complejidad:

    [1] “esto / aquello” es “algo”

    Ahora esto se está volviendo un poco abstracto, así que traduzcamos la sintaxis en un ejemplo:

    [1] “Las naranjas son buenas”

    Hemos agregado el número 1 para indicar que esta es una declaración de primer orden.

    [2] Extraño mucho el sabor de las naranjas porque [1]

    Vemos que nuestra declaración de primer orden fundamenta nuestra declaración de segundo orden = una evaluación sobre la declaración de primer orden con un pie sólido en la realidad percibida.
    Ahora podemos agregar otra evaluación:

    [3] Me acabo de dar cuenta de que echo de menos a los viejos / a mis amigos en casa y al huerto de naranjos (los llamaré / me conseguiré un boleto / esos fueron los días, etc.)

    Este fue solo un ejemplo simple, y la gente hace varias inducciones, deducciones e incluso secuestros todo el tiempo.

    Un chatbot que no reconozca el orden de una declaración en relación con lo que ha sido o podría haber sido o podría haber sido parte del diálogo se sentirá menos que empático.

Dado que la empatía es mi criterio para aprender, todavía estoy buscando máquinas que muestren signos de esto.

Según el artículo de Cleveroad Cómo crear un chatbot para empresas, guía paso a paso con una estimación :

Chatbots de aprendizaje automático

Estos bots se caracterizan por una Inteligencia Artificial, por lo que no necesita ser claro con precisión cuando habla con él. El Bot entiende el lenguaje no solo los comandos. Y se vuelven más inteligentes con el tiempo.

Para una interacción más complicada usando lenguaje natural y procesando un mayor número de solicitudes, use Wit.ai/Api.ai/QnAMaker (plataforma de chatbot abierta para procesar lenguaje natural)

Microsoft QnAMaker.ai es un software Chatbot que se puede aplicar para el tratamiento de datos, que proporciona el usuario y que Chatfuel no puede procesar.

Estos modelos son generativos, lo que significa más complicados. No funcionan con respuestas predefinidas. Crean respuestas desde cero. Los modelos generativos, por regla general, se basan en métodos de traducción automática.

Ambos enfoques tienen beneficios y desventajas. Trabajando con la base de respuestas, Bot no comete errores gramaticales. Sin embargo, pueden obtener una solicitud, la respuesta que no tienen. Los modelos generativos son más inteligentes. Imitan la conversación de personas reales. Sin embargo, es muy probable que cometan errores gramaticales (especialmente en oraciones largas) y requiere una gran cantidad de datos de aprendizaje.

Si desea encontrar una raza de perro, se necesita el procesamiento del código primario para no obtener una larga lista de todas las razas. Este procesamiento determinará la raza del perro en un mensaje e indicará la palabra con una etiqueta especial. En tal caso, puede buscar la etiqueta que aplica la regla. WordNet se puede usar para determinar definiciones básicas. Es posible que tenga que agregar un dominio de bibliotecas especiales, como la lista de medicamentos si crea un servicio de salud Bot.

En chatbot, NLP desempeña un papel fundamental para extraer los atributos correctos para aprovechar ML según sea necesario. Sin embargo, el combo ML + NLP es altamente flexible para obtener mejores resultados.

Bueno cuando el ML podría ser aprovechado predecir

  • mejores respuestas para dirigir la conversación en dirección favorable,
  • siguiente paso en contexto en movimiento,
  • Elegir datos confiables para responder al usuario
  • y así.

Al menos en mi humilde opinión, Malo cuando uso ML en lugar de paquetes de PNL para desambiguar el chat que viene. Técnicamente, es posible, pero una ruta más larga.

Yo respondería de una manera un poco simple, en el estado actual de las cosas, debería ser lo suficientemente bueno para usar las herramientas de PNL (WIT.AI, API.AI) y construir sus chatbots además de eso. En el 90% de los casos, debería ser una experiencia de usuario y un flujo lo suficientemente buenos como para ayudarlo a alcanzar sus objetivos.

El estado de las cosas en ML / AI no está listo para usar ML real o incluso aprendizaje profundo para construir chatbot económicamente sostenible que, por ejemplo, sea bueno para pedir pizza.

En el mundo real simplemente no necesitas eso. Además, las personas no se sienten cómodas para hablar con algo que lo sabe todo.