Назад в библиотеку

Опыт разработки системы автоматического синтеза речи для русского языка

Авторы: Кривнова О.Ф., Захаров Л.М., Зиновьева Н.В., Строкин Г.С., Бабкин А.В.
Источник: Труды IX сессии РАО. АКИН, М. 1999

Аннотация

Фонетическая группа кафедры теоретической и прикладной лингвистики филологического факультета МГУ ведет работу по созданию системы высококачественного синтеза русской речи по произвольному тексту (так называемый TEXT-to-SPEECH или TTS-синтез) с 1992 года. Работа над первой версией (синтезатор АГАФОН на основе мужского голоса), осуществлялась в 1992–1995 годы. В настоящее время мы работаем над созданием новой версии синтеза на основе женского голоса. По ряду причин система АГАФОН оказалась неудобной для дальнейшей модернизации, как в лингвистическом, так и в техническом плане. В связи с этим дальнейшая работа в этом направлении - это в сущности создание нового экспериментального макета, который учитывал бы как положительные, так и отрицательные характеристики уже имеющегося варианта. В основе развиваемой нами системы речевого синтеза лежит идея совмещения методов конкатенации и синтеза по правилам. Метод конкатенации при адекватном наборе исходных элементов синтеза обеспечивает качественное воспроизведение спектральных характеристик речевого сигнала, а набор правил - возможность формирования естественного просодического оформления высказываний. Большое внимание в нашей работе уделяется разработке специального инструментария, который используется для оперативной проверки и тестирования результатов работы как всей системы в целом, так и её отдельных блоков. В списке литературы указаны основные публикации, отражающие результаты нашей работы /1–7/.

1. Общая архитектура системы

Как в любой TTS-системе, в нашем синтезаторе можно выделить два главных блока: блок лингвистической обработки текста и блок озвучивания или собственно формирования речевого сигнала. Работа блока озвучивания основана на использовании гибридного подхода, который совмещает два метода: метод конкатенации и синтез по правилам. На основе конкатенации (склейки) фрагментов акустического сигнала, взятых из речи диктора-донора, создаётся грубая, первичная основа формируемого акустического сигнала. Далее эта акустическая основа подвергается модификации по правилам, функция которых состоит в том, чтобы придать склеенным фрагментам акустического сигнала нужные просодические характеристики (частоту основного тона, длительность и энергию). Если говорить о зарубежных аналогах, то блок озвучивания, реализованный в нашей системе, наиболее близок к так называемой РSOLA-технологии во временной области /8/. Эта технология в настоящее время имеет много вариантов, широко используется в Европе для синтеза разных языков, и, как показывает практика, позволяет получить высокое качество синтезируемой речи при относительно небольшой сложности генерирующих акустических правил и вычислительных затрат. В связи с использованием метода конкатенации особое место в нашей системе принадлежит акустико-фонетической базе данных, содержащей фрагменты акустического сигнала, которые склеиваются в нужной последовательности при формировании синтезируемой речевой волны. В нашем синтезаторе используются две таких базы: для мужского и женского голоса. В мужской версии база включает 680 единиц, в женской версии база расширена до 1300 единиц (фрагменты акустического сигнала соответствуют как правило единицам фонемной размерности).

2. Блок лингвистической обработки текста

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

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

2.1. Нормализация текста

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

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

  1. Обработка текстовых объектов, которые не являются обычными словами (цифры, условные сокращения типа г-н, г., т.д., т.е. и др.) и требуют вербализации с выбором нужной грамматической формы.
  2. Обработка текстовых объектов, которые не являются обычными словами, но в то же время не требуют вербализации ( аббревиатуры, собственные имена).
  3. Обработка обычных слов (замена е на ё, маркирование ударного гласного с учетом возможной омографии).

К сожалению, у нас пока не было возможности заниматься сколько-нибудь детально и систематически операциями типа 1 и 2, хотя кое-что сделано. На данном этапе разработки синтезатора основное внимание мы уделяли созданию механизмов автоматической расстановки словесных ударений и замены е->ё (операции типа 3). Обе задачи решаются у нас автоматически с помощью морфологического процессора, основанного на Грамматическом словаре А.А.Зализняка (разработчик - Г.О.Сидоров). Расстановка ударений осуществляется в рамках процедуры анализа через синтез на основе словарной информации об акцентной схеме слова, номере ударного гласного в исходной форме слова и позиции буквы ё.

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

2.2. Акцентно-интонационный транскриптор (АИТР).

При синтезе эмоционально нейтральной речи, воспроизводящей достаточно тщательное произнесение (полный стиль), акцентно-интонационный транскриптор осуществляет над нормализованным текстом операции, которые могут быть отнесены к двум типам.

  1. Локализация границ интонационных фраз, определение глубины членения и выбор параметров интонационной модели, оформляющей фразу.
  2. Выбор фразовых смысловых акцентов и создание ритмического рисунка интонационной фразы.

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

Каждой интонационной фразе АИТР должен приписать ряд характеристик, определяющих выбранную для озвучивания интонационную модель. Важнейшими характеристиками являются: тип интонационной модели и глобальные параметры произнесения - тональные (уровень базового тона голоса, ширина голосового диапазона, степень тонированности ударных гласных), темп и громкость. В нашем синтезаторе используется в настоящее время 7 моделей: 1 модель для реализации утвердительности (и завершенности сообщения) в повествовательном предложении; 2 модели для реализации незавершённости в повествовательном предложении; 3 вопросительных модели (общий, специальный и противопоставительный вопросы); 1 модель, типичная для восклицательного предложения. Выше указаны прототипические контексты употребления интонационных моделей, которые активизируются в автоматическом режиме на основе пунктуационных ключей и некоторых лексико-грамматических показателей. В ручном режиме этот же набор моделей может использоваться для оформления любого текстового отрезка, что является одним из источников реализации различных паралингвистических (эмоционально-оценочных) характеристик текста. Что же касается глобальных интонационных параметров, указанных выше, то в нашей системе реализована возможность их ручной настройки в любых комбинациях, однако в автоматическом режиме пока что используется наиболее нейтральный (немаркированный) вариант.

Вторая из указанных выше операций связана с формированием акцентно-ритмического рисунка интонационной фразы. Следуя фонетической традиции, мы исходим из того, что степень выделенности слов (и слогов) в интонационной фразе регулируется двумя функционально различными механизмами: фокусной акцентуацией и ритмизацией.

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

Под ритмическим рисунком фразы мы понимаем распределение выделенности (prominence) слогов во фразе, которое формируется с учетом следующих факторов: метрической схемы слова, степени выделенности ударного слога слова, типичной (немаркированной) для слов данного лексико-грамматического класса, и линейной позицией слова в интонационной фразе (ИФ). В результате внутри ИФ различаются 4 градации выделенности слога:

  1. слабый безударный
  2. сильный безударный или слабый ударный
  3. обычный ударный
  4. усиленный ударный (соответствующие значения приписываются в качестве особых признаков гласным)

Усиленное ударение получает ударный слог последнего знаменательного слова в ИФ (или просто последнего, если знаменательных слов во фразе нет), образуя так называемое автоматическое фразовое (синтагматическое) ударение. Если при этом во фразе нет фокусных акцентов, слог-носитель автоматического фразового ударения признается (по умолчанию) интонационным центром фразы.

2.3. Фонемный транскриптор (ФТ)

Фонемный транскриптор строит по нормализованному входному тексту соответствующую ему звуковую транскрипцию, основанную на действующих в русском языке стандартных правилах чтения. Максимальной сферой действия этих правил является интонационная фраза, поэтому интонационное членение осуществляется до начала работы ФТ. Инвентарь различаемых звуковых единиц в используемой нами транскрипции невелик и включает 56 основных звукотипов (без учета различий в фонетической долготе согласных). С точки зрения фонетической детализации он занимает промежуточное положение между традиционно признаваемыми для русского языка фонемным и фонетическим инвентарями. Соответственно, выходная транскрипция, которая может контролироваться в качестве промежуточного результата работы всей системы синтеза, привычна для фонетиста, а при желании легко может быть преобразована к более традиционному фонемному или фонетическому виду. Транскрипция строится на базе русского алфавита, что также следует традициям русской фонетики.

В состав ФТ входят подблоки фонологических правил, осуществляющих преобразования буква-фонема и фонема-звукотип. Правила описывают как внутрисловные, так и межсловные преобразования, при этом детально учитывается нерегулярное произношение некоторых классов слов и даже отдельных слов (в системе на настоящий момент содержится 54 списка исключений, которые могут текущим образом корректироваться и пополняться). Правила записываются в стандартной и удобной для лингвиста форме, допускающей мгновенное включение вводимой закономерности в программу синтеза и её верификацию через озвучивание.

2.4. Блок формирования просодических характеристик.

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

2.5. Приведение звуковой транскрипции к базовым единицам синтеза

Указанная операция необходима в связи с разной степенью фонетической детализации, которая задается фонемным транскриптором, с одной стороны, и необходима для качественного синтеза, с другой. Напомним, что транскриптор работает с инвентарем из 56 единиц, а акустические базы элементов конкатенации (у нас, как правило, аллофонной размерности) содержат 688 и 1300 единиц. Следовательно, возникает задача перехода от фонетической транскрипции фразы к ее более детальному представлению в терминах базовых контекстно-зависимых аллофонов. Эта задача решается в нашей системе блоком, который называется кодировщиком.

3. Блок озвучивания

3.1. Акустическая база данных: подготовка и корректирующие алгоритмы.

Основой любой системы синтеза речи, основанной на конкатенативном методе, является набор фрагментов реального акустического сигнала - базовых элементов конкатенации. Размерность этих элементов может быть различной в зависимости от конкретного способа синтеза речи, это могут быть фонемы, аллофоны, слоги, дифоны, слова и т.д. В разрабатываемой нами системе базовые элементы в большинстве случаев имеют фонемную размерность и являются тем самым аллофонными реализациями традиционных фонем. Микрофрагменты, соответствующие частям фонемных сегментов, имеются только для взрывных согласных (типа /п/, /б/, /п’/, /б’/ и т.д.) и вибрантов (/р/ и /р'/). Главное же отличие от традиционных фонетических представлений состоит в том, что для получения естественно звучащей речи необходимо учитывать гораздо больше различий, обусловленных контекстными фонетическими влияниями, чем это делается даже в достаточно детальных транскрипционных системах. Так, уже в первой версии Агафон акустический инвентарь включал 688 единиц: 158 для согласных и 530 для гласных. В разрабатываемой версии для женского голоса в инвентаре содержится 200 согласных и около 1100 гласных аллофонов. Возможно, что и эта степень акустической детализации является недостаточной.

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

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

3.2. Формирование управляющего файла

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


Код аллофона Длит. аллофона ЧОТ нач. ЧОТ конец Дополнительные частотные и
энергетические параметры
М 410301 100 158 199
А+ 811411 100 199 199 f223 40
М 410101 70 199 194
ъ 971411 50 194 188
М 410101 90 188 199
Ы? 841410 80 199 334 a130
Л 520401 70 334 298
ъ 971111 50 298 223
М 410101 80 223 183
А 911416 75 183 150
Л 570104 90 150 141
И+ 831610 76 141 126 f126 50
Н 420101 90 126 122
У 921318 150 122 119
пауза 100000 600 0 0

3.3. Формирование звукового сигнала

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

4. Инструментарий для разработки системы синтеза речи

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

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

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

  • Создавать и редактировать правила (лингвистические модули), осуществлять их компиляцию, поиск и исправление возможных ошибок.
  • Создавать и редактировать тексты, подлежащие синтезированию.
  • Собственно осуществлять синтез, то есть применять написанные правила к текстам или промежуточным представлениям этих текстов и слушать результаты их озвучивания.
  • Получать промежуточное представление текста после любого этапа преобразования с целью ручной обработки или дальнейшего использования его вне системы, в том числе: А. традиционную фонетическую транскрипцию; Б. разные виды просодической транскрипции: интонационно-просодическую транскрипцию с разделением на синтагмы и указанием типов интонационных конструкций и акцентно-ритмического рисунка; фонетическую транскрипцию с указанием длительности (в мс.) и высоты (в полутонах) каждого звука; аллофонную транскрипцию; управляющую структуру для блока озвучивания; список сегментов с полным списком всех признаков и их значений.
  • Редактировать и осуществлять окончательный синтез разных видов промежуточного представления текста (перечислены выше), полученных на разных этапах синтеза.
  • Наблюдать, пользуясь промежуточными представлениями текста и подробным отчетом (log-файлом), генерируемым системой, за ходом процесса преобразования текста в речь, а также детально исследовать любой этап преобразования, проверяя, соответствует ли ожиданиям сущность производимых преобразований и их результат.
  • Экспериментировать с настройкой разных просодических параметров синтеза, совмещая изменение параметров с прослушиванием сигнала: изменять базовую частоту для данного диктора, частотный регистр, частотный диапазон, темп, длительность гласных и согласных.
  • Выбирать разные способы генерации сигнала.

Синтезатор реализован в библиотеке dll для платформы Win32 (Windows 95 или NT); место, занимаемое на диске, около 10Mb.

Литература

  1. А.В.Бабкин. Автоматический синтез речи - проблемы и методы генерации речевого сигнала. // Труды Международного семинара по компьютерной лингвистике и ее приложениям. Диалог'98. М., 1998.
  2. Л.М.Захаров, Н.В.Зиновьева, О.Ф.Кривнова. Программный синтез русской речи (синтезатор АГАФОН) // Труды Международного семинара по компьютерной лингвистике и ее приложениям. Диалог'95. Казань, 1995.
  3. Л.М.Захаров. Транскрипция текстов при синтезе и анализе русской речи. // Труды Международного семинара по компьютерной лингвистике и ее приложениям. Диалог'96. Казань, 1996.
  4. Л.М.Захаров. Транскрипция текстов при синтезе русской речи: нетривиальные случаи. // Труды Международного семинара по компьютерной лингвистике и ее приложениям. Диалог'97. М., 1997.
  5. О.Ф.Кривнова. Моделирование и синтез фразовой интонации на основе особых точек тонального контура. // Труды Международного семинара по компьютерной лингвистике и ее приложениям. Диалог'97. М., 1997.
  6. О.Ф.Кривнова. Автоматический синтез русской речи по произвольному тексту (вторая версия с женским голосом). // Труды Международного семинара по компьютерной лингвистике и ее приложениям. Диалог'98. М., 1998.
  7. Г.С.Строкин. Инструментарий для разработки системы синтеза речи. // Труды Международного семинара по компьютерной лингвистике и ее приложениям. Диалог'98. М., 1998.
  8. T.Dutoit. Аn Introduction to Text-to-Speech Synthesis. Dordrecht-Boston-London.1997.