Praca dyplomowa inżynierska

Podobne dokumenty
Transkrypcja fonetyczna i synteza mowy. Jolanta Bachan

Synteza mowy. opracowanie: mgr inż. Kuba Łopatka

TEORIA WYTWARZANIA DŹWIĘKÓW

Automatyczne rozpoznawanie mowy - wybrane zagadnienia / Ryszard Makowski. Wrocław, Spis treści

Rozpoznawanie mowy za pomocą HTK

Lokalizacja Oprogramowania

Akustyka mowy wprowadzenie. Opracował: dr inż. Piotr Suchomski

P R Z E T W A R Z A N I E S Y G N A Ł Ó W B I O M E T R Y C Z N Y C H

Synteza mowy (TTS) Rozpoznawanie mowy (ARM) Optyczne rozpoznawanie znaków (OCR) Jolanta Bachan

Efekt Lombarda. Czym jest efekt Lombarda?

Efekty kształcenia dla kierunku studiów INFORMATYKA, Absolwent studiów I stopnia kierunku Informatyka WIEDZA

1.Klasyfikacja głosek języka polskiego. 2.Układ narządów artykulacyjnych przy wymowie wybranych głosek.

Zarządzenie Nr 1/03/2019 Rektora Staropolskiej Szkoły Wyższej w Kielcach z dnia 10 marca 2019 r.

PRACA DYPLOMOWA INŻYNIERSKA. Mobilny system wspomagający pracę. terminala kontenerowego

Efekt kształcenia. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej.

Podsumowanie wyników ankiety

Korpusy mowy i narzędzia do ich przetwarzania

Technologia mowy i języka Speech and Language Technology, Vol. 3

Pracownia Informatyczna Instytut Technologii Mechanicznej Wydział Inżynierii Mechanicznej i Mechatroniki. Podstawy Informatyki i algorytmizacji

UCHWAŁA nr 03/2015/2016 Rady Wydziału Informatyki Zachodniopomorskiego Uniwersytetu Technologicznego w Szczecinie z dnia 20 października 2015 r.

JĘZYK NIEMIECKI liceum

Podstawy Przetwarzania Sygnałów

Wymagania stawiane pracom dyplomowym na Wydziale Elektroniki i Informatyki Politechniki Koszalińskiej

Rok akademicki 2017/18 Format pracy inż. wzór

3. 1. Tryb i zasady postępowania antyplagiatowego określa załącznik do niniejszego Zarządzenia.

REGULAMIN ANTYPLAGIATOWY

Analiza sygnału mowy pod kątem rozpoznania mówcy chorego. Anna Kosiek, Dominik Fert

PROCEDURA ANTYPLAGIATOWA PRAC DYPLOMOWYCH W POLITECHNICE ŁÓDZKIEJ

Pattern Classification

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

Głos. Proces generacji dźwięku płuca, fałdy głosowe, kanał głosowy rezonatory i artykulatory. Ton krtaniowy Częstotliwości formantowe dla mowy

KIERUNKOWE EFEKTY KSZTAŁCENIA

Cechy karty dzwiękowej

OGÓLNE KRYTERIA OCENIANIA POSZCZEGÓLNYCH SPRAWNOŚCI JĘZYKOWYCH

Ćwiczenie 3,4. Analiza widmowa sygnałów czasowych: sinus, trójkąt, prostokąt, szum biały i szum różowy

Data: Wydanie: N2. Symbol: Procedura P-RIE-1. Strona: 1/2 PROCES DYPLOMOWANIA P-RIE-1 PROCES DYPLOMOWANIA

Demodulator FM. o~ ~ I I I I I~ V

Proces dyplomowania w module Wirtualna Uczelnia 10_06_2019 OPIEKUN PRACY DYPLOMOWEJ RECENZENT

Przygotowanie bazy difonów języka polskiego dla realizacji syntezy mowy w systemie MBROLA

Wymagania edukacyjne dla ucznia klasy siódmej SP z orzeczeniem PPP

Temat 1. Więcej o opracowywaniu tekstu

2. Zalecenia dotyczące przygotowania pracy licencjackiej i magisterskiej

WYMAGANIA EDUKACYJNE Z JĘZYKA POLSKIEGO DLA UCZNIÓW KLASY VI NA POSZCZEGÓLNE OCENY I OKRES OCENA CELUJĄCA

W y m a g a n i a EDUKACJA POLONISTYCZNA KLASA I SP

Z-ID-604 Metrologia. Podstawowy Obowiązkowy Polski Semestr VI

Uchwała obowiązuje od dnia podjęcia przez Senat. Traci moc Uchwała nr 144/06/2013 Senatu Uniwersytetu Rzeszowskiego z 27 czerwca 2013 r.

Sprawozdanie z laboratoriów HTK!

Jednolity System Antyplagiatowy. Jak interpretować wynik?

Niko 2 Przedmiotowy System Oceniania

KARTA PRZEDMIOTU. 11. ZAŁOŻENIA I CELE PRZEDMIOTU: 1. Dostarczenie studentom dogłębnej wiedzy na temat angielskiego systemu fonologicznego.

Systemy multimedialne. Instrukcja 5 Edytor audio Audacity

Aproksymacja funkcji a regresja symboliczna

efekty kształcenia dla kierunku Elektronika studia stacjonarne drugiego stopnia, profil ogólnoakademicki

Rozpoznawanie i synteza mowy w systemach multimedialnych. Analiza i synteza mowy - wprowadzenie. Spektrogram wyrażenia: computer speech

Jednolity System Antyplagiatowy. Jak interpretować wynik?

Analiza obrazów - sprawozdanie nr 2

(kierunek ekonomia) oraz nauk o administracji i nauk prawnych (kierunek administracja),

Transformacja współrzędnych geodezyjnych mapy w programie GEOPLAN

Referat pracy dyplomowej

Strona 1 z 9. WYŻSZA SZKOŁA BEZPIECZEŃSTWA z siedzibą w Poznaniu REGULAMIN SYSTEMU PLAGIAT.PL POZNAŃ

Automatyczne tworzenie trójwymiarowego planu pomieszczenia z zastosowaniem metod stereowizyjnych

REFERAT PRACY DYPLOMOWEJ Temat pracy: SUDOKU - Algorytmy tworzenia i rozwiązywania

WYMAGANIA EDUKACYJNE NIEZBĘDNE DO UZYSKANIA POSZCZEGÓLNYCH ŚRODROCZNYCH I ROCZNYCH OCEN Z ZAJĘĆ KOMPUTEROWYCH W KLASIE IV

Regulamin antyplagiatowy w Śląskim Uniwersytecie Medycznym w Katowicach. Tekst jednolity

OPIS MODUŁU (PRZEDMIOTU)

OPIS PRZEDMIOTU, PROGRAMU NAUCZANIA ORAZ SPOSOBÓW WERYFIKACJI EFEKTÓW KSZTAŁCENIA. CZEŚĆ A * (opis przedmiotu i programu nauczania) OPIS PRZEDMIOTU

Rode Stereo VideoMic Pro Rycote mikrofon + deadcat

Objaśnienia oznaczeń w symbolach K przed podkreślnikiem kierunkowe efekty kształcenia W kategoria wiedzy

Lingwistyczny system definicyjny wykorzystujący korpusy tekstów oraz zasoby internetowe.

Zarządzenie Nr 2/11 Rektora Uniwersytetu Medycznego im. Karola Marcinkowskiego w Poznaniu z dnia17 stycznia 2011 roku

Wymagania edukacyjne z języka niemieckiego w roku szkolnym 2017/2018. Kryteria Oceniania

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Efekty kształcenia dla makrokierunku: INFORMATYKA STOSOWANA Z KOMPUTEROWĄ NAUKĄ O MATERIAŁACH Wydział: MECHANICZNY TECHNOLOGICZNY

Efekty kształcenia dla kierunku Wzornictwo studia I stopnia

Rozwój mowy dziecka OKRES ZDANIA - OD 2 DO 3 ROKU ŻYCIA.

Z-ZIP-0101 Metrologia. Zarządzanie i Inżynieria Produkcji I stopień Ogólnoakademicki. Kierunkowy Obowiązkowy Polski Semestr czwarty

Międzyplatformowy interfejs systemu FOLANessus wykonany przy użyciu biblioteki Qt4

Wymagania edukacyjne z informatyki dla klasy szóstej szkoły podstawowej.

I. Gramatyka. Poniżej prezentowana jest realizowana gramatyka:

Samochodowy system detekcji i rozpoznawania znaków drogowych. Sensory w budowie maszyn i pojazdów Maciej Śmigielski

Załącznik do Uchwały nr R/0004/10/12 z r. REGULAMIN ANTYPLAGIATOWY

Opisy efektów kształcenia dla modułu

REGULAMIN ANTYPLAGIATOWY

MODUŁ KSZTAŁCENIA: Praktyczna nauka języka angielskiego: moduł 2

Opis akustyczny samogłosek Wprowadzenie

Metrologia. Wzornictwo Przemysłowe I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Proces dyplomowania w module Wirtualna Uczelnia OPIEKUN PRACY DYPLOMOWEJ RECENZENT

Opracowanie dodatkowego rodzaju pytań dla systemu Moodle

Zarządzenie Nr R-2/2017 Rektora Politechniki Lubelskiej z dnia 12 stycznia 2017 r.

Efekty kształcenia. Tabela efektów kształcenia

NeuroVoice. Synteza i analiza mowy. Paweł Mrówka

Standardy dotyczące prac dyplomowych na Wydziale Humanistyczno-Społecznym ATH

Tworzenie i obsługa wirtualnego laboratorium komputerowego

Przedmiotowy system oceniania z języka angielskiego obowiązujący od roku szkolnego 2009/2010 (nowa podstawa programowa)

Tester oprogramowania 2014/15 Tematy prac dyplomowych

tel. (+4861) fax. (+4861)

Extensible Markup Language (XML) Wrocław, Java - technologie zaawansowane

Metody numeryczne Wykład 4

Tom 6 Opis oprogramowania

Transkrypt:

AKADEMIA GÓRNICZO-HUTNICZA im. Stanisława Staszica w Krakowie WYDZIAŁ INŻYNIERII MECHANICZNEJ I ROBOTYKI Praca dyplomowa inżynierska Aleksandra Nabożny Inżynieria Akustyczna Przygotowanie korpusu do projektu korpusowego syntezatora mowy Dr inż. Bartosz Ziółko.. Ocena Kraków, rok 2013/2014

Aleksandra Nabożny Nr albumu: 241175 Kierunek studiów: Inżynieria Akustyczna Specjalność: Kraków, dn.. OŚWIADCZENIE Świadomy/a odpowiedzialności karnej za poświadczanie nieprawdy oświadczam, że niniejszą inżynierską pracę dyplomową wykonałem/łam osobiście i samodzielnie oraz nie korzystałem/łam ze źródeł innych niż wymienione w pracy. Jednocześnie oświadczam, że dokumentacja praca nie narusza praw autorskich w rozumieniu ustawy z dnia 4 lutego 1994 roku o prawie autorskim i prawach pokrewnych (Dz. U. z 2006 r. Nr 90 poz. 631 z późniejszymi zmianami) oraz dóbr osobistych chronionych prawem cywilnym. Nie zawiera ona również danych i informacji, które uzyskałem/łam w sposób niedozwolony. Wersja dokumentacji dołączona przeze mnie na nośniku elektronicznym jest w pełni zgodna z wydrukiem przedstawionym do recenzji. Zaświadczam także, że niniejsza inżynierska praca dyplomowa nie była wcześniej podstawą żadnej innej urzędowej procedury związanej z nadawaniem dyplomów wyższej uczelni lub tytułów zawodowych... podpis dyplomanta

Kraków,.. Aleksandra Nabożny ul. Lipowicza 45, 80-809 Gdańsk Temat pracy dyplomowej inżynierskiej: Przygotowanie korpusu do projektu korpusowego syntezatora mowy Rok ukończenia: 2014 Nr albumu: 241175 Kierunek studiów: Inżynieria Akustyczna Profil dyplomowania: OŚWIADCZENIE Niniejszym oświadczam, że zachowując moje prawa autorskie, udzielam Akademii Górniczo-Hutniczej im. S. Staszica w Krakowie nieograniczonej w czasie nieodpłatnej licencji niewyłącznej do korzystania z przedstawionej dokumentacji inżynierskiej pracy dyplomowej, w zakresie publicznego udostępniania i rozpowszechniania w wersji drukowanej i elektronicznej 1. Publikacja ta może nastąpić po ewentualnym zgłoszeniu do ochrony prawnej wynalazków, wzorów użytkowych, wzorów przemysłowych będących wynikiem pracy inżynierskiej 2. Kraków,..... data podpis dyplomanta 1 Na podstawie Ustawy z dnia 27 lipca 2005 r. Prawo o szkolnictwie wyższym (Dz.U. 2005 nr 164 poz. 1365) Art. 239. oraz Ustawy z dnia 4 lutego 1994 r. o prawie autorskim i prawach pokrewnych (Dz.U. z 2000 r. Nr 80, poz. 904, z późn. zm.) Art. 15a. "Uczelni w rozumieniu przepisów o szkolnictwie wyższym przysługuje pierwszeństwo w opublikowaniu pracy dyplomowej studenta. Jeżeli uczelnia nie opublikowała pracy dyplomowej w ciągu 6 miesięcy od jej obrony, student, który ją przygotował, może ją opublikować, chyba że praca dyplomowa jest częścią utworu zbiorowego." 2 Ustawa z dnia 30 czerwca 2000r. Prawo własności przemysłowej (Dz.U. z 2003r. Nr 119, poz. 1117 z późniejszymi zmianami) a także rozporządzenie Prezesa Rady Ministrów z dnia 17 września 2001r. w sprawie dokonywania i rozpatrywania zgłoszeń wynalazków i wzorów użytkowych (Dz.U. nr 102 poz. 1119 oraz z 2005r. Nr 109, poz. 910)

Kraków, dnia AKADEMIA GÓRNICZO-HUTNICZA WYDZIAŁ INŻYNIERII MECHANICZNEJ I ROBOTYKI TEMATYKA PRACY DYPLOMOWEJ INŻYNIERSKIEJ dla studenta IV roku studiów stacjonarnych imię i nazwisko studenta TEMAT PRACY DYPLOMOWEJ INŻYNIERSKIEJ: Promotor pracy: Recenzent pracy: Podpis dziekana: PLAN PRACY DYPLOMOWEJ 1. Omówienie tematu pracy i sposobu realizacji z promotorem. 2. Zebranie i opracowanie literatury dotyczącej tematu pracy. 3. Zebranie i opracowanie wyników badań. 4. Analiza wyników badań, ich omówienie i zatwierdzenie przez promotora. 5. Opracowanie redakcyjne. Kraków,..... data podpis dyplomanta TERMIN ODDANIA DO DZIEKANATU: 20 r. podpis promotora

Akademia Górniczo-Hutnicza im. Stanisława Staszica Kraków,... Wydział Inżynierii Mechanicznej i Robotyki Kierunek: Inżynieria Akustyczna Profil dyplomowania: Aleksandra Nabożny Praca dyplomowa inżynierska Przygotowanie korpusu do projektu korpusowego syntezatora mowy Opiekun: dr inż. Bartosz Ziółko STRESZCZENIE Na jakość syntezy mowy ma wpływ wiele czynników, jednym z których jest właściwie przygotowany i zbalansowany korpus. W pracy dyplomowej prezentowany jest proces tworzenia bazy audio do syntezatora mowy. Opisano także strukturę fonetyczną języka polskiego. Omówiona została architektura oraz różne rodzaje systemów TTS (ang. Text-to-speech), ze szczególnym uwzględnieniem syntezy korpusowej. Następnie przedstawiane są kolejne etapy pracy nad korpusem: analiza dużych zbiorów tekstowych pod kątem częstotliwości występowania poszczególnych fonemów, bifonów i trifonów, zautomatyzowana selekcja tekstów oraz sporządzenie i obróbka nagrań.

AGH University of Science and Technology Faculty of Mechanical Engineering and Robotics Field of Study: Acoustic engineering Specialisations: Kraków, the... Aleksandra Nabożny Engineer Diploma Thesis Corpus creation for polish Unit-selection speech synthesis. Supervisor: Ph.D. Bartosz Ziółko SUMMARY The crucial factor for synthesised voice s quality is, among other aspects, wellprepared and balanced corpus. The thesis depicts whole process of preparation of the audio database for unit selection speech synthesis. Furthermore, phonological structure of polish language is briefly described. Although unit selection synthesis is mostly taken into consideration, other text-to-speech systems architecture was presented and discussed. The key part introduces each step of creation of the corpus: analysis of the big text database in terms of occurrence of different phones, diphones and triphones, automatic sentence selection, and finally, realisation and postprocessing of the audio recordings.

SPIS TREŚCI 1. WSTĘP... 8 2. RYS HISTORYCZNY... 10 2.1. GŁOWA Z BRĄZU... 10 2.2. SYNTEZA ARTYKULACYJNA... 10 3. PRZEGLĄD AKTUALNYCH TECHNOLOGII ZWIĄZANYCH Z PRZETWARZANIEM JĘZYKA NATURALNEGO... 14 3.1. RODZAJE WSPÓŁCZESNYCH SYNTEZATORÓW MOWY... 14 3.1.1. SYNTEZA FORMANTOWA... 14 3.1.2. SYNTEZA KONKATENACYJNA... 15 3.1.3. SYNTEZA KORPUSOWA... 16 3.1.4. ANALIZA ISTNIEJĄCYCH ROZWIĄZAŃ... 17 3.2. RODZAJE KORPUSÓW W SYSTEMACH NLP... 18 4. SZCZEGÓŁOWY OPIS REALIZACJI PROJEKTU... 21 4.1. PRZYGOTOWANIE BAZY TEKSTÓW... 21 4.1.1. NARODOWY KORPUS JĘZYKA POLSKIEGO... 21 4.2. TRANSKRYPCJA FONETYCZNA... 22 4.2.1. FONETYKA JĘZYKA POLSKIEGO... 22 4.2.2. ALFABET IPA... 24 4.2.3. ORTFON 2.0... 25 4.3. ALGORYTM ZACHŁANNY... 27 4.3.1. CORPUSCRT... 28 4.3.2. SKRYPTY DO FORMATOWANIA PLIKÓW TEKSTOWYCH... 31 4.3.3. RĘCZNA WERYFIKACJA POPRAWNOŚCI DZIAŁANIA ALGORYTMU STATYSTYKI WYSTĘPOWANIA POSZCZEGÓLNYCH FONEMÓW... 32 4.4. REALIZACJA BAZY AUDIO... 35 4.4.2. PRZYGOTOWANIE SESJI NAGRANIOWEJ... 39 4.5. ANOTACJA NAGRAŃ... 40 5. PODSUMOWANIE... 42 6. BIBLIOGRAFIA... 43 6.1. SPIS RYSUNKÓW... 44

1. WSTĘP Synteza konkatenacyjna to od lat osiemdziesiątych naszego wieku najprężniej rozwijana metoda generowania sztucznej mowy. Polega ona na wytworzeniu sygnału audio odpowiadającemu zadanej na wejściu frazie, poprzez łączenie ze sobą mniejszych jednostek akustycznych mowy pobieranych z odpowiednio anotowanej bazy nagrań. Jej najpopularniejszą i najbardziej efektywną modyfikacją jest synteza korpusowa, zakładająca zawartość wielu instancji wybranych jednostek w korpusie danych. Podstawowym wyznacznikiem jakości tego typu systemów jest naturalność i płynność uzyskiwanych wypowiedzi. Syntetyczna mowa tym lepiej spełnia te założenia, im bogatsza jest baza danych programu. Jednakże praca na dużych zbiorach wiąże się z odpowiednio dużą złożonością obliczeniową, co nawet dla współczesnych komputerów może być zadaniem zbyt obciążającym. Ponadto, stworzenie bazy wszystkich dźwięków, na które składa się dany język, biorąc pod uwagę każdy możliwy kontekst wypowiedzi, jest niemożliwe. Dlatego przygotowanie optymalnego korpusu jest dla twórców syntezatora zadaniem kluczowym [2][5][10]. Musi być on tak zaprojektowany, aby osiągnięty został kompromis pomiędzy jego rozmiarem, a jakością. Oznacza to, że przy jak najmniejszej objętości, powinien cechować się jak największym bogactwem różnorodnych jednostek lingwistycznych. Osiągnięcie tych założeń jest skomplikowanym i czasochłonnym zagadnieniem. Niniejsza praca zawiera krótki opis dziejów syntezy, złożony z historii badań nad procesem ksztłtowania dźwięków mowy oraz prób odtworzenia rezonansów traktu głosowego człowieka za pomocą ustrojów akustycznych, a później elektronicznych. W dalszej części, natomiast, przedstawione zostały współczesne rozwiązania technologiczne z zakresu przetwarzania mowy naturalnej. Szczególnie uwzględniono nie tylko zagadnienia dotyczące syntezy, ale również przygotowywania różnego rodzaju korpusów danych wykorzystywanych w badaniach nad charakterystyką ludzkiego głosu. Podjęta została także dyskusja na temat przyszłości syntezy konkatenacyjnej, w porównaniu do zaniedbanej w ostatnich dziesięcioleciach syntezy formantowej. Wypunktowano cechy potencjalnego idealnego programu do generowania mowy, dołączając komentarz dotyczący perspektyw ich spełnienia przez każdy z tych systemów.

Kolejne rozdziały przedstawiają pełen proces projektowy tworzenia korpusu, na który składają się: 1) wybór jednostki akustycznej - fonem, difon, trifon, etc.; 2) wybór i przygotowanie bazy tekstowej; 3) wybór alfabetu do transkrypcji fonetycznej; 4) realizacja transkrypcji fonetycznej; 5) balansowanie korpusu pod względem optymalnego pokrycia wybranych jednostek; 6) realizacja nagrań wybór sprzętu i oprogramowania, wybór lektora, etc.; 7) segmentacja nagrań; Każde z użytych rozwiązań opatrzone jest stosownym uzasadnieniem co do jego wyboru. Opisane zostały kolejne etapy ich wdrażania oraz efekty ich zastosowania. Ostatecznie, streszczono plany na dalszy rozwój projektu, ze szczególnym uwzględnieniem implementacji korpusu, jako serca systemu syntezy mowy polskiej.

2. RYS HISTORYCZNY Mimo że współczesne wysiłki podejmowane w kierunku wygenerowania naturalnie brzmiącej ludzkiej mowy dotyczą ściśle zagadnień z dziedziny cyfrowego przetwarzania sygnałów, dzieje syntezy sięgają dużo wcześniej, niż zostały wynalezione komputery oraz odpowiedni aparat matematyczny. Pierwsze eksperymenty związane z odtwarzaniem samogłosek przypadają dopiero na epokę nowożytną, choć zainteresowanie ludzi automatycznym imitowaniem głosu datuje się na XII wiek. Poniżej wymieniono kilka postaci, bądź instytucji, które miały znaczący wpływ na rozwój syntezy na przestrzeni dziejów. 2.1. GŁOWA Z BRĄZU Pierwsze fantazje człowieka na temat urządzeń przemawiających ludzkim głosem sięgają XII wieku. Wtedy to niemiecki uczony i katolicki święty, Albert Wielki, został posądzony o wynalezienie tak zwanej mechanicznej głowy. Legenda głosi, iż był to automat w kształcie ludzkiej czaszki, który przyjmował pytania zapisane na kartce i na każde z nich potrafił odpowiedzieć. Został ostatecznie zniszczony przez Tomasza z Akwinu, jako heretycki, magiczny eksperyment [13]. Przekazy dotyczące Głowy z brązu zachowały się, między innymi, w literaturze Miquela de Cervantesa, czy Daniela Dafoe. 2.2. SYNTEZA ARTYKULACYJNA Niewątpliwym pionierem w dziedzinie syntezy mowy był osiemnastowieczny doktor fizyki Uniwersytetu w Kopenhadze, Christian Gottlieb Kratzenstein [3]. Uczony po raz pierwszy w historii opublikował opracowanie naukowe traktujące o wytwarzaniu samogłosek przez ludzkie narządy mowy. Swoją pracą zwyciężył w konkursie organizowanym przez Petersburską Akademię Nauk, odpowiadając na pytanie: Jaka jest natura oraz różnice pomiędzy samogłoskami a, o, e, i, u oraz jak można je instrumentalnie odtworzyć?. Kratzenstein podszedł do pracy koncentrując się na anatomii traktu głosowego. Dokładnie mierzył średnicę i długość krtani, czy objętość jamy ustnej podczas wypowiadania poszczególnych fonemów. Jedym słowem, badał

geometrię wszystkich kanałów i szczelin, jakie strumień powietrza pokonuje podczas ich wymowy. W efekcie wynalazł system piszczałek, dzięki którym można było odtworzyć zadane samogłoski. Jego praca jest o tyle ciekawa, że powstała na około sto lat przed dokładnym opisaniem przez Hermana von Helmhotlza teorii i równań dotyczących rezonansu akustycznego. Rysunek 1. Szkice przekrojów poprzecznych rezonatorów Kratzensteina, które odtwarzały, kolejno, głoski a, o i e [3] Kolejnym pionierskim wynalazkiem okazała się maszyna mówiąca Wolfganga von Kempelena. Było to już w pełni funkcjonalne urządzenie, z pompą imitującą płuca, oraz dwoma gumowymi ujściami powietrza ze skrzyni rezonansowej, które miały imitować nos i usta. Wprawny operator mógł z jej pomocą generować już nie tylko pojedyncze głoski, ale też niektóre słowa, czy frazy. Cały wynalazek von Kempelen opisał w swojej książce pt. Mechanismus der menschlichen Sprache nebst Beschreibung einer sprechenden Maschine (Mechanizmy mowy ludzkiej, z opisem maszyny mówiącej), a jego replika znajduje się na Wydziale Fonetyki Uniwersytetu Saarland w Niemczech.

Rysunek 2. Szkic maszyny mówiącej pochodzący z książki von Kempelena [6] Pierwszą elektroniczną implementacją syntezatora mowy było urządzenie Voder (Voice Operating Demonstrator), system składający się z układu oscylatorów, filtrów i źródła szumu opatentowany w Bell Laboratories w roku 1928 przez Homera Dudleya. Mimo, że jego budowa różniła się od poprzednich konstrukcyjnie, opierała się na podobnych założeniach projektowych. Generator szumu pełnił rolę pompy w maszynie von Kempelena, a poszczególne układy elektroniczne odzwierciedlały rezonanse, które zachodzą podczas artykulacji głosek. Operator miał do wyboru dwa źródła: szum syczący, do wytwarzania sybilant (rodzaj spółgłosek szczelinowych, np. s, z), oraz szum brzęczący, produkowany lampą elektronową, do samogłosek i spółgłosek nosowych (np. m, n). Ten wybór kontrolowany był poprzez przycisk obsługiwany nadgarstkiem (wrist bar, Rysunek 3). Sygnał źródłowy przechodził przez kombinację wybranych za pomocą klawiszy filtrów pasmowo-przepustowych (spectrum keys; Rysunek 3). Było ich do wyboru dziesięć. Dodatkowo, dzięki odpowiedniej modulacji wysokości tonu (pitch pedal; Rysunek 3) można było kreować prozodię (melodykę) wypowiedzi [22].

Rysunek 3. Schemat działania urządzenia Voder [22] Automat został po raz pierwszy zaprezentowany w roku 1939 na światowych targach w Nowym Jorku. Był on tak skomplikowany w obsłudze, że jego operatorzy musieli być specjalnie przeszkoleni, a nie każdemu udawało się dojść do takiej sprawności, aby generowana mowa była wystarczająco zrozumiała.

3. PRZEGLĄD AKTUALNYCH TECHNOLOGII ZWIĄZANYCH Z PRZETWARZANIEM JĘZYKA NATURALNEGO 3.1. RODZAJE WSPÓŁCZESNYCH SYNTEZATORÓW MOWY Współcześnie synteza mowy rozwinęła się w nieco odmiennym kierunku, niż ten, którym podążał jej rozwój na przestrzeni poprzednich wieków. Efekty i potencjalne konsekwencje tego zjawiska opisane zostały w niniejszym rozdziale. 3.1.1. SYNTEZA FORMANTOWA Synteza formantowa jest rodzajem syntezy addytywnej, czyli zakładającej łączenie ze sobą fal sinusoidalnych o różnych amplitudach i częstotliwościach, i polega na całkowicie sztucznym wytworzeniu cyfrowego sygnału mowy. Pożądane brzmienie otrzymuje się poprzez wygenerowanie tonu podstawowego, kontrolę poziomów szumu oraz analizę artykulacji poszczególnych głosek. Właśnie od tej ostatniej właściwości zależna jest nazwa, ponieważ artykulacja każdego fonemu cechuje się określonym rozkładem formantów [5]. Formant oznacza rezonans akustyczny ludzkiego traktu głosowego. Dotycząca ściśle fonetyki definicja mówi, że są to wartości szczytowe widma sygnału mowy dla poszczególnych jednostek akustycznych. Według bardziej uniwersalnego określenia, bo dotyczącego barwy dźwięku w ogóle, są to uwypuklone w danej barwie pasma częstotliwości. Rozkład formantów bada się, między innymi, stosując analizę spektrogramów.

Rysunek 4. Cyfrowy zapis angielskiego słowa "treaty" oraz jego spektrogram [19] Na Rysunek 4 można dokładnie zaobserwować formanty smogłosek, jednak ten rodzaj analizy dla grup spółgłosek jest już dużo trudniejszy. Właśnie dlatego, oraz z powodu trudności odwzorowania naturalnych przejść pomiędzy fonemami, sygnał wytworzony metodą syntezy formantowej ma bardzo nienaturalny, robotyczny wydźwięk. 3.1.2. SYNTEZA KONKATENACYJNA Od lat siedemdziesiątych synteza konkatenacyjna to najpopularniejsza i najszerzej rozwijana metoda generowania mowy [4][5]. Polega ona na sklejaniu fragmentów wypowiedzi z bazy nagrań lektora celem osiągnięcia lepszej zrozumiałości. Na zarzucenie dotychczasowej idei wytwarzania sztucznej mowy pozwolił szybki wzrost zdolności obliczeniowej współczesnych komputerów. Możliwość realizacji skomplikowanych procesów przez maszynę w czasie rzeczywistym jest kluczowa z punktu widzenia rozwoju tej technologii, ponieważ operacje wykonywane są na zbiorach danych dużo większych, niż wymagane w przypadku syntezy formantowej. Porównanie wad i zalet obu rozwiązań znajduje się w rozdziale 3.1.4 dalszej części pracy. Złożoność obliczeniowa systemu syntezy konkatenacyjnej ścisle zależy od rodzaju elementu akustycznego, jaki jego twórca przyjmie, jako podstawę do sklejania wyrazów i zdań. Rodzaje jednostek akustycznych, jakie wyróżniamy: fonem najmniejsza jednostka akustyczna niosąca ze sobą informację, której fizyczną realizacją jest głoska [12]; difon fonem w kontekście prawo- lub lewostronnym; trifon fonem w kontekście obustronnym;

sylaby krótka sekwencja głosek; określenie nieposiadające jednoznacznej definicji w fonetyce i fonologii; słowa; Konkatenacja fraz oparta na słowach jest wysoce nieefektywna obliczeniowo, oraz nie uwzględnia wyrazów obcych i słowotwórczych. Dodatkowo, niemożliwym staje się wytworzenie tranzjentów, czyli naturalnych przejść pomiędzy wyrazami. Ze względu na powyższe problemy zdecydowanie popularniejsze jest wykorzystanie mniejszych jednostek. Sensownym wydaje się zastosowanie konkatenacji sylab, jednak, mimo zadowalających rezultatów z punktu widzenia zrozumiałości, i w tym przypadku baza danych jest na tyle duża, że algorytm syntezy działa powoli. W przypadku konkatenacji jednostek takich jak fonemy, czy difony, baza jest z kolei zbyt ograniczona. Zaledwie pojedyncze występowanie każdej z nich może negatywnie wpływać na naturalność generowanej mowy. Dlatego najpopularniejszą obecnie metodą jest zmodyfikowana wersja syntezy konkatenacyjnej synteza korpusowa. 3.1.3. SYNTEZA KORPUSOWA Ta stosunkowo nowa forma syntezy zakłada, że w korpusie nagrań znajduje się więcej instancji danej jednostki akustycznej, niż w klasycznej syntezie konkatenacyjnej. Najlepsze rezultaty, ze względu na zrozumiałość i niewielką złożoność obliczeniową, uzyskuje się, jeżeli rozkład ilości jednostek w bazie odwzorowuje dosyć dokładnie rozkład występowania tychże w języku naturalnym [1][12]. Dlatego tworzenie systemu tego typu wymaga analizy fonetycznej dużych, reprezentatywnych zbiorów danych, takich jak np. Narodowy Korpus Języka Polskiego, opisany w rozdziale 4. Rdzeniem programu jest tak zwana funkcja kosztu. Przez koszt rozumie się błąd na obszarze łącznia jednostek akustycznych. Działanie funkcji polega na znajdywaniu w korpusie danych takiej frazy, która najlepiej odpowiada syntezowanemu fragmentowi. Każdej możliwej kombinacji jednostek, która pozwala na wygenerowanie określonego zdania, przypisuje się koszt ich łączenia. Jeżeli jednostki znajdują się obok siebie, koszt konkatenacji jest niski. Wykorzystując algorytmy wyszukiwania najkrótszej ścieżki oblicza się przejście generujące najniższy koszt i na tej podstawie wybiera fragmenty, z których sklejany jest ostateczny sygnał. Oznacza to, że w przypadku syntezy prostego zdania Ala ma kota prawdopodobnie zostaną wybrane pełne wyrazy, czyli ala, ma i kota. Innymi słowy, funkcja oszacowuje tworzenie takich sekwencji jednostek,

aby zminimalizować błędy na obszarach łączenia tych jednostek i w rezultacie otrzymać płynną mowę. 3.1.3.1. Synteza difonów Biorąc pod uwagę rozmiar bazy danych oraz złożoność obliczeniową związaną z działaniem funkcji kosztu, rozsądnym wydaje się wybór fonemów, jako jednostki używanej do konkatenacji. W transkrypcji alfabetem IPA dla języka polskiego występuje 88 fonemów, co po uwzględnieniu fonemu ciszy daje prawie 4000 różnych difonów. Mimo znaczącej różnicy w rozmiarze bazy, konkatenacja difonów niesie ze sobą pewne wymierne korzyści. Sprawiają one, że utrudnienia związane z większym rozmiarem korpusu tracą na znaczeniu. Przede wszystkim, difon pokrywa tranzjentowe przejścia pomiędzy fonemami, a jego granice znajdują się w stabilnej części jednostki. Dzięki temu rdzeniem jednostki jest najtrudniejszy do wytworzenia fragment sygnału mowy, kluczowy z punktu widzenia płynności wypowiedzi. Dodatkowo, dłuższy czas trwania difonu w porównaniu do fonemu sprawia, że jest on łatwiejszy do wykrycia. Dotychczasowe doświadczenia w tworzeniu difonowej bazy danych dla syntezy konkatenacyjnej języka polskiego pokazują, że difony pozwalają na wygenerowanie naturalnie brzmiącej mowy [10]. 3.1.4. ANALIZA ISTNIEJĄCYCH ROZWIĄZAŃ Rozpatrując zarówno historię rozwoju syntezy, jak i obecne na rynku rozwiązania z tego zakresu, można zauważyć pewne zjawisko. Otóż większość czasu i energii badacze poświęcili na zaawansowaną analizę sygnału mowy oraz próby jego wygenerowania na podstawie jego elementarnych składowych. Tymczasem ostatnie kilkadziesiąt lat pracy nad systemami TTS to rozwój technologii, który nie prowadzi do spełnienia wszystkich założeń dobrego, uniwersalnego oprogramowania. Wspomniane założenia to [11]: 1) generowanie zrozumiałej mowy; 2) generowanie naturalnie brzmiącej mowy; 3) możliwość odtwarzania różnych typów głosu: męski, żeński, osoby młodej, starej, etc.; 4) możliwość odtwarzania dowolnego języka; 5) możliwość naśladowania jakiegokolwiek mówcy, biorąc pod uwagę jego indywidualne cechy głosowe;

6) możliwość odtworzenia nietypowego głosu, np. osoby z dysfunkcją mowy, lub głosu wokalisty o siedmiooktawowej skali; 7) posiadanie parametrów modyfikowalnych przez użytkownika; Syntezatory konkatenacyjne spełniają cztery pierwsze założenia, wyprzedzając znacznie syntezatory formantowe w drugim i trzecim podpunkcie. Jednakże implementacja kolejnych mówców jest niezwykle pracochłonna, a dla niektórych głosów wręcz niemożliwa. Pomimo dostępnego oprogramowania upraszczającego tę procedurę (np. Festival), samo nagranie korpusu może być zadaniem zbyt skomplikowanym. Wymaga ono bowiem nie tylko odpowiedniego sprzętu i profesjonalnie przeprowadzonej sesji nagraniowej, ale przede wszystkim umiejętności i możliwości lektora. Na przykład, implementacja mówcy z dysfunkcją lub chorobą narządów traktu głosowego byłaby niemożliwa, ze względu na męczącą i czasochłonną sesję. Syntezator konkatenacyjny jest tak elastyczny i zaawansowany, jak jego baza danych. Jest to rozwiązanie, które, choć jak dotychczas daje lepsze efekty niż synteza formantowa i artykulacyjna, nie może być traktowane jako uniwersalne w dalszej perspektywie. 3.2. RODZAJE KORPUSÓW W SYSTEMACH NLP Korpus lingwistyczny to zbiór danych, zwykle duży zasób tekstów pisanych lub transkrypcje nagrań mowy. Korpusy znajdują szerokie zastosowanie w systemach przetwarzania języka naturalnego (ang. NLP Natural Language Processing). Głównym celem do wykorzystania korpusu jest ustalenie jakiejś hipotezy językowej, na przykład, jak różni się użycie poszczególnych jednostek akustycznych mowy (lub ich kombinacji), słów, bądź całych wyrażeń. W praktyce przechowuje się go zwykle w postaci elektronicznej bazy danych i używa znaczników (tagów) do wyróżniania cech poszczególnych wyrazów. Najczęściej są to oznaczenia części mowy (tzw. POS-tagi; Part-of-speech). Stąd wygodnym formatem do przechowywania tego typu zbiorów są pliki tekstowe zapisane w języku XML. Dobry korpus powinien wyróżniać się następującymi cechami [12] : być przetwarzalny przez maszyny zawierać autentyczne dane językowe być reprezentatywny

być anotowany, czyli zawiera (w zależności od funkcji, jaką ma spełniać) transkrypcje, informacje o cechach lektora (płeć, wiek, stan zdrowia, etc.) lub funkcje gramatyczne W analizie języka mówionego korpusy tekstowe nie są jedynymi, jakie wykorzystuje się w badaniach naukowych. Inne typy to, przykładowo, korpusy: a) wielojęzyczne (np. do uczenia tłumaczeń) b) wielomodalne (np. audiovideo) Mogą służyć jako wzorce do rozpoznawania mowy z ułożenia warg, bądź do rozpoznawania emocji. Systemy ARS (Automatic Speech Recognition) wspierane dodatkowo przez odczyt z kamer w czasie rzeczywistym, mogą wykazywać dużo większą skuteczność, na przykład w miejscach, w których odnotowuje się wysoki poziom tła akustycznego, gdyż hałas zmniejsza efektywność algorytmów weryfikacji wyłącznie ze ścieżki audio. c) emocjonalne Dzięki tego typu korpusom można rozpoznać z dużą dokładnością (około 80%) kilka podstawowych typów emocji, takich jak radość, złość, zaskoczenie czy smutek. Analizuje się zarówno zmiany amplitudy sygnału mowy, wektory MFCC (Melfrequency Cepstrum Coefficients), jak i używane słownictwo (w bardziej zaawansowanych badaniach). Nagranie takiego korpusu jest sprawą niezwykle skomplikowaną. Nawet doświadczeni aktorzy, którzy wiele razy muszą powtórzyć tę samą wypowiedź, tracą na autentyczności podczas odgrywania danego nastroju. Jednakże, wzorce uzyskane dzięki tego typu korpusom mogą znaleźć szerokie zastosowanie w tworzeniu systemów dialogowych, na przykład w automatycznych centralach informacyjnych. d) do zastosowań medycznych Efektywną metodą określania prawdopodobieństwa występowania danej choroby narządów toru głosowego może być rozpoznawanie wzorców z wykorzystaniem algorytmów, takich jak HMM (Hidden Markov Models), czy ANN (Artificial Neuronal Network). Jako bazy wzorców używa się obszernego korpusu, który, dla zwiększenia skuteczności, zawiera nie tylko ścieżki audio, ale też nagrania wideo bądź obrazy cyfrowe uzyskane metodą rezonansu magnetycznego (MRI), ultrasonografu (USG), danych uzyskanych w badaniu elektromiograficznym (EMG - diagnostyka czynności elektrycznej mięśni i nerwów obwodowych twarzy), i innych.

Dużą zaletą dobrze przygotowanych korpusów jest łatwość ich przetwarzania i możliwość wykorzystania w wielu zróżnicowanych eksperymentach. Jednak ceny korpusów są adekwatne do ich jakości i zwykle bardzo wysokie. Natomiast nagranie własnego wymaga olbrzymiego nakładu pracy, czasu, a także może być sporym obciążeniem finansowym dla zespołu badawczego.

4. SZCZEGÓŁOWY OPIS REALIZACJI PROJEKTU 4.1. PRZYGOTOWANIE BAZY TEKSTÓW Pierwszym krokiem, który należy podjąć przed balansowaniem zawartości tekstowej korpusu, jest uważny wybór podstawowej bazy tekstów. Powinna być ona na tyle obszerna, aby odzwierciedlać rozkład statystyczny występowania jednostek lingwistycznych w danym języku, oraz powinna pozwalać na łatwe przetwarzanie w celu ekstrakcji zdań w określonym formacie. 4.1.1. NARODOWY KORPUS JĘZYKA POLSKIEGO NKJP to korpus referencyjny polszczyzny o objętości ponad półtora miliarda słów. Jest to inicjatywa naukowa, którą koordynował Instytut Podstaw Informatyki PAN, a współpracowały: Instytut Języka Polskiego PAN, Wydawnictwo Naukowe PWN oraz Zakład Językoznastwa Komputerowego i Korpusowego Uniwersytetu Łódzkiego. Została ona zrealizowana jako projekt badawczo-rozwojowy Ministerstwa Nauki i Szkolnictwa Wyższego. Do ninejszego projektu wykorzystana została jedynie jego część na ogólnodostępnej licencji. Podkoprus milionowy jest zrównoważonym fragmentem pełnego korpusu, dostępnym na licencji GNU GPL v. 3, w całości zaanotowanym ręcznie. Użycie języka w wielu kontekstach zapewnia zbiór tekstów prasowych z czasopism o różnej tematyce (politycznej, komputerowej, orgrodniczej, kobiecej, etc.) oraz obszerny przekrój polskiej literatury. Wszystkie teksty są przechowywane w plikach formatu XML zawierających znaczniki morfosyntaktyczne dla każdego słowa [7][17]. Zróżnicowanie tematyczne korpusu nie jest aż tak ważne z punktu widzenia projektu syntezy mowy, jednak istotne jest to, że dzięki odpowiednim tagom można od razu usunąć wyrazy, które mogą sprawiać problemy podczas transkrypcji fonetycznej. Wyrazy problematyczne to między innymi liczebniki (zwykle zapisywane numerycznie), skróty i akronimy oraz występujące bardzo często wyrazy obce. Ekstrakcja tekstów w pożądanej formie była możliwa dzięki zestawowi skryptów napisanych w języku programowania Ruby przez mgr inż. Aleksandra Pohla z Uniwersytetu Jagiellońskiego [15]. Wykorzystując gotowy parser można było łatwo uzyskać dużą, reprezentatywną i oczyszczoną bazę tekstów, która po transkrypcji

fonetycznej została wykorzystana na wejściu programu do automatycznego balansowania korpusu. 4.2. TRANSKRYPCJA FONETYCZNA Poprawna transkrypcja fonetyczna bazy tekstowej jest kluczowa w pracy nad korpusem dla syntezatora mowy. Na początku należy odpowiednio dobrać słownik transkrypcji, tak aby ilość znaków oznaczających dany fonem nie była zbyt mała powodowałoby to niepoprawne brzmienie konkatenowanych wyrazów. Nie może też być zbyt duża. Część fonemów występuje na tyle rzadko, lub ich różnice w stosunku do innych są tak nieistotne, że uwzględnianie ich jest zbyteczne, a w rezultacie nieefektywne obliczeniowo z punktu widzenia systemu. Następnie należy zadbać, aby program realizujący transkrypcję robił to zgodnie z zasadami fonetyki języka, a także uwzględniał liczne wyjątki. 4.2.1. FONETYKA JĘZYKA POLSKIEGO Język polski jest jednym z najtrudniejszych języków na świecie pod względem gramatycznym. Jednakże zasady wymowy zapisanego tekstu są łatwiejsze niż w przypadku, uznawanego zwykle za prostszy, języka angielskiego. Jest dużo bardziej jednoznaczna, choć niepozbawiona wyjątków [18]. Między innymi, kłopoty może sprawiać tak zwana zasada historyczna, która wskazuje na zapisywanie niektórych, identycznych w wymowie dźwięków, w różny sposób. Chodzi o głoski takie jak rz/ż, czy u/ó. Ta pozornie niepotrzebna komplikacja ma jednak swoje uzasadnienie pozwala odróżnić od siebie homofony, czyli wyrazy o różnym znaczeniu, choć wypowiadane jednakowo. Są to wyrazy, na przykład morze może, buk bóg - bug, wierz wież, etc. Poniżej zostały wypunktowane główne problemy związane z transkrypcją fonetyczną języka polskiego: a) Istnieje 5 dźwięków zadziąsłowo-palatalnych, które zapisać można na trzy różne sposoby. - literami ć, dź, ń, ś, ź przed spółgłoską lub na końcu wyrazu (ćma, wiedźma, bańka, sieć, jedź, koń); - literami c, dz, n, s, z przed i (cichy, jeździsz, siny);

- dwu- i trójznakami ci, dzi, ni, si, zi przed dowolną inną samogłoską (ciuchy, ziąb, dzień); Palatalizacja (łac. palatum podniebienie; smak; sklepienie ) [24], jest to zjawisko zmiękczenia spółgłoski. Innymi słowy, zgodnie z etymologią tego określenia, jest to dodatkowa artykulacja środkowopodniebienna (zbliżenie środkowej części języka ku podniebieniu twardemu) podczas wymowy. b) Dwu- i trójznaki z poprzedniego przykładu mogą być różnie interpretowane. Na przykład: - jedna głoska zadziąsłowo-palatalna (ciocia, dzień, konie); - głoska zadziąsłowo-palatalna oraz samogłoska [i] (cioci, dziś, łazik); - spółgłoska zębowa oraz samogłoska [i] (Siwert, sinus, fanzin). Ten wariant dotyczy poniekąd problematyki wymowy wyrazów obcych w języku polskim. Spółgłoski zębowe spółgłoski, których miejsce artykulacji znajduje się tuż za przednimi zębami (siekaczami), w dowolnym miejscu za ich tylną ścianą. W języku polskim rozróżnia się 7 takich: c, d, dz, n, s, t, z. c) Dwuznaki ch, cz, dz, dź, dż, rz, sz wymawiane są z reguły jako jeden dźwięk (chimera, czaszka, dzwon, dżdżysty, rzeka), jednak są wyjątki: - istnieją wyrazy, w których należy znaki rz czytać oddzielnie, jako [r + z] (marznąć, obmierzły); - kombinacja i po rz może oznaczać sekwencję dźwięków [r + zi] (mierzić) lub [r + ź] (mirzie); - często w przypadku wyrazów z przedrostkami dz, dzi i dż czyta się, jako oddzielne głoski (nadżerka, podzamcze); - kombinacja i po dz może oznaczać sekwencję dźwięków [d + zi] (przedzimie) lub [r + ź] (podziemny); d) Istnieją różne sposoby na zapis spółgłoski j:

- po c, i, j, s, z oraz po d należącym do prefiksów, używa się znaku j (mijać, Azja, nadjeżdża); - po b, ch, cz, d, dż, f, g, h, k, l, m, p, r, sz, t, w, ż używa się znaku i (kiosk, dieta, fiord, arabia, etc.); - w niektórych przypadkach dwuznaku ni występującego przed samogłoską [a], i wymawiane jest jako [j] (unia, kania); e) Istnieją różne interpretacje zapisu litery [i]. Może on oznaczać: - samogłoskę [i], zwykle na początku wyrazów (iskra, sinus); - samogłoskę [i] oraz zmiękczenie poprzedzającej ją spółgłoski (sinica); - spółgłoskę [j] (hiena, rewia); - tylko zmianę wymowy poprzedzającej ją spółgłoski (kiedy, siadaj); - element palatalizujący (zmiękczający) (mięso, biały); - złącze dźwięków [j] + [i] lub [ʔi] (ziścić, szyici, żmii); Zwarcie krtaniowe oznaczane w alfabecie IPA symbolem ʔ samogłoska wytwarzana poprzez zwarcie i rozwarcie więzadeł głosowych w krtani. 4.2.2. ALFABET IPA Do stworzenia transkrypcji fonetycznej bazy tekstowej dla korpusu wykorzystano Miedzynarodowy Alfabet Fonetyczny IPA (ang. International Phonetic Alphabet). Tym samym akronimem zwana jest instytucja, która powołała go do życia. IPA International Phonetic Association najstarsza organizacja zrzeszająca językoznawców-fonetyków została założona w Paryżu w roku 1886, natomiast w 2013 roku mineła 125 rocznica pierwszej publikacji Międzynarodowego Alfabetu Fonetycznego oraz jego głównych założeń. Najnowsza wersja notacji pochodzi z roku 2005. IPA charakteryzuje się przede wszystkim tym, że jest alfabetem uniwersalnym dla każdego z języków. Od lipca 2012 roku jest udostepniana na podstawie licencji publicznej Creative Commons, która zezwala na jakiekolwiek wykorzystanie (włączając projekty komercyjne oraz utwory zależne) o ile projekt pochodny jest publikowany na tej samej licencji.

IPA zawiera 107 oznaczeń dla liter, samogłosek i spółgłosek, 31 znaków diakrytycznych (znaków graficznych umieszczanych w okolicach danej litery, zmieniających jej artykulację) oraz 19 dodatkowych znaków określających cechy, takie jak długość głoski, czy intonacja [16]. 4.2.3. ORTFON 2.0 Program Ortfon powstaje w Zespole Przetwarzania Sygnałów przy Katedrze Elektroniki Akademii Górniczo Hutniczej. Służy do transkrypcji ortograficznej na fonemiczną dla języka polskiego. Bazuje na algorytmach opisanych w tabelach w następujących publikacjach: - Steffen-Batóg, M. and Nowakowski, P. (1993). An algorithm for phonetic transcription of ortographic texts in Polish. - Andrzej Pluciński. Optimisation of Transcription Rules. Studia Phonetica Posnaniensia. An International Journal for Linguistic Phonetics, 6:8396, 2000. vol 6.

i ĩ ɨ! ɛ ɛ ɛ ɛ a a ã a ɔ ɔ ɔ ɔ u u ũ u j ȷ w w w l l lʲ r r rʲ m m mʲ n n nʲ n ɲ ɲ ŋ ŋ ŋʲ ŋ ʲ v vʲ f fʲ z zʲ ʑ s sʲ ɕ ʒ ʒʲ ʃ ʃʲ γ h x ç ʣ ʣ ʲ ʥ ʦ ʦ ʲ ʨ ʤ ʤ ʲ ʧ ʧ b bʲ p pʲ d dʲ ḍ t tʲ ṭ g ɟ k c Tabela 1. Lista wszystkich symboli transkrypcji fonetycznej wg alfabetu IPA, używanej przez program Ortfon 2.0 [16] 4.2.3.1. Poprawki do programu Ortfon Ortfon w wersji 2.0 jest programem, który w dalszym ciągu powstaje. Nie został jeszcze użyty w żadnym komercyjnym projekcie, dlatego jednym z założeń niniejszej pracy było testowanie i weryfikacja poprawności jego działania. Pierwszym etapem pracy nad korpusem okazało się wprowadzenie poprawek do tabel transkrypcji fonetycznej, które przekształcane do odpowiedniego formatu podawane były na wejściu systemu. Najpierw należało sprawdzić ewentualne błędy w przygotowanych już plikach.xls przy pomocy tabel zawartych w publikacji Steffen-Batóg i Nowakowskiego. Na dalszym etapie, pliki konwertowano na.csv, a ostatecznie, dzięki odpowiedniemu parserowi

będącemu elementem oprogramowania, do formatu.tbl akceptowanego przez główny plik programu. Rysunek 5. Przykładowa tabela transkrypcji [1] Następnie wprowadzono modyfikacje zgodnie z tabelami zawartymi w publikacji Andrzeja Plucińskiego [9]. Przebadano ręcznie około 100 fragmentów tekstów, w celu wykrycia błędów działania programu. Udało się wychwycić około pięć błędnie wprowadzonych reguł. Po modyfikacji parsera tabel oraz poprawieniu błędów tabeli udało się usprawnić działanie całego systemu. 4.3. ALGORYTM ZACHŁANNY Narzędzia do projektowania korpusu syntezatora oparte są na algorytmie zachłannym. Jego działanie polega na wyselekcjonowaniu z bazy tekstów takich zdań, które spełnią określone kryteria, przy jednoczesnym zachowaniu rozkładu statystycznego występowania poszczególnych jednostek w korpusie wyjściowym zbliżonego do ich rozkładu w korpusie wejściowym. Opierając się, między innymi, na publikacjach Krzysztofa Szklannego z Polsko- Japońskiej Wyższej Szkoły Technik Komputerowych, któremu udało się stworzyć w

pełni sprawny i naturalnie brzmiący syntezator [10], zdecydowano się na wybór difonu, jako podstawowej jednostki do konkatenacji. Stąd założenia przyjęte w niniejszym projekcie są następujące: 1) maksymalna długość zdania 80 fonemów; 2) minimalna liczba wystąpień każdego fonemu 40; 3) minimalna liczba wystąpień każdego difonu 4; 4) liczba zdań składających się na korpus wyjściowy 2500; Kryterium 1. przyjęto ze względu na ewentualne trudności odczytu dłuższego zdania na jednym wydechu przez lektora. 4.3.1. CORPUSCRT Program CorpusCRT v. 1.03 to narzędzie do balansowania korpusu stworzone na Politechnice Katalońskiej (Universitat Politécnica de Catalunya). Oprogramowanie zostało pomyślnie wykorzystane w projekcie SpeechDat Car Spanish Database finansowanym przez Komisję Europejską i hiszpański rząd. Jest dostępne bezpłatnie do użytku niekomercyjnego [20]. Program na wejściu otrzymuje odpowiednio przygotowane dane w postaci pliku tekstowego. Powinien się on składać z trzech kolumn, czyli ciągów znaków oddzielonych tabulacją. W przypadku, gdy balansuje się korpus z uwzględnieniem fonemów i difonów, plik wejściowy o nazwie corpuscrt.input powinien mieć następującą strukturę: 1) Kolumna 0 oryginalny tekst; 2) Kolumna 1 transkrypcja na fonemy; 3) Kolumna 2 transkrypcja na difony; Następnie, przy wywoływaniu programu określa się kryteria, według których balansuje się korpus. Dla kryteriów opisanych w rozdziale 4.3. wywołanie będzie wyglądało następująco: >> CorpusCrt -L 80,1 -m 40,1 -m 4,2 -c 2500 -C 1 -- corpuscrt.input Zasada działania algorytmu w programie jest następująca w każdej iteracji danemu zdaniu przypisuje się określoną punktację w przedziale od 0 do 1. Po jej podliczeniu, wybierane jest zdanie, które otrzymało najwyższą notę. Jeżeli więcej niż jedno ma tę samą punktację, wybierane jest zdanie pierwsze w kolejności. Wyselekcjonowana fraza

dołączana jest do korpusu wyjściowego i kasowana z korpusu wejściowego. Wtedy rozpoczyna się kolejna iteracja. Punktacja zdania wynosi 0, jeżeli nie są spełnione podstawowe warunki, czyli zbyt wielka/mała zawartość fonemów. W pozostałych przypadkach punktację przypisuje się wedle trzech reguł. Aby obliczyć punktację dla każdego wiersza kolumny pliku wejściowego, stosuje się następujące oznaczenia zmiennych: 1) Wartości wprowadzane przez użytkownika: T próg; minimalna zadana ilość wystąpień danej jednostki (fonemu lub difonu); 2) Wartości obliczone dla korpusu wejściowego w danej iteracji: N liczba różnych jednostek w kolumnie; U 1 jednostka o najniższej częstotliwości wystąpień; U 2 jednostka o drugiej najniższej częstotliwości wystąpień; U N jednostka o najwyższej częstotliwości wystąpień; F 1 liczba wszystkich wystąpień jednostki U 1 ; F N liczba wszystkich wystąpień jednostki U N ; 3) Wartości obliczone dla korpusu wyjściowego w danej iteracji: N 1 liczba jednostek U 1 w korpusie wyjściowym; N N liczba jednostek U N w korpusie wyjściowym; L numer jednostki (1 - N), która ma najmniejszą częstotliwość wystąpień i spełnia N i < T; 4) Wartości obliczone dla pojedynczego wiersza kolumny: R 1 liczba wystąpień jednostki U 1 w zdaniu; R N liczba wystąpień jednostki U N w zdaniu; M numer jednostki (1 - N) występującej w wierszu, która ma najmniejszą częstotliwość wystąpień i spełnia N i < T;

REGUŁA 1: Stosowana, gdy w zdaniu występują tylko jednostki, których pokrycie już przekracza lub jest równe progowi T. Równanie 1 wynik _ reg1 = 0.01 (1+ 2N) REGUŁA 2: Stosowana, jeżeli w komórce występują jednostki, których liczba w korpusie wyjściowym nie doszła jeszcze do progu T oraz nie występuje w niej jednostka U L. N(T 100) < 50 REGUŁA 3: Stosowana, jeżeli w komórce występuje jedna lub więcej jednostka U L. (1) wynik _ reg3 = 1.0 (2) Zasady użycia poszczególnych reguł zostaną wyjaśnione na przykładzie. Załóżmy, że w kolejnej iteracji algorytmu jedna z kolumn korpusu wejściowego, dla zdań S1 S6, wygląda następująco: S1: U 1 U 2 U 4 U 5 S2: U 4 U 4 U 4 U 5 S3: U 2 U 3 U 5 U 7 S4: U 6 U 6 U 8 U 9 S5: U 3 U 3 U 5 U 6 S6: U 7 U 7 U 7 U 9 Przy czym jednostki U 1 U 2 U 4 i U 5 osiągnęły już w korpusie wyjściowym pożądaną ilość, przekraczającą lub równą progowi T. Zostały zatem do uzupełnienia jednostki U 3 U 6 U 7 U 8 oraz U 9.

Regułę 1. zastosowano zatem dla zdań S1 i S2, gdyż zawierają one wyłącznie jednostki, które spełniły już wszystkie kryteria. wynik _ S1 = wynik _ S2 = 0.01 (1+ 2 *9) = 0.01 19 0.01 (1+ 2 *9) = 0.01 19 Regułę 2. zastosowano dla zdań S4 i S6, gdyż w tym przypadku indeks L przyjmie wartość 3, a zdania te nie zawierają jednostek U 3. 2 0.5 min(1; ) min(t;f wynik _ S4 = 6 ) N 6 2 = 0.125min(1; ) (6 3+1) min(t;f 6 ) N 6 3 0.5 min(1; ) min(t;f wynik _ S6 = 7 ) N 7 3 = 0.1min(1; ) (7 3+1) min(t;f 7 ) N 7 Regułę 3. zastosowano dla zdań S3 i S5, gdyż zawierają jednostki U 3. wynik _ S3 = 1.0 wynik _ S5 = 1.0 Na koniec warto dodać, iż wzory są tak skonstruowane, aby w praktycznycg przypadkach (spełniających założenie N(T 100) < 50 ) wynik dla zastosowania Reguły 1. zawsze był mniejszy niż wynik dla Reguły 2., a dla Reguły 3 większy od dwóch pozostałych. 4.3.2. SKRYPTY DO FORMATOWANIA PLIKÓW TEKSTOWYCH Aby wprowadzić na wejście programu CorpusCrt dane do poprawnego przetwarzania, należało stworzyć szereg skryptów do modyfikacji plików.txt. Napisano je w języku Ruby, a służyły, między innymi, do ekstrakcji zdań z formatu języka XML, z bazy tekstów NKJP. Usunięto wszystkie słowa posiadające oznaczenia wyrażeń obcych, skróty, aglutynacje i liczby. Wykorzystano skrypty również do poprawnego

przygotowania transkrypcji fonetycznej (każdy symbol oddzielony spacją) oraz do stworzenia kolumny difonów. Przykładowa linijka pliku corpus.input to oddzielone od siebie tabulacją kolumny, kolejno: ortograficznego zapisu zdania, zapisu fonetycznego oraz zapisu difonami: nie było więc źle n' e b y w o vj j et n c z' l e #n' n'e eb by yw wo ovj vjj jet etn nc cz' z'l le e# 4.3.3. RĘCZNA WERYFIKACJA POPRAWNOŚCI DZIAŁANIA ALGORYTMU STATYSTYKI WYSTĘPOWANIA POSZCZEGÓLNYCH FONEMÓW Przed oceną poprawności działania oprogramowania należało przeczytać wszystkie zdania korpusu, w celu wyeliminowania fraz powtarzających się bądź takich, których transkrypcja fonetyczna okazała się niepoprawna. Były to, na przykład, zdania w których występowały cyfry rzymskie, bądź nieoznaczone w plikach NKJP skróty i akronimy. Ostatecznie z 2500 w korpusie zostały 2132 zdania. Po oczyszczeniu korpusu można było przejść do weryfikacji działania algorytmu programu CorpusCRT. W tym celu wygenerowano statystyki częstotliwości występowania fonemów i difonów w każdym z korpusów wejściowym i wyjściowym oraz dokonano analizy porównawczej. Ogólne statystyki korpusu wyjściowego dla fonemów: Średnia długość zdania (w fonemach): 58.0469 Całkowita liczba jednostek: 123756 Liczba różnych jednostek: 78 Średnia liczba występowania jednostki: 1586.62 Najmniejsza liczba wystąpienia jednostki: 6 Największa liczba wystąpienia jednostki: 11824 Ostatecznie z 80 fonemów, które występują w bazie NKJP w ostatecznym korpusie znajduje się 78. Dwa brakujące fonemy można było pominąć, gdyż w bazie ponad 70 tys. zdań wystąpiły po 1 i 2 razy. Na rysunkach 7 i 8 można zauważyć, że dla czterdziestu najpopularniejszych fonemów stosunek częstości występowania danego fonemu oscyluje wokół jedynki, zatem rozkład statystyczny dla obu korpusów jest podobny. Sytuacja się zmienia w

przypadku fonemów rzadziej występujących. Ich pokrycie w korpusie docelowym (wyjściowym) jest dużo większe, niż w korpusie wejściowym. Świadczy o tym wyjście większości wartości stosunku poza zakres osi pionowej. Jest to zjawiskiem pożądanym, gdyż duża ilość żadkich fonemów w bazie wpływa dodatnio na jakość syntezowanej mowy. 10% 9% 8% 7% 6% 5% 4% 3% 2% 1% 0% NKJP KORPUS et it dzi lj yt k' m' wt vj ot zk h tsz co c b g s' z sz l f w d v m n' k p u y i s n r j t o e a Rysunek 6. Porównanie udziału procentowego 40-stu najpopularniejszych fonemów w korpusie wejściowym i wyjściowym programu CorpusCRT [rys. autora] 1,5 1,3 1,1 0,9 0,7 0,5 0,3 0,1-0,1 et it dzi lj yt k' m' wt vj ot zk h tsz co c b g s' z sz l f w d v m n' k p u y i s n r j t o e a Rysunek 7. Stosunek zawartości procentowej danego fonemu w korpusie wyjściowym, do wejściowego. Wykres dla 40-stu najpopularniejszych fonemów [rys. autora]

1,5 1,3 1,1 0,9 0,7 0,5 0,3 0,1-0,1 N2 tsz2 N2j sz2 hy n'2 wd zk2 sj opt ut ns _ etd ll nd md dr dd dz' dzk t' ed chi Nj zj d' r' j2 g' z' td N dz Qj bj c' p' Rysunek 8. Stosunek zawartości procentowej danego fonemu w korpusie wyjściowym, do wejściowego. Wykres dla 38-śmiu pozostałych fonemów [rys. autora] Ogólne statystyki korpusu wyjściowego dla difonów: Średnia długość zdania (w fonemach): 59.0469 Całkowita liczba jednostek: 125888 Liczba różnych jednostek: 1837 Średnia liczba występowania jednostki: 68.5291 Najmniejsza liczba wystąpienia jednostki: 1 Największa liczba wystąpienia jednostki: 2364 Na 2346 difony występujące w bazie NKJP w korpusie finalnym znalazło się ich 1837. Nie występują w nim żadne jednostki, które w zbiorze wejściowych danych pojawiają się z częstotliwością mniejszą niż 5. Jest to wynik zadowalający. Ponadto, porównanie statystyk częstości występowania najpopularniejszych difonów w obu korpusach (Rysunek 9) również wypada korzystnie. Na Rysunku 10 widać wyraźnie, że proporcja udziałów procentowych czterdziestu najczęstszych jednostek jest we wszystkich przypadkach bliska jedności.

2,0% 1,8% 1,6% 1,4% 1,2% 1,0% 0,8% 0,6% 0,4% 0,2% 0,0% NKJP KORPUS as wa os en' le ot psz ne eg lji n'i sze er vjj te an ar to at go za ka do em es otwt aw ko ja va ej ta ro ov ra st n'e po na je Rysunek 9. Porównanie udziału procentowego 40-stu najpopularniejszych difonów w korpusie wejściowym i wyjściowym programu CorpusCRT [rys. autora] 1,20 1,00 0,80 0,60 0,40 0,20 0,00 as wa os en' le ot psz ne eg lji n'i sze er vjj te an ar to at go za ka do em es otwt aw ko ja va ej ta ro ov ra st n'e po na je Rysunek 10. Stosunek zawartości procentowej danego difonu w korpusie wyjściowym, do wejściowego. Wykres dla 40-stu najpopularniejszych difonów [rys. autora] 4.4. REALIZACJA BAZY AUDIO Baza audio korpusu powinna być rejestrowana w warunkach akustycznie sterylnych, aby zapewnić jak największą zrozumiałość generowanej mowy. Minimalny poziom wszelkich zakłóceń, takich jak szum czy pogłos, jest osiągalny wyłącznie w

pomieszczeniach specjalnie przystosowanych do profesjonalnych sesji, oraz przy użyciu wysokiej jakości sprzętu do nagrań lektorskich. 4.4.1.1. Oprogramowanie Dźwięk z mikrofonu zapisywano poprzez interfejs dźwiękowy Lexicon (różne modele) w otwartym oprogramowaniu Audacity, w rozdzielczości 16 bit i częstotliwości próbkowania 44,1 khz. Reżyser miał do dyspozycji słuchawki podłączone do mikrofonu lektora. Rysunek 11. Zrzut interfejsu programu Audacity podczas nagrywania lektora [rys. autora] 4.4.1.2. Pomieszczenie nagraniowe Nagrania zrealizowano w komorze bezechowej udostępnionej przez Laboratorium Akustyki Technicznej Katedry Mechaniki i Wibroakustyki Akademii Górniczo- Hutniczej. Komora zapewnia doskonałe warunki dla nagrań lektorskich, ze względu na ekstramalnie niski poziom tła akustycznego, oraz praktycznie zniwelowany pogłos. Warunki, które zapewnia komora pozwala na rejestrację bazy w taki sposób, aby jak najbardziej ograniczyć potrzebę postprocessingu cyfrowego, który mógłby spowodować zniekształcenia. Jest to sześcian o wymiarach 10x10 metrów wykonany z żelbetu. Jej objętość użyteczna wynosi 342 m 3, a masa 600 ton. Całość posadowiona jest na 25 kasetach wibroizolujących, w których każda zawiera 4 sprężyny zderzakowe ograniczające drgania podowodowane bliskością infrastruktury miejskiej. Poziom ciśnienia akustycznego w komorze wynosi 1,5 dba za dnia, w porze nocnej spada nawet do 0 dba[8][25].

4.4.1.3. Mikrofon Dobór odpowiedniego sprzętu nagraniowego ma wyjątkowo duże znaczenie dla jakości ostateczniej formy korpusu. Podczas wybierania mikrofonu należy kierować się kryteriami zależnymi od warunków akustycznych panujących w pomieszczeniu nagraniowym, specyfikacji rejestrowania głosu ludzkiego, oraz tego, jak pozostałe urządzenia będą z nim współpracować. W większości przypadków do tego typu zadań polecane są wielkomembranowe mikrofony pojemnościowe. Rozmiar membrany ma subtelny, choć zauważalny efekt przy utrwalaniu mowy. Popularne są również klasyczne mikrofony lampowe, takie jak Rode Classic, które zapewniają ciepłe, przyjemne brzmienie głosu. Jednak ze względu na wysoką cenę takiego sprzętu, zdecydowano zrealizować nagrania przy pomocy mikrofonu AKG C 4000 B o dwumembranowym przetworniku pojemnościowym, który został udostępniony przez Laboratorium Przetwarzania Sygnałów AGH. Mikrofon ten wyposażony jest w tłumik przedwzmacniacza -10 db, jego czułośc wynosi 25 mv/pa (-32 dbv), SNR 86 db, impedancja wejściowa 200 Ohm, a średnica membrany 25 mm. Posiada regulowaną charakterystykę (kardioidalną, hiperkardioidalną oraz dookólną), a jego zakres częstotliwości pokrywa się z zakresem słyszalności częstotliwości dla ucha człowieka. Użyto powyższego przetwornika wybierając następujące ustawienia: Charakterystyka kardioidalna zdecydowano się na ten wybór ze względu na to, iż źródło dźwięku to wyłącznie jeden lektor, przed którym w komorze znajdowały się sprzęty, których szum zakłócałby nagranie Filtr niskich częstotliwości (poniżej 100 Hz) aby dodatkowo zniwelować potencjalne zakłócenia pochodzące, między innymi, z przenośnego komputera, na którym uruchomiono program Audacity

Rysunek 12. Wykres odpowiedzi częstotliwościowej mikrofonu AKG C 4000 B dla charakterystyki kardioidalnej [23] Widmo częstotliwości mowy to bardzo szeroki zakres, od 100 do 8000 Hz, jednakże nawiększa energia przypada na wartość 500 Hz i od tego progu maleje sukcesywnie wraz ze wzrostem częstotliwości. Na wykresie z rysunku 1. można zauważyć, że w najistotniejszym obszarze charakterystyka mikrofonu jest maksymalnie płaska, co dodatkowo czyni uzasadnionym wybór właśnie takiego sprzętu. 4.4.1.4. Filtracja głosek wybuchowych Aby uniknąć niepożądanych zakłóceń związanych ze specyfiką wypowiadania spółgłosek zwartych, zastosowano pop-filtr. Jest to nylonowa osłona rozciągnięta na metalowej obręczy instalowana na statywie mikrofonu, wykorzystywana często w studiach nagrań i radio. Spółgłoski zwarte, inaczej zwarto-wybuchowe, powstają w wyniku gwałtownego odblokowania intensywnego strumienia powietrza przez jamę ustną i nosową. Eksplozja związana z artykulacją tych głosek może być na tyle duża, aby spowodować zakłócenia w nagraniu. W języku polskim, zgodnie ze standardami alfabetu IPA, są to głoski oznaczone symbolami p, b, d, ɢ, d, ʡ, ʔ, ɟ, ɖ.