Una de las novedades que Google introdujo en sus nuevos Google Pixel (y que luego ha llevado a los modelos anteriores) es la grabadora de voz. Puede parecer una app normal y corriente, pero lo cierto es que cuenta con un modelo de machine learning que se ejecuta en el propio dispositivo capaz de transcribir todo lo que "escucha" a texto en tiempo real y obtener las palabras clave, aunque por ahora solo en inglés.
No es la única aplicación que lo hace, ya que existen alternativas como Otter.ai, que hacen lo mismo con la diferencia de que todo el proceso se ejecuta en la nube. La grabadora de los Google Pixel, además, no solo es capaz de transcribir audio, sino que detecta información contextual como aplausos, música o risas durante la grabación, marcándolas en la propia grabación. Todo esto se hace sin necesidad de conexión a Internet, y ahora Google ha explicado como funciona.
Cuando la IA escucha y escribe offline
El modelo de machine learning de la grabadora se basa en el sistema de reconocimiento de voz que Google implementó en Gboard a principios de este año. Dicho modelo fue entrenado usando la tecnología RNN transducer, lo que sirve para llevar toda la inteligencia artificial al dispositivo y poder ejecutarla en local. Este funciona a nivel de carácter, por lo que es capaz de detectar cada letra que se dice, tal y como hacen los teclados cuando pulsamos sobre cada letra.
Este modelo indexa las conversaciones por palabras, lo que permite al usuario pulsar en cualquiera de las palabras de la transcripción y escuchar al mismo tiempo la parte de la grabación de audio en la que dicha palabra se dice. Otter.ai hace exactamente lo mismo, todo sea dicho, aunque el gran avance del modelo de Google es que se puede hacer sin tener una conexión de datos activa.
Por otro lado, cuando usamos la grabadora para grabar una conferencia, las barras de sonido se iluminan de diferente color cuando se detecta voz (azul) o contenido accesorio, como aplausos (en naranja). Esto es posible gracias a que la grabadora detecta el audio dominante cada 50 ms. Su precisión se basa en que la grabadora tiene capacidad de ventana deslizante para procesar audios parcialmente superpuestos (voz y aplausos) de 960 ms a intervalos de 50 ms. Cada fragmento de 960 segundos se analiza individualmente para determinar los audios predominantes.
El modelo combina redes neuronales convolucionales con una base de datos de audios de eventos para clasificar cada sonido. En dicha base de datos, llamada AudioSet y lanzada en 2017, hay más de dos millones de extractos de diez segundos obtenidos de YouTube etiquetados en 527 categorías, con al menos 100 ejemplos por cada categoría. En total hay 5.800 horas de audio y las categorías están muy diferenciadas. Por ejemplo, la categoría "Animales" se divide en "mascotas", "animales de granja" y "animales salvajes", lo que mejora la precisión en la detección.
Por último, para sugerir tres palabas clave para el título de la grabación, la grabadora usa las tres palabras más representativas. Esto lo hace nada más termina la grabación gracias a que la transcripción se está analizando en tiempo real. Primero se analizan la frecuencia de los términos, así como su papel gramatical dentro de la oración (su importancia, digamos). Luego el modelo etiqueta cada palabra en función de dicho papel para detectar nombres propios y nombres comunes y puntúa las palabras usando extracción de términos basada en n-gram.
Finamente, se usa el árbol de decisiones expuesto más arriba para generar la puntuación de cada palabra. Este ha sido entrenado con datos conversaciones y características textuales, como la frecuencia y especificidad de las palabras del documento. De esa forma, el modelo sabes que, si estás en una conferencia sobre cambio climático, "carbono" es una palabra importante. Finalmente, se filtran palabras vacías y palabrotas y se generan las tres etiquetas principales.
Vía | Google
Ver 4 comentarios