Muchas matemáticas y nada de magia: cómo funcionan realmente los asistentes de voz

Asistente Zuckerberg y el sistema operativo "Samantha": dos tipos de sistemas de voz

Trabajo en un laboratorio

Imparto dos bloques de asignaturas en la universidad: uno de ellos está relacionado con el aprendizaje automático aplicado y la inteligencia artificial.La segunda es con la búsqueda y sus variedades.Esta es la área de la que trataré de hablar hoy.

Hay dos formas de ver lo que esasistente de voz Imagina que tienes un mayordomo virtual. Por ejemplo, hace unos cinco años, Mark Zuckerberg hizo un asistente inteligente en su casa, lo llamó "Jarvis". Sabía cómo dejar entrar a la gente a la casa, abrir y cerrar puertas, cortinas, encender la luz. Otros ejemplos de tales dispositivos son "Alexa" y "Alice", viven en el dispositivo y pueden mejorar la vida. Pueden controlar el horno, la lavadora, la aspiradora, etc.

Otra forma de ver a los asistentes es comointerfaz. En la película "Ella" había un sistema operativo llamado "Samantha", en la actuación de voz rusa tenía la misma voz que "Alice" de Yandex. Actuó como una interfaz para la administración del sistema operativo y no fue diseñada como asistente. Apple tiene este enfoque: Siri, Microsoft: Сortana, Google: Asistente de Google.

¿Cómo trabajan?

Todos los asistentes están construidos sobre una base muy similar.principio. Lo primero que tiene que hacer es escuchar la voz. Esto sucede en el dispositivo del usuario: un teléfono móvil o un altavoz inteligente. El usuario dice: "Alice", "Alexa", "OK Google". Después de estas palabras mágicas, el dispositivo está listo para grabar la voz del usuario. Esto sucede hasta cierto punto, hasta que el cliente está en silencio o el dispositivo se cansa de esperar hasta que esté en silencio. Posteriormente, los datos se envían al servidor de la empresa que presta los servicios.

Aquí es donde comienza la magia.La primera operación es la conversión de voz a texto. Todo el mundo dice diferente, ¿cómo convierto esto en texto? Entonces comienza para qué usamos los asistentes de voz: la prestación de un servicio. Esta es cualquier operación que esté disponible en línea: comprar boletos, reservar una mesa en un restaurante. La única pregunta es cómo proporcionar una interfaz fácil de usar. Si no está allí, el dispositivo se convierte en un hablador.

Después de llamar al servicio, el usuario debedevuelva los resultados, para esto necesita empacarlos adecuadamente. Lo más probable es que sea un texto, un tema de una página en Internet, una canción, datos que ha calculado la calculadora. Los datos se vuelven a convertir en voz y se transmiten al cliente.

Dictado a texto

Nuestra comunicación tiene lugar a través del habla, la voz esmovimiento de aire alrededor. Estas vibraciones caen sobre el tímpano, empuja tres huesos: el estribo, el yunque y el martillo. Éstos, a su vez, mecen un órgano llamado caracol. Obtuvimos el caracol de los peces, está lleno de agua y las células ciliadas viven en él, oscilan junto con el agua en el caracol. Las células ciliadas superiores amplifican las fluctuaciones en el fluido y las transmiten a la parte inferior de las células ciliadas, que forman un impulso eléctrico. Este impulso se transmite al cerebro.

Además, en diferentes lugares de la cóclea, las células ciliadas son responsables de diferentes frecuencias. Las frecuencias altas se procesan en la parte ancha, las frecuencias medias estarán en el medio y las frecuencias bajas más cerca del centro.

¿Cómo podemos hacer que la máquina perciba un sonido como este?de la misma manera, no en forma de una señal en bruto, sino en forma de un conjunto de frecuencias? La respuesta a esta pregunta la dio el matemático francés Jean Baptiste Fourier, vivió en la frontera de los siglos XVIII-XIX. El científico propuso tal transformación matemática, con la ayuda de la cual todo es igual que en el oído: se toma una señal sin procesar y se descompone en componentes de frecuencia.

¿Qué hacer con los componentes de frecuencia?Podemos asignar una representación espectral a un fonema, es decir, podemos convertir el habla en fonemas. Se convierten más o menos fácilmente algorítmicamente en letras. Es decir, podemos obtener una palabra de una representación fonética.

Pero todo esto es inexacto.Hay fonemas que difieren ligeramente, las transiciones de un sonido a otro pueden sonar diferentes. Se llaman senones, hay alrededor de 10 mil, pero cuando hay tantos, la tarea de definir las palabras se vuelve mucho más difícil.

Luchando contra insectos

¿Cómo tratan los investigadores los errores?La respuesta a esta pregunta la dio el matemático ruso Andrei Markov, que vivió entre los siglos XIX y XX. Desarrolló una teoría que describe procesos en los que uno se sigue del otro. Y gracias a su teoría se desarrollaron modelos ocultos de Markov. Esta es una de las primeras formas de corregir errores de este tipo.

Por ejemplo, cuando una persona habla indistintamente,acento o pronuncia mal la palabra: existe un mecanismo matemático que le permite restaurar y determinar con gran precisión lo que la persona quiso decir. Después de todo, las personas también cometen errores, pero se entienden entre sí, lo que significa que tenemos un mecanismo para corregir errores en nuestra cabeza.

Pero la representación de texto no es suficiente:La computadora trabaja con números. ¿Cómo conseguirlos? Noam Chomsky tiene la hipótesis de que tenemos una estructura en el cerebro, además, disponible al nivel del nacimiento, que nos ayuda a aprender rápidamente los lenguajes naturales. Chomsky a lo largo de su vida construye, refina y trabaja en un modelo que determina qué patrones comunes hay en un idioma, sin importar qué: ruso, inglés o chino.

En la diapositiva: la gramática de Chomsky.Esto es casi lo mismo que hacen en las lecciones de idioma ruso cuando analizan una oración por composición. Hay sustantivos, adjetivos, sujetos, predicados, grupos de verbos: todo esto está formalizado y se puede mostrar a la máquina. Esta estructura se representa fácilmente en forma de números.

La máquina puede entender cuál es el sujeto enpropuesta y qué acción tomar. Por ejemplo, si el cliente dice: "Alice, enciende algo de música", entonces "enciende" será la acción, "música" será el objeto en el que se lleva a cabo la acción. "Alice" entenderá al cliente y comenzará a tomar medidas.

Pero las palabras mismas son una colección de letras, comoentender su significado? Hay palabras similares: "jugar" y "jugar", ¿el dispositivo entenderá que esto es lo mismo? La respuesta a esta pregunta la dio el lingüista estadounidense Leonardo Bloomfield. A principios del siglo XX, propuso una teoría donde el significado de una palabra está determinado por el contexto en el que se encuentra dicha palabra. Mire la diapositiva y piense qué palabra se puede sustituir por tres puntos.

Mi respuesta sería un elefante, pero cuando preguntéestudiantes, dicen que podría haber un rinoceronte o incluso una jirafa. Pero en general, entendemos que se trata de un animal grande que vive en África y que puede enfadarse. Si combinamos todo esto, obtenemos una descripción semántica de este objeto sin usar la palabra en sí.

Pero si lo digitalizamos, obtenemos decenas de miles de cifras.Y gracias al matemático estadounidense Gene Golub, logró descubrir cómo reducir significativamente el número de dígitos.En lugar de usar números, usaron una colección de dígitos llamada vector.Y este vector se puede utilizar para entender la proximidad o la distancia en el significado, la coherencia semántica.De esta manera, puedes entender que "jugar" es casi lo mismo que "jugar".

Ahora hay herramientas en las que puedes introducir palabras, y quedará claro cómo se distribuyen en el mapa de significados.Por ejemplo, las palabras "jirafa", "elefante" y "rinoceronte" se agrupan en el espacio de significados.Estos métodos han evolucionado y ahora parecen mucho más avanzados.

Hemos presentado palabras en forma de estructura, oraciones en forma de estructura, hemos presentado palabras en forma de significados, todo esto es en forma de números, ¿qué sigue?

Servicios

Cada servicio tiene cientos de miles, millones,miles de millones de objetos. Si hablamos de búsquedas en Internet, son cientos de miles de millones de páginas, decenas de miles de millones de imágenes. Si la transmisión de música, millones de canciones.

Uno de los primeros enfoques para la indexación de datos:construcción de árboles de búsqueda binarios. Lo mismo se usa en los diccionarios: lo abres por la mitad, y si te saltaste la palabra correcta, retrocedes, si no la entendiste, adelante. Pero en 1962, los matemáticos soviéticos Georgy Adelson-Velsky y Evgeniy Landis idearon una estructura de datos que se mantiene en un estado de búsqueda rápida.

Este sistema solo funciona con datos lineales:números o palabras. ¿Y qué pasará con los datos multidimensionales si queremos buscar algo en un mapa o en un espacio tridimensional? Para hacer esto, idearon estructuras como kd-trees, que hacen frente perfectamente a las tareas de búsqueda en el espacio tridimensional. Pero dejaron de funcionar para tareas modernas, donde el texto se describe con cientos de números.

Pero gracias al trabajo teórico de finales del siglo XXEric Berninson propuso el desarrollo de árboles de búsqueda, llamados Anna, que pueden utilizarse para garantizar una buena calidad de búsqueda en grandes colecciones. Esto funciona para toda la vasta base de Spotify: un resultado maravilloso que se obtuvo hace solo cinco años.

También hay otros enfoques:por ejemplo, el sociólogo Stanley Milgram realizó experimentos extraños ya veces inhumanos. Dio a luz a la teoría de los seis apretones de manos, que todas las personas en la Tierra se conocen entre sí a través de no más de seis apretones de manos. Para ello, pidió a la gente que enviara una carta a un extraño. Luego tenían que elegir entre sus conocidos a aquellos que pudieran estar familiarizados con esta persona. Y resultó que les tomó seis letras para hacer esto. El experimento fue criticado, pero se repitió en la década de 2000 y confirmó los resultados.

Esta es una propiedad asombrosa, que en matemáticasadquirió el nombre de Conde "Pequeño Mundo". Los científicos rusos, el grupo de Yuri Malkov, propusieron un algoritmo interesante. Lo usaban para encontrar cualquier cosa en cualquier lugar. Los nodos de este gráfico ya no son personas, sino documentos.

En este gráfico - la distancia más corta entre cualquierun par de objetos. Los usuarios pueden encontrar lo que necesitamos muy rápidamente. Esta estructura de datos ahora se usa en muchas empresas en Rusia y en el extranjero: Facebook, Mail.ru, Yandex. Un excelente modelo matemático que ha cambiado no solo los servicios de búsqueda y recomendación, sino también los asistentes de voz.

Lee mas

Vea la primera nave orbital del futuro de una etapa del mundo

Durante tres años, los científicos creyeron que había agua en el sur de Marte. resultó que no era

Un avión hipersónico propulsado por hidrógeno puede alcanzar velocidades de hasta Mach 12. Son casi 15.000 km/h