Функционирует при финансовой поддержке Федерального агентства по печати и массовым коммуникациям (Роспечать)

Инженеры Apple научили Raspberry Pi распознавать события в доме по звуку

Jason Wu et al. / CHI 2020

Американские программисты разработали алгоритм для умных колонок, позволяющий им учиться распознавать действия в доме владельца по звуку при этом почти не утруждая его. Алгоритм анализирует звуки, запоминая местоположение их источника, и разбивает их на кластеры, а когда в кластере набирается достаточно похожих звуков, он спрашивает у пользователя, что это за действие. Разработка инженеров из Apple и Университета Карнеги — Меллона будет представлена на конференции CHI 2020, а статья о ней опубликована на сайте университета.

Многие крупные IT-компании, такие как Apple, Google или Amazon, развивают большие системы умного дома на базе своих голосовых помощников. В идеальном сценарии человек должен иметь возможность управлять с помощью голосовых команд любыми устройствами в доме, а также получать обратную связь от них.

Во многих классах устройств уже есть модели, поддерживающие прямую интеграцию с умным домом через беспроводную связь, но таких моделей пока меньшинство. Для некоторых типов устройств есть компромиссные решения, например, умные розетки, подающие ток по команде, или инфракрасные пульты для управления телевизором или другим поддерживающим такой канал прибором. Часть вещей в доме в принципе невозможно подключить к системе умного дома, потому что в ней нет электрических компонентов.

Так или иначе, на сегодняшний день нет системы умного дома, способной создать полноценную и всеобъемлющую связь между голосовым помощником и всеми объектами или событиями в доме. Инженеры под руководством Джерада Лапута (Gierad Laput) из Apple и Университета Карнеги — Меллона разработали относительно простой метод, позволяющий умной колонке самостоятельно обучаться распознаванию событий в доме практически без помощи пользователя.


Предложенный ими метод исходит из того, что колонка обычно стоит в одной и той же комнате в одном и том же месте, а окружающие предметы интерьера, которые, кстати, тоже редко меняют свое местоположение, обычно меняются раз в несколько лет и на протяжении этого времени издают похожие звуки. Таким образом, у голосового помощника появляется два достаточно надежных и практически неизменных параметра для распознавания: акустическая характеристика события и его местоположение, которое можно вычислить с помощью массива из нескольких микрофонов.

Инженеры реализовали прототип умной колонке на базе микрокомпьютера Raspberry Pi, массива из четырех микрофонов, подключенной по проводу колонки и подключенного по Wi-Fi мощного компьютера для обработки данных. Устройство постоянно находится в режиме прослушивания, но на полноценную обработку попадают только аудиофрагменты, прошедшие фильтрацию по минимальной громкости и отсечению фоновых шумов. Из отобранного фрагмента звука строится мел-спектрограмма, которая подается на сверточную нейросеть, обученную на датасете YouTube-8M с дополняющими данными из датасета профессиональных звуковых эффектов. Данные забираются с предпоследнего слоя сети, чтобы получить их в более низкоразмерном представлении.

Эти представления попадают в общее пространство данных и обрабатываются алгоритмом иерархической агломеративной кластеризации, благодаря чему постепенно алгоритм формирует кластеры из похожих аудиофрагментов. На этапе кластеризации помимо данных о звуках алгоритм также учитывает и данные о направлении источника звука, причем во время классификации новых аудиозаписей в первую очередь используется именно направление.

После того, как программа накопила достаточно данных в кластере и они достаточно близки между собой, чтобы можно было предположить, что все они относятся к одному уникальному звуку, система просит пользователя присвоить название этому звуку. Это может происходить в разном виде. Например, если используется модель без предварительных данных, голосовой помощник может просто спросить «Что это за звук?». Если в помощнике есть предварительно созданная общая модель распространенных звуков, он может сделать предположение, например, «Это открылась дверца микроволновки?». Кроме того, если данные двух кластеров частично пересекаются, помощник может попросить пользователя уточнить, какой из двух звуков только что возник.

Разработчики протестировали прототип умной колонки в разных помещениях. Лучший результат колонка показала на кухне: точность классификации составила 97 процентов, а полнота 87 процентов.

Недавно Apple зарегистрировала патентную заявку на метод, позволяющий уточнять голосовые команды умной колонке. Он предполагает, что колонка с помощью своей камеры или камеры в другом совместимом устройстве сможет понимать, на что смотрит пользователь, и понимать команды с указательными местоимениями, такими как «Включи эту лампу». А позднее смежная группа исследователей, две трети которой являются авторами новой статьи, представила алгоритм для смартфонов, совмещающий данные с передней и задней камеры, и благодаря этому понимающий, про какой объект говорит пользователь.

Григорий Копиев

Нашли опечатку? Выделите фрагмент и нажмите Ctrl+Enter.