Нейросеть реалистично заполнила прерывания в аудизвонке

Во время аудиозвонка часто возникают короткие прерывания, из-за которых речь собеседника кажется прерывистой и неестественной. Google разработала нейросетевой алгоритм, который анализирует последние фрагменты речи и заполняет паузу реалистично синтезированным голосом собеседника. Компания несколько месяцев тестировала эту функцию на смартфонах Pixel 4, а теперь сделает доступной на других моделях, сообщается в блоге Google AI.

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

Эта проблема известна давно, поэтому почти во всех программах применяется тот или иной алгоритм маскировки потери пакетов (PLC). Обычно алгоритм PLC повторяет последний записанный фрагмент или новый звук с базовыми характеристиками фрагмента, и для коротких пауз масштаба 10-20 миллисекунд этот может давать приемлемое качество. Но если потерялось больше пакетов и пауза увеличилась до нескольких десятков миллисекунд, работа алгоритма становится явно заметна.

Разработчики под руководством Ольги Шароновой (Olga Sharonova) из Google и Тома Уолтерса (Tom Walters) из DeepMind создали алгоритм, который способен создавать реалистичную замену утерянным пакетам, даже если пауза длится несколько десятков миллисекунд. Алгоритм основан на нейросети для синтеза звука WaveRNN, созданной разработчиками из этих компаний в 2018 году.

Новый алгоритм WaveNetEQ состоит из двух основных частей: автокодировщика и условной сети. Условная сеть отвечает за сохранения просодии голоса и анализирует спектрограмму последних нескольких сотен миллисекунд перед паузой. Автокодировщик отвечает непосредственно за синтез звука и получает небольшой последний фрагмент в несколько десятков миллисекунд, а также данные от условной сети.

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

Google сумела адаптировать алгоритм для работы в реальном времени на смартфонах и с декабря тестировала его в Duo на смартфонах Google Pixel 4, а теперь начала распространять его на других устройствах. Авторы опубликовали фрагменты речи, обработанные существующим алгоритмом NetEQ и новым WaveNetEQ:

NetEQ

WaveNetEQ

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

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

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

Что такое опенсорс и почему он важен для IT-индустрии