В этой статье я расскажу об основах генерации речи и последних разработках моделей генерации речи на основе RNN и CNN. Если вы заинтересованы, вы также можете получить доступ к версии видео или версии мандарин (中文).

Синтез речи

Синтез речи (SS) — это метод создания определенной речи в соответствии с заданными входными данными, такими как тексты (преобразование текста в речь, TTS). Ядром SS является управляемость речевых компонентов, а фундаментальный метод называется вокодер [H. Дадли, 1939]. Обычные вокодеры, такие как STRAIGHT [H. Kawahara+, 1999] кодируют речь в специальные акустические характеристики, а затем декодируют речь на основе этих акустических характеристик. Однако многие специальные допущения, налагаемые на моделирование речи этих вокодеров, вызывают заметное ухудшение качества. Недавно было предложено множество нейронных вокодеров для прямого моделирования формы речевого сигнала без множества специальных предположений о генерации речи.

В этой статье я сначала расскажу об основах генерации речи, а затем расскажу о последних разработках генеративных моделей на основе рекуррентных нейронных сетей (RNN) и сверточных нейронных сетей (CNN).

Термины указателя — синтез речи, вокодер, генерация речи на основе RNN, генерация речи на основе CNN.

Речевой сигнал

Как известно, речь представляет собой последовательный сигнал с очень высоким временным разрешением. Частота дискретизации (Fs) речевого сигнала обычно выше 16 кГц, поэтому мы обычно моделируем более 16 000 точек дискретизации за одну секунду. В результате прямое моделирование формы речевого сигнала является сложной задачей.

Модель вокодера и фильтра источника

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

Одним из наиболее общих моделей генерации речи является модель исходного фильтра [R. McAulay+, 1986]. В частности, генерация речи формулируется как свертка сигнала возбуждения и спектрального фильтра. Поскольку в речь входят звонкие и глухие компоненты, моделируются отдельно звонкие и глухие возбуждения. Звонкое возбуждение представляет собой квазипериодический сигнал с четкими гармоническими составляющими, генерируемый движениями голосовых складок. Невокализованное возбуждение представляет собой белый шумоподобный сигнал без движений голосовых связок. Спектральный фильтр — это изменяющийся во времени фильтр для моделирования резонансов голосового тракта. В конце концов, мы обычно используем фильтр верхних частот для моделирования излучения губ.

Одним из самых популярных вокодеров с фильтром источника является вокодер со смешанным возбуждением, такой как STRAIGHT и WORLD [M. Мориз+, 2016]. На этапе анализа (кодирования) вокодер со смешанным возбуждением сначала извлекает основную частоту (F0) входной речи, а затем извлекает апериодичность (ap) и спектральную огибающую (sp). на основе извлеченного F0. На этапе синтеза (декодирования) вокодер сначала генерирует смешанный сигнал возбуждения на основе F0, ap и белого шума. Затем смешанный сигнал возбуждения фильтруется спектральным фильтром для генерации синтетической речи. Однако фазовая информация и некоторые временные детали отбрасываются в процессе анализа-синтеза, что приводит к значительному ухудшению качества речи.

Генерация речи на основе RNN

В последнее время вместо использования обычных вокодеров было предложено множество моделей генерации речи на основе нейронных сетей. Когда речь идет о моделировании последовательного сигнала, такого как речь, самым простым методом является использование рекуррентной нейронной сети (RNN). Однако, поскольку речь имеет очень высокое временное разрешение, модель RNN будет страдать от проблемы исчезновения/взрыва градиента при моделировании таких долгосрочных зависимостей. Кроме того, выборочный механизм генерации модели RNN обычно приводит к очень трудоемкой генерации.

ОбразецRNN

Чтобы устранить эту слабость RNN при моделировании длинной последовательности, SampleRNN [S. Mehri+, 2016]. Зависимость между образцами речи была сформулирована как условная вероятность. Распределение вероятностей каждой выборки обусловлено всеми предыдущими выборками.

SampleRNN использует иерархическую структуру с несколькими уровнями RNN, и каждый уровень работает с разным временным разрешением. Следовательно, сеть может хорошо моделировать долгосрочную зависимость, собирая иерархическую информацию речевых сигналов. Однако многослойные RNN и авторегрессионный (AR) механизм по-прежнему делают генерацию очень медленной.

WaveRNN и LPCNet

Чтобы добиться генерации речи в реальном времени, WaveRNN [N. Kalchbrenner+, 2018] и LPCNet [J.-M. Valin+, 2018]. WaveRNN зависит не только от предыдущих образцов речи, но и от акустических характеристик h.

Поскольку акустические характеристики являются очень надежной априорной информацией, однослойный вентилируемый рекуррентный блок (GRU) со специальным оптимизированным аппаратным обеспечением обеспечивает генерацию в реальном времени. Более того, авторы LPCNet включают модель исходного фильтра в WaveRNN и заставляют сеть сосредоточиться только на генерации остаточного (исходного) сигнала предсказания LPC. Поскольку остаточный сигнал почти не зависит от говорящего, бремя моделирования идентификации говорящего и спектральной информации упрощается. Поэтому для LPCNet достаточно очень компактной сети. В заключение, основная проблема последних моделей генерации речи на основе RNN заключается в том, как разработать очень компактную модель для генерации речи в реальном времени.

Генерация речи на основе CNN

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

Вейвнет

Первой моделью на основе CNN, достигшей современного уровня производительности, является WaveNet [A. Орд+, 2016]. WaveNet использует расширенные сверточные нейронные сети (DCNN) [F. Ю+, 2016] для эффективного расширения рецептивного поля. Сложенные DCNN с различными размерами расширения, которые являются длинами пропусков, эффективно увеличивают длину рецептивного поля и захватывают иерархическую информацию речевого сигнала. Однако для достижения хорошего качества речи по-прежнему требуется 30 слоев DCNN. Огромная сеть и механизм AR WaveNet делают ее генерацию очень медленной. Обычно для генерации односекундной речи требуется более одной минуты.

Потоковая SS

В результате было предложено множество моделей, не основанных на AR CNN, для использования преимущества параллельной генерации механизма без AR для достижения генерации в реальном времени. Например, потоковые модели, такие как обратимая авторегрессионная параллельная потоковая параллельная WaveNet [A. Oord+, 2017] и кларнет [W. Ping+, 2019] и WaveGlow на основе Glow [R. Prenger+, 2019] и Flowavent [S. Kim+, 2019] используют обратимые сети, основанные на акустических характеристиках, для преобразования речи в белый шум на этапе обучения и восстановления речевого сигнала из входного сигнала белого шума на этапе тестирования. Однако обратимое требование обычно приводит к сложному обучению и огромной сети.

SS на основе GAN

Кроме того, не-AR модели на основе GAN, такие как параллельная WaveGAN (PWG) [R. Yamamoto+, 2020] и MelGAN [К. Kumar+, 2019] также были предложены, и они используют GAN для создания очень компактных генерационных моделей с высокой точностью генерации речи. Однако стабильность GAN-обучения является сложной задачей. PWG использует модуль потерь с несколькими кратковременными преобразованиями Фурье (multi-STFT), чтобы поддерживать стабильность обучения GAN. Генератор PWG представляет собой не-AR WaveNet, а его входные данные представляют собой белый шум и акустические характеристики с повышенной дискретизацией, которые имеют временную длину, совпадающую с целевой формой речевого сигнала. Генератор обучается как с потерями GAN, так и с потерями мульти-STFT с различными длинами FFT, длинами кадров и размерами переходов. Потери мульти-STFT заставляют генератор захватывать иерархическую информацию речевых сигналов и делают обучение стабильным. Вместо многократных потерь STFT MelGAN использует несколько дискриминаторов, работающих с разным временным разрешением, чтобы его генератор собирал иерархическую информацию. В заключение, захват иерархической информации речевых сигналов является ключевым моментом для обеспечения стабильности обучения GAN.

Обобщение вокодера

Подводя итог, методы вокодера включают две основные категории: вокодер с фильтром источника и унифицированный вокодер. Вокодер с фильтром источника включает в себя модуль генерации возбуждения и модуль резонансной фильтрации. Входные данные представляют собой акустические характеристики, а выходные данные — форму речевого сигнала. Для обычных вокодеров оба модуля основаны на параметрах, таких как вокодер LPC на основе AR и вокодер MGC или STRAIGHT и WORLD, не основанные на AR. Благодаря мощным возможностям моделирования нейронных сетей (NN) мы можем заменить модуль возбуждения на NN, например LPCNet на основе AR и GlotGAN без AR [B. Bollepalli+, 2017] и GELP [L. Juvela+, 2019], или мы можем заменить модуль фильтрации на NN, такой как фильтр нейронных источников (NSF) [X. Ван+, 2019].

С другой стороны, унифицированный вокодер напрямую моделирует форму речевого сигнала с помощью одного NN. Входными данными могут быть акустические или лингвистические характеристики, а выходными данными также могут быть речевые сигналы. Хотя унифицированные вокодеры, такие как WaveNet и WaveRNN на основе AR или Parallel WaveNet и Clarinet без AR, обеспечивают высокую точность генерации речи, чисто управляемая данными природа с очень ограниченными предварительными знаниями не позволяет им управлять речью, что является важной функцией. вокодера. Поэтому мы предложили структуру QP для динамической адаптации структуры сети в соответствии с мгновенным шагом. Как AR QPNet, так и не-AR QPPWG вокодер имеют лучшую управляемость высоты тона.

Вывод

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

С другой стороны, для моделей на основе CNN преимущество заключается в том, что мы можем воспользоваться преимуществом распараллеленного характера вычислений CNN для генерации в реальном времени, даже если модель очень сложна. Однако con — фиксированная геометрическая структура ограничивает объем памяти этих моделей на основе CNN. В результате текущие исследования генерации речи на основе CNN сначала фокусируются на алгоритмах моделирования, отличных от AR, таких как модели на основе потоков и на основе GAN, а затем фокусируются на адаптивных сетях со свободной формой сетки выборки, таких как наша QPPWG.

Если вы заинтересованы в продвинутых вокодерах на основе CNN со структурой QP, обратитесь к следующей статье ([2020] Поколение речи 1: генеративная модель квазипериодической формы волны с нейронной сетью расширенной свертки, зависящей от высоты тона).