Научная статья на тему 'АЛГОРИТМЫ ПРЕОБРАЗОВАНИЯ "ФОНЕМА - АЛЛОФОН" ДВУЯЗЫЧНОГО СИНТЕЗАТОРА РЕЧИ'

АЛГОРИТМЫ ПРЕОБРАЗОВАНИЯ "ФОНЕМА - АЛЛОФОН" ДВУЯЗЫЧНОГО СИНТЕЗАТОРА РЕЧИ Текст научной статьи по специальности «Математика»

CC BY
87
29
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ФОНЕМА / АЛЛОФОН / РУССКИЙ ЯЗЫК / БЕЛОРУССКИЙ ЯЗЫК

Аннотация научной статьи по математике, автор научной работы — Гецевич Юрий Станиславович, Лобанов Борис Мефодьевич, Покладок Дмитрий Александрович

В статье рассмотрены особенности аллофонного набора для русского и белорусского языков. Предложен метод преобразования «Фонема - Аллофон» на основе экспертных правил. Реализован языконезависимый алгоритм преобразования «Фонема - Аллофон», общий для белорусского и русского языков, используемый в двуязычном синтезаторе речи по тексту.The peculiarities of allophones set for Russian and Belarusian languages are described. A method of phoneme-allophone conversion based on expert rules is proposed. Language independent phoneme-allophone conversion algorithm common to the Belarusian and Russian languages used in a bilingual text to speech synthesizer is implemented.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «АЛГОРИТМЫ ПРЕОБРАЗОВАНИЯ "ФОНЕМА - АЛЛОФОН" ДВУЯЗЫЧНОГО СИНТЕЗАТОРА РЕЧИ»

Алгоритмы преобразования «Фонема- Аллофон» двуязычного синтезатора речи

Гецевич Ю.С., кандидат технических наук Лобанов Б.М., доктор технических наук Покладок Д.А., аспирант

В статье рассмотрены особенности аллофонного набора для русского и белорусского языков. Предложен метод преобразования «Фонема-Аллофон» на основе экспертных правил. Реализован языконезависимый алгоритм преобразования «Фонема — Аллофон», общий для белорусского и русского языков, используемый в двуязычном синтезаторе речи по тексту.

• фонема • аллофон • русский язык • белорусский язык

• синтез речи по тексту

The peculiarities of allophones set for Russian and Belarusian languages are described. A method of phoneme-allophone conversion based on expert rules is proposed. Language independent phoneme-allophone conversion algorithm common to the Belarusian and Russian languages used in a bilingual text to speech synthesizer is implemented.

• phoneme • allophone • Russian language • Belarusian language

Введение

В потоке речи в зависимости от конкретных условий акустико-артикуляторные характеристики фонем изменяются, что приводит к появлению оттенков фонем, или аллофонов. Аллофоны подразделяются на позиционные и комбинаторные [1].

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

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

109

110

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

Эффекты ассимиляции в наибольшей степени проявляются при стечении двух или более согласных (например, смягчение и потеря взрывного сегмента согласной /т/ в слове «отнять — ат'н'ат"»).

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

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

Таблица 1

Позиционные аллофоны гласных

Фонема Аллофон

Полноударный (0-й степени редукции) Частично-ударный (1-й степени редукции) Безударный (2-й степени редукции) Безударный (3-йстепени редукции)

Язык Бел. Рус. Бел. Рус. Бел. Рус. Бел. Рус.

А A0xx A0xx А1хх A1xx A2xx A2xx A3xx A3xx

Е E0xx E0xx E1xx E1xx - E2xx - E3xx

I |0хх |0хх |1хх 11хх I2xx I2xx I3xx I3xx

О O0xx O0xx Oixx Oixx - - - -

и U0xx U0xx Ulxx Uixx U2xx U2xx U3xx U3xx

Y Y0xx Y0xx Y1xx Y1xx Y2xx Y2xx Y3xx Y3xx

Количество 6 6 6 6 4 5 4 5

Условие ПФА Перед знаком ударения (+) Перед знаком ударения (=) В 1-й предударной позиции, в начале или в конце слова В остальных случаях

Примечание к таблице 1:

«х» — неопределяемые данной таблицей 2-е и 3-и индексы комбинаторных аллофонов.

1. Аллофонный набор для гласных фонем русского и белорусского языков

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

В таблице 1 представлен набор позиционных аллофонов, их обозначения, количество и условия преобразования «Фонема-Аллофон» (ПФА).

Как видно из таблицы, особенностью белорусского языка является отсутствие безударных аллофонов 2-й и 3-й степени редукции у фонемы «Е». Характерным для обоих языков является отсутствие безударных аллофонов 2-й и 3-й степени редукции у фонемы «О».

В таблицах 2 и 3 представлены наборы комбинаторных аллофонов гласных, их обозначения, количество и условия ПФА, определяемые, соответственно, левым и правым контекстом.

Таблица 2

Комбинаторные аллофоны гласных, обусловленные левым контекстом

Условия ПФА (левый контекст) Комбинаторные аллофоны левого контекста

1 Пауза (начало синтагмы) Ах0х Ех0х |х0х Ох0х их0х —

2 Губные твёрдые согласные: Ц*, W, гласные и,О (внутри слова, на стыке слов) Ах1х Ех1х |х1х Ох1х их1х YX1X

3 Переднеязычные твёрдые согласные: С, D, N R, S, SH, Z, Т, ZH, Ц**, СН, DZH, гласные А, Е (внутри слова, на стыке слов) Ах2х Ех2х |х2х 0х2х их2х Y 1 х2х

4 Заднеязычные твёрдые согласные: G, Н, К, GH, гласная Y (внутри слова, на стыке слов) Ах3х Ех3х |х3х Охзх ихзх —

5 Мягкие согласные: М', Ц', R', J', V', Z', F', S', SH:, Н', В', D', G', Р', Г, К', ОТ, GH', гласная i (внутри слова) Ах4х Ех4х |х4х 0х4х их4х —

6 Мягкие согласные: М', Ц', R', J', V', Z', F', S', SH', Н', В', D', G', Р', T', К', GH', гласная i (на стыке слов) Ах5х Ех5х |х5х Ох5х их5х —

Количество левых контекстов 6 6 6 6 6 2

Примечания к таблице 2:

«х» — неопределяемые данной таблицей 1-е и 3-и индексы; L* — перед гласными А, Е, I, Y; L** — перед гласными О, и.

111

112

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

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

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

Таблица 3

Комбинаторные аллофоны гласных, обусловленные правым контекстом

Условия ПФА (правый контекст) Комбинаторные аллофоны правого контекста

1 Пауза(конец синтагмы) Ахх0 Ехх0 |хх0 Охх0 ихх0 Y 1 хх0

2 Губные твёрдые согласные: L, W, гласные и,О Ахх1 Ехх1 |хх1 Охх1 ихх1 Yw1

Переднеязычные и задне-

3 язычные твёрдые согласные: С, D, N. R, S, SH, Z, Т, ZH, ^, DZH, G, Н, К, GH, гласные А, Е, Y Ахх2 Ехх2 |хх2 0хх2 ихх2 Y)o<2

Мягкие согласные: М', N

4 и, в:, J', V', г, F', S', sн', Н', В', D', Р', Г, К', ОТ, GH', гласный I Ахх3 Ехх3 |хх3 Оххз иххз ^ой

Количество правых контекстов 4 4 4 4 4 4

Примечание к таблице 3:

«х» — неопределяемые данной таблицей 1-е и 2-е индексы.

Количество аллофонов для каждой из гласных фонем подсчитывается как произведение количеств позиционных и комбинаторных аллофонов, приведённых в таблицах 1-3.

Для русского языка:

N,=4*6*4=96; N,=4*6*4=96; N=4*6*4=9; N„=2*6*4=48; N,=4*6*4=96; N>,=4*2*4=32.

Для белорусского языка:

N,=4*6*4=96; N,=2*6*4=48; N=4*6*4=9; N„=2*6*4=48; N,=4*6*4=96; N=4*2*4=32.

Общее количество аллофонов гласных фонем: для русского языка №а|| = 464; для белорусского языка №а|| = 416.

На рис. 1,2 приведены примеры спектрограмм, иллюстрирующих комбинаторное влияние левого и правого контекстов на гласную «А» 0-й и 2-й степени редукции.

Рис. 1. Спектрограммы комбинаторных аллофонов полноударной

гласной «А»

2. Аллофонный набор для согласных фонем русского и белорус- ского языков

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

Глухие: Р, Р', Т, Г, К', С, ОН', Р, Р', Б, Б', БН, SH', Н', С', СН, SCH.

Звонкие: В, В', О, D', G', И, Т, ИН, Ц Ц', М, М', N N'02', 02Н, GH'.

3. Твёрдые заднеязычные: К, G, Н, GH.

4. Плавные V, V', и', W.

5. Дрожащие: Я, R'.

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

Рис. 2. Спектрограммы комбинаторных аллофонов гласной «А» 2-й степени редукции

113

114

согласные 1-й, 2-й и 3-й подгрупп, и проявляется только в 4-й и 5-й подгруппах. Позиционная изменчивость согласных также менее значительна, чем у гласных, для каждой из перечисленных подгрупп.

В таблице 4 представлен набор комбинаторных аллофонов согласных 1-й подгруппы (глухие), их обозначения и условия ПФА, определяемые правым контекстом фонемы, а также количество аллофонов для русского и белорусского языков.

Таблица 4

Комбинаторные аллофоны согласных 1-й подгруппы:

Р, Р', Т, Т', К', С, СН', F, Р, S, S', SH, SH', Н', С', СН, SCH

Условия ПФА правого контекста

№ пп Одиночная фонема Удвоенная фонема

Ударная гласная" Безударная гласная или любая согласная'2 Пауза (конец синтагмы) Ударная Безударная Пауза

1 2 3 4 5 6

1 P001 Р002 Р000 P101 P102 -

2 P 001 Р 002 Р 000 P 101 P 102 -

3 T001 Т002 Т000 T101 T102 T100

4 T 001 Т 002 Т 000 T 101 T 102 -

5 K 001 К 002 - K'101 K 102 -

6 C001 С002 С000 C101 C102 -

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

7 CH 001 СН 002 СН 000 CH'101 CH 102 -

8 F001 р02 р00 F101 F102 F100

9 F 001 F 002 F 000 F 101 F 102 -

10 S001 ^02 ^00 S101 S102 S100

11 S 001 S 002 S 000 S 101 S 102 -

12 SH001 SH002 ^000 SH101 SH102 -

13 SH 001 SH 002 SH 000 SH'101 SH 102 -

14 H 001 Н 002 - H101 H 102 -

15 C 001 С 002 С 000 C 101 C 102 -

16 CH001 СН002 СН000 CH101 CH102 -

Количество аллофонов в русском языке 71

Количество аллофонов в белорусском языке 66

Примечание к таблице 4:

(1 — полноударные гласные: А0, Е0, О0, и010 Y0;

<2 — гласные: А, Е1, О, и1 11 Y1 А2, Е2, и2 12 Y2 А3, Е3, и313 Y3;

согласные: P,P',TJ',K',C,CH',F,f,S,S',SH,SH',H',C',CH, SCH, К,в,Н,вН, В,В'^,й',

Приведём несколько примеров акустической реализации комбинаторных аллофонов согласных этой подгруппы. На рис. 3 представлена осциллограмма фразы: «Он сумел сам», в которой реализованы два типа аллофонов одиночной фонемы «S» в позициях перед безударной гласной в слове «сумел» и в позиции перед полноударной гласной в слове «сам». Как видно из

рисунка, аллофоны S002 и S001 незначительно отличаются по спектру, а основной отличительной характеристикой является их длительность: 145мс и 185мс, соответственно. Так как реальная длительность аллофонов зависит от темпа речи, то для их характеристики используют относительные значения длительности в сравнении, например, с длительностью аллофона в позиции перед полноударной гласной. Относительная длительность рассматриваемых аллофонов равна соответственно 0,75 и 1,0.

__ Jtrn

Дд!'

Рис. 3. Спектрограмма (внизу) и осциллограмма фразы: «Он сумел сам»

Рис. 4. Осциллограмма фразы: «А папа оптик или поп?»

На рис. 4 представлена осциллограмма фразы: «<А папа оптик или поп?», в которой реализованы три типа аллофонов одиночной фонемы «P», а именно:

P001 — в позициях перед ударными гласными в словах «папа» и «поп» с длительностями 122 мс и 117 мс (среднее значение — 120 мс);

P002 — в позициях перед безударной гласной в слове «папа» и в позиции перед согласной в слове «оптик» с длительностями 95 мс и 85 мс (среднее значение — 90 мс);

P000 — в позиции «конец синтагмы» в слове «поп» с длительностью 155 мс.

На рис. 5 представлена осциллограмма фраз:

«А поп падал? И поп Пахом?», в которых реализованы два типа аллофонов удвоенной фонемы «П», а именно:

P101 — на стыке слитно произносимых слов «поп» и «падал» перед ударной гласной с длительностью 220 мс;

115

116

Р102--на стыке слитно произносимых слов «поп» и «Пахом» перед безударной гласной с длительностью 175 мс;

Рис. 5. Осциллограмма фраз: «А поп па+дал? И поп Пахо+м?»

В этих фразах дважды присутстствует также аллофон Р001 с длительностями 130мс и 120мс (среднее значение — 125мс).

Относительные длительности аллофонов согласной «Р», рассчитанные в соответствии с данными рис. 4, 5, приведены в таблице 5.

Таблица 5

Относительная длительность аллофонов согласной «P»

Условия ПФА правого контекста Одиночная фонема Удвоенная фонема

Ударная гласная" Безударная гласная или любая согласная'2 Пауза (конец синтагмы) Ударная Безударная

1 2 3 4 5

Имя аллофона P001 Р002 Р000 P101 P102

Относительная длительность 1,00 0,75 1,30 1,75 1,40

Исследование относительной длительности остальных аллофонов этой подгруппы показали результаты, сходные с приведёнными в таблице 5.

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

Таблица 6

Комбинаторные аллофоны согласных 2-й подгруппы:

B, B', D, D', G', Z, Z', ZH, L, и, 1«, I«', N, N'DZ', DZH, GH'

№ п/п Условия ПФА правого контекста

Одиночная фонема Удвоенная фонема

Ударная гласная'1 Безударная гласная'2 Любая согласная'3 Пауза (конец синтагмы) Ударная Безударная

1 2 3 4 5 6

1 В002 В004 В001 - B102 B104

2 В 002 В 004 В 001 - B 102 B 104

3 ^02 ^04 ^01 - D102 D104

4 D 002 D 004 D 001 - D 102 D 104

5 Й 002 Й 004 Й 001 - G 102 G 104

6 ^02 ^04 ^01 - Z102 Z104

7 Z 002 Z 004 Z 001 - Z 102 Z 104

8 ^002 ^004 ^001 - ZH102 ZH104

9 ^02 ^04 Ц01 Ц00 L102 L104

10 L 002 L 004 L 001 L 000 L 102 L 104

11 М002 М004 М001 М000 M102 M104

12 М'002 М'004 М'001 М'000 M'102 M'104

13 N002 N004 N001 N000 N102 N104

14 N'002 N'004 N'001 N'000 N'102 N'104

15 ^ 002 ^004 DZ'oo1 - DZ'102 DZ'104

16 1^Н002 1^Н004 DZHoo1 - DZH102 DZH104

17 йН'002 Он'оо4 ^001 - GH'W2 104

Количество аллофонов в русском языке 76

Количество аллофонов в белорусском языке 86

Примечание к таблице 6:

(1 — полноударные гласные: А0, Е0, О0, и0, 10, Y0;

(2 — гласные: Аь Е^ О!, и! I! Y1 А2, Е2, и2 12 Y2 А3, Е3, и3 13 Y3

(3 — согласные: Р,Р\Т,Г,К\С,СН'^^'^^'^Н^Н',Н',С',СН, SCH, K,G,H,GH, B,B',D,D',G', Z,Z',ZH,L,L\M,M',N,N',DZ' ,DZH,GH' Д R',V,V',J', W.

Особенностью аллофонов 2-й подгруппы является выделение отдельного условия правого контекста: «Любая согласная», в отличие от 1-й подгруппы — «Безударная гласная или любая согласная». Это связано с тем, что при указанном условии между звонкой согласной 2-й подгруппы и последующей согласной, как правило, появляется специфическая «гласная вставка». Это явление иллюстрируется рисунком 6, где представлены осциллограммы и спектрограммы слов: «<Обня+л» и «Немно+го», в которых реализовано условие 3-го столбца таблицы 6. На осциллограмме и спектрограмме видно, что в слове «<Обня+л» у аллофона В001 появляется гласная вставка длительностью 55 мс м в слове «Немно+го» — у аллофона М001 длительностью 45мс (гласные вставки обозначены значком (+) и отмечены на спектрограмме штриховыми линиями).

В таблице 7 представлен набор комбинаторных аллофонов согласных 3-й подгруппы, их обозначения и условия ПФА, определяемые правым контекстом фонемы, а также количество аллофонов для русского и белорусского языков.

117

Рис. 6. Спектрограмма (внизу) и осциллограмма слов «Обня+л» и «Немно+го»

Таблица 7

Комбинаторные аллофоны согласных 3-й подгруппы: К, Э, Н, GH

№ пп Условия ПФА правого контекста

Ударная гласная и0 или 00 Ударная гласная Е0' |0 или Y0 Безударная гласная и1, и2, из, или 01 Безударная гласная А, Е, I или Y, или любая согласная (1 Пауза (конец синтагмы)

1 2 3 4 5

1 К001 К002 К003 К004 К000

2 ^001 ^002 ^003 ^004 —

3 Н001 Н002 Н003 Н004 Н000

4 ОН001 GH002 аНооз йНоо4 —

Количество аллофонов в русском языке 14

Количество аллофонов в белорусском языке 14

118

Примечание к таблице 7:

(1 — согласные: Р,Р',Т,Г,К\С,СН'^^'^^'^Н^Н',Н\С',СН, SCH, K,G,H,GH, В,В', D,D',G^Z,Z',ZH,L,L',M,M',N,N',DZ',DZH,GH',R, R',V,V',J',W.

Особенностью аллофонов 3-й подгруппы (твёрдые заднеязычные) является выделение 2-х отдельных ударных и безударных условий правого контекста: «гласная и или О» (губные гласные фонемы) и «гласная А0, Е0, 10 или Y0» (остальные гласные). Это связано с тем, что акустические характеристики твёрдых заднеязычных согласных в значительной степени зависят от типа последующей гласной. Особенно контрастное изменение акустических характеристик этих согласных происходит при соседстве с погубленными и неогубленными гласными или согласными. Это явление иллюстрируется рисунком 7, где представлены осциллограммы и спектрограммы слов: «хутор — ху+тар», «хата — ха+та», «кто — хто+», в которых реализованы условиях 1-го, 2-го и 4-го столбца таблицы 7. На спектрограмме видно, что частотная локализация аспиративного шума у аллофона Н001 в слове «hu+tar» существенно отличается от частотной локализации шума у аллофона Н002 в словах <Фа+Ш» и «Мо+».

Рис. 7. Спектрограмма (внизу) и осциллограмма слов «Хутор», «Хата», «Кто»

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

Таблица 8

Комбинаторные аллофоны согласных 4-й подгруппы: V, V', и', W

\ Правый Одиночная фонема Удвоенная фонема

контекст Левый \ контекст Ударная гласная '1 Безударная гласная '2 Любая согласная '3 Пауза 'конец синтагмы) Ударная Безударная

1 2 3 4 5 6

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Любая согласная 1 V001 ^02 ^03 — - —

V 001 V 002 — — - —

J 001 J 002 — — - —

Любая гласная 2 V011 ^>12 Vo13 — V111 V112

V'011 V 012 V 013 — V'111 V'112

J 011 J 012 J 013 J 010 J 111 J 112

W011 Wo12 Wo13 Wo10 — —

Количество аллофонов в русском языке 24

Количество аллофонов в белорусском языке 28

Примечание к таблице 8: (1 — полноударные гласные: A0

En, Оп

(2

— гласные: A^ E^ О!, U^ I^ Yt A2, E2

Uq. IQ. Y0;

U2, I2. Y2. A3.

E3

U3. I3. Y3;

(3 — согласные: P.P'.T.T'.K'.C.CH'.F.F'.S.S'.SH.SH'.H' ZH.L.L'.M.M'.N.N',DZ' .DZH.GH' ,R. R'.V.V'.J'. W.

C,CH. SCH. K.G.H.GH. B.B'.D.D'.G'.Z.Z'.

119

Особенностью аллофонов 4-й подгруппы (плавные) является наличие 2-х условий левого контекста: «Любая согласная» и «Любая гласная». Акустические характеристики этих согласных в значительной степени зависят от указанных условий. Это иллюстрируется рисунком 8, где представлены осциллограммы и спектрограммы слов: «Майка», «Своя», «Пьяный», в которых реализованы условия 3-го столбца и 2-й строки таблицы 8 аллофона — J'01з в слове «Майка», 1-го столбца и 2-й строки аллофона — J'011 в слове «Своя», а также 1-го столбца и 1-й строки аллофона — J'001, 4-го столбца и 2-й строки аллофона — J'010 в слове «Пьяный». На спектрограмме ясно видны их существенные отличия.

120

Рис. 8. Спектрограмма (внизу) и осциллограмма слов «Майка», «Своя», «Пьяный»

В таблице 9 представлен набор комбинаторных аллофонов согласных 5-й подгруппы (дрожащие), их обозначения и условия ПФА, определяемые левым и правым контекстом фонемы, а также количество аллофонов для русского и белорусского языков.

Таблица 9

Комбинаторные аллофоны согласных 5-й подгруппы: Я, Я'

Правый контекст Левый контекст Одиночная фонема Удвоенная фонема

Глухие согласные (4 Любая гласная (1 Звонкие согласные (5 Пауза (конец синтагмы)

1 2 3 4 5

Любая гласная*1 1 ^03 ^02 ^01 ^00 ^02

Я 003 Я 002 Я 001 Я 000 Я 102

Твёрдые губные согласные*2 2 ^>13 ^12 ^>11 ^10 —

Я 013 Я 012 Я'011 Я 010 -

Остальные согласные*3 3 ^23 ^22 ^21 ^20 —

Я 023 Я 022 Я 021 — -

Количество аллофонов в русском языке 25

Количество аллофонов в белорусском языке 13

Примечание к таблице 9:

(1 - гласные: Ао, Е„, О„, Ыо. 1о, Yo А!, Еь Оь Ц, I,,Y1, А2, Е2, и2,12, Y2, А3, Е3, Yз; (2 — согласные: В, Р, F, М, V, W, L;

(3 — согласные: С, D, N, R, S, SH, Z, Т, ZH, СН, DZH, SCH, Н, G, К, GH, Р',Т',К',СН'^'^Н', H',C',B',D',G',Z',U,M',N',DZ,GH', R',V',J';

(4- согласные: Р,Р,Т,Т',К',С,СН'^,РД&£Н^Н',Н',С,СН, SCH, K,G,H,GH; (5- согласные: В,В', D,D',G',Z,Z',ZH,L,L',M,M',N,N'rDZ'rDZH,GH',R, ^/У/У'Д',»:

Особенностью аллофонов 5-й подгруппы (согласные R и R') является наличие 2-х дополнительных условий левого контекста: «Твёрдые губные согласные» и «Остальные согласные». Акустические характеристики согласных R и R' в значительной степени зависят от указанных условий. Это иллюстрируется рисунком 9, где представлены осциллограммы и спектрограммы слов: «<Брал. Драл. Брил. Дрель», в которых реализованы условия 2-го столбца и 2-й строки таблицы 9 для аллофона — R012 в слове «Брал», 2-го столбца и 3-й строки для аллофона — R022 в слове «Драл», а также 2-го столбца и 2-й строки для аллофона — R'012 в слове «Брил», 2-го столбца и 3-й строки для аллофона — R'022 в слове «<Дрель». На спектрограмме ясно видны их существенные отличия.

Рис. 9. Спектрограмма (внизу) и осциллограмма слов «Брал. Драл. Брил. Дрель»

Общее количество аллофонов согласных фонем — №аИ, подсчитываемое как их сумма аллофонов в каждой из 5-ти подгрупп (см. таблицы 1.10-1.14), равно:

• для русского языка №аИ = 71 + 76 + 14 + 24 + 25 = 210.

• для белорусского языка №а|| = 66 + 86 + 14 + 28 + 13 = 207.

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

3. Алгоритм ПФА двуязычного синтезатора речи

Для записи описанных выше экспертных правил ПФА используется следующий способ: правила записаны в виде классификации групп центрального элемента, левого и правого

121

Гецевич Ю.С., Лобанов Б.М., Покладок Д.А. Алгоритмы преобразования «Фонема - Аллофон» двуязычного синтезатора речи

122

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

Ресурсы разработанного алгоритма ПФА имеют следующий вид:

#Алфавит фонем

АО А1 А2 А3,Е0, Е1, Е2 , Е3 ,10,11 ,12,13,00,01 ,У0,У1 ,У2,У3 , ио, и1 , и2, из, В, В' ,й, О, в, в',

Z,Z ^Н, I , I' ,М, М , Ы, Ы',Р,Р ,Т,Т, К, К', С, СН ,Е, Р , в, в', Н, Н', БН, БН' УУ ,3' , Я, Я', С',

сн,всн,вн,ог^н,вн'^,# ,

#Центральные группы фонем

С0:,А0,А1,А2,А3,Е0,Е1,Е2,Е3,Ю,11,12,13,У0,У1,У2,У3, С1:,и0,и1,и2,и3,00,01,

С2:,Р,Р',Т,Т,К,С,СН',Р,Р,Б,Б',БН,БН',Н',С',СН,БСН, С6:,Я,Я',

#Группы фонем левого контекста

1Ю:,#,

11: ,Р, В, Е,У, М, ио, и1, и2, из, 00,01Ж

L2:,SHZH,Я,T,C,S,D,Z,N,L,AЮ,A1 ,А2,А3,ЕЮ,Е1 ,Е2,Е3,УЮ,У1 ,У2,У3,CH,SCH,DZH, 13:,К,в,Н,вН,

и1: ,В,В' Р,П , в, в'^ ^Н, L,И, М, М', Ы,Ы',Р,Р',Т,Т',К,К, С, СН', РР,Б, Б', БН,БН',Н, Н',У, У ,Я,Я', С', СН, БСН, вНЩ Щ.Н, вН',Ж,#,

#Группы фонем правого контекста

Я0: #

Я1: ,Р, В, РУ, М, L Ж, 00,01, ио, и1 , и2, из,

Я2: ,БН ZH,Я,T , С, Б, DZ,N,K,в ,Н А0 А1 А2 А3 , Е0 , Е1,Е2 , Е3,У0,У1 ,У2,У3,СН , DZH , Б, СН ,

Я3: ,Р,Т , К1, СН'Р, Б', БН ,Н', в',В', ,М', Ы'У,3', Я1,10,11,12,13, С Щ , вН',

Я14:А0А1 А2А3,Е0,Е1 ,Е2,Е3,У0,У1 ,У2,У3,10,11 ,12,13,00,01 ,и0,и1 ,и2,и3,! #Правила преобразования для каждой центральной группы фонем

C0

L0R0-00 L5R0-10 L6R0-20

C1

L0R0-00 L1R0-10 L2R0-20

C2

L10R0-00 L10R4-01 L10R5-02

Алгоритм преобразования «Фонема-Аллофон» состоит из 5 этапов:

1. Определение центральной, правой и левой фонем.

2. Определение первого индекса центральной фонемы.

3. Определение групп для правой контекстной фонемы.

4. Определение групп для левой контекстной фонемы.

5. Определение по группам для левой и правой фонем второго и третьего индекса центральной фонемы.

Для оптимизации вычисления входные ресурсы обрабатываются в процессе инициализации синтеза: контекстные группы записываются в хэш-таблицы с индексированными ключами названия групп, правила преобразования — в массивы с индексами левого и правого контекстов.

Входные данные алгоритма:

1) последовательность фонетических транскрипций синтагм входного текста Sph;

2) последовательность количества слогов в каждой синтагме №у!. Ресурсы алгоритма:

1. Множество гласных фонем Мэм={Мэм1,...,МэМ|чу(м}, где NVow — количество гласных фонем;

множество согласных фонем Соп={Соп1,.,Соп|Соп}, где 1Соп — количество согласных фонем; множество разделителей D={D1,...,DND} (заметим, что D1 является символом начала или конца синтагмы), где ND — количество разделителей; множество обозначений словесных ударений Sstr={Sstr1, Sstr2}, Sstr1 — символ полноударности, Sstr2 — символ частичноударности.

2. Фонемные группы для центральных фонем С={<№теС1,С1>,...,<1атеС|С,С|С>}, т=1,., 1С,

где См={РИСтге{УошиСоп}|г=1,...,ЫСт} , где Ст — множество фонем группы, 1атеСт — её уникальное название. Заметим, что фонемы РЬ|Ст,г не могут использоваться в множестве С не больше одного раза.

Фонемные группы для левых фонем L={<NameL1,L1>,...,<NameL1,LNL>}, п=1.....NL, где

{PhLn,se{VowUConUD}|s=1,...,NLn} , где Ц, — множество фонем группы, 1атеЦ1 — её уникальное название.

Фонемные группы для правых фонем R={<NameR1,R1>,...,<NameRNR,RNR>}, р=1.....NR, где

Rp={PhRp,te{VowUConUD}|t=1,...,NRp}, где Rp — множество фонем группы, NameRp — её уникальное название.

Заметим, что каждая группа фонем имеет уникальное название, например «С2», «Ц1», <^13». Первый элемент названия отражает принадлежность к месту расположения фонемы (С — группы для центральных фонем, Ц — группы для левых фонем, R — группы для правых фонем), второй — определённый состав фонем, входящих в данную группу.

3. Для каждой фонемной группы С^ 1Г1=1,...,1С правила преобразования «Фонема—

Аллофон» RAm={<LR1,Index1>,...,<LRNRAm,IndexNRAm>}, NRAm — количество пар элементов правил LR={LR1,...,LRNRAm} и Ыех^Ыех^.^Ыех^,^}.

Выходные данные:

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Последовательность аллофонных транскрипций синтагм Sal.

Функция F(LRi, NameLj, NameRk) осуществляет проверку, равен ли первый элемент правил преобразования «Фонема—Аллофон» LRi объединению названий групп для левых NameLj и правых NameRk фонем.

Г0, LR ф NameL. ^ NameR,;

i . k

F(LR¡, NameL, NameRJ =

1, LR = NameL. NameR,.

i j к

123

124

Структура алгоритма:

Шаг 1. Полагаем, что Зрк =( , Ызу1 = ( АЗД — количе-

ство синтагм с расписанными фонетическими транскрипциями.

Шаг 2. Для каждой синтагмы в фонемном виде 5р/г„ ¡=1,...,ШрИ (заметим, что =[ ^Рк^, ШЬ — количество фонем в синтагме) выполняем шаги 3-19. По завершении цикла переходим к шагу 20. Шаг 3. Принимаем текущее количество слогов в синтагме БрИ равным муТ:=0;

Шаг 4. Для каждой последовательности фонем РИи, РИ, РИ++1 синтагмы БрИ выполняем шаги 5-18, где]=МРЬ...,1. Причём должна выполняться следующая система условий:

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

Шаг 5. Если фонема Phj eVow, то переходим к шагу 6. Иначе переходим к шагу 10.

Шаг 6. Увеличиваем количество слогов в синтагме Sph,- на единицу NsylT:=NsylT+1.

Шаг 7. Если Phj+1 = Sstr, (Sstr,=/+/), то фонема Phj является полноударной. Тогда первый индекс аллофона IndexA принимает значение 0, а именно IndexA:=0. Затем за фонему Phj+1 принимаем фонему с индексом j+2 с последовательности фонем Sph, а в последовательности фонем Sph, удаляем фонему с индексом j+1. Общее количество фонем в последовательности Sphi уменьшаем на 1, NPh:=NPh-1. Запоминаем, что текущая гласная Phj ударная через FlagSV:= 1, и переходим к шагу 13.

Шаг 8. Если Ph++1 = Sstr2 (Sstr2=/=/), то фонема Phj является частичноударной. Тогда первый индекс аллофона IndexA принимает значение 1, а именно IndexA:=1. Затем за фонему Phj+1 принимаем фонему с индексом j+2 с последовательности фонем Sph,, а в последовательности фонем Sphi удаляем фонему с индексом j+1. Общее количество фонем в последовательности Sph, уменьшаем на 1, NPh:=NPh-1. Запоминаем, что текущая гласная Phjударная через FlagSV:=1, и переходим к шагу 13.

Шаг 9. Если FlagSV = 0 и фонема Phj не находится в крайнем левом NsylT ф 1 или крайнем правом NsylT ф Nsyl, слоге, то данная фонема Phj является безударной гласной второй степени редукции, тогда первый индекс аллофона IndexA принимает значение 3, а именно IndexA:=3. Иначе, она является безударной гласной первой степени редукции, тогда первый индекс аллофона IndexA принимает значение 2, а именно IndexA:=2. Переходим к шагу 13.

Шаг 10. Если данная фонема согласная, т.е. Phj eCon, то переходим к шагу 11. Иначе переходим к шагу 12.

Шаг 11. Если фонема Phj равна первой левой фонеме Phj-1 относительное её (Ph, = Ph h1), то она считается удвоенной, т.е. IndexA:=1. Тогда за фонему

Phj_j принимаем фонему с индексом j-2 с последовательности фонем Sph, а в последовательности фонем Sphi удаляем фонему с индексом j-1, общую нумерацию текущей фонемы уменьшаем на 1, т.е. j:=j-1, ибо общее количество фонем уменьшилось на 1 в последовательности фонем Sph NPh:=NPh-1. Иначе, данную фонему считаем одинарной IndexA:=0. Переходим к шагу 13.

Шаг 12. Если Phj является разделительным элементом, т.е. Phj eD, , то запоминаем его во временной переменной TEMP.=Phj и переходим к шагу 18.

Шаг 13. Определяем множество фонемных групп, в которые входит центральный элемент Phj.

Cx={<NameCm,Cm>\PhCmreCmCmeC,m=1,...,NC,r=1,...,NCm, при условии PhCmr=Phj}

Учитывая формат правил преобразования «буква-фонема», множество Cx состоит из одного элемента. Запоминаем индекс m, при котором выполнилось условие PhCmr = Phf т.е. iCx:=m. По индексу iCx находим соответствующие этому множеству правила преобразования RAiCX.

Определяем множество фонемных групп, в которые входит левый элемент Phj1: Lx={<NameLn,Ln>\PhLnseLnLneL,n=1,...,NL,s=1,...,NLn, при условии PhLns=Phj]

Определяем множество фонемных групп, в которые входит правый элемент Phj+1.

Rx={<NameRp,Rp>\PhRpJeRp,RpeRn=1,...,NR,t=1,...,NRp, при условии PhRpt=Phj}

Шаг 14. Для каждой фонемной группы левого контекста Lxkl, Lx={Lx1,...,LxNIJ, k1=1,...,NLx, где NLx — количество групп для левого контекста Phj-1, выполняем шаги 15-16. По завершении цикла переходим к шагу 17.

Шаг 15. Для каждой фонемной группы правого контекста Rxk2, Rx={Rx1,...,RNRJ, k2=1,...,NRx, где NRx — количество групп для правого контекста Phj+1, выполняем шаг 16.

Шаг 16. Для первого элемента LRq каждого правша RAiCx_ q=1,...,NRAiCx проверяем значение функции F(LRq,NameLk1,NameRk2). Если F(LRq,NameLtl1,NameRk2)= 1, то индекс q определяет соответствующий второй элемент правила RAiCx_Indexq. Этот элемент Indexq является вторым и третьим индексом аллофона IndexB:=Indexq.

Шаг 17. Находим полное значение аллофона TEMP:=PhjuIndexA^>IndexB

Шаг 18. Добавляем TEMP к аллофонной транскрипции синтагмы Sali=TEMP^Sali и переходим к шагу 4.

Шаг 19. Добавляем аллофонную транскрипцию синтагмы к выходному аллофонному тексту Sal:=Sal^Salt, и переходим к шагу 2.

Шаг 20. Конец алгоритма.

Заключение

Сходство русского и белорусских языков позволило создать универсальный двуязычный алгоритм ПФА, в котором фонетические правила преобразования вынесены в отдельные ресурсы. Благодаря этому реализуется возможность достаточно простого изменения (уточнения) этих правил экспертами-лингвистами.

125

Для тестирования алгоритма ПФА были собраны корпуса для русского и белорусского языков из электронных словарей, в которых собраны слова со всеми возможными в данных языках 5-ти символьными комбинациями. Для русского языка корпус составил 101958 слов, для белорусского — 102169. Результаты тестирования для двух языков приведены в таблице 10.

Таблица 10

Результаты тестирования алгоритма

Русский язык Белорусский язык

Количество слов 101 958 102 169

Количество аллофонов 897 635 934 583

Количество правильных аллофонов 871 989 903 216

Процентное отношение корректно преобразованных аллофонов 97.143% 96.644%

Алгоритм на основе регулярных правил, реализованный в синтезаторе речи «МультиФон» и его мобильной реализации [5], позволил достичь достаточно высокой точности ПФА (около 97% правильно преобразованных фонем для русского и белорусского языков).

Литература

1. Матусевич М.И. Современный русский язык. Фонетика. М., 1976.

2. Лобанов Б.М., Пьорковска Б., Рафалко Я., Цирульник Л.И., Шпилевский

3. Фоне- тикоакустическая база данных для многоязычного синтеза речи по тексту на славянских языках // Компьютерная лингвистика и интеллектуальные технологии: труды междунар. конф. Диалог'2006, Бекасово, 31мая — 4 июня 2006 г./ Институт проблем информатики РАН; отв. ред.: Н.И. Лауфер [и др.]. М.: Наука, 2006. С. 357-363.

3. Зиновьева Н.В., Кривнова О.Ф. Прикладные системы с использованием фонети- ческих знаний // Проблемы фонетики: сб. статей. М.: Прометей, 1993. С.288-300.

4. Лобанов Б.М., Цирульник Л.И. Компьютерный синтез и клонирование речи. Мн.: Белорусская наука, 2008.

5. Цирульник Л.И., Покладок Д.А. Система синтеза речи по тексту для мобильных телефонов // Речевые технологии. 2010. № 1. С. 83-91.

126

i Надоели баннеры? Вы всегда можете отключить рекламу.