Logotipo de Zephyrnet

Inside the Tech: soluciones para búsquedas multilingües y semánticas

Fecha:

Inside the Tech es una serie de blogs que acompaña nuestra Podcast de charlas tecnológicas. En el episodio 19 del podcast, Internacional, el director ejecutivo de Roblox, David Baszucki, habló con el director senior de producto, Zhen Fang, sobre la estrategia internacional de Roblox y los desafíos técnicos que estamos resolviendo para garantizar una experiencia localizada para decenas de millones de personas en todo el mundo. En esta edición de Inside the Tech, hablamos con el Gerente de Ingeniería Ravali Kandur para aprender más sobre uno de esos desafíos técnicos, la búsqueda multilingüe y semántica, y cómo el trabajo del equipo de Crecimiento está ayudando a los usuarios de Roblox en todo el mundo a buscar (y encontrar rápidamente) todo lo que quieran en nuestra plataforma.

¿Cuál es el mayor desafío técnico que está asumiendo su equipo?

Hasta hace aproximadamente un año, la búsqueda de Roblox utilizaba un sistema léxico para hacer coincidir los resultados con las búsquedas de los usuarios, lo que significa que se centraba únicamente en la coincidencia de texto. Pero los comportamientos de búsqueda están cambiando rápidamente y ese enfoque ya no es suficiente para ofrecer a los usuarios contenido relevante. Al mismo tiempo, algunos usuarios de Roblox pueden utilizar una ortografía incorrecta en sus consultas. Por lo tanto, debemos poder sugerir resultados que coincidan con lo que buscan, lo que significa comprender su intención.

Otro problema importante en la búsqueda es la falta de datos de capacitación en todos los idiomas. Antes de la búsqueda semántica, nuestro primer paso fue aprovechar las traducciones automáticas dentro del sistema Roblox. Indexamos las traducciones y luego hicimos una coincidencia de texto. Pero eso no es suficiente para mostrar siempre a los usuarios contenido relevante. Por lo tanto, hemos adoptado una técnica de aprendizaje automático más avanzada llamada modelo estudiante-maestro: el maestro aprende de nuestra mayor fuente de contexto para cualquier escenario específico. 

El inglés es el idioma más utilizado en Roblox, por lo que aprendemos tantas relaciones semánticas como podemos en inglés (el modelo de maestro) y luego lo resumimos en el modelo de estudiante extendiéndolo a otros idiomas. Esto nos ayuda a resolver ese problema aunque no tengamos muchos datos en ciertos idiomas. Esto ha llevado a un aumento del 15% en las reproducciones provenientes de búsquedas en Japón. 

Recientemente hemos estado trabajando para respaldar mejor nuestras consultas de catálogo como "đua xe (carreras)". Pero los usuarios envían con mayor frecuencia consultas largas y de formato libre, como: “Oye, recuerdo haber jugado un juego en el que había un dragón y una niña peleando con él. ¿Puedes ayudarme a encontrar eso? Esto presenta más desafíos técnicos y continuamos mejorando nuestros sistemas en este sentido.

¿Cuáles son algunos de los enfoques innovadores para incorporar más contexto y más búsqueda semántica?

Hemos creado un sistema de búsqueda híbrido que toma la búsqueda léxica y la combina con técnicas y modelos de aprendizaje automático que utilizan la búsqueda semántica y la comprensión de la intención de una consulta. Estamos evolucionando continuamente nuestros sistemas para desarrollar la comprensión del contexto, manejar consultas complejas y devolver contenido relevante.

La magia de la búsqueda semántica está en las incrustaciones, que son representaciones ricas de una variedad de señales que recibimos de todo Roblox. Por ejemplo, estamos incorporando señales como datos demográficos del usuario, la consulta de un usuario, cuánto dura o cuáles son sus aspectos únicos. 

También estamos analizando señales de contenido, como experiencias, elementos de avatar y participación: ¿con qué frecuencia se jugó este juego o cuántos usuarios tenía y de cuántos países? También hay cosas como monetización y retención, así como metadatos como el título, la descripción o el creador de una experiencia. Pasamos todo esto por una arquitectura basada en transformadores y basada en BERT y utilizamos un Perceptrón multicapa al final para generar incrustaciones, que se convierten en nuestra fuente de verdad. 

Otra innovación es nuestro sistema interno de búsqueda de similitudes. Cuando alguien realiza una consulta de búsqueda, recuperamos las incrustaciones estrechamente relacionadas y las clasificamos para asegurarnos de que sean relevantes para lo que el usuario está buscando. Y luego devolvemos los resultados a los usuarios.

¿Cuáles son algunas de las cosas clave que ha aprendido al realizar este trabajo técnico?

Cada idioma presenta su propio desafío único. Y especialmente con la búsqueda, necesitamos comprender qué buscan los usuarios en diferentes partes del mundo para poder mostrarles los resultados más relevantes. Tenemos que entender diferentes elementos del lenguaje. Por ejemplo, los transformadores previamente capacitados han sido esenciales para comprender los múltiples dialectos del japonés.

En segundo lugar, los patrones de consultas de búsqueda han cambiado bastante y tenemos que evolucionar continuamente nuestra tecnología para mantenernos al día. Al mismo tiempo, debemos informar a nuestros usuarios sobre lo que es posible en nuestra plataforma, ya que es posible que no se den cuenta. Por ejemplo, podríamos decirles a nuestros usuarios que la búsqueda puede admitir cosas como consultas de estilo libre (como juegos de carreras o juegos de comida populares) y que comprende lo que la gente busca y puede arrojar resultados adecuados. 

¿Con qué valor de Roblox se alinea más tu equipo?

Tener una visión a largo plazo es fundamental para nuestro equipo y es una de las razones por las que me encanta trabajar en Roblox.

Un ejemplo de mi equipo es nuestra pila tecnológica, que consta de nuestros sistemas de búsqueda basados ​​en ML y NLP: búsqueda semántica, autocompletado y corrección ortográfica utilizando modelos grandes previamente entrenados.

Hemos creado esto teniendo en cuenta la reutilización en diferentes tipos de búsquedas realizadas por nuestras decenas de millones de usuarios activos diarios. Eso significa que podemos introducir un tipo diferente de datos (por ejemplo, elementos de avatar en lugar de experiencias) y debería funcionar con cambios mínimos. 

Hemos incorporado la búsqueda semántica de experiencias y la hemos compartido con otras verticales como Marketplace, y han podido aprovechar la arquitectura existente. No es un sistema plug-and-play perfecto, pero con algunos ajustes podemos adaptarlo a diferentes casos de uso.

¿Qué es lo que más te emociona acerca de hacia dónde se dirigen Roblox y tu equipo?

La búsqueda es la única superficie donde los usuarios expresan su intención explícita. Y eso significa que es esencial que entendamos lo que quieren y les brindemos los resultados más relevantes. Por eso, para mí es realmente emocionante trabajar para comprender esa intención y educar a nuestros usuarios sobre lo que es posible, a veces incluso antes de que el usuario se dé cuenta. 

Un usuario de cualquier país puede preguntar algo y nosotros podemos darle exactamente lo que quiere y lo que sea más relevante para él. Esto genera confianza que, a su vez, mejora la retención. Para mí es emocionante asumir el desafío de mejorar la búsqueda para generar esa confianza y ayudar a Roblox a lograr nuestro objetivo de tener mil millones de usuarios.

punto_img

Información más reciente

punto_img