С выходом Pixel 2 Google представила функцию Now Playing, которая способна распознавать музыку, играющую в фоне. Now Playing постоянно анализирует окружающие звуки, не требует подключения к Интернету, вся база треков хранится на самом устройстве, основной особенностью новой функции стало использование нейросетей для идентификации треков. В блоге Google AI компания сообщила о том, что внедрила подобную нейросеть в распознавание Sound Search, расположенное на стороне сервера и доступное каждому.
Теперь, спросив у ассистента “Окей Google, какая это песня?”, можно получить такой же быстрый и точный ответ, как и в случае с Now Playing:
Для распознавания в Now Playing компания использует отпечаток записи окружающего пространства, после чего подобный отпечаток сравнивается с отпечатками в базе данных смартфона. В Now Playing хранится тысячи песен, база данных постоянно обновляется, добавляются новые треки, а непопулярные удаляются. Это создает некоторые ограничения.
В случае с Sound Search база данных в 1000 раз больше, что позволяет более точно идентифицировать трек и попросту с большей долей вероятности выводить хоть какой-либо результат.
Под отпечатком понимается нечто подобное:
У нас имеется запись длиной в 9 секунд, полученная с помощью сверточных нейронных сетей, которая разбивается на 2-секундные куски с интервалом в 1 секунду. Тем временем в базе данных хранятся точно такие же отпечатки. Now Playing с помощью двухфазного алгоритма сравнивает отпечаток с базой данных. На первой фазе с помощью гибрид пространственного разбиения и векторного разбиения анализируется вся база на поиск более менее похожих треков. На втором этапе среди кандидатов происходит более глубокий анализ каждого двухсекундного куска.
Из-за слишком большой базы в Sound Search разработчики доработали технологию, в 4 раза увеличив размер нейросети, отрезки сократили до 1 секунды с интервалом в 0,5 секунды. К слову, нечто подобное в распознавании голоса использует компания Yandex.
Мнением делитесь в Telegram-чате или ниже в комментариях.