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

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

Автор: Соломенник А. И.,Чистиков П. Г.,Рыбин С. В.,Таланов А. О., Томашенко Н. А.
Источник: Изв. Вузов. Приборостроение. 2013. Т.56, №2 С.29-32

Аннотация

Соломенник А. И.,Чистиков П. Г.,Рыбин С. В.,Таланов А. О., Томашенко Н. А. Автоматизация процедуры подготовки нового голоса для системы синтеза русской речи Аннотация. Предложены методика и средства автоматизации процедуры создания голоса заданного диктора для работы в системе синтеза речи VitalVoice. Реализован- ный алгоритм автоматизированной подготовки голоса включает несколько эта- пов: выбор текстового материала, запись речи с оперативным контролем пара- метров записи, создание размеченной звуковой базы, настройка параметров подбора элементов.

Введение

Технология синтеза речи по тексту давно интересует исследователей всего мира. Существуют разные способы получения речевого сигнала: синтез по правилам (фор- мантный синтез), артикуляторный синтез, компилятивный синтез, синтез на основе статисти- ческих моделей (HMM-синтез). Синтез методом Unit Selection (выбора элементов, US) [1], подготовка нового голоса для которого составляет предмет настоящей статьи, является одним из видов компилятивного синтеза. Суть его состоит в том, что синтезированная речь компи- лируется не из базы специально записанных элементов (аллофонов, дифонов, трифонов, по- луфонов, слогов и т. п.), каждый из которых представлен единственным вариантом, а из про- изнесенных предложений естественного языка, и для каждого элемента из множества выби- рается наиболее подходящий вариант. Данный метод позволяет достичь очень высокой есте- ственности синтезированной речи. Однако качественный синтез возможен только на основе полного, сбалансированного и корректно размеченного речевого корпуса. С целью разметки речевой базы для метода US в ООО „ЦРТ“ была разработана специальная многоуровневая система [2]. Добавление нового голоса является нетривиальной задачей для любой системы компилятивного синтеза, так как требует записи новой звуковой базы, из которой подбира- ются элементы, составляющие синтезированную речь. В особенности это актуально для син- теза методом US, поскольку звуковая база для качественного синтеза голоса должна быть достаточно велика (до нескольких часов звучащей речи) [3]. Именно поэтому важно макси- мально автоматизировать процесс добавления голоса.

В 2010 г. в ООО „ЦРТ“ разработана специальная подсистема [4], на основе которой

позднее было создано приложение VoiceConstructor — программа, позволяющая создавать голоса для системы синтеза русской речи VitalVoice [5]. Программа состоит из модулей под- готовки текстов, записи фонограмм и формирования звуковой базы голоса.

В модуле подготовки текстов, разработанном специально для русского языка, созда- ются фонетически сбалансированные корпуса текстов заданного размера. Самый простой способ получить все необходимые для синтеза элементы — записать большую базу данных речи (десятки часов). Но просто наличия большого объема записанной речи недостаточно, корпус должен быть сбалансированным и по возможности полным, т.е. содержать все необ- ходимые единицы во всех возможных контекстах с различными возможными характеристи- ками, такими как акустические параметры, частота основного тона, длительность, позиция в слоге и т.п. Но так как для создания базы данных нужна сегментация, которая обычно требует по крайней мере некоторой ручной коррекции после автоматической сегментации, размер ба- зы данных влияет на время, необходимое для подготовки ее к использованию. Кроме того, большие базы данных неудобны для хранения и поиска в них. Таким образом, должен со- блюдаться баланс между размером и репрезентативностью данных.

Существует целый ряд исследований по автоматическому созданию текстовых корпусов для различных языков [6, 7]. Для русского языка в работе [8] описывается схожий алгоритм. Главное преимущество метода, рассмотренного в работе [9], состоит в том, что он обеспечи- вает удобство создания текстовой базы, давая возможность не просто выборки предложений из большого корпуса текстов, но позволяет выбрать тип звуковой единицы корпуса, заранее создать и редактировать необходимые корпусы текстов. Модуль автоматической подготовки текстового корпуса был создан на основе программы анализа статистики фонетических единиц [10].

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

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

Модуль записи фонограмм

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

Модуль формирования звуковой базы голоса

На этом шаге производится разметка звуковых файлов, для того чтобы при синтезе из базы голоса выбирались нужные элементы. Метки хранятся в отдельных текстовых файлах, просмотр и корректировка размеченных файлов производятся в звуковом редакторе WaveAssistant. Для формирования базы голоса необходимо получить разбивку на периоды частоты основного тона (ЧОТ) и аллофонную сег- ментацию.

Для выполнения разметки по ЧОТ в программе WaveAssistant реализован автокорреляционный метод расчета основного тона с предварительной фильтрацией и постобработкой с целью уточнения положения меток основного тона (ОТ). Низкочастотная фильтрация ис- пользуется для снижения ошибки определения ОТ путем удаления из сигнала составляющих с частотой выше 500 Гц. Высокочастотная предварительная фильтрация используется для оп- ределения участков, на которых нет ОТ (невокализованные звуки). Постобработка положения меток позволяет удалять „слишком частые“ или „слишком редкие“ метки, уточнять положе- ние меток в сложных случаях, когда метки смещаются в ту или другую сторону.

Аллофонная сегментация выполняется автоматически с помощью модулей системы распознавания речи (ASR) с использованием HMM (скрытых марковских моделей). Сегмен- тация проводится на основе выравнивания (force alignment) транскрипции и звукового сигна- ла, она состоит из трех этапов: обучение акустических моделей; сегментация и автоматиче- ская корректировка границ аллофонов. На первом этапе строятся акустические модели моно- фонов, так как именно монофоны наилучшим образом подходят для данной задачи. Качество сегментации улучшается, если для каждого диктора имеется достаточное количество данных, чтобы обучить индивидуальные модели. Если данных для построения индивидуальных аку- стических моделей недостаточно, при сегментации используются либо общие акустические модели, построенные по большой базе (более 50 дикторов), либо строятся модели с исполь- зованием данных тех дикторов, голоса которых по своим акустическим характеристикам близки к целевому голосу. На шаге сегментации получаются два варианта —„идеальная“ сег- ментация, которая в точности соответствует заданной транскрипции, и „реальная“ — отли- чающаяся от первой более точным акустическим соответствием с фонограммой. Оба вариан- та сегментации в дальнейшем используются при синтезе речи. Заключительный этап автома- тической сегментации заключается в автоматической корректировке полученных на преды- дущем этапе границ аллофонов на основе дополнительной информации (разметка ЧОТ и пра- вила, составленные на основе статистического анализа систематических неточностей).

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

Заключение

Рассмотренная методика автоматизированного создания голоса была оп- робована на речевом материале различного объема (от нескольких минут до 10 часов речи). Она позволила получить практически важные результаты: при минимальной ручной коррек- тировке разметки достигнута почти полная разборчивость речи и практически стопроцентная узнаваемость исходного диктора даже на базах необходимого объема (от получаса звучащей речи). Реализованный модуль выбора текстового корпуса позволил при том же объеме базы получить большую аллофонную вариативность, что также позволило улучшить получаемую синтезированную речь.

Список использованной литературы

  1. Black A. W., Hunt A. J. Unit Selection in a Concatenative Speech Synthesis Using a Large Speech Database // Proc. of ICASSP 96. Atlanta, Georgia, 1996. Vol. 1. P. 373—376.
  2. Продан А. И., Корольков Е. А., Опарин И. В., Таланов А. О. Особенности использования многоуровневой разметки звукового корпуса Unit Selection в системе гибридного синтеза „Живой голос“ // Матер. Междунар. конф. „Диалог“. 2009. С. 415—419.
  3. Black A. W. Perfect Synthesis for all of the people all of the time // Keynote. IEEE TTS Workshop. Santa Monica, CA, 2002. P. 146—170.
  4. Продан А. И., Таланов А. О., Чистиков П. Г. Система подготовки нового голоса для системы синтеза „Живой голос“ // Матер. Междунар. конф. „Диалог“. 2010. С. 394—399.
  5. Oparin I., Talanov A. Outline of a New Hybrid Russian TTS System // Proc. of the 12th Intern. Conf. on Speech and Computer. SPECOM 2007. Moscow, Russia, 2007. P. 603—608.
  6. Chevelu J., Barbot N., Boeffard O., Delhay A. Comparing set-covering strategies for optimal corpus design // Proc. of the 6th Intern. Language Resources and Evaluation. 2008. P. 2951—2956.
  7. van Santen J. P. H., Buchsbaum A. L. Methods for optimal text selection // Proc. of Eurospeech. Rhodes, Greece, 1997. P. 553—556.
  8. Кривнова О. Ф., Захаров Л. М., Строкин Г. С. Подбор текстового материала и статистический инструментарий для создания речевых корпусов // Сб. тр. XI сессии Российского акустического общества. Т. 3. Акустика речи. Медицинская и биологическая акустика. М.: ГЕОС, 2001. С. 87—92.
  9. Solomennik A. I., Chistikov P. G. Automatic generation of text corpora for creating voice databases in a Russian text-to-speech system // Матер. Междунар. конф. „Диалог“. 2012. С. 607—615.
  10. Смирнова Н. С., Чистиков П. Г. Программа анализа фонетических статистик в текстах на русском языке и ее использование для решения прикладных задач в области речевых технологий // Матер. Междунар. конф. „Диалог“. 2011. С. 632—643.