Синтез мовлення

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Си́нтез мо́влення (СМ) — перетворення друкарського тексту на мовний сигнал (в широкому сенсі — відновлення форми мовного сигналу за його параметрами.[1]

Комп'ютерна система, що здійснює синтез мовлення, називається синтезатором мовлення, (СМ) та може бути побудованою на основі програмного чи апаратного рішення.

Система що спроможна виконувати конвертування нормального друкованого тексту на аудіо в реальному часі називається текст-у-мовлення (ТУМ, англ. text-to-speech, TTS).

Історія[ред. | ред. код]

Синтез мовлення має довгу історію, що обросла легендами. Ще в Х столітті Герберту Аврілакському приписували володіння мистецтвом виготовлення терафіма — мертвої голови, що говорить. Зроблена з бронзи, ця голова словами «так і ні» відповідала на питання будь-кого, хто до неї звертався. В середині століття монах-домініканець Альберт фон Больштедт й англійський філософ-природодослідник Роджер Бекон також намагалися створювати перші зразки голів, що «говорять».

В кінці XVIII століття данський учений Крістіан Кратценштейн, член Російської Академії Наук, створив модель мовного тракту людини, здатну вимовляти п'ять довгих голосних звуків (а, е, і, о, у). Модель була системою акустичних резонаторів різної форми, що видавали голосні звуки за допомогою вібруючих язичків. У 1778 австрійський учений Вольфганг фон Кампелен доповнив модель Кратценштейна моделями язика й губ та представив акустичну-механічну машину, що говорить, здатну відтворювати певні звуки і їх комбінації. Шиплячі і свистячі видувалися за допомогою спеціального міха з ручним управлінням. У 1837 учений Чарльз Уїтстоун представив покращений варіант машини, здатний відтворювати голосні і більшість приголосних звуків. А в 1846 році Джозеф Фабер продемонстрував свій euphonia, орган, що говорить. В ньому було реалізовано спробу синтезування не тільки мовлення, але і співу.

В кінці XIX століття відомий учений Олександр Белл створив власну механічну модель, що «говорить», дуже схожу за конструкцією з машиною Уїтстоуна. З початком XX століття почалася ера електричних машин, і учені дістали можливість використовувати генератори звукових хвиль і на їх базі будувати алгоритмічні моделі.

У 1930-х роках працівник Bell Labs Гомер Дадлі, працюючи над проблемою збільшення передавальної здатності у телефонії, розробив вокодер (скорочено від англ. voice — голос, англ. coder — кодувальник) — керований за допомогою клавіатури електронний аналізатор і синтезатор мовлення. Ідея Дадлі полягала в аналізуванні голосового сигналу, розбору його на частини і пересинтезації у менш вимогливу до пропускної спроможності лінію. Вдосконалений варіант вокодера Дадлі, VODER, було представлено на Нью-Йорській всесвітній виставці 1939 року.[2]

Перші синтезатори мовлення звучали досить неприродньо, і часто було важко розібрати вироблювані ними фрази. Проте якість синтезованого мовлення постійно поліпшувалася, і мовлення, що породжується сучасними системами синтезу, деколи не відрізнити від реальної людської мови. Але незважаючи на успіхи електронних синтезаторів мовлення, дослідження в області створення механічних синтезаторів мовлення ведуться досі, наприклад, для використання в роботах-гуманоїдах.[3]

Перші системи синтезу мовлення на основі обчислювальної техніки почали з'являтися в кінці 1950-х років, а перший синтезатор «текст-мовлення» було створено 1968 року в Японії[4]. У 1961, фізик Джон Ларрі Келлі[en] і його колега Луї Герстман[en][5] вперше використали комп'ютер IBM 704 для синтезу співу — була записана пісня «Daisy Bell», акомпанемент за допомогою програмних засобів того ж комп'ютера створив Макс Вернон Метьюз.

Способи синтезу мовлення[ред. | ред. код]

Всі способи синтезу мовлення можна підрозділити на три групи:

  • параметричний синтез;
  • конкатенативний, або синтез компіляції (компілятивний);
  • синтез за правилами.

Параметричний синтез[ред. | ред. код]

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

Компіляційний синтез[ред. | ред. код]

Компіляційний синтез зводиться до складання повідомлення із заздалегідь записаного словника початкових елементів синтезу. Розмір елементів синтезу не менше слова. Очевидно, що зміст повідомлень, що синтезуються, фіксується обсягом словника. Як правило, число одиниць словника не перевищує декількох сотень слів. Основна проблема в компілятивному синтезі — обсяги пам'яті для зберігання словника. У зв'язку з цим використовуються різноманітні методи стиснення/кодування мовного сигналу. Компілятивний синтез має широке практичне застосування. За кордоном різноманітні пристрої (від військових літаків до побутових пристроїв) оснащуються системами мовної відповіді. У нашій країні системи мовної відповіді до недавнього часу використовувалися в основному в області військової техніки, зараз вони знаходять все більше застосування в повсякденному житті, наприклад, в довідкових службах операторів стільниковому зв'язку при отриманні інформації про стан рахунку абонента.

Повний синтез мовлення за правилами[ред. | ред. код]

Повний синтез мовлення за правилами (або синтез за друкарським текстом) забезпечує управління всіма параметрами мовного сигналу і, таким чином, може генерувати мовлення за заздалегідь невідомим текстом. В цьому разі параметри, отримані при аналізі мовного сигналу, зберігаються в пам'яті так само, як і правила з'єднання звуків у слова і фрази. Синтез реалізується шляхом моделювання мовного тракту, застосування аналогової або цифрової техніки. Причому в процесі синтезування значення параметрів і правила з'єднання фонем вводять послідовно через певний часовий інтервал, наприклад 5-10 мс. Метод синтезу мовлення за друкарським текстом (синтез за правилами) ґрунтується на запрограмованому знанні акустичних і лінгвістичних обмежень і не використовує безпосередньо елементів людської мови. У системах, заснованих на цьому способі синтезу, виділяється два підходи. Перший підхід направлений на побудову моделі мовотворчої системи людини, він відомий під назвою артикуляторного синтеза. Другий підхід — формантний синтез за правилами. Розбірливість і натуральність таких синтезаторів може бути доведена до величин, порівнянних з характеристиками природної мови.

Синтез мовлення за правилами з використанням попередньо запам'ятованих відрізків природної мови, — це різновид синтезу мовлення за правилами, яка набула поширення у зв'язку з появою можливостей маніпулювання мовним сигналом в оцифрованій формі. Залежно від розміру початкових елементів синтезу виділяються такі види синтезу:

  • мікросегментний (мікрохвильовий);
  • алофонічний;
  • дифонний;
  • напівскладовий;
  • складовий;
  • синтез з одиниць довільного розміру.

Зазвичай як такі елементи використовуються напівсклади — сегменти, що містять половину приголосного і половину суміжного з ним голосного. При цьому можна синтезувати мову за заздалегідь не заданим текстом, але важко управляти інтонаційними характеристиками. Якість такого синтезу не відповідає якості природної мови, оскільки на границях зшивання дифонів часто виникають спотворення. Компіляція мовлення із заздалегідь записаних словоформ також не розв'язує проблеми високоякісного синтезу довільних повідомлень, оскільки акустичні і просодичні (тривалість і інтонація) характеристики слів змінюються залежно від типу фрази і місця слова у фразі. Це положення не міняється навіть при використанні великих обсягів пам'яті для зберігання словоформ.

Застосування синтезу мовлення[ред. | ред. код]

Синтез мовлення за текстом або кодом повідомлення можливо використовувати в техніці зв'язку, в інформаційно-довідкових системах, для допомоги сліпим і німим, при управлінні людиною з боку автомата, для видачі інформації про технологічні процеси, у військовій і космічній техніці, у робототехніці, в акустичному діалозі людини з комп'ютером. Взагалі, синтез мовлення може бути потрібен в усіх випадках, коли отримувачем інформації є людина.

Україномовні ТУМ / Ukrainian TTS[ред. | ред. код]

Докладніше: Українські TTS

До середини 2016 року, існувало 4 напівпрофесійні TTS системи з підтримкою української мови: Розмовлялька (2 голоси: чоловічий Анатоль/Стьопа та жіночий Руся), CyberMova/VymovaPlus/VymovaPro (4 голоси: жіночий Наталка та чоловічі Опанас, Дмитро, та Слава, UkrVox (1 голос: чоловічий Ігор Мурашко) та RHVoive (чоловічий Анатоль та жіночий Наталка). Найякіснішими з цих 4 україномовних TTS були Анатоль та Наталка від RHVoice. Поява цих двох україномовних голосів у системі російської програмістки Ольги Яковлєвої RHVoice у лютому 2016 року сталася завдяки зусиллю спеціалістів Соціально-реабілітаційного центру незрячих Харкова, які для чоловічого голосу "Анатоля" змогли залучити відомого радіоведучого, "голоса Харківського метро" та диктора харківського суспільного радіо UA:Українське радіо Анатолія Подорожка.

У 2016-2019 роках з'явилася перша професійна система українського мовлення на основі Google WaveNet Text-to-Speech: спочатку 2016 року Google додала україномовний WaveNet жіночий голос лише до вебверсії Google Translate, 5 квітня 2017 року Google також оновила свій офіційний застосунок Google Text-to-Speech для Android до версії 3.11.12, додавши підтримку україномовного WaveNet жіночого голосу,[6] а 21 лютого 2019 року Google також додала україномовний WaveNet жіночий голос до вебверсії Google Cloud Text-to-Speech.[7][8][9]

У вересні 2018 року, разом з оновленням для Nuance Vocalizer TTS для Android до версії 3.1.7, з'явилася друга професійна система української мови Text-to-Speech під назвою Lesya розроблена компанією Cerence/Nuance; цей український TTS голос Lesya став доступний у таких продуктах як Nuance Vocalizer TTS (Windows/Android),[10] Nuance Mix,[11][12] Цей новий український голос Lesya також доступний у TTS продуктах незалежних пере-постачальників, як от Code Factory,[13] NextUp,[14][15] KobaVision/KobaSpeech[16] тощо.

Див. також[ред. | ред. код]

Примітки[ред. | ред. код]

  1. У такому визначенні перетворення звукового тиску в електричну напругу і навпаки в мікрофоні і телефоні, а також запис і відтворення, наприклад, з магнітних носіїв не є синтезом. Дискретизація і квантування мовного сигналу при імпульсно-кодовій модуляції також не відносяться до синтезу мовлення, але генерація мовного сигналу в вокодерних системах може вважатися синтезом.
  2. На сторінці Dennis Klatt's History of Speech Synthesis, присвяченій історії розвитку синтезаторів мовлення, представлено звукові файли із записами різних синтезаторів мовлення. Є файл із записом звучання вокодера Хомера Дадлі.
  3. Наприклад, японські учені з лабораторії Таканіси (takanishi Laboratory) університету Васеда (waseda University) працюють над створенням антропоморфічної моделі робота, що говорить. Остання їх розробка (2005) — модель Waseda Talker No.5 — має весь набір мовних інструментів: легені, гортань, м'яке піднебіння, язик, зуби, губи тощо. В цілому всі ці органи мають 18 мір свободи. На їх сторінці Anthropomorphic Talking Robot Waseda-talker Series можна ознайомитися з докладнішою інформацією, зокрема фотографіями і відеозаписами.
  4. Klatt, D (1987). Review of text-to-speech conversion for English. Journal of the Acoustical Society of America. 82 (3): 737–93. Bibcode:1987ASAJ...82..737K. doi:10.1121/1.395275. PMID 2958525. 
  5. Lambert, Bruce (21 березня 1992). Louis Gerstman, 61, a Specialist In Speech Disorders and Processes. The New York Times. 
  6. Google Text-to-speech 3.11.12 improves voices and adds support for Ukrainian, Czech, Bangla, Khmer, more. androidpolice.com, 2017/04/11 (англ.)
  7. Google Cloud Text-to-Speech: Supported voices and languages. cloud.google.com, 2020 (англ.)
  8. Google Cloud Text-to-Speech adds 31 WaveNet voices, 7 languages and dialects. venturebeat.com, 2019/02/21 (англ.)
  9. Listing out voices. cran.r-project.org, 2020 (англ.)
  10. Cod Factory Vocalizer TTS Voice. play.google.com, 2018 (англ.)
  11. Nuance Mix: Languages and TTS Voices. docs.mix.nuance.com. 2021 (англ.)
  12. Cerence TTS Factsheet. cerence.com. 2021 (англ.)
  13. Code Factory: Speech synthesis [Архівовано 2020-02-15 у Wayback Machine.]. codefactoryglobal.com. 2018 (англ.)
  14. NextUp: Cerence TTS Voices. nextup.com. 2021 (англ.)
  15. Nuance TTS: Lesya (Ukrainian), sample. nextup.com. 2018 (англ.)
  16. KobaSpeech 4 With Vocalizer Lesya — Ukrainian. kobaspeech.com. 2018 (англ.)

Посилання[ред. | ред. код]