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

  • Базовая аудиотерминология и рамки
  • Эволюция алгоритмов преобразования текста в речь
  • Глубокое погружение в акустические модели и алгоритмы нейронного вокодера
  • Сквозная TTS следующего поколения

Основная аудиотерминология:

Форма волны:

Компьютер интерпретирует звуковой сигнал, амплитуда которого изменяется в течение фиксированного периода времени. Каждый образец обычно принимает 65 536 значений (16 бит), а качество измеряется в кГц. Циклические компоненты сигнала являются основными компонентами для подходов, подробно обсуждаемых ниже.

Фонемы:

Механизм преобразования текста в речь принимает в качестве входных данных не символы, а фонемы, специально выделенные ARPA (для английского языка), которые можно найти в CMU Dict. Например, зеленый — это G R IY1 N. Другие языки могут иметь другие форматы, но такое же использование. Вот почему мы будем преобразовывать наш входной текст (во время обучения) в фонемы, которые представляют собой отдельные звуковые единицы, отличающие одно слово от другого в языке. Когда ваш ввод обрабатывается, он преобразуется в фонемы нейронной сетью, обученной на известных высказываниях, которая также учится генерировать написание новых слов.

Спектрограммы:

Модели глубокого обучения не принимают необработанный звук напрямую в качестве входных данных, поэтому звук преобразуется в спектрограммы, а Фурье преобразует исходный звук в частотно-временную область. Процесс преобразования разделяет продолжительность звукового сигнала на более мелкие сигналы перед преобразованием, а затем объединяет выходные данные в единое представление.

Мел-спектрограмма:

Человеческое понимание звука с точки зрения частоты может сильно различаться в зависимости от впечатления от частоты, а природа не воспринимает звуки линейно. Именно поэтому была разработана Шкала Мела. Его суть в том, что он учитывает шкалу децибел при работе с амплитудами (насколько громко) и логарифмическую шкалу для частот (высота тона). Поместите голосовые функции, все они хранятся в спектрограмме Мела.

Мы видим, что Mel-спектрограмма дает гораздо более четкое изображение, измеренное в децибелах и оптимизированное для ввода в нашу TTS. Если вы хотите более глубокого понимания математики, ознакомьтесь с этим замечательным постом здесь.

Метрика оценки аудио:

Наиболее распространенной числовой метрикой, которую инженеры машинного обучения используют для оценки качества синтеза речи, является средняя оценка мнения (MOS), которая колеблется от 0 до 5, а повседневная человеческая речь — от 4,5 до 4,8. Чтобы проверить тесты, вы можете посмотреть здесь, но, по крайней мере, в настоящее время не включает все алгоритмы TTS.

Авторегрессия (АР):

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

Статистический параметрический синтез речи (SPSS):

Подход Text To Speech для решения проблем, связанных с традиционной конкатенационной TTS. Этот метод синтезирует речь, генерируя акустические параметры, необходимые для речи, а затем восстанавливая речь из сгенерированных акустических параметров с помощью алгоритмов. Основная структура двухэтапного метода основана на SPSS.

Основная двухэтапная структура:

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

Структуры преобразования текста в речь:

На рисунке выше показаны пять различных типов платформ TTS, которые используются сегодня. Этапы 3 и 4 являются предметом этого поста.

Текущие широко распространенные двухэтапные (акустическая модель + вокодер) модели на основе нейронных сетей значительно улучшили качество синтезированной речи. Известные методы (например, Tacotron 2/FastSpeech 2) сначала генерируют Mel-спектрограмму из текста, а затем синтезируют речь из Mel-спектрограммы с использованием нейронного вокодера, такого как WaveNet. В настоящее время также происходит эволюция в сторону полностью сквозной модели TTS следующего поколения, которую мы обсудим.

Эволюция текста в речь:

На этом боковом веб-рисунке выше четко обозначена область синтетического преобразования текста в речь (TTS), использующая нейронные сети, которая резко выросла с точки зрения роста всего за последние несколько лет, и как в последнее время наблюдается тенденция отхода от основного 2-этапного (акустическая модель). + вокодер) к сквозным моделям следующего поколения.

На приведенном ниже рисунке потока данных мы видим, как различные нейронные алгоритмы TTS начинают с необработанного текста (символов) и генерируют сигналы. Рисунок выше и ниже здесь очень помогает контекстуализировать эволюцию алгоритмов и соответствующие потоки данных.

Глубокое погружение в акустические алгоритмы и нейронный вокодер:

Акустические алгоритмы:

В настоящее время существует триосновных типа архитектуры, которые используют текущие акустические алгоритмы:

Рекуррентная нейронная сеть (RNN)

RNN представляет собой основу акустической модели для таких алгоритмов, как неавторегрессионный TacoTron 2, и представляет собой рекуррентную сеть предсказания признаков от последовательности к последовательности с вниманием, которое предсказывает последовательность кадров Mel-спектрограммы на основе входной последовательности символов. Модифицированная версия WaveNet генерирует выборки сигналов во временной области, обусловленные предсказанными кадрами Mel-спектрограммы. Архитектура TacoTron 2 стала огромным шагом вперед в улучшении качества голоса по сравнению с другими методами, такими как конкатенативный, параметрический и авторегрессионный TacoTron 1. Архитектура TacoTron 2 показана выше.

Сверточная нейронная сеть (CNN)

Такие алгоритмы, как DeepVoice 3, используют полностью сверточную сетевую структуру для синтеза речи, генерируя Mel-спектрограммы из символов и масштабируясь до наборов данных с несколькими говорящими в реальном слове. Этот класс акустических алгоритмов похож на основные CNN, которые классифицируют собак и кошек, обучаясь на изображениях каждого класса, но в данном случае это обучение на Mel-спектрограммах. DeepVoice 3 улучшен по сравнению с предыдущими системами DeepVoice 1/2 за счет использования более компактной модели от последовательности к последовательности и прямого предсказания Mel-спектрограмм вместо сложных лингвистических характеристик.

Трансформер

Акустические алгоритмы на основе преобразователя (собственное внимание), такие как FastSpeech 1/2, используют архитектуру кодировщика-внимания-декодера на основе преобразователя для создания Mel-спектрограмм из фонем. Они являются производным от сетей преобразования, которые представляют собой архитектуру, направленную на решение задач от последовательности к последовательности, с легкостью обрабатывая долгосрочные зависимости. Алгоритмы на основе преобразователя значительно ускоряют синтез речи с помощью сети преобразователя с прямой связью для параллельного создания спектрограмм Мела, в отличие от других моделей (например, TacoTron 2), которые имеют декодеры внимания с авторегрессионным кодировщиком. В частности, алгоритм упрощает вывод за счет полного удаления Mel-спектрограмм в качестве промежуточного вывода и непосредственно генерирует речевой сигнал из текста во время логического вывода, пользуясь преимуществами полной сквозной совместной оптимизации при обучении и низкой задержкой при логическом выводе. FastSpeech 2 обеспечивает лучшее качество голоса, чем FastSpeech 1, и сохраняет преимущества быстрого, надежного и управляемого синтеза речи за счет использования архитектуры на основе преобразователя; это можно визуализировать на рисунке FastSpeech 2 выше, и важно отметить, что часть адаптера дисперсии является основным отличием при использовании FastSpeech 2 от других акустических алгоритмов/фреймворков.

Алгоритмы нейронных вокодеров

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

Существует четыре основных типа вокодеров:

  • Авторегрессионный:WaveNet был первым вокодером на основе нейронной сети, который расширял свертки для авторегрессивного создания точек сигнала. Новая часть этого подхода заключается в его способности практически не использовать предварительное понимание входных аудиосигналов и вместо этого полагаться на сквозное обучение.
  • На основе потока: генеративная модель, которая преобразует плотность вероятности с помощью последовательности обратимых отображений. Этот подход имеет две различные структуры, одна из которых использует авторегрессионные преобразования, а другая — двудольные преобразования.
  • На основе GAN: создан по образцу типичных генеративно-состязательных сетей (GAN), используемых для задач создания изображений. Любая структура GAN состоит из генератора для генерации данных и дискриминатора для оценки данных генератора. Я всегда думаю о аналогии с грабителями и полицейскими, где грабители всегда пытаются придумать новые схемы/атаки, а полицейские пытаются им помешать. В большинстве современных вокодеров на основе GAN используется расширенная свертка для увеличения восприимчивого поля для моделирования долговременной зависимости в последовательности сигнала и транспонированная свертка для повышения дискретизации информации об условиях в соответствии с длиной сигнала. С другой стороны, дискриминаторы сосредоточены на разработке моделей для захвата характеристик формы сигнала, чтобы обеспечить лучший направляющий сигнал для генератора. Функция потерь повышает стабильность и эффективность противоборствующей подготовки и улучшает качество звука. Как видно из таблицы ниже, многие современные нейронные вокодеры основаны на GAN и будут использовать различные подходы с функциями генератора, дискриминатора и потери.

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

На изображении ниже показаны все типы нейронных вокодеров и их архитектура.

Сквозная TTS следующего поколения

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

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

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

FastSpeech 2s развертывается в службе Microsoft Azure Managed TTS, и для меня это ясно доказывает будущее состояние области в прикладной коммерческой форме. К счастью для нас, в ESPnet 2 с открытым исходным кодом теперь доступен условный вариационный автоэнкодер с состязательным обучением (VITs), и я планирую практически рассмотреть его в следующем посте.

Что дальше?

Теперь, когда в части 1 мы намочили ноги, выполняя несколько простых TTS с EspNet 2, и только что получили отличное базовое понимание акустических алгоритмов, нейронных вокодеров и общей архитектуры TTS, давайте применим это! В следующих постах мы поговорим о том, как проводить улучшение речи, автоматическое распознавание речи и тренировать наш голос в ESPnet!

Заключительное примечание:

Если вы хотите поиграть с кодом преобразования текста в речь. Вы можете скачать Блокнот: Текст в речь/espnet2_textToSpeech_demo.ipynb на мастере · furqan4545/Текст в речь (github.com)

Чтобы связаться со мной:

Linkedin: https://www.linkedin.com/in/furqan4545/