Введение в модель распознавания речи WaveNet
Эта статья представляетWaveNet, глубокая генеративная модель необработанных звуковых сигналов. Мы показываем, что WaveNets способны генерировать речь, которая имитирует любую человеческую речь и звучит более естественно, чем лучшие существующие системы преобразования текста в речь, сокращая разрыв с человеческой производительностью более чем на 50%.
Мы также демонстрируем, что ту же сеть можно использовать для синтеза других звуковых сигналов, таких как музыка, и представляем некоторые убедительные образцы автоматически сгенерированных фортепианных произведений.
говорящая машина
Позволить людям общаться с машинами — давняя мечта взаимодействия человека с компьютером. В последние несколько лет способность компьютеров понимать естественную речь была усилена глубокими нейронными сетями (например,Голосовой поиск Google) приложение претерпело революционные изменения. Однако использование компьютера для генерации речи — этот процесс часто называютсинтез речиили преобразования текста в речь (TTS) — по-прежнему в основном на основе так называемогоПодключить ТТС, где из одного записывается очень большая база коротких речевых клипов. Затем говорящие перегруппировываются, чтобы сформировать законченное высказывание. Это затрудняет изменение речи (например, переключение на другого говорящего или изменение акцента или настроения его речи) без записи совершенно новой базы данных.
Это ведет кПараметр ТТССуществует огромная потребность в модели, в которой вся информация, необходимая для генерации данных, хранится в параметрах модели, а содержанием и характеристиками речи можно управлять с помощью входных данных модели. Однако до сих пор параметризованный TTS звучит хуже конкатенации. Существующие параметрические модели обычно создаются путем передачи их выходных данных черезвокодерАлгоритмы обработки сигналов для генерации звуковых сигналов.
WaveNet меняет эту парадигму, напрямую моделируя необработанную форму аудиосигнала (по одной выборке за раз). Помимо создания более естественного звука, использование необработанных сигналов означает, что WaveNet может имитировать любой тип звука, включая музыку.
WaveNets
Исследователи обычно избегают моделирования необработанного звука, потому что он очень быстрый: обычно 16 000 выборок в секунду или более, со значительной структурой во многих временных масштабах. Построение полностью авторегрессионной модели, в которой на прогноз каждой выборки влияют все предыдущие выборки (в статистике каждое распределение прогноза зависит от всех предыдущих наблюдений), безусловно, является сложной задачей.
Тем не менее, мы опубликовали ранее в этом годуPixelRNN и PixelCNNМодель показывает, что можно генерировать сложные естественные изображения не только по одному пикселю за раз, но и по одному цветовому каналу за раз, что требует тысяч предсказаний на изображение. Это вдохновило нас на адаптацию 2D PixelNets к 1D WaveNet.
Анимация выше показывает структуру WaveNet. Это полностью сверточная нейронная сеть, в которой сверточные слои имеют различные коэффициенты расширения, что позволяет ее рецептивному полю экспоненциально расти с глубиной и охватывать тысячи шагов.
Во время обучения входные последовательности представляют собой реальные формы сигналов, записанные от говорящих людей. После обучения мы можем сэмплировать сеть для создания синтетических высказываний. На каждом этапе выборки значения берутся из распределения вероятностей, вычисляемого сетью. Затем это значение возвращается на вход, и делается новый прогноз для следующего шага. Построение сэмпла шаг за шагом требует больших вычислительных ресурсов, но мы обнаружили, что это очень важно для создания сложного реалистичного звука.
Улучшить ситуацию
Мы обучили WaveNet, используя некоторые наборы данных Google TTS, чтобы мы могли оценить его производительность. На приведенном ниже графике показано качество WaveNets по шкале от 1 до 5 по сравнению с лучшей на данный момент системой TTS Google (параметр и соединять) по сравнению с использованиемСредние оценки мнений (MOS)человеческий голос. MOS является стандартной мерой субъективного тестирования качества звука и была получена в ходе слепого тестирования людей (более 500 оценок из 100 тестовых предложений). Как мы видим, WaveNets сокращает разрыв между текущим состоянием американского английского и мандаринского диалекта и производительностью человека более чем на 50%.
Как для китайского, так и для английского языка текущая система TTS Google считается одной из лучших в мире, поэтому улучшение ее с помощью единой модели является большим достижением.
Чтобы преобразовать текст в речь с помощью WaveNet, мы должны сообщить ему, что это за текст. Мы делаем это, преобразовывая текст в набор лингвистических и фонетических признаков (содержащих информацию о текущей фонеме, слоге, слове и т. д.) и передавая его в WaveNet. Это означает, что прогнозы сети зависят не только от предыдущих аудиосэмплов, но и от текста, который мы хотим, чтобы она произносила.
Если мы обучим сеть без текстовой последовательности, она все равно будет воспроизводить речь, но теперь ей придется компенсировать речь. Как вы можете услышать из приведенного ниже примера, это создает своего рода бормотание, в котором реальные слова перемежаются со словесными звуками:
Обратите внимание, что WaveNet также иногда воспроизводит неречевые сигналы, такие как дыхание и движения рта, что отражает большую гибкость исходной аудиомодели.
Как вы можете слышать из этих образцов, одна и та же WaveNet способна запоминать особенности многих разных голосов (мужских и женских). Чтобы убедиться, что он знает, какую речь использовать для любого данного высказывания, мы адаптируем сеть к личности говорящего. Интересно, что мы обнаружили, что обучение многих говорящих привело к лучшему моделированию одного говорящего, чем обучение одного говорящего, что предполагает модель переноса.
Изменив идентификатор говорящего, мы можем использовать WaveNet, чтобы говорить одно и то же разными голосами:
Точно так же мы можем предоставить модели дополнительные входные данные, такие как эмоции или акцент, чтобы сделать речь более разнообразной и интересной.
создавать музыку
Поскольку WaveNets можно использовать для имитации любого звукового сигнала, мы подумали, что было бы интересно попробовать создать музыку. В отличие от экспериментов TTS, мы не настраивали сеть на входную последовательность, чтобы сказать ей, что играть (например, партитуру); вместо этого мы просто позволяли ей генерировать все, что она хотела. Когда мы тренируемся на наборе данных классической фортепианной музыки, мы получаем такие увлекательные сэмплы:
WaveNets предлагает множество возможностей для TTS, создания музыки и моделирования звука. Тот факт, что использование глубокой нейронной сети для прямого создания временных шагов за временным шагом работает для звука 16 кГц, поистине удивителен, не говоря уже о том, что он превосходит современные системы TTS. Мы рады видеть, что мы можем сделать дальше.
Для получения дополнительной информации, пожалуйста, просмотрите нашбумага.