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

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

Авторы: Лобанов Б.М., Цирульник Л. И., Б. Пьорковска, Я. Рафалко, Э. Шпилевский
Источник: Труды международной конференции «Диалог 2006»

Аннотация

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

Введение

В настоящее время для некоторых славянских языков, таких как русский, чешский, польский, украинский, уже существует практически используемые или экспериментальные образцы синтезаторов речи по тексту (СРТ) [1]. Не имеется, однако, никаких сведений о создании многоязычных СРТ для славянских языков, а также СРТ для белорусского языка. Данная работа является продолжением проводимых ранее исследований, базирующихся на аллофонно-волновом представлении речевого сигнала [2] и направленных на разработку многоголосых [3] и многоязычных [4] СРТ. Синтез речи по тексту на славянских языках — белорусском, польском, русском — предполагает создание фонетико-акустической базы данных, построенной на единых принципах, отражающих внутри- и межъязыковую специфику фонетических систем и позиционно-комбинаторных явлений, порождающих аллофонию речи. Для этого необходимо определить принципы создания и обработки текстовых и речевых корпусов для каждого из языков и особенности формирования на их основе БД аллофонов и мультифонов. Решению именно этих вопросов посвящена данная работа.

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

Фонетические системы языков, относящихся к группе славянских, имеют между собой значительное сходство, однако каждый из них обладает также специфическими особенностями, иногда значительными. Исследуемые фонетические системы белорусского, польского и русского языков являются относительно близкими, особенно русского и белорусского. В белорусском языке насчитывается 41 фонема, из них 6 гласных и 35 согласных, а в русском всего — 42, гласных — 6 и согласных — 36. Польский язык фонетически более разнообразен. В нём насчитывается 51 фонема, из них 8 гласных и 43 согласных. В таблице 1 представлена обобщённая информация о фонемном составе 3-х языков и об их различии по способу и месту образования. В каждой ячейке таблицы представлены имена фонем, характеризующихся определённым  способом и местом образования, для белорусского, польского и русского языков порядке сверху – вниз. Для обозначения фонем используются традиционные для каждого языка буквы алфавита.

В таблице 1 затемнены ячейки, фонетическое качество звуков которых имеет практически полное сходство для каждого из языков. Как видно из таблицы, количество таких ячеек в процентном отношении ко всем использующимся ячейкам довольно значительно — 66%. Отличительные особенности фонетических систем белорусского и русского языков заключаются в следующем. В белорусском языке отсутствуют следующие фонемы:

  • мягкие согласные Т, Д, Ш, Ч, Р;
  • мягкая и твёрдая Г.

В белорусском языке имеется ряд специфических фонем, отсутствующих в русском:

  • плавная Ў;
  • мягкая Ц и твёрдая Ч;
  • мягкая аффриката Дз и твёрдая Дж;
  • мягкая и твёрдая щелевая Гх.


Таблица 1. Фонетические системы белорусского, польского и русского языков


Согласные
Глухие Звонкие Сонорные
В
з
р
ы
в
н
ы
е
А
ф
ф
р
и
к
а
т
ы
Щ
е
л
е
в
ы
е
В
з
р
ы
в
н
ы
е
А
ф
ф
р
и
к
а
т
ы
Щ
е
л
е
в
ы
е
Д
р
о
ж
а
щ
и
е
Н
о
с
о
в
ы
е
Б
о
к
о
в
ы
е
П
л
а
в
н
ы
е
Г
л
а
с
н
ы
е
П
е
р
е
д
н
я
я
В
ы
с
о
к
а
я
О
г
у
б
л
е
н
н
а
я
Н
а
з
а
л
ь
н
а
я
Задне-язычные Мягкие к’
k’
к’
~ х’
h’
x’
~
g’
г’
~ гх’
~
~
~ ~ ~ й
j
й
у
u
у
0 1 1 0
Твёрдые к
k
к
~ х
h
x
~
g’
г’
~ гх’
~
~
~ ~ ~ ~ о
o
о
0 0 1 0
Средне-язычные Мягкие ~ ~
ć
ч’
~śш’ ~ ~d
ź
~
~
ź
~
~
r’
р’
~ ~ ~ а
a
а
0 0 0 0
Твёрдые ~ ч
cz
~
ш
sz
ш
~ дж
ж
ż
ж
р’
r’
р’
~ ~ ~ э
e
э
1 0 0 0
Передне язычные Мягкие ~t’
т’
ц’
c’
~
с’
s’
с
~
d’
д’
дз’
~
~
з’
z’
з’
~ н’
n’
н’
л’
l’
л’
~ ы
y
ы
0 1 0 0
Твёрдые т
t
т
ц
c
ц
с
s
c
д
d
д
~
dz
~
з
z
з
~ н
n
н
л
l
л
~ i
i
и
1 1 0 0
Губные Мягкие п’
p’
п‘
~ ф’
f’
ф’
б’
b’
б’
~ в’
w’
в’
~ м’
m’
м’
~ ~ ~
ą
~
0 0 1 1
Твёрдые п’
p’
п’
~ ф’
f’
ф’
б’
b’
б’
~ в’
w’
в’
~ м’
m’
м’
~ ў
ł
~
~
ę
~
1 0 0 1

Сравнивая фонетическую систему польского языка с русским, отметим некоторые её особенности. В польском языке присутствуют все фонемы, характерные для русского языка, однако произношение мягких фонем Ш и Ч отличается от польских мягких Ś и Ć, артикуляторный уклад которых промежуточный между мягкими русскими С, Ш и Ц, Ч соответственно. Кроме того, в польском языке имеется ряд специфических фонем, отсутствующих в русском:

  • плавная Ł;
  • мягкие С, Ć и твёрдая Cz;
  • мягкая аффриката Dź и твёрдые Dż и Dz;
  • назализованные гласные Ą и Ę.

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

  • русский — белорусский — польский — 66%
  • русский — белорусский — 71%
  • русский — польский — 78%
  • польский —   белорусский — 69%.

Как это ни удивительно на первый взгляд, но белорусский язык по фонетическому составу отличается почти в равной степени как от польского, так и от  русского. Сказанное, конечно, не учитывает статистику употребления тех или иных фонем в различных языках. Так, хорошо известно, что схожие по звучанию русские и польские фонемы /t’/, /d’/, /s’/, /z’/, /l/, употребляемые в русском языке очень часто, в польском встречаются гораздо реже. В близких по звучанию словах вместо них используются, соответственно, специфические польские фонемы — /ć//dź//ś//ź/, /ł/.

2. Мини- и макси-наборы аллофонов для синтеза белорусской, польской и русской речи

Как известно, в речевом потоке фонемы реализуются в виде аллофонов, или иначе, в виде позиционных и комбинаторных оттенков фонем. Позиционный фактор учитывает позицию данной фонемы относительно словесного, акцентно-группового, синтагматического и фразового ударения. Комбинаторный фактор учитывает ближайшее фонемное окружение. В общем случае невозможно дать точную оценку количества аллофонов, т.к. она напрямую зависит от степени детализации учёта влияния  позиционных и комбинаторных факторов. Однако качество синтезированной речи напрямую зависит от степени детализации. Стремление к большей детализации может привести к огромному количеству аллофонов (несколько сот тысяч), что делает задачу создания БД аллофонов неразрешимой. Опыт создания русскоязычных СРТ [2] показал, что синтезированная речь достаточно высокого качества  может быть достигнута при некоторых определённых условиях генерации позиционных и комбинаторных аллофонов. Были исследованы 2 типа аллофонных наборов: так называемые макси- и мини- наборы.

При использования макси-набора аллофоннов для синтеза русской речи создаются следующие позиционные аллофоны гласных: ударный - (0), частично ударный - (1), первый предударный - (2), не первый предударный - (3), заударный - (4). Всего 5 позиций. С учётом левого контекста создаются следующие комбинаторные аллофоны гласных: после синтагматической паузы - (0), после большинства губных - (1), переднеязычных - (2) и заднеязычных - (3) твёрдых, после /Л/ - (4), /Р/ - (5), /М/ - (6)/, /Н/ -  (7), после большинства мягких - (8), после /Р’/ - (9), /M’/ - (10), /Н’/ - (11), после гласных /У/ - (12), /О/ - (13), /А/ - (14), /Э/ - (15), /Ы/ - (16), /И/ - (17). Всего 18 левых контекстов. Для учёта правого контекста создаются следующие комбинаторные аллофоны гласных: перед синтагматической паузой - (0), перед переднеязычными и заднеязычными твёрдыми согласными и гласными /У/, /О/, /А/, /Э/ ,/Ы/ - (1), перед губными твёрдыми - (2), перед губными  мягкими - (3) перед не губными мягкими согласными и гласным /И/  - (4). Всего 5 правых контекстов. Итого, для 6-ти гласных создаются Nv = 5*18*5*6 = 2700 аллофонов.

Позиционные аллофоны согласных для макси-набора включают два положения: в ударном слоге – (0) и в безударном слоге – (1). Левый контекст согласных включает следующие группы: после паузы - (0), после глухих - (1) и звонких - (2) согласных, после гласных - (3). Правый контекст: перед паузой - (0), перед глухими - (1) и звонкими - (2) согласными, перед безударными - (3) и ударными - (4) гласными. Итого, для всех 36-ти согласных создаются Nc = 2*4*5*36 = 1440 аллофонов. Всего создаётся: 2700 + 1440 = 4140 аллофонов русской речи.

При использования мини-набора для синтеза русской речи создаётся только 2 типа позиционных аллофонов гласных: ударный - (0), безударный - (1). С учётом левого контекста создаются следующие комбинаторные аллофоны гласных: после синтагматической паузы - (0), после твёрдых губных - (1), передне- и среднеязычных - (2), после твёрдых заднеязычных и гласных - (3) и после мягких - (4). Всего 5 левых контекстов. С учётом правого контекста создаются следующие комбинаторные аллофоны гласных: перед синтагматической паузой - (0), перед переднеязычными и заднеязычными твёрдыми согласными и гласными /У/, /О/, /А/, /Э/, /Ы/ - (1), перед губными согласными - (2), перед мягкими согласными и гласной /И/ - (3). Итого, для 6-ти гласных создаются Nv = 2*5*4*6 = 240 аллофонов. Аллофоны согласных создаются только с учётом правого контекста: перед паузой - (0), перед глухими - (1) и звонкими - (2) согласными, перед безударными - (3) и ударными - (4) гласными. Итого, для всех 36-ти согласных создаются Nc = 5*36 = 180 аллофонов. Всего создаётся: 240+180=420 аллофонов русской речи.

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

Результаты подсчёта теоретического и практически используемого количества аллофонов для каждого из 3-х языков приведены в таблице 2.


Таблица 2.Количество аллофонов


Язык Белорусский Польский Русский
Количество аллофонов Теоретическое Практич. используемое Теоретическое Практич. используемое Теоретическое Практич. используемое
Тип набора Макси Мини Макси Мини Макси Мини Макси Мини Макси Мини Макси Мини
Гласных 2520 240 1480 170 3600 320 2050 p>224 2700 240 1550 175
Согласных 720 180 217 76 860 215 279 113 720 180 209 81
Всего

3240 420 1697 246 4460 535 2329 337 3420 420 1759 256

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


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


  Губные согласные   Переднеязычные согласные   Среднеязычные согласные   Заднеязычные согласные и гласные
Бел Пол Рус Имя Бел Пол Рус Имя Бел Пол Рус Имя Бел Пол Рус Имя
1 п p п Pijk 16 т t т Tijk 31 ч cz - Chijk 46 к k к Kijk
2 ф f ф Fijk 17 ц c ц Cijk 32 ш sz ш Shijk 47 х h х Hijk
3 б b б Bijk 18 с s с Sijk 33 дж - Dhijk 48 гх g г Gijk
4 в w в Vijk 19 д d д Dijk 34 ж ż ж Zhijk 49 к’ k’ к’ K’ijk
5 м m м Mijk 20 - dz - Dzijk 35 р r р Rijk 50 х’ h’ х’ H’ijk
6 ў ł - Wijk 21 з z з Zijk 36 - ć ч’ Ch’ijk 51 гх’ g’ г’ G’ijk
7 п’ p’ п’ P’ijk 22 н n н Nijk 37 - ś ш’ Sh’ijk 52 й j й J’ijk
8 ф’ f’ ф’ F’ijk 23 л l л Lijk 38 - - Dh’ijk 53 у u у Uijk
9 б’ b’ б’ B’ijk 24 - t’ т’ T’ijk 39 - ź - Zh’ijk 54 о o о Oijk
10 в’ w’ в’ V’ijk 25 ц’ c’ - C’ijk 40 - r’ р’ R’ijk 55 а a а Aijk
11 м’ m’ м’ M’ijk 26 с’ s’ с’ S’ijk 41 - - - - 56 э e э Eijk
12 - - - - 27 дз’ d’ д’ D’ijk 42 - - - - 57 ы y ы Yijk
13 - - - - 28 з’ z’ з’ Z’ijk 43 - - - - 58 i i и Iijk
14 - - - - 29 н’ n’ н’ N’ijk 44 - - - - 59 - ą - O’ijk
15 - -

-

- 30 л’ l’ л’ L’ijk 45 - - - - 60 - ę - E’ijk

3. Текстовые и речевые корпусы для создания БД аллофонов

Процесс создания БДаллофонов включает следующие этапы:

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

Текстовые корпусы созданы на основе специально подобранного набора слов в количестве, равном числу используемых в каждом из языков аллофонов. Каждое из слов отбиралось исходя из критерия наилучшей репрезентации данного аллофона в речи диктора. Речевые корпусы, соответствующие текстовым корпусам, создавались в студийных условиях специально проинструктированными профессиональными дикторами. Ниже, в таблицах 4 и 5, приведены фрагменты списка слов для создания (нарезки) БД для макси-набора аллофонов согласных и гласных польской речи, в таблицах 6 и 7 – для создания мини-набора слов для 3-х языков.


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


Пауза(0) Глухой согласный(1) Звонкий согласный(2) Безударный гласный(3) Ударный гласный(4)
Пауза (0) Sztuka (Sh001) Szmal  (Sh002) Szanować (Sh103) Szybkość (Sh104)
Глухой согласный (1) Wieprz

(Sh010)
Kształtowanie (Sh111) Przełomu (Sh113) Przez (Sh014)
Звонкий согласный (2) –   Spójrzmy (Sh122) Rozszerzalność (Sh123) Sfałszować (Sh024)
Гласный (3) Również

(Sh130)
Przemieszczania (Sh031) Wprzeszłość (Sh032) Nasze (Sh133) Naszego (Sh034)

Таблица 5. Фрагмент списка слов для нарезки аллофонов гласной /A/ польской речи (в скобках после каждого слова указан соответствующий аллофон; второй индекс обозначен двумя цифрами)


Пауза

(0)

Не губные твёрдые

(1)

Губные твёрдые

(2)

Не губные мягкие

(3)

Губные мягкие (4)
Пауза (0) A (A0000) Adres (A0001) Amper (A0002) Ani (A003)
Губные твёрдые (1) Ba

(A0010)
Najbardziej (A0011) Zaspawać (A0012) Projektowania (A0013) Pawie (A0014)

Передне- и среднеязычные твёрдые (2)

Ta

(A0020)
Rozszerzalność (A0021) Samym (A0022) Przetwarzania (A0023) Zaletami (A0024)
Нёбные твёрдые (3) Ha

(A0030)
Bogaty (A0031) Gapa (A0032) Wspomagania (A0033) Zagapić (A0034)
M (4) Ma

(A0040)
Matlab (A0041) Mapa (A0042) Mazia (A0043) Zamawiać (A0044)
N (5) Na

(A0050)
Znacznie (A0051) Sygnałów (A0052) Naciąg (A0053) Nawiać (A0054)
L (6) Dla

(A0060)
Popularnym (A0061) Matlaba (A0062) Kolanie (A0063) Kalafior (A0064)
R (7) Kra

(A0070)
Pracy (A0071) Rama (A0072) Wyrazić (A0073) Procedurami (A0074)
Ł (8) Pchła

(A0080)
Układów (A0081) Okłamać (A0082) Odłazić (A0083) Odławia (A0084)
J (9) Ja

(A0090)
Jakość (A0091) rozwijało się (A0092) Objaśnia (A0093) Zjawia (A0094)
Не губные мягкие (10) Pnia

(A0100)
Posiada (A0101) Rozdziawa (A0102) Niania (A0103) Narzędziami (A0104)
Губные мягкие (11) Lwia

(A0110)
Świata (A0111) Biawar (A0112) Ogłupianie (A0113) Kopiami (A0114)

Таблица 6. Мини-набор аллофонов согласной /R/ для 3-х языков


Пауза

(0)

Глухой согласный

(1)

Звонкий согласный

(2)

Безударный гласный

(3)

Ударный гласный

(4)

Белорусский Цяжар Дзiрка Скарба Сябраваць Урад
Польский Akr Krtań Grdyka Środowisko Program
Русский Спор Марка Кордон Караван Парад

Таблица 7. Мини-набор аллофонов ударной гласной /А/ для 3-х языков


Третий индекс,

правый контекст

(языки: белорусский,

польский,

русский)

 

 

Второй индекс,

левый контекст

(языки: белорусский,

польский,

русский)

0 1 2 3
пауза п, ф, б, в, м, ў т, ц, с, д, з, н, л, ч, ш, дж, ж,
р, к, х, гх, у, о, а, э, ы
к’, х’, гх’, й, ц’, с’, дз’, з’, н’,
л’, п’, ф’, б’,  в’, м’, i
пауза p, f, b, w, m,ł t, c, s, d, dz, z, n, l, cz, sz, dż, ż, r, k, h, g,
u, o, ą, a, e, ę, y
k’, h’, g’, j, ć, ś, dź, ź, r’, t’, c’,
s’, d’, z’, n’, l’, p’, f’, b’, w’, m’,i
пауза п, ф, б, в, м т, ц, c, д, з, н, л, ш, ж, р, к, x,
г, у, о, а, э, ы
к’, x’, г’, й, ч’, ш’, р’, т’, с’,
д’, з’, н’, л’, п‘, ф’, б’, в’, м’, и
0 пауза A000 А A001 Аўра A002 Анджей A003 Альфа
пауза А Amper Adres Ani
пауза А Автор Атом Ася
1 п, ф, б, в, м, ў A010 Барацьба A011 Вабны A012 Фарба A013 Майстар
p, f, b, w, m, ł Ba Zaspawać Najbardziej Pawie
п, ф, б, в, м Судьба Баба Вата Батя
2 т, ц, с, д, з, н, л, ч, ш, дж, ж, р A020 Кабала A021 Зграбны A022 Цацка A023 Талент
t, c, s, d, dz, z, n, l, cz, sz, dż, ż, r Ta Samym Znacznie Zaletami
ш, ж, р, т, ц, c, д, з, н, л Еда Запад Дата Тася
3 к, х, гх, у, о, а, э, ы A030 Дачка A031 Кава A032 Казка A033 Камень
k, h, g, u, o, ą, a, e, ę, y  Ha Gapa Bogaty Zagapić
к, x, г, у, о, а, э, ы Нога Гавкать Сказка Галя
4 ц’, с’, дз’, <з’, н’, л’, п’, ф’, б’, в’, м’, к’, х’, гх’, й, i A040 Мiтусня A041 Сябар A042 Немаўляты A043 Сядзеш
t’, c’, s’, d’, z’, n’, l’, ć, ś, dź, ź, r’, p’, f’, b’, w’, m’, k’, h’, g’, j, i Pnia Rozdziawa Posiada Kopiami
т’, с’, д’, з’, н’, л’, ч’, ш’, р’, п‘, ф’, б’, в’, м’, к’, x’, г’, й, и Шутя Тяпка Тяга Тянет

4. Процедура создания БД звуковых волн аллофонов

Процедура обработки созданной речевой базы включает фонемную сегментацию речевого сигнала, аллофонную маркировку сегментов и сохранение полученного набора сегментов естественной речевой волны в аллофонно-волновой БД. Совершенно очевидно, что хотя использование для синтеза макси-набора обеспечит наивысшее качество речи, его создание вручную весьма затруднительно (порядка 2000 аллофонов!), если не невозможно. Создание вручную мини-набора (порядка 300 аллофонов) вполне реально. Мини-набор так же, как и макси-набор, обеспечивает синтез произвольного текста, хотя качество синтезированной речи при этом будет не столь высоким. Однако благодаря созданию мини-набора аллофонов становится возможным автоматизировать процесс нарезки макси-БД аллофонных волн, а при необходимости и более крупных единиц — мультифонов,  реализующихся в виде последовательности аллофонов — диаллофонов, трифонов, слогов. Для автоматизации процесса создания БД аллофонных волн используется разработанная ранее  технология клонирования персонального голоса и дикции [5,6].

Общая схема процедуры создания мини- и макси-БД аллофоных волн представлена на рис.1.




Рис. 1. Процедура создания мини- и макси-БД звуковых волн аллофонов

Заключение

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

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

Список литературы

1. http://www.speech.cs.cmu.edu/comp.speech/.

2. Лобанов Б.М. Синтез речи по тексту // Четвёртая Международная летняя школа-семинар по искусственному интеллекту. Сб. науч. тр. Мн.:Изд. БГУ, 2000. С. 57-76.

3. Lobanov B.M., Tsirulnik L.I. Phonetic-Acoustical Problems of Personal Voice Cloning by TTS // Proc. of the International Conference Speech and Computer — SPECOM’2004, St.-Petersburg, 2004. P. 17 — 21.

4. Shpilewski E., Piurkowska B., Rafalko J., Lobanov B., Kiselov V., Tsirulnik. Polish TTS in Multi-Voice Slavonic Languages Speech Synthesis System. // Proc. of the International Conference Speech and Computer — SPECOM’2004, St.-Petersburg, 2004. P. 565 — 570.

5. Лобанов Б.М., Киселёв В.В. Автоматизация клонирования персонального голоса и дикции для систем синтеза речи по тексту // Международная конференция Диалог-2003.Сб. науч. тр. М, 2003. С. 417-424.

6. Цирульник Л.И. Автоматизированная система клонирования фонетико-акустических характеристик речи // Информатика. № 1(9).Мн., 2006. С. 37-46.