El futuro está aquí: cómo funcionan los robots de voz y qué pueden hacer

imagen

La robotización de las operaciones de rutina, cuando los robots se utilizan para resolver tareas simples y al mismo tiempo intensivas en mano de obra, en lugar de las personas, es una tendencia muy activa. Se están automatizando muchas cosas, incluidas las conversaciones telefónicas con los clientes. La empresa Neuro.net se dedica a la creación de tecnologías que brindan la oportunidad de mejorar las capacidades de los robots.

En este artículo, los desarrolladores hablan sobre las tecnologías y los matices de reconocer el género del interlocutor por voz y trabajar en elementos importantes del diálogo.

Primero un caso, y luego un desglose de la tecnología.


imagen

Uno de los casos más interesantes es el reemplazo de los empleados del centro de llamadas de una empresa asociada con un robot de voz. Las capacidades de este último no se utilizaron para situaciones regulares, como aclarar la dirección de entrega, sino para descubrir por qué algunos clientes tienen menos probabilidades de visitar el sitio web de la empresa.

La tecnología se basó en el uso de una red neuronal completa, en lugar de guiones individuales. Fue la red neuronal la que nos permitió resolver los problemas que generalmente confunden a los robots. En primer lugar, estamos hablando de las respuestas del interlocutor como "bueno, aún no lo sé, tal vez sí, aunque no" o incluso "sí no". Las palabras comunes a los humanos se convierten en un obstáculo insuperable para un robot.

imagen

Durante el entrenamiento, el robot comenzó a comprender cuál es el significado de una frase en particular y cuál debería ser la respuesta. El robot tuvo varios votos, tanto hombres como mujeres. La tarea principal era "humanizar" el robot para que el interlocutor humano no probara las capacidades de la máquina, sino que mantuviera un diálogo de acuerdo con el escenario objetivo.

A continuación se muestra un ejemplo de lo que sucedió.


El robot escucha al interlocutor, dando una respuesta dependiendo del significado de lo que dijo el cliente. El número total de ramas de script que se pueden usar para la conversación es más de mil.
El objetivo principal de este robot era comprender el motivo de la disminución de la actividad del cliente de la compañía en el sitio y hacer una oferta interesante para todos. Este fue uno de los primeros intentos de la compañía para automatizar el trabajo de los centros de llamadas.

Los nuevos robots son más perfectos. Aquí hay algunos ejemplos más de cómo los robots se comunican con los humanos: primero , segundo , tercer ejemplo.

Ahora sobre tecnología


Hay tres características tecnológicas clave que permiten que el robot funcione:

  • reconocimiento del sexo del interlocutor por voz,
  • reconocimiento de edad
  • construyendo un diálogo con un interlocutor humano.

imagen

Reconociendo el sexo del interlocutor por voz


¿Por qué se necesita esto? Inicialmente, esta función se creó para realizar encuestas utilizando robots. Anteriormente, el trabajo de la encuesta fue realizado por personas que completaron una serie de puntos. Por ejemplo, el piso del interlocutor. Está claro que una persona no necesita preguntar con quién habla, hombre o mujer, para determinar este parámetro. En el 99%, todo está claro. Los robots son otro asunto, para que aprendan con mayor o menor precisión a reconocer las voces, tuve que realizar trabajos a gran escala. Y no fue en vano, ahora la tecnología se utiliza para personalizar ofertas y mensajes de voz según el género.

Un punto importante: la voz femenina es universal y aplicable al trabajo con la más amplia gama de productos, y es especialmente importante para los productos para mujeres. Según diversos estudios,una audiencia femenina es percibida positivamente por cualquier audiencia, respectivamente, en este caso, la conversión es mayor. Una excepción: cuando se promocionan productos "masculinos", es preferible una voz masculina.

¿Cómo funciona? Primero, se realiza el procesamiento primario de datos, se basa en el procesamiento de grabaciones de voz y fragmentos que duran 20 ms. Todos los fragmentos de voz recopilados se procesan previamente en el componente VAD (Detección de actividad de voz). Esto es necesario para separar los "granos de la paja", es decir, el habla del ruido. Se elimina toda la basura, lo que aumenta la precisión de los modelos.

Para el reconocimiento, se utiliza el llamado espacio de coeficientes cepstrales, la primera y la segunda diferencia. La base es el método GMM: modelos de mezcla de Gauss.

Entonces, en el intervalo de 10-20 ms, se calcula el espectro de potencia actual, después de lo cual se aplica la transformada inversa de Fourier del logaritmo del espectro, con la búsqueda de los coeficientes necesarios.

Nuestros modelos GMM están configurados por separado para enseñar mods de voz masculina y femenina, y los modelos también se utilizan para determinar las voces de adultos y niños. Por supuesto, no puede entrenar el sistema desde cero, necesita grabaciones de voz marcadas.

Para aumentar la eficiencia del sistema, se aplican los coeficientes de los modelos de voz de timbre:

  • Nitidez tímbrica.
  • Calidez tímbrica.
  • Brillo tímbrico.
  • Profundidad tímbrica.
  • Dureza tímbrica.
  • Crecimiento tímbrico.
  • Desigualdad timbre.
  • Reverberación de timbre.

Se necesitan modelos de timbre para identificar correctamente las voces de los niños; cualquier otro modelo acepta la voz del niño como mujer. Además, debe distinguir entre voces femeninas ásperas (por ejemplo, una mujer mayor que fuma), voces masculinas altas, etc. Por cierto, si una persona dice "hola" y luego tosió, todos los modelos anteriores que no usaban filtros de timbre definirían la voz como masculina.



La parte principal del sistema es el módulo de clasificación de datos basado en el perceptrón multicapa, MLP. Transmite datos de modelos de voces masculinas y femeninas, datos de modelos tímbricos. En la entrada al sistema, obtenemos una serie de valores clasificados, y en la salida, el resultado de la determinación del sexo.

La tecnología aquí descrita se utiliza para trabajar tanto en línea (según la primera frase del cliente) como en el modo de clasificación fuera de línea (después de una conversación). La precisión del reconocimiento de género es de alrededor del 95%. Un punto importante es que el retraso al trabajar en línea no supera los 120-150 ms, lo cual es extremadamente importante para la humanización del robot. Por lo general, las pausas en la comunicación entre un robot y una persona no son milisegundos, sino segundos, lo que, por supuesto, parece extraño para un interlocutor humano, y está claro de inmediato que el sistema digital se comunica.

Los planes incluyen agregar trabajo con texto, más precisamente - terminaciones. Si el interlocutor dice "Podría", definitivamente, es una mujer. En un futuro cercano, esta tecnología se finalizará e implementará en el sistema de reconocimiento.

Determinar la edad del interlocutor.


¿Por qué se necesita esto? En primer lugar, para no ofrecer diversos productos y servicios a menores. Además, identificar la edad es útil para personalizar las ofertas por categorías de edad.

¿Cómo funciona? Se utilizan exactamente las mismas tecnologías que en el caso anterior. La precisión del sistema es de aproximadamente el 90%.

imagen

Construyendo Diálogos


Y ahora procedemos a lo más interesante: el principio de construir diálogos.

¿Por qué se necesita esto? Para reemplazar de manera competente a una persona, un robot debe poder trabajar tanto en escenarios lineales como no lineales de diálogo. En el primer caso, puede ser un cuestionario, en el segundo, trabajar con suscriptores del centro de llamadas, líneas de soporte técnico de la empresa, etc.

¿Como funciona? Utilizamos el motor NLU, cuya base es el análisis semántico del texto recibido de los sistemas ASR. Además, los objetos de reconocimiento como entidades (intentos) e intentos (intenciones), que se utilizan en la lógica de la construcción del flujo conversacional, se distinguen de él.

Aquí hay un ejemplo de cómo funciona la tecnología.

Texto recibido de un sistema de reconocimiento de voz (ASR):
"En general, estoy interesado en su propuesta, pero me gustaría que fuera más barata. Y ahora estoy un poco ocupado, podrías llamarme mañana a las seis en punto ".

Objetos rellenados con el motor NLU:

Intentos:
confirmación =
objeción verdadera =
pregunta costosa =
devolución de llamada nula = tiempo
incorrecto verdadero =

entidades verdaderas :
fecha = 01/02/2019 (supongamos que la fecha de la llamada es 01/01/2019)
hora =
18:00 cantidad = 6

Principio de llenado Los objetos en este ejemplo son:

Intenciones (intenciones):

  • El texto "Estoy interesado en su propuesta" se ha traducido en intención "confirmación" con un valor de "verdadero".
  • El texto "me gustaría más barato" se tradujo en "objeción" intencional con el valor "caro".
  • El texto "Estoy un poco ocupado en este momento" se ha traducido a la intención "mal_hora" con un valor de "verdadero".
  • « » intent «call_back» «true».
  • , intent «question» null

Entities ():

  • «» entity «date» «02.01.2019», current_date + 1 (, 01.01.2019).
  • « » entity «time» «18:00»,
  • «» entity «amount» «6», , entities .

Para toda la lista de intenciones y entidades, se asignan ciertos valores, que luego se utilizan para generar un flujo de conversación.

Ahora hablemos sobre los algoritmos de trabajo que son compatibles con el sistema NLU Engine. Incluye dos niveles.

El primer nivel: funciona en una muestra de datos relativamente pequeña de aproximadamente 600-1000 registros. Los algoritmos de ML se usan aquí. Precisión de reconocimiento: 90-95%.

El segundo nivel: la transición se lleva a cabo después del lanzamiento del proyecto y la acumulación de una gran muestra de datos, que incluye más de 1 millón de registros. Los algoritmos DL ya se usan aquí. Exactitud de reconocimiento: 95-98%.

La solución funciona con dos subsistemas:

  • subsistema de categorización y clasificación de datos de texto,
  • subsistema de formación de diálogo.

Ambos subsistemas funcionan en paralelo. En la entrada al sistema de categorización y clasificación, se transmite el texto del suscriptor reconocido a partir de la frase de voz; en la salida, la decisión proporciona los parámetros completos Entidad y Valor para formar la respuesta.

El subsistema de formación de diálogo para construir escenarios no lineales se construye en una red neuronal. En la entrada al sistema, se transmite el texto del suscriptor reconocido a partir de la frase de voz, a la salida, se toma la decisión sobre lo que se debe perder en el momento siguiente.

Un escenario no lineal es adecuado para la primera línea de soporte: el robot no sabe quién llama, sobre qué producto en particular y con qué preguntas. Aquí, la construcción adicional del diálogo depende de la respuesta del cliente.

Pero para las llamadas salientes, la mejor solución sería un escenario lineal. Su ejemplo se estableció al comienzo del artículo. Otra variante del escenario lineal es realizar una encuesta cuando no importa qué responda el cliente, esto será analizado por especialistas. Pero es importante guiar al cliente a través de todas las preguntas que están en la lista.

Como resultado, quiero enfatizar que los robots de voz no reemplazarán a las personas. Ahora están haciendo un excelente trabajo con el trabajo de rutina: llamar a las personas para hacerles algunas preguntas y escuchar / grabar / analizar las respuestas. Por lo tanto, los operadores de call center y soporte técnico se ven aliviados de la necesidad de llevar a cabo los mismos procedimientos de rutina. En cambio, pueden centrarse en preguntas y desafíos realmente interesantes.

All Articles