rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽilinskÁ univerzita v...

109
ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou náročnosťou Dizertačná práca 28360020133018 Študijný program: Aplikovaná informatika Pracovisko: Fakulta riadenia a informatiky Katedra technickej kyberneticky Školiteľ: prof. Ing. Juraj Miček, PhD. Žilina, 2013 Ing. Martin Hyben

Upload: truongdan

Post on 31-Jan-2018

228 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky

Rozpoznávanie reči s nízkou výpočtovou

náročnosťou

Dizertačná práca

28360020133018 Študijný program: Aplikovaná informatika

Pracovisko: Fakulta riadenia a informatiky

Katedra technickej kyberneticky

Školiteľ: prof. Ing. Juraj Miček, PhD. Žilina, 2013 Ing. Martin Hyben

Page 2: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

Poďakovanie

Na tomto mieste by som sa chcel poďakovať svojmu vedúcemu prof. Ing.

Jurajovi Mičekovi, PhD. za jeho trpezlivosť a cenné rady, ktoré mi vždy boli veľkou

inšpiráciou. Okrem toho by som chcel svoju vďaku vyjadriť aj Ing. Matúšovi

Jurečkovi PhD., za jeho cenné rady a pripomienky k vypracovaniu dizertačnej práce.

Vyhlasujem, že som dizertačnú prácu vypracoval samostatne a že som uviedol

všetky použité zdroje a literatúru, z ktorej som čerpal.

V Žiline, dňa 1. decembra 2013 Ing. Martin Hyben

Page 3: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

Abstrakt

Práca je venovaná problematike rozpoznávania reči, s dôrazom na rozpoznávanie izolovaných slov v slovenskom jazyku. Taktiež popisuje proces optimalizácie rozpoznávania reči, v rámci ktorej sú uvádzané možnosti optimalizácie frekvenčnej analýzy pomocou riedkej Fourierovej transformácie (sparse Fourier transformation) a s použitím programovateľných hradlových polí (FPGA). Okrem toho bol navrhnutý vlastný algoritmus nerovnomernej segmentácie rečového signálu, ktorý markantne znižuje množstvo parametrov vstupujúcich do procesu klasifikácie. Uvedené postupy boli použité pri návrhu optimalizovaného algoritmu rozpoznávania reči, v rámci ktorého boli aplikované tri rôzne metódy klasifikácie parametrov, a to algoritmus dynamického zarovnania časovej mierky (DTW), skryté Markovove modely (HMM) a hlboké neurónové siete (DNN). Výsledkom práce je návrh šiestich scenárov, pričom ako základ experimentov boli postavené tri vyššie spomenuté metódy klasifikácie a ich vzájomné porovnanie s použitím rovnomernej segmentácie a vlastnej metódy nerovnomernej segmentácie rečového signálu. Záver práce je venovaný vyhodnoteniu a porovnaniu výsledkov jednotlivých experimentov z pohľadu úspešnosti rozpoznávania, výpočtovej náročnosti a využiteľnosti jednotlivých metód v praxi.

Kľúčové slová: rozpoznávanie reči, rozpoznávanie izolovaných slov, nízka výpočtová náročnosť, nerovnomerna segmentácia

Page 4: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

Abstract

A thesis is devoted to an issue of speech recognition, with emphasis on the recognition of isolated words in Slovak language. It also describes the process of optimizing the speech recognition, under which an optimizations of frequency analysis are presented using sparse Fourier transform and programmable gate arrays (FPGA). In addition, a new algorithm of nonlinear segmentation of speech signal is proposed, which markedly reduces the number of parameters entering classification process. Above procedures were used in design of optimized speech recognition algorithm, under which the three methods of classification of parameters were applied, namely dynamic time warping (DTW), hidden Markov models (HMM) and deep neural networks (DNN). The result of the thesis is a design of 6 scenarios, while the base for these scenarios were classification methods mentioned above and their mutual comparison with using of linear segmentation and new algorithm of nonlinear segmentation of speech signal. The final part of thesis is devoted to evaluation and comparison of the results of individual experiments in terms of recognition accuracy, computational complexity and applicability of individual methods in practice.

Key words: speech recognition, recognition of isolated words, low computational complexity, nonlinear segmentation

Page 5: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

Obsah Úvod ............................................................................................................................... 3

1 Produkcia a vnímanie reči človekom .................................................................. 5

1.1 Vznik reči ........................................................................................................ 5

1.2 Matematický model produkcie reči ................................................................. 6 1.3 Vnímanie reči človekom ................................................................................. 7

1.4 Rečové jednotky ............................................................................................ 10

1.5 Výber vhodných rečových jednotiek ............................................................. 12 2 Metódy analýzy akustických signálov ............................................................... 13

2.1 Spektrálna analýza ......................................................................................... 13 2.1.1 Diskrétna Fourierova transformácia....................................................... 13

2.1.2 Rýchla Fourierova transformácia ........................................................... 14

2.1.3 Kĺzavá diskrétna Fourierova transformácia ........................................... 14

2.1.4 Diskrétna kosínusová transformácia ...................................................... 16

2.1.5 Modifikovaná diskrétna kosínusová transformácia ............................... 16

2.2 Kepstrálna analýza ........................................................................................ 17 2.3 Lineárne prediktívna analýza ........................................................................ 18

2.4 Banka filtrov .................................................................................................. 21 2.5 Mel- frekvenčné kepstrálne koeficienty ........................................................ 22

2.6 Vektorová kvantizácia ................................................................................... 24

2.6.1 Algoritmus K-means .............................................................................. 24

2.6.2 Zmes Gaussových modelov ................................................................... 25

3 Nelineárne zarovnanie časovej mierky ............................................................. 27

4 Skryté Markovove modely ................................................................................. 29

4.1.1 Teória štatistického porovnávania vzorov ............................................. 29

4.1.2 Markovove modely ................................................................................ 30

4.1.3 Proces učenia HMM .............................................................................. 32

4.1.4 Rozpoznávací proces HMM .................................................................. 32

5 Neurónové siete ................................................................................................... 34

5.1 Historický úvod ............................................................................................. 34 5.2 Princíp neurónových sietí .............................................................................. 35

5.3 Matematický model neurónu ......................................................................... 36

5.4 Učenie neurónových sietí .............................................................................. 36

5.4.1 Algoritmus Back-Propagation ............................................................... 38

5.4.2 Kohonenovo (kompetitívne) učenie ....................................................... 39 5.5 Architektúry neurónových sietí ..................................................................... 39

5.5.1 Dopredné siete ....................................................................................... 39

5.5.2 Asociačné pamäte .................................................................................. 41

5.5.3 Rekurentné siete ..................................................................................... 42

5.5.4 Samoorganizujúce mapy ........................................................................ 44

5.6 Hlboké neurónové siete ................................................................................. 45

5.6.1 Formálny opis ........................................................................................ 45

5.6.2 Učenie jednej vrstvy .............................................................................. 46

Page 6: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

5.6.3 Učenie viacerých vrstiev ........................................................................ 48

5.6.4 Dolaďovanie pomocou backpropagation ............................................... 48

5.6.5 Zhrnutie .................................................................................................. 49 6 Algoritmy a ich zložitosť .................................................................................... 50

6.1 Algoritmy ...................................................................................................... 50 6.2 Výpočtová zložitosť ...................................................................................... 51

6.3 Polynomiálne transformácie .......................................................................... 51

6.4 NP - ťažké úlohy ........................................................................................... 52

6.5 Asymptotické hodnotenie .............................................................................. 53

7 Ciele dizertačnej práce ....................................................................................... 55

8 Rozpoznávanie povelov v multirobotických systémoch .................................. 57

8.1 Použitý multirobotický systém ...................................................................... 57

8.2 Rozpoznávací algoritmus .............................................................................. 58

8.3 Testovanie algoritmu pomocou informačnej fúzie ........................................ 61

8.3.1 Scenár 1: Fúzia dát ................................................................................. 61

8.3.2 Scenár 2: Fúzia charakteristických vlastností ........................................ 62

8.3.3 Scenár 3: Fúzia rozhodnutí .................................................................... 63

8.4 Vyhodnotenie experimentov ......................................................................... 64

9 Optimalizácia procesu rozpoznávania reči ....................................................... 67

9.1 Formálny opis procesu rozpoznávania reči ................................................... 67

9.1.1 Proces trénovania ................................................................................... 67

9.1.2 Proces testovania a rozpoznávania ......................................................... 68

9.2 Optimalizovaná frekvenčná analýza ............................................................. 68 9.2.1 Riedka Fourierova transformácia ........................................................... 69

9.2.2 Praktické využitie riedkej Fourierovej transformácie ............................ 70

9.2.3 Frekvenčná analýza s použitím FPGA ................................................... 73

9.3 Nerovnomerná segmentácia rečového signálu .............................................. 76 9.4 Návrh algoritmu rozpoznávania izolovaných povelov .................................. 79

9.5 Experimentálne overenie ............................................................................... 82

9.5.1 Scenár 1: Nelineárne zarovnanie časovej mierky .................................. 83

9.5.2 Scenár 2: Skryté Markovove modely ..................................................... 85

9.5.3 Scenár 3: Hlboká neurónová sieť ........................................................... 86 9.6 Vyhodnotenie výsledkov experimentov ........................................................ 88

Záver ............................................................................................................................ 91

Použitá literatúra ........................................................................................................ 93

Vlastné Publikácie ..................................................................................................... 100

Page 7: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

Zoznam obrázkov Obrázok 1.1: Ľudské hlasové ústrojenstvo .................................................................. 5

Obrázok 1.2: Model produkcie reči.............................................................................. 6 Obrázok 1.3: Sluchové ústrojenstvo............................................................................. 7 Obrázok 1.4: Slimák rozdelený bazilárnou membránou na dve časti. ......................... 8

Obrázok 1.5: (a) Prierez bazilárnou membránou, (b) detail na vláskové bunky. ......... 9

Obrázok 1.6: Budenie vláskových buniek rečovým signálom. .................................... 9

Obrázok 2.1: Ilustrácia princípu rekurzívneho delenia pri použití algoritmu rýchlej Fourierovej transformácie. ................................................................... 14

Obrázok 2.2: Rotačný zásobník. ................................................................................ 15

Obrázok 2.3: Vkladanie prvkov do rotačného zásobníka. ......................................... 15 Obrázok 2.4: Aktuálny stav rotačného zásobníka. ..................................................... 15 Obrázok 2.5: Postup výpočtu reálneho kepstra zo segmentu rečového signálu......... 17

Obrázok 2.6: Reálne kepstrum stacionárneho segmentu znelej hlásky „a“. .............. 18

Obrázok 2.7: Charakteristický rozsah vnímania akustických podnetov ľudského ucha. ..................................................................................................... 21

Obrázok 2.8: Banka trojuholníkových filtrov s melovou škálou. .............................. 22

Obrázok 2.9: Postup výpočtu MFCC. ........................................................................ 23

Obrázok 2.10: Ilustrácia zhlukovania pomocou K-means algoritmu. ......................... 24

Obrázok 2.11: Výsledok identifikácie zhlukov mel-frekvenčných kepstrálnych koeficientov pomocou zmesi Gaussových modelov. ........................... 25

Obrázok 3.1: Časové zarovnanie ukážkových priebehov A a B. ............................... 27 Obrázok 3.2: Nelineárne zarovnanie časovej mierky - možná optimálna cesta ......... 28

Obrázok 4.1: Princíp rozpoznávania izolovaných slov pomocou štatistických metód .............................................................................................................. 29

Obrázok 4.2: Uzly Markovovho modelu, spolu s prechodmi medzi nimi. ................ 30

Obrázok 5.1: Anatómia biologického neurónu .......................................................... 35

Obrázok 5.2: Matematický model neurónu ................................................................ 36

Obrázok 5.3: Architektúra jednovrstvovej doprednej neurónovej siete. .................... 40

Obrázok 5.4: Architektúra viacvrstvovej doprednej neurónovej siete. ...................... 40

Obrázok 5.5: Topológia siete BAM (Bidirectional Associative Memory) ................ 41

Obrázok 5.6: Architektúra dvojvrstvovej rekurentnej neurónovej siete. ................... 42

Obrázok 5.7: Topológia siete Hopfieldovho modelu pre 3 neuróny .......................... 43

Obrázok 5.8: Ilustrácia stavového priestoru Hopfieldovej siete s 3 neurónmi .......... 43

Obrázok 5.9: Štruktúra Kohonenovej samoorganizujúcej mapy. .............................. 44

Obrázok 5.10: Princíp učenia hlbokej neurónovej siete. Na vstupe matica m -frekvenčných kepstrálnych koeficientov (MFCC) trénované pre 20 výstupných povelov. ............................................................................. 48

Obrázok 6.1: Znázornenie závislosti horného ohraničenia výpočtového času O od veľkosti vstupného problému. .............................................................. 53

Obrázok 6.2: Znázornenie závislosti dolného ohraničenia výpočtového času ΩΩΩΩ od veľkosti vstupného problému. .............................................................. 53

Obrázok 6.3: Znázornenie závislosti presného ohraničenia výpočtového času ΘΘΘΘ od veľkosti vstupného problému. .............................................................. 54

Obrázok 8.1: Blokový diagram robota George. ......................................................... 57

Obrázok 8.2: Multirobotocký systém Georges .......................................................... 58

Obrázok 8.3: Multirobotický systém pre úlohu rozpoznávania povelov. .................. 58

Page 8: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

Obrázok 8.4: . Signál s(t) nezašumený a) a po aplikácií šumu s SNR = 10 dB. ......... 59 Obrázok 8.5: Časové zarovnanie ................................................................................. 59

Obrázok 8.6: Bloková schéma procesu rozpoznávania povelov.................................. 60

Obrázok 9.1.: Proces trénovania systému rozpoznávania reči. .................................... 67

Obrázok 9.2.: Proces testovania a použitia systému rozpoznávania reči. .................... 68 Obrázok 9.3: Charakteristika kombinovaného Gaussovho a box-car filtra časovej

oblasti zobrazená vľavo a banka takto navrhnutých filtrov pokrývajúca jednotlivé pásma frekvenčného spektra zobrazená vpravo.[zdroj: [32]] .............................................................................................................. 69

Obrázok 9.4: Určenie výskytu významných frekvencií v jednotlivých pásmach frekvenčného spektra.[zdroj: [32]] ....................................................... 70

Obrázok 9.5: Porovnanie výpočtových časov frekvenčnej analýzy jednotlivých algoritmov v závislosti na počte vzoriek vstupného signálu pri hodnote sparsity k = 50[zdroj: [32]]. ........................................................ 71

Obrázok 9.6: Porovnanie výpočtových časov frekvenčnej analýzy jednotlivých algoritmov v závislosti na sparsite signálu pri hodnote počtu vzoriek vstupného signálu n = 222. [zdroj: [32]] ............................................. 72

Obrázok 9.7.: Závislosť výpočtového času sFFT dané jednak počtom vzoriek vstupného signálu n a rôznych hodnôt sparsity k. ................................ 73

Obrázok 9.8.: Typická štruktúra FPGA. IOB predstavuje Input/Output blok pre vkladanie a získavanie vstupov a výstupov a Logický blok LB slúži na vykonanie samotných výpočtov. .......................................................... 74

Obrázok 9.9.: Diskrétna Fourierova transformácia na FPGA. .................................... 75

Obrázok 9.10.: Kĺzavá diskrétna Fourierova transformácia na FPGA. ....................... 76 Obrázok 9.11: Nerovnomerna segmentácia slova „eseáta“. ........................................ 77

Obrázok 9.12: Bloková schéma nami zvoleného modelu rozpoznávania reči. ............ 79 Obrázok 9.13: Jednotlivé vektory mel-koeficientov zaradené do klastrov podľa

príslušnosti k danému centroidu. Jednotlivé klastre sú vyjadrené rôznymi farbami. .................................................................................. 81

Obrázok 9.14: Spektrum bieleho šumu. ....................................................................... 82 Obrázok 9.15: Spektrum ružového šumu. .................................................................... 83 Obrázok 9.16: Úspešnosť rozpoznávania algoritmu s použitím metódy DTW,

s použitím rovnomernej segmentácie. .................................................. 84

Obrázok 9.17: Úspešnosť rozpoznávania algoritmu s použitím metódy DTW, s použitím navrhovanej metódy nerovnomernej segmentácie. ............... 84

Obrázok 9.18: Úspešnosť rozpoznávania algoritmu s použitím metódy skrytých Markovových modelov, s použitím rovnomernej segmentácie. ........... 85

Obrázok 9.19: Úspešnosť rozpoznávania algoritmu s použitím metódy skrytých Markovových modelov, s použitím navrhovanej metódy nerovnomernej segmentácie. ......................................................................................... 86

Obrázok 9.20: Úspešnosť rozpoznávania algoritmu s použitím metódy hlbokej neurónovej siete, s použitím rovnomernej segmentácie. ...................... 87

Obrázok 9.21: Úspešnosť rozpoznávania algoritmu s použitím metódy hlbokej neurónovej siete, s použitím navrhovanej metódy nerovnomernej segmentácie. ......................................................................................... 88

Page 9: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

Zoznam tabuliek a grafov Tabuľka 8.1: Euklidovské vzdialenosti fúzie dát referenčných povelov a vysloveného

povelu pri rôznych úrovniach aditívneho šumu, nahrávaného (a) dvomi robotmi, (b) štyrmi robotmi. ................................................................... 61

Tabuľka 8.2: Euklidovské vzdialenosti fúzie charakteristických

vlastností referenčných povelov a vysloveného povelu pri rôznych úrovniach aditívneho šumu, nahrávaného (a) dvomi robotmi, (b) štyrmi robotmi. ................................................................................................... 63

Tabuľka 8.3: Euklidovské vzdialenosti fúzie rozhodnutí referenčných povelov a

vysloveného povelu pri rôznych úrovniach aditívneho šumu, nahrávaného (a) dvomi robotmi, (b) štyrmi robotmi. ............................. 64

Tabuľka 9.1: Úspešnosť rozpoznávania navrhovaných metód s použitím rovnomernej

a navrhovanej nerovnomernej segmentácie. ........................................... 89

Graf 8.1: Závislosť Euklidovskej vzdialenosti od počtu robotov a úrovne

aditívneho šumu. ..................................................................................... 62 Graf 8.2: Porovnanie scenárov pri použití rôznej úrovne aditívneho šumu. .......... 65 Graf 8.3: Zaťaženie komunikačného podsystému.................................................. 65 Graf 9.1: Úspešnosť algoritmu rozpoznávania použitím rôznych metód

klasifikácie, s použitím rovnomernej a navrhovanej nerovnomernej segmentácie. ............................................................................................ 89

Page 10: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

Zoznam použitých skratiek AR Aktívny robot

AAFFT Ann Arbor Fast Fourier Transform (implementácia FFT) BP Backpropagation

DCT Diskrétna kosínusová transformácia

DFT Diskrétna Fourierova transformácia

DTW Dynamické zarovnanie časovej osi

FFT Rýchla Fourierova transformácia

FPGA Programovateľné hradlové polia

FFTW Fastest Fourier Transform in the West (implementácia FFT)

LPC Lineárne prediktívne kepstrálne koeficienty

LUT Look-up tabuľka

MFCC Mel-frekvenčné kepstrálne koeficienty

MRS Multirobotický systém

NN Neurónová sieť

RR Riadiaci robot

sFFT Riedka Fourierova transformácia

SNR Odstup signál šum

SNRw Odstup signál biely šum

SNRp Odstup signál ružový šum

Page 11: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 3 -

Úvod

Už od počiatkov moderných osobných počítačov existuje snaha „naučiť“ počítač porozumieť ľudskej reči. Počiatky snahy naplniť tento cieľ siahajú až do roku 1936, keď spoločnosť AT&T's Bell Labs začala so štúdiou automatického rozpoznávania a prepisu reči do textovej podoby. Trvalo však až do začiatku 80-tych rokov, kým sa informačné technológie zdokonalili natoľko, že mohol byť na trhu predstavený prvý systém schopný rozpoznávať samostatné slová. Najmä v posledných rokoch zažíva problematika rozpoznávania reči veľký rozmach. Veda sa snaží v tejto problematike pokročiť a vytvoriť systém, schopný bezproblémového rozpoznávania plynulej bežnej ľudskej reči, a to aj v podmienkach zhoršených vplyvom prostredia. Jedným z hlavných problémov pre systémy rozpoznávania reči sú práve vplyvy okolia, ako napr. vplyv mikrofónu na nahrávanie, zvuky okolia, alebo tzv. „cocktail party“, čo je anglický výraz pre viacero rečníkov hovoriacich súčasne. Istou novinkou v oblasti rozpoznávania reči pomocou neurónových sietí bolo nedávne predstavenie tzv. hlbokých neurónových sietí (z angl. deep neural networks), ktoré sú často uvádzané ako prielom v problematike spracovania signálov, spracovania obrazu, rozpoznávania reči, alebo detekcie vizuálnych objektov. Je potrebné konštatovať, že aj napriek veľkému pokroku, súčasný stav problematiky ešte nedosahuje očakávania, ktoré sa v tomto obore kladú. Aj napriek tomu, že už existujú pomerne úspešné prístupy k popisu jednotlivých rečových elementov a ich rozpoznávaniu, ktoré budú bližšie popísané na nasledujúcich stránkach, je treba povedať, že v súčasnosti zatiaľ ešte neexistuje taký prístup k tejto problematike, ktorý by bol dostatočne odolný voči vplyvom okolia a nebol závislý od vopred natrénovanej množiny slov. Samotný fakt, že pre úspešné rozpoznanie daného slova je okrem zložitej rečovej analýzy potrebné orientovať sa ešte v slovníku tvorenom rádovo stovkami tisícov slov, robí z rozpoznávania reči z pohľadu výpočtových nárokov veľmi náročný proces. Cieľom tejto práce je navrhnúť nové postupy, umožňujúce zefektívniť rozpoznávanie reči a znížiť tak výpočtovú náročnosť celého procesu rozpoznávania. Súčasne s poklesom výpočtovej zložitosti procesov dochádza nie len k úspore výpočtového výkonu, ale aj k zníženiu spotreby energie, čo platí najmä pre jednoduchšie technické prostriedky, a tiež mobilné a embedded zariadenia, ktoré v poslednej dobe zaznamenávajú prudké nasadenie v praxi. Práca sa snaží poukázať na možnosti využitia práve spomínaných jednoduchších technických prostriedkov. Aj keď niektoré z navrhovaných metód sú použiteľné aj pre osobné počítače, väčšina z týchto metód je v práci navrhnutá s ohľadom práve na mobilné a embedded zariadenia.

Page 12: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 4 -

Práca je rozdelená do deviatich kapitol, z ktorých prvých šesť predstavuje teoretický úvod do problematiky a tri nasledujúce sa zaoberajú cieľmi a výsledkami práce. Kapitola 1 sa zaoberá problematikou tvorby reči a jej členenia. V kapitole 2 sú popísané použité metódy spracovania číslicových signálov. Kapitoly 3, 4 a 5 popisujú použité klasifikačné metódy dynamického zarovnania časovej osi (3), skrytých Markovových modelov (4) a neurónových sietí (5). Kapitola 6 sa venuje problematike výpočtovej zložitosti. V kapitole 7 je možné nájsť stanovené ciele dizertačnej práce a odkazy na časti práce, ktorých sú jednotlivé body zadania riešené. Kapitoly 8 a 9 následne pojednávajú o navrhovaných metódach, vykonaných experimentoch a záveroch, ktoré zo získaných výsledkov vyplývajú.

Page 13: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 5 -

1 Produkcia a vnímanie reči človekom Pre správne pochopenie problematiky rozpoznávania reči je nutné poznať

procesy, pri ktorých ľudská reč vzniká a princípy, ktoré využíva ľudské telo pre spätné rozpoznanie rečovej informácie. Táto kapitola sa zaoberá anatómiou akustického a sluchového ústrojenstva v ľudskom tele a ich matematickým vyjadrením. V závere budú popísané v súčasnosti používané typy rečových jednotiek.

1.1 Vznik reči

Reč je možné definovať ako mechanické chvenie vznikajúce pôsobením prúdu vzduchu na prekážku. V prípade ľudského hlasu je takouto prekážkou hlasové ústrojenstvo, ktorého detailné vyobrazenie je na obrázku 1.1.

Obrázok 1.1: Ľudské hlasové ústrojenstvo

Reč teda vzniká pomocou tlaku vytvoreného v pľúcach, ktorý vytláča vzduch cez priedušky, priedušnicu, hrtan, hltan, nosnú a ústnu dutinu. V hrtane sú umiestnené hlasivky, ktoré zohrávajú kľúčovú úlohu v procese tvorby reči. Jedná sa o tenké svalovité blany, ktoré človek dokáže svojou vôľou otvárať a zatvárať (obr. 1.1 detail). Pri otvorení hlasiviek dochádza k uvoľneniu tlaku vzduchu z pľúc a jeho následnej distribúcii celým rečovým traktom, výsledkom čoho je vznik vysokých frekvencií a náhodného šumu. V prípade zatvorenia hlasiviek zostane medzi týmito blanami úzky otvor, ktorým prúdi vzduch vysokou rýchlosťou. Vznikajúci tlak spôsobí rozkmitanie hlasiviek, výsledkom čoho je kvázi periodický sled impulzov. Tento signál, či už tvorený náhodným šumom, alebo kvázi periodickými kmitmi sa ďalej tvaruje v nosnej a ústnej dutine. Hltan, mäkké podnebie, ústna a nosná dutina, jazyk, zuby a pery tvoria artikulačný trakt, ktorý je zodpovedný za premenu prúdu vzduchu na zrozumiteľný

Page 14: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 6 -

signál. Každá časť artikulačného traktu má na výslednú reč určitý vplyv, napríklad ráno hlas človeka znie trocha inak, lebo všetky svaly podieľajúce sa na produkcii reči sú zatuhnuté. Takisto počas choroby, je upchatá nosná dutina, čo sa prejaví aj na výslednej reči. Hlasy ľudí sú veľmi rôznorodé, pretože každý jedinec je iný a má rôzne tvarované rečové orgány. Frekvencia kmitania hlasiviek sa nazýva základný tón reči, alebo základný hlasivkový tón . Typické hodnoty tejto frekvencie sú u mužov 90 – 120Hz, u žien 150 – 300Hz a u detí 350 – 400Hz. [1]

1.2 Matematický model produkcie reči

Pri výskume spôsobu vytvárania reči vznikla snaha matematicky popísať proces vytvárania reči a vytvoriť tak základný matematický model opisujúci vznikajúce artikulačné javy. Výskum ukázal, že reč obsahuje stacionárne časové úseky reči, dĺžky 10 až 30ms a teda je možné zostrojiť model, ktorý by bol ako uvádza [2] lineárny a časovo invariantný. Boli preto navrhnuté samostatné matematické modely pre jednotlivé časti produkcie reči, ako aj samostatný model hlasiviek, model hlasového traktu a model vyžarovania zvuku. Výsledný celkový model produkcie reči vznikol zjednotením týchto čiastkových modelov do celkového modelu produkcie reči, ktorého matematické vyjadrenie môžeme zhrnúť do tvaru:

= 11 + ∑ 1. 1 kde Q = 2K+1 a K je počet formantov, ktoré chceme do modelu zahrnúť. Takto získaný model je potom potrebné vybudiť budiacim signálom u(n), ktorý je tvorený sledom impulzov pre znelé zvuky a náhodným šumom pre zvuky neznelé. Podrobnejšie informácie o modeli produkcie reči, podobne ako uvedený vzťah môže záujemca nájsť v [2] na strane č. 31. Na základe uvedených skutočností je možné model produkcie reči podľa [3] vyjadriť obrázkom 1.2. Model je budený buď náhodným šumom, alebo sledom impulzov s periódou základného hlasivkového tónu, podľa charakteru výsledného zvuku. Následne je budiaci signál u(n) zosilnený a privedený na vstup modelu produkcie reči. Výsledkom je potom syntetizovaný signál reprezentujúci modelovaný zvuk.

Obrázok 1.2: Model produkcie reči.

generátor

sledu

impulzov

generátor

náhodného

šumu

model produkcie

reči

znelé budenie

parametre

hlasového

ústrojenstva

s(n)

S u(n)

f0

neznelé budenie

zosilnenie

Page 15: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 7 -

1.3 Vnímanie reči človekom

Akustické podnety vníma človek prostredníctvom sluchového ústrojenstva,

ktoré sa skladá z troch častí: vonkajšie ucho, stredné ucho a vnútorné ucho. Vonkajšie ucho tvorí ušnica a zvukovod, ktorý končí bubienkom. Ušnica je vonkajšia, viditeľná časť vonkajšieho ucha, ktorá slúži na zachytávanie zvukov prichádzajúcich z okolia a k ochrane ľudského ucha pred vniknutím cudzích telies. Tvar a umiestnenie ušnice spôsobuje, že ucho je citlivejšie na zvuky, ktoré prichádzajú z prostredia pred rečníkom, ako na zvuky prichádzajúce z prostredia za rečníkom. Detailné zobrazenie sluchového ústrojenstva zobrazuje obrázok 1.3.

Obrázok 1.3: Sluchové ústrojenstvo.

Z ušnice sa zvuk šíri do vonkajšieho zvukovodu, ktorý pôsobí ako rezonátor.

Zvukovod je vzduchom vyplnená dutina, na jednom konci (ušnica) otvorená a na druhom uzavretá bubienkom a jej dĺžka je u dospelého človeka asi 2,7 cm s priemerom asi 0,7 cm. Zvukovod je ukončený tenkou polopriehľadnou membránou lievikového tvaru o ploche asi 0,8 cm a hrúbkou 0,1 cm, ktorá sa nazýva bubienok a tvorí predel medzi vonkajším a stredným uchom.

Stredné ucho sa nachádza v bubienkovej dutine medzi bubienkom a oválnym okienkom, ktoré je vstupom do vnútorného ucha (obr. 1.3 detail). Dutina je vyplnená vzduchom prenikajúcim z nosohltanu Eustachovou trubicou, ktorá slúži na vyrovnávanie tlaku vzduchu vo vnútri bubienkovej dutiny s vonkajším tlakom. Nevyrovnaný tlak spôsobuje nesprávnu činnosť bubienka a stredného ucha a vedie k nepríjemným pocitom tzv. zaľahnutia v ušiach. Stredné ucho je tvorené súborom drobných sluchových kostičiek - kladivkom, nákovkou a strmienkom. Ide v podstate o

Page 16: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 8 -

dômyselný systém nerovnoramenných pák, ktoré prenášajú chvenie bubienka na vstup oválneho okienka. Hlavnou úlohou sluchových kostičiek je akustické impedančné prispôsobenie vonkajšieho a vnútorného ucha. Z frekvenčného hľadiska je možné stredné ucho považovať za dolný priepust so zlomovou frekvenciou približne 1 kHz a útlmom asi 15 dB/okt. Vnútorné ucho je uložené v tzv. skalnej kosti a skladá sa z niekoľkých dutiniek a kanálikov označovaných ako kostný labyrint. Vo vnútri týchto dutiniek a kanálikov sa nachádza rovnako tvarovaný, ale objemom menší, blanitý labyrint, v ktorom sú uložené receptory ústrojenstva rovnováhy a sluchu. Labyrint je vyplnený lymfatickou tekutinou a delí sa na tri časti: - predsieň, tri polkruhovité chodbičky a slimák.

Po zosilnení a predspracovaní zvukových vĺn je potrebné previesť ich na signály vhodné pre ľudský mozog. Túto úlohu zabezpečuje najzložitejšia časť sluchového ústrojenstva - slimák. Slimák (angl. cochlea) je asi 35 mm dlhá špirálovitá dutina, ktorej tvar skutočne veľmi pripomína ulitu slimáka. Ak by sme túto štruktúru vyrovnali, mala by tvar zužujúcej sa dutej tyčinky po celej svojej dĺžke rozdelenej na dve časti bazilárnou membránou, ktorá je dlhá asi 32 mm a končí asi 1-2 mm pred vrcholom slimáka, tak ako to zobrazuje obrázok 1.4.

Obrázok 1.4: Slimák rozdelený bazilárnou membránou na dve časti.

Mechanické vlastnosti tejto tzv. bazilárnej membrány sa menia od veľmi

tvrdého povrchu v najširšom ústí slimáka, až po čím ďalej pružnejší povrch smerom k jeho ukončeniu (apex). Tieto rozdiely v type povrchu spôsobujú lokálne zosilnenie len určitých frekvencií zvukových vĺn, pričom ostatné frekvencie sú utlmené. Taktiež ak zvuk s určitou frekvenciou kmitania prechádza trubicou s priemerom zhodným s vlnovou dĺžkou frekvencie zvuku, dochádza k vzniku rezonancií - rozkmitaniu

Page 17: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 9 -

trubice frekvenciou zhodnou s frekvenciou prichádzajúceho zvuku. Pri ústí Cortiho orgánu, teda v jeho najširšej časti s najtvrdším povrchom dochádza k rezonancii vysokých frekvencií rádovo do 20 kHz. Smerom k jeho ukončeniu s čím ďalej pružnejším povrchom a užším prierezom dochádza k rezonancií stále nižších frekvencií tak ako to zobrazuje obrázok 1.4. Na základe týchto vlastností Cortiho orgánu je teda rozsah frekvencií počuteľných človekom v intervale 20 - 20 000 Hz.

Obrázok 1.5: (a) Prierez bazilárnou membránou, (b) detail na vláskové bunky.

Na bazilárnej membráne, ktorá je dlhá asi 35 mm je rovnomerne rozložených asi 30 tisíc vláskových buniek, ktoré sú priamo spojené s nervovým systémom človeka. Rozkmitaním bazilárnej membrány dochádza k podráždeniu týchto vláskových buniek práve v úseku, kde došlo k rezonancii. Podráždením vzniká elektrický impulz, ktorý sa prenáša pomocou sluchových nervov priamo do sluchového centra v mozgu. Na obrázku 1.5 sú pod mikroskopom detailne zobrazené bazilárna membrána 1.5a a vláskové bunky 1.5b.

Obrázok 1.6: Budenie vláskových buniek rečovým signálom.

K podráždeniu vláskových buniek dochádza pri rezonancii zvukového vlnenia na bazilárnej membráne. Dalo by sa povedať, že vplyvom akustického tlaku na vláskové bunky dochádza k ich vybudeniu na základe intenzity zvukovej vlny. Sluchový trakt reaguje na výskyt lokálnych vrcholov rečového signálu tak, ako to zobrazuje obrázok 1.6.

Page 18: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 10 -

Pritom čím vyššia frekvencia je prítomná, tým viac impulzov do mozgu prúdi a tým lepšie počujeme danú frekvenciu. Toto je dôvod, prečo človek lepšie počuje vysoké frekvencie a dokáže ich počuť jasnejšie aj pri nízkej intenzite.

1.4 Rečové jednotky

Prvým a veľmi podstatným predpokladom pre návrh efektívneho systému

rozpoznávania reči je zvolenie vhodných rečových jednotiek, na ktoré je potrebné reč pred rozpoznaním segmentovať. V publikovaných prácach sa ako jednotky segmentácie objavujú alofóny, fonémy, difóny, slabiky, demislabiky a slová, ale aj iné jednotky.

Nasledujúci prehľad v súčasnosti používaných rečových jednotiek stručne pojednáva o vlastnostiach jednotlivých rečových jednotiek a ich vhodnosti pre problematiku rozpoznávania reči:

• Alofóna - jedná sa o pozičné varianty foném, ktoré môžu poskytnúť informáciu o hranici slova, alebo aj o hranici menších jednotiek, napríklad slabík. Môže to byť veľmi dôležité hlavne pri rozpoznávaní plynulej reči. Segmentácia na alofonickej úrovni pritom eliminuje potrebu aplikovať koartikulačné pravidlá. To vyplýva z faktu, že koartikulačný efekt je obsiahnutý v príslušnej alofóne, keďže tá zodpovedá konkrétnemu spojeniu určitých foném. Nevýhodou použitia inventára alofón je pri fonetickom prepise ich veľký počet.

• Fonéma - fonetická jednotka, ktorá reprezentuje najmenší počet odlišných

fonetických tried. Fonéma často zodpovedá našej predstave segmentácie, t. j. vymedzeniu najkratších úsekov v reči odlišujúcich význam dvoch slov. Aj keď je počet foném podstatne menší v porovnaní s počtom alofón, slabík, slov a pod., ich automatické vymedzenie a klasifikácia je stále problematická. Je to spôsobené veľkou variabilitou akustickej realizácie každej fonémy v závislosti na koartikulácii s jej fonetickým okolím. Výhodou foném je ich malý počet (vo väčšine jazykov 30-50), nevýhodou je, že fonéma neobsahuje dôležitú koartikulačnú informáciu.

• Difóna - tento termín je používaný pre označenie postupnosti

samohláska/spoluhláska tak, že difóne zodpovedajúci úsek reči sa rozširuje zo stredu samohlásky do stredu spoluhlásky alebo naopak. Difóny sú využívané pri segmentácii reči hlavne z dôvodu, že veľká časť akustickej informácie, ktorá je užitočná na identifikáciu spoluhlások, leží v prechodoch medzi spoluhláskami a samohláskami. Výhodou difón je, že obsahujú dôležitú koartikulačnú informáciu,

Page 19: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 11 -

ktorá nebola prítomná pri fonémach, nevýhodou je veľký počet difón (niekoľko tisíc).

• Slabiky – všeobecne považované za fonetické útvary, ktoré obsahujú

samohláskové jadro plus začiatočné a koncové spoluhlásky. Slabiky tak obsahujú prechody spoluhláska/samohláska, ako aj prechody samohláska/spoluhláska, vrátane väčšiny koartikulácií a iných fonologických efektov v rámci ich hraníc. V slovenčine môže byť v niektorých prípadoch samohláskové jadro slabiky nahradené slabikotvornou sonórnou spoluhláskou „r“, alebo „l“. Príkladmi takýchto slov sú slová "vlk", "vŕba" a pod. Dĺžka slabiky v slovenčine sa pritom môže pohybovať od jednej fonémy, ako je napríklad spojka "a", až po päť foném (napríklad jednoslabičné slovo "škrob"). Výhodou segmentácie podľa slabík je, že jadro slabiky je relatívne ľahko lokalizovateľné a identifikovateľné akusticky. Existuje taktiež mnoho dôvodov, ktoré podporujú dôležitú artikulačnú a percepčnú úlohu slabiky, vrátane na slabike založeného prízvuku a rytmu. Existuje však niekoľko nevýhod spojených s vyžitím slabík ako jednotiek segmentácie. Z fonetického hľadiska neexistuje jasné určenie hraníc slabiky. Hranice slabík sú zreteľné len v postupnostiach, v ktorých sa striedajú spoluhláskové a samohláskové fonémy. Ak je medzi dve susedné jadrá vložená spoluhlásková skupina, slabičné hranice sa problematizujú. Ďalšou nevýhodou je opäť značný počet existujúcich slabík.

• Poloslabiky - značná veľkosť inventára slabík môže byť redukovaná použitím

poloslabík. Každá slabika môže byť pokladaná za kompozíciu začiatočnej poloslabiky, obsahujúcej začiatočný zhluk hlások a príslušného samohláskového jadra, a koncovej poloslabiky, obsahujúcej zostávajúcu časť samohláskového jadra a koncový zhluk hlások. Použitím poloslabikových jednotiek je možné zredukovať rozsah inventára potrebného na reprezentáciu reči až päťkrát v porovnaní s celými slabikami. Použitie poloslabík však zavádza určitú zložitosť v rozdeľovaní samohláskového jadra. Ak je napríklad hranica medzi začiatočnou a koncovou poloslabikou vytvorená v strede samohláskového jadra, musí sa zvláštna pozornosť venovať procesu porovnávania samohlásky na oboch stranách hranice, hlavne ak sú samohlásky nasledované sonórnymi hláskami (t. j. l, r, j, m, n, ň).

• Demislabiky - ťažkosti vyskytujúce sa pri delení poloslabík podstatne eliminujú

demislabiky. Od poloslabík sa líšia umiestnením hranice medzi začiatočnou a koncovou demislabikou. Začiatočná demislabika je vymedzená tak, že rozdeľujúca hranica je umiestnená tesne za prechod spoluhláska/samohláska. Umiestnenie hranice týmto spôsobom je efektívne tým, že uvoľňuje obmedzenie na obidvoch

Page 20: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 12 -

stranách hranice a má aj potenciál v redukcii inventára, podobne ako pri poloslabikách.

• Slová - fonetické útvary môžeme tiež definovať ako spojenie konečného počtu

foném či slabík. Výhodou priameho použitia slova ako segmentačnej jednotky je eliminácia nutnosti použitia komplikovaných algoritmov segmentácie a identifikácie hierarchicky nižších jednotiek, t. j. alofón, foném a pod. Táto výhoda sa prejaví hlavne v prípade, že slová sú vyslovované izolovane, t. j. sú obklopené dostatočne dlhými pauzami (aspoň 200 až 300 ms). V takomto prípade možno nájsť hranicu medzi slovami relatívne ľahko. V prípade súvislej reči sa problém vymedzenia hraníc slova stáva veľmi obťažným. [4]

1.5 Výber vhodných rečových jednotiek

Vzhľadom na rozsah tejto práce, ktorý sa zameriava najmä na optimalizáciu

výpočtovej zložitosti rozpoznávania reči sme pre potreby testovania vykonaných optimalizácií zvolili pokiaľ možno čo najjednoduchšie extrahovateľné rečové jednotky. Týmito rečovými jednotkami sú izolované povely, teda celé slová. Výhodou takejto voľby je, že sa pri návrhu rozpoznávacieho algoritmu nemusíme zaoberať problémami ako detekcia hraníc rečových jednotiek, meniace sa akustické pozadie, alebo veľký rozsah slovníka. Väčšinu z týchto problémov úspešne riešia návrhy zložitejších systémov rozpoznávania reči, a preto sa nimi v tejto práci nebudeme zaoberať. Aj napriek voľbe jednoduchšej varianty v podobe rozpoznávania izolovaných slov, výsledky tejto práce je možné aplikovať aj na zložitejšie systémy zahŕňajúce rozpoznávanie súvislého diktátu, prípadne rozpoznávania súvislej reči, ktoré sa líšia najmä rozsahom slovníka, či rozpoznávaním menších rečových jednotiek ako napr. difónov, alebo trifónov.

Page 21: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 13 -

2 Metódy analýzy akustických signálov

V tejto kapitole sa budeme zaoberať v súčasnosti používanými prístupmi analýzy akustických signálov. Na základe výsledkov takejto analýzy je možné signál klasifikovať a predspracovať ho pre efektívnejšie rozpoznanie.

2.1 Spektrálna analýza

Úlohou spektrálnej analýzy je analyzovať frekvenčné spektrum vstupného

(zvukového) signálu. Pomocou spektrálnej analýzy sa získava frekvenčné spektrum, t. j. súbor frekvenčných zložiek, z ktorých je daný signál zložený.

2.1.1 Diskrétna Fourierova transformácia

Diskrétna Fourierova transformácia (DFT z angl. discrete Fourier transform) je

Fourierova transformácia aplikovaná na postupnosť komplexných čísel. Je definovaná ako

= ,2. 1

kde k = 0, 1 … N-1, je aktuálne frekvenčné spektrum a s(n) je postupnosť komplexných čísel s N prvkami. DFT má veľmi široké možnosti uplatnenia. Výpočet DFT sa realizuje podľa vzťahu (2.1) tak, že každý prvok spektra získame sumáciou súčinov príslušných hodnôt s(i) s odpovedajúcou komplexnou exponenciálnou funkciou pre i=0,1,2,…,N-1 :

S(0) = s(0) "#$% + s(1) "#$% + s(2) "#$% + … + s(N-1) "#$%

S(1) = s(0) "#&% + s(1) "#&% + s(2) "#&% + … + s(N-1) "#&% ⋮

S(N - 1) = s(0) "#%(&% + s(1) "#%(&% + s(2) "#%(&% + … + s(N-1) "#%(&%

Výsledné frekvenčné spektrum získame (za predpokladu, že môžeme zanedbať fázu signálu) sumou druhých mocnín reálnej a imaginárnej časti jednotlivých frekvenčných koeficientov S(k). [5] [6] = )*+*+, + -.+-.+

Page 22: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 14 -

2.1.2 Rýchla Fourierova transformácia

Vzhľadom na vysokú výpočtovú náročnosť diskrétnej Fourierovej transformácie sa v praxi používa skôr rýchla Fourierova transformácia (FFT z angl. fast Fourier Transformation). Výpočtová zložitosť FFT je O(N log N) oproti výpočtovej zložitosti O(2N) pri DFT. Najpoužívanejším variantom FFT je algoritmus Cooley – Tukey, ktorý je založený na princípe „rozdeľuj a panuj“. Pomocou rekurzie dochádza k deleniu celkovej transformácie v každom kroku na dve menšie transformácie N1 a N2

s rozmerom tak, ako je to zobrazené na obrázku 2.1. To je dôvod prečo je rozmer

vstupných dát obmedzený na mocninu čísla 2.

Obrázok 2.1: Ilustrácia princípu rekurzívneho delenia pri použití algoritmu rýchlej Fourierovej transformácie.

2.1.3 Kĺzavá diskrétna Fourierova transformácia

Kĺzavá diskrétna Fourierova transformácia (kĺzavá DFT z angl. sliding discrete Fourier transform) je modifikácia DFT prispôsobená tak, aby rešpektovala zmeny celkového frekvenčného spektra spôsobené každou novou vzorkou. Je definovaná ako

= − 1 + 0 − − 12 2. 2 kde N je dĺžka posuvného okna, je aktuálne frekvenčné spektrum, od ktorého odčítame vplyv poslednej vzorky − 1posuvného okna a pripočítame vplyv novo prichádzajúcej vzorky . Na rozdiel od DFT rešpektuje kĺzavá DFT vplyv každej vzorky na frekvenčné spektrum samostatne, teda výsledné frekvenčné spektrum je detailnejšie.

Page 23: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 15 -

Postup výpočtu spočíva v nasledujúcich krokoch:

1. Pred zahájením samotného výpočtu si dopredu vypočítame maticu komplexných exponenciálnych funkcií. Ich počet bude odpovedať rozmeru sledovaného frekvenčného spektra N.

2. Každú novú vzorku prevedieme do komplexnej roviny a vložíme do rotačného zásobníka s kapacitou N, pričom poslednú vzorku zo zásobníka odstránime.

s(t-N) s(t-N+1) s(t-2) s(t-1)

Obrázok 2.2: Rotačný zásobník.

3. Pri každom vložení prvku sa inkrementuje index rotačného zásobníka idx označený na obrázku 2.3. čierno-bielym krúžkom. Keď index dosiahne koniec zásobníka, presunie sa opäť na jeho začiatok.

Obrázok 2.3: Vkladanie prvkov do rotačného zásobníka.

4. Odčítaním novej vzorky st, ktorú sme práve vložili a poslednej (najstaršej) vzorky s(t-N) v zásobníku získame ich rozdiel ∆, pre ktorý platí

3 = 4 −4 2. 3 s(t-N) s(t-N+1) s(t-2) s(t-1) s(t)

Obrázok 2.4: Aktuálny stav rotačného zásobníka.

5. Následne aktualizujeme všetky frekvenčné koeficienty tak, že vynásobíme

rozdiel ∆ komplexnou funkciou, ktorej index v dopredu vypočítanej matici odpovedá násobkom indexu idx a pripočítame ho ku všetkým frekvenčným koeficientom. [6] [7]

= + Δ idx = 1, násobky 0,1,2 … N

s(t-N) st

Page 24: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 16 -

idx = 2, násobky 0,2,4,… N

2.1.4 Diskrétna kosínusová transformácia

Majme definovanú postupnosť:

= ℎ892 + 1:21 , ; = 0,1, . . . 1 − 12. 4

s(n) je vzorka signálu v čase n a h(n) je niektorá oknová funkcia. Jedná sa o transformáciu podobnú DFT, avšak produkujúcu iba reálne koeficienty. Existuje 8 variantov DCT, pričom sa bežne používajú iba 4. V našom prípade sa jedná o DCT-II, teda o druhý variant DCT. Výhodou transformácie oproti DFT je menšia redundancia, predstavuje však určitý druh stratovej kompresie vstupného vzoru. [7]

2.1.5 Modifikovaná diskrétna kosínusová transformácia

Používa sa hlavne pri spätnej rekonštrukcii vzoriek signálu zo spektrálnych

koeficientov. Nech je daná postupnosť:

= ℎ02020892 + 1:21 2 ,; = 0,1, . . . 1 − 12. 5

h[n] sa nazýva oknová funkcia, ktorá musí spĺňať nasledujúce podmienky:

ℎ01 − 1 − 2 + ℎ02 = 2, ; = 0,1, . . . 1 − 12. 6 ℎ01 + 2 + ℎ021 − 1 − 2 = 2, ; = 0,1, . . . 1 − 12. 7

Tieto podmienky spĺňa napríklad oknová funkcia v tvare:

ℎ = ±√2 C DE + 12F:21 G2. 8

veľkosť okna pri MDCT je 2N, pri DCT však veľkosť okna zostáva N. [7]

Page 25: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 17 -

2.2 Kepstrálna analýza

Kepstrálna analýza vychádza z frekvenčnej analýzy. Ako už bolo spomenuté,

rečový signál je premenlivý v čase. Ak teda chceme zaznamenať jeho zmenu v spektrálnej oblasti, musíme analyzovať iba segment takej dĺžky, pri ktorej môžeme predpokladať stacionaritu signálu. Nech S(k) je diskrétne spektrum analyzovaného signálu, ktoré môže byť určené pomocou diskrétnej Fourierovej transformácie DFT:

= IJKLM = 02 ,2. 9

Pre jeho výpočet sa dnes väčšinou používa rýchla Fourierova transformácia FFT. Premenná k označuje frekvenčný index, ktorý nadobúda diskrétne hodnoty 0,1,...,N-1. N je počet bodov algoritmu FFT. Ku každému takémuto indexu náležia frekvencie f = (k/N) fvz, kde fvz je vzorkovacia frekvencia. Reálne kepstrum potom získame ako reálnu časť spätnej diskrétnej Fourierovej transformácie logaritmu modulu spektrálnej funkcie S(k):

8 = *LIJK 0O||2M = * Q11 O |02| R,2. 10

Pre výpočet logaritmu sa väčšinou používa prirodzený logaritmus. Postup výpočtu koeficientov reálneho kepstra zo segmentov reči, pri diskrétnej reprezentácii signálu, je opísaný blokovou schémou na obr. 2.5.

Obrázok 2.5: Postup výpočtu reálneho kepstra zo segmentu rečového signálu.

Pri voľbe segmentu môžeme zvoliť jeden z nasledujúcich prístupov:

1. Pitch synchrónna segmentácia - kedy dĺžka segmentu odpovedá presne jednej perióde znelej reči,

2. Pitch asynchrónna segmentácia - kedy je dĺžka segmentu pevná a nezávislá na základnej perióde hlasivkového tónu a je obvykle rovná dvom až trom periódam f0.

Oknová funkcia

DFT[.] ln[|.|] IDFT[.] Re[.]

Segment reč. signálu

Reálne kepstrum

s(n) S(k) c(n)

Page 26: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 18 -

Prvý prístup sa využíva len zriedka, pretože je implementačne i výpočtovo náročnejší a strácame pri ňom informáciu o základnom tóne. Na druhej strane táto metóda poskytuje lepšie informácie o vplyve artikulačného traktu ako prístup č. 2. V prípade pitch asynchrónnej segmentácie, kedy segment presne neodpovedá perióde signálu sa vždy dopúšťame určitej chyby. Pre obmedzenie tejto chyby je vhodné používať väčšiu dĺžku segmentu, čo je ale v rozpore s podmienkou stacionarity rečového signálu vo vnútri tohto segmentu. Z tohto dôvodu sa volí kompromis medzi dĺžkou segmentu a presnosťou jeho spektra. Taktiež sa využíva prekrývanie segmentov spolu s použitím vhodnej oknovej funkcie, napr. pri reči najčastejšie používanou Hammingovou oknovou funkciou. Na obrázku 2.6 je zobrazené reálne kepstrum segmentu znelej hlásky „a“ získaného pomocou pitch asynchrónnej segmentácie. [8]

Obrázok 2.6: Reálne kepstrum stacionárneho segmentu znelej hlásky „a“.

2.3 Lineárne prediktívna analýza

Pravdepodobne jednou z najpoužívanejších techník spracovania rečového

signálu je v súčasnosti metóda výpočtu koeficientov lineárne prediktívneho kódovania, skrátene označovaných aj ako LPC koeficienty. Aj napriek tomu, že táto metóda je známa už od 70. rokov minulého storočia, stále nachádza svoje uplatnenie najmä v oblasti spracovania reči. Predstavuje vhodný spôsob parametrizácie reči a vhodnú reprezentáciu rečového signálu vzhľadom na charakteristiky rečového traktu. Výhodou je relatívne nízka výpočtová zložitosť a možnosť spätnej rekonštrukcie spracovaného signálu. Princíp lineárnej predikcie vychádza z predpokladu, že rečový signál je zložený zo stacionárnych úsekov určitej dĺžky, a že všetky nasledujúce úseky je možné

Page 27: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 19 -

predikovať na základe lineárnej kombinácie predchádzajúcich stacionárnych úsekov. Pri určovaní odhadu však určite vznikne odchýlka od skutočnej hodnoty. Je teda zrejmé, že pri odhade sa jedná iba o aproximáciu. Opísaný predpoklad môžeme vyjadriť nasledovným vzťahom:

= − C,S 2. 11

kde s(k) je k-ta vzorka, M je počet predchádzajúcich vzoriek, z ktorých predikujeme nasledovnú vzorku a koeficienty sú lineárne prediktívne koeficienty, ktoré sú na danom úseku konštantné. Výpočet koeficientov je realizovaný pomocou minimalizácie chyby predikcie, ktorá je na danom úseku n rovná: T =, 2. 12 Túto chybu môžeme nasledovne rozpísať ako:

T =0 − U 2 =V + − CS W, 2. 13

kde

U = − − CS ,2. 14

Neznáme koeficienty získame minimalizáciou tohto výrazu na stacionárnom úseku reči parciálnou deriváciou tejto chybovej funkcie podľa neznámych koeficientov . Pre nájdenie extrému je potrebné parciálnu deriváciu položiť rovnú nule: XX V0 + − CS

2 W = 0,2. 15

Page 28: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 20 -

Deriváciou dostaneme M lineárnych rovníc, ktorých vyčíslením získame koeficienty lineárnej predikcie . Vyčíslenie môžeme realizovať buď pomocou kovariančnej alebo korelačnej metódy. Z uvedených metód sa najčastejšie používa korelačná metóda vďaka nižšej výpočtovej zložitosti. Na riešenie lineárnych rovníc teda použijeme krátkodobú autokorelačnú funkciu. Odhad autokorelačných koeficientov pre signál s dĺžkou N potom pre kladné k vypočítame ako:

* = 11 + , 2. 16

kde R(k) je autokorelačná funkcia vstupného signálu a s(n) je vzorka signálu v čase n. Výsledné korelačné koeficienty reprezentujú podobnosť signálu v čase n s tým istým signálom v čase n+k. Výsledná sústava rovníc sa môže prepísať do maticového tvaru nasledovne:

YZZZ[*0 *1 *2*1 *0 *1*2 *1 *0 ⋯ *] − 1*] − 2*] − 3⋮ ⋱ ⋮*] − 1 *] − 2 *] − 3 ⋯ *0 _

`a YZZZ[b⋮S _

a = YZZZ[−*1−*2−*3⋮−*]_

`a,

2. 17 Matica korelačných koeficientov 2.14 je symetrická s rozmerom M x M, pričom spĺňa tvar Tőplitzovej matice. Je preto možné použiť rýchly Durbin-Levinsonov algoritmus:

T = *0,2. 18 =

cdef∑ ghi(&de i(&hj& klei(& ,2. 19 = ,2. 20 = + ,;m = 1,2, … , C − 12. 21 T = 1 − T ,2. 22

Získané LPC koeficienty veľmi dobre opisujú spracovávaný signál, pričom sa radikálne zredukovalo množstvo dát. [9] [10]

Page 29: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 21 -

2.4 Banka filtrov

Vnímanie frekvenčného spektra ľudským uchom nie je lineárne, keďže ľudské

ucho je citlivejšie na vyššie frekvencie, pričom najcitlivejšie je na frekvencie v rozsahu 3–4 kHz. Od tohto rozsahu smerom k nižším aj vyšším frekvenciám citlivosť ucha postupne klesá. Na obrázku 2.7 je zobrazená charakteristická oblasť vnímania zvuku človekom spolu s prahom počuteľnosti, ako aj s prahom bolesti.

Obrázok 2.7: Charakteristický rozsah vnímania akustických podnetov ľudského ucha.

Práve na základe poznatkov o vnímaní zvuku ľudského ucha bola zostavená metóda spracovania signálov nazývaná banka filtrov. Banka filtrov je množina priepustných filtrov naladených na určitú frekvenciu. Pri výskyte frekvencie, na ktorú je daný filter nastavený, dôjde k zvýrazneniu prítomnosti tejto frekvencie. Rečový signál sa rozdelí do niekoľkých pásiem, najčastejšie 10-12, ktoré sa oddelia filtrovaním. Tieto pásma musia pokryť celé užitočné spektrum, aby sa minimalizovala informačná strata. Veľkosti pásiem môžu byť rovnaké, logaritmické, alebo volené podľa akustických vlastností ľudského ucha pomocou melovej stupnice. [10] Citlivosť systému na podobné frekvenčné spektrum, ako má ľudské ucho sa rieši zavedením melovej škály, ktorá spôsobí nelinearitu pôvodnej lineárnej škály. Pre konverziu frekvencie f v [Hz] na m v [mel] platí:

. = 2596 log 1 + r7000.O22.19

Page 30: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 22 -

Na obrázku 2.8 je ukážková banka filtrov s trojuholníkovými priepustnými filtrami rovnomerne rozloženými na melovskej frekvenčnej škále. [11]

Obrázok 2.8: Banka trojuholníkových filtrov s melovou škálou.

Názov mel je odvodený od angl. slova melody. Túto skratku po prvý krát zaviedli Stevens, Volkman a Newman v roku 1937.

2.5 Mel- frekvenčné kepstrálne koeficienty

V súčasnosti jedna z najčastejšie používaných reprezentácií rečového signálu,

používaná v problematike rozpoznávania reči sú okrem príznakov v lineárnej prediktívnej analýze (LPC) najmä melovo frekvenčné kepstrálne koeficienty (ďalej len MFCC). Ich výpočet vychádza s homomorfného spracovania signálov, ktoré je založené na využití zovšeobecneného princípu superpozície. Tieto postupy sa hodia pre oddeľovanie signálov, ktoré vznikli konvolúciou, resp. násobením viacerých zložiek. Z modelu produkcie reči opísanom v 1.2 vyplýva, že rečový signál vzniká práve konvolúciou budiacej funkcie s impulzovou odozvou artikulačného traktu. Cieľom analýzy je určenie parametrov modelu, čiže určenie jednotlivých členov konvolutórneho súčinu. [7]

Ako bolo uvedené v časti 2.4, ľudské ucho nevníma frekvenčné spektrum

lineárne, ale je charakteristické väčšou citlivosťou na frekvencie v nižších frekvenčných pásmach. Hlavnou črtou MFCC je snaha upraviť signál tak, ako ho asi vníma ľudské ucho, teda zvýraznenie nižších frekvencií. Táto úloha je v praxi realizovaná zavedením melovej škály, ktorá odlinearizuje pôvodné frekvencie a zvýrazní frekvencie charakteristické pre ľudské ucho.

Bloková schéma na obrázku 2.5 zobrazuje postup výpočtu MFCC. Prvý blok

predstavuje filter preemfázy pre zvýraznenie vyšších frekvenčných zložiek rečového signálu na strane vstupu s nasledujúcim predpisom

Page 31: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 23 -

9s = 9 − 9 − 1,2.20 kde k je koeficient preemfázy nastavený na hodnotu 0,97. Signál sa rozdelí na prekrývajúce sa časové úseky konštantnej dĺžky. Na takto upravený signál sa aplikuje vhodný typ oknovej funkcie, najčastejšie Hammingová oknová funkcia. Následne je signál transformovaný do spektrálnej oblasti pomocou diskrétnej Fourierovej transformácie (DFT) definovanej v 2.1.2. Výsledné spektrálne príznakové vektory lineárne rozložené pozdĺž frekvenčnej stupnice sú transformované na spektrálne príznaky s melovou škálou pomocou trojuholníkovej melovej banky filtrov. Jednotlivé hodnoty výkonového spektra sa vynásobia koeficientmi pásmového filtra pre príslušný kanál a navzájom sa sčítajú. [1]

Obrázok 2.9: Postup výpočtu MFCC.

Výsledkom predchádzajúcich operácií sú spektrálne príznakové vektory tu s nelineárnou frekvenčnou osou a lineárnou amplitúdou. Tie sú následne prevedené do logaritmickej oblasti pomocou vzťahu tsv = O)tu,,2. 23 kde

w = xyz 1√1 ,C = 02√1 ,C = 0,1. . 1

V poslednom kroku sa MFCC vypočítajú pomocou diskrétnej kosínusovej transformácie (DCT). [10] [2]

preemfáza okno DFT mel-BF log(.) DCT

Page 32: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 24 -

2.6 Vektorová kvantizácia

Ako je uvedené v [2], kvantizácia je proces aproximácie analógovej hodnoty

jednou z konečného počtu číselných hodnôt. V prípade, že vykonávame kvantizáciu spojeného bloku (vektora) veličín či parametrov ako celku, nazývame tento proces vektorová kvantizácia. Veľmi často sa táto technika využíva pri ďalšom spracovaní dát signálu, ktoré popisujú jednotlivé mikrosegmenty rečového prehovoru.

2.6.1 Algoritmus K-means Jedná sa o jeden z najpopulárnejších klasických a jednoduchých prístupov

zhlukovej analýzy. Zhlukovanie je metóda učenia bez učiteľa zameraná na delenie n pozorovaní do k zhlukov, v ktorých každé pozorovanie patrí do tzv. klastra s najbližšou strednou hodnotou. Každý takýto klaster je potom reprezentovaný práve jedným pozorovaním, tzv. centroidom, ktoré reprezentuje všetky ostatné pozorovania obsiahnuté v danom klastri. Pod pozorovaním si môžeme predstaviť parametre alebo vektory parametrov, ktoré sa snažíme pomocou algoritmu analyzovať. Vo svojej najbežnejšej podobe sa jedná o iteratívny algoritmus, ktorý konverguje k lokálnemu optimu po určitom konečnom počte iterácií.

Obrázok 2.10: Ilustrácia zhlukovania pomocou K-means algoritmu.

Algoritmus pracuje na princípe výberu náhodných počiatočných centroidov pre každý klaster a následného priradenia všetkých pozorovaní do jednotlivých klastrov, pričom každé pozorovanie je priradené do klastra s najbližším centroidom. Následne sú vypočítané nové centroidy ako stredná hodnota všetkých pozorovaní obsiahnutých v danom klastri. Tento proces je opakovaný, až kým sa centroidy klastrov medzi iteráciami nemenia alebo ich zmena nepresiahne určenú prahovú hodnotu. [12] [13]

Page 33: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 25 -

2.6.2 Zmes Gaussových modelov

V štatistike je zmiešaný model opísaný ako pravdepodobnostný model ktorý predpokladá, že dané dáta patria do zmiešaného rozdelenia pravdepodobnosti. Pri tomto rozdelení pravdepodobnosti je funkcia hustoty iba konvexnou kombináciou (lineárnou kombináciou pre ktorú platí, že suma všetkých koeficientov alebo váh je rovná 1) iných funkcií hustoty pravdepodobnosti, definovaná ako

| = w| + w| +…+ w|

Jednotlivé funkcie hustoty pi(x), ktoré sú kombinované do zmiešanej hustoty p(x) sa nazývajú zmesi Gaussových komponent a váhy w1, w2, ..., wn priradené jednotlivým komponentom sa nazývajú zmesi Gaussových váh alebo zmesi Gaussových koeficientov. [14]

Najbežnejším typom zmiešaného rozdelenia pravdepodobnosti je Gaussova (normálna) funkcia hustoty, ktorej všetky zmiešané komponenty majú Gaussovo rozdelenie pravdepodobnosti, každý so svojou vlastnou strednou hodnotou a rozptylovými parametrami.

Obrázok 2.11: Výsledok identifikácie zhlukov mel-frekvenčných kepstrálnych

koeficientov pomocou zmesi Gaussových modelov.

Page 34: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 26 -

Parametre zmiešaného modelu je možné z množiny pozorovaní odhadnúť pomocou EM algoritmu (z angl. Expectation Maximization). Algoritmus EM je uznávaný algoritmus maximálnej vierohodnosti pre trénovenie modelu na množine trénovacích dát. EM algoritmus vyžaduje apriórne zadanie stupňa modelu, konkrétne počtu komponent M zahrnutých do modelu. Algoritmus EM pozostáva z nasledovných krokov:

1. Inicializácia parametrov rozdelenia pravdepodobnosti ako stredná hodnota,

kovariancia a zmiešané koeficienty a ohodnotenie inicializovaných hodnôt

pomocou logaritmickej vierohodnosti (z angl. log-likelihood).

2. Ohodnotenie zodpovedností (ako váhové faktory pre každú vzorku) pomocou

nastavených hodnôt parametrov.

3. Nový odhad parametrov s použitím zodpovedností nájdených

v predchádzajúcom kroku

4. Opakovanie krokov 2 a 3 až kým sa hodnota logaritmickej vierohodnosti

nemení, prípadne jej zmena medzi jednotlivými krokmi je menšia ako zadaná

prahová hodnota. [13] [14] [15]

Po dosiahnutí kritéria model skonverguje. Výsledkom je pravdepodobnostné

zaradenie jednotlivých pozorovaní do zhlukov tak, ako je to zobrazené na obrázku

2.11.

Page 35: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 27 -

3 Nelineárne zarovnanie časovej mierky

Nelineárne zarovnanie časovej mierky (z angl. Dynamic time warping), patrí medzi najstaršie prístupy k rozpoznávaniu izolovaných slov. Princíp metódy podľa [3] spočíva v udržiavaní prototypov každého slova v slovníku a porovnávaní každého vysloveného slova so všetkými položkami v slovníku. Položka zo slovníka, ktorá sa najviac zhoduje s vysloveným slovom sa použije k identifikácii vysloveného slova. Práve kvôli obmedzenému rozsahu slovníka nachádza táto metóda svoje uplatnenie zväčša v jednoduchých systémoch s malým rozsahom rozpoznávaných slov. Ako už bolo spomenuté, nelineárne zarovnanie časovej mierky (ďalej len DTW) pracuje na princípe iteratívneho zarovnávania časovej mierky (odtiaľ názov), až kým nie je nájdená optimálna zhoda medzi dvomi vzormi. Majme teda dva jednorozmerné priebehy A a B, obsahujúce n a m vektorov takto:

A =, , … , , … , B =~, ~, … , ~ , … , ~

Na obrázku 3.1, ktorý predstavuje ukážkové priebehy A a B, je časová os zakrivená tak, aby bol každý vektor priebehu A optimálne zarovnaný s vektormi priebehu B.

Obrázok 3.1: Časové zarovnanie ukážkových priebehov A a B.

Na základe priebehov A a B je možné skonštruovať maticu rozmeru n x m, ktorej každý vrchol (i,j) reprezentuje lokálnu Euklidovskú vzdialenosť medzi i-tym vektorom priebehu A a j-tym vektorom priebehu B tak, ako je zobrazená na obr. 3.1.

Page 36: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 28 -

Obrázok 3.2: Nelineárne zarovnanie časovej mierky - možná optimálna cesta

Problém vyhľadania najlepšej zhody dvoch priebehov potom môže byť chápaný ako známa úloha z teórie grafov, vyhľadanie najkratšej cesty pričom hľadáme najkratšiu cestu z dolného ľavého rohu matice k jej hornému pravému rohu. Dĺžka cesty je potom sumou všetkých vrcholov, cez ktoré vedie najkratšia cesta. Pre každé referenčné slovo je počítaná optimálna cesta, pričom tá s najnižšou kumulovanou vzdialenosťou určuje najlepšiu zhodu s neznámym slovom. „Existujú určité obmedzenia kladené na optimálnu cestu. Je to predovšetkým podmienka monotónnosti vyplývajúca z časového poradia vstupných príznakov slova, inými slovami pri porovnávaní jednotlivých príznakov nie je možný návrat v čase.” [10] [16]

Page 37: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 29 -

4 Skryté Markovove modely Najúspešnejšie metódy rozpoznávania reči sú v súčasnosti založené na

štatistických metódach rozpoznávania. Medzi tieto metódy patrí aj metóda rozpoznávania reči pomocou skrytých Markovových modelov (z anglického Hidden Markov Models). Jedná sa v súčasnosti o jeden z najúspešnejších prístupov v problematike rozpoznávania reči. Metóda je založená na predpoklade, že pri prechode medzi dvomi rečovými jednotkami musí dôjsť k zmene stavu rečového traktu. „Na rozdiel od deterministických metód, štatistické metódy porovnávania vzorov vytvárajú v procese trénovania referenčné vzory z väčšieho počtu trénovaných vzorov v podobe priemerných hodnôt parametrov reči, alebo štatistické modely, ako napríklad stredné hodnoty a odchýlky parametrov reči.“ [7]. Na obrázku 4.1 je zobrazený princíp rozpoznávania izolovaných slov pomocou štatistických metód:

Obrázok 4.1: Princíp rozpoznávania izolovaných slov pomocou štatistických metód

kde , , … , predstavujú pravdepodobnosť, s akou je daný model relevantný. V tejto časti sa budeme pridržiavať výkladov uverejnených v prácach [8] a [7].

4.1.1 Teória štatistického porovnávania vzorov

Pri štatistickom rozpoznávaní reči je možné pomocou pravdepodobnosti

výskytu danej akustickej postupnosti určiť rozpoznávanú postupnosť slov ∗ na základe nasledujúceho vzťahu: ∗ = . ),,4. 1

kde ), udáva pravdepodobnosť s akou sa neznáme slovo zhoduje s

akustickou reprezentáciou . Túto pravdepodobnosť nazývame vierohodnosť

Model 1

Model 2

Model 3

...

Model n

Neznáme slovo

Výber víťazného modelu

b

Rozpoznané slovo

Page 38: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 30 -

pozorovania. Túto pravdepodobnosť je možné vyčísliť s využitím základného vzťahu pre výpočet podmienenej pravdepodobnosti Bayesovou metódou:

), = )h,h ,4. 2

Na základe vzťahu 5.2. potom môžeme vzťah 5.1. upraviť nasledovne: ∗ = . L),M,4. 3

kde určuje pravdepodobnosť, s akou bolo vyslovené slovo . Vzťah 5.3 sa

nazýva apriórna pravdepodobnosť. [8]

4.1.2 Markovove modely

Markovove modely predstavujú pravdepodobnostné modely, ktoré sú tvorené

uzlami Qi a prechodmi medzi týmito uzlami nij pre i=1,2,…,N a j=1,2,…,M tak ako je to zobrazené na obrázku 4.2:

Obrázok 4.2: Uzly Markovovho modelu, spolu s prechodmi medzi nimi.

Ako je uvedené v [7], vnútorné väzby medzi jednotlivými uzlami sú popísané pomocou matice pravdepodobnostných prechodov N, ktorej jednotlivé prvky vyjadrujú s akou pravdepodobnosťou sa môže model z určitého uzla dostať do iných uzlov. Počiatočný stav modelu je určený vektorom pravdepodobností počiatočných stavov π. Hodnoty jednotlivých uzlov, sú popísané pomocou matice pravdepodobností generovaných vzorov M. Takto definovaný Markovov model s diskrétnym rozložením pravdepodobnosti je daný nasledovnými parametrami:

Page 39: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 31 -

= 1,], :,4. 4 Princíp metódy spočíva vo vytvorení príslušných modelov, ktoré sa budú porovnávať s neznámym slovom. Pre každé neznáme slovo vyčíslime pravdepodobnosť zhody slova O s daným naučeným modelom, čo vykonáme pre všetky modely. Model s najvyššou pravdepodobnosťou zhody generovaného slova s neznámym slovom následne určí akustickú reprezentáciu tohto slova, čím dôjde k jeho rozpoznaniu. Pre stanovenie podmienenej pravdepodobnosti PO|λ, ktorá vyjadruje, že neznáme slovo O bolo generované modelom λ, sa využíva rekurzívny dopredný algoritmus alebo spätný algoritmus generovanej postupnosti. [7]. Oba algoritmy si popíšeme v nasledujúcich častiach. Dopredný algoritmus:

Premenná 4C je definovaná ako pravdepodobnosť generovania čiastočnej postupnosti L9, 9, … 94M a stavu 4 = C pri danom modeli λ, čo vyjadruje nasledujúci vzťah:

4 = 99…94, 4 = |,4. 5 kde hodnoty 4C vypočítame rekurzívne nasledovne: Inicializácia C = :.9,4. 6 pre C = 1, 2, . . , 1. Rekurziu pre = 1, 2. . , K − 1 vyjadríme pomocou vzťahu:

4fm = V4C W.94f,4. 7

pre C = 1, 2, . . , 1a m = 1, 2, . . , 1. Hodnotu výslednej pravdepodobnosti potom určíme ako:

t| =4C ,4. 8

Page 40: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 32 -

Spätný algoritmus:

Premenná βi je definovaná ako pravdepodobnosť generovania čiastočnej

postupnosti L9…94M a stavu 4 = C pri danom modeli λ. Platí :

4C = 94f94f…9 , = C|,4. 9 Hodnoty βi sa potom dajú vypočítať rekurzívne : Inicializácia :

C = 1,4. 10 Rekurzie pre = 1, 2. . , K − 1 vyjadríme vzťahom:

4C =.94f4fm, 4. 11

pre m = 1, 2, . . , 1. Výsledná pravdepodobnosť bude následne definovaná ako:

t| =:.9C, 4. 12

Obe metódy slúžia na výpočet pravdepodobnosti generovania čiastočných postupností, ktoré budú ďalej využité v procese učenia jednotlivých modelov. [7] [17]

4.1.3 Proces učenia HMM

Pre úspešné použitie metódy skrytých Markovových modelov je nutné najprv pomocou uvedených algoritmov natrénovať vzorové modely. Učenie Markovových modelov prebieha prepočtom modelov λ = (N,M,π) na nový model λ* = (N,M,π) na základe niekoľkých rečových realizácií rovnakého slova. [7]

4.1.4 Rozpoznávací proces HMM

Skrytý Markovov model je definovaný množinou stavov, pravdepodobnosťami prechodov medzi nimi a pravdepodobnosťou výstupných symbolov v jednotlivých stavoch. [17] Rozpoznávanie začína v počiatočnom stave, pričom v každom časovom kroku dôjde k prechodu modelu do nového stavu. Pri tomto prechode je vygenerovaný vždy jeden výstupný symbol, pričom generovanie je náhodné a určené svojou

Page 41: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 33 -

funkciou hustoty pravdepodobnosti. Týmto spôsobom prejde model všetkými stavmi až po posledný krok. Z postupnosti týchto stavov je potom možné určiť postupnosť rozpoznávaných slov. [18] [19]

Page 42: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 34 -

5 Neurónové siete Neurónové siete patria medzi najmladšie zo súčasných vedných disciplín. Ich

využitie je spojené s klasifikáciou vstupných dát, najmä však s identifikáciou známeho vzoru na vstupe ako aj jeho rozpoznaním. Práve táto vlastnosť predurčuje neurónové siete k veľmi efektívnemu spôsobu rozpoznania pre potreby problematiky rozpoznávania reči. V tejto kapitole sa budeme zaoberať históriou, štruktúrou a tiež spôsobmi učenia a použitia umelých neurónových sietí.

5.1 Historický úvod

Prvé počiatky neurónových sietí siahajú až do 19. storočia, keď sa vedci začali

zaberať štúdiom nervového systému. V roku 1906 zistil Santiago Ramón y Cajal, že

nervový systém obsahuje neurónové bunky, ktoré medzi sebou komunikujú. Ako

uvádza [20], v roku 1943 tieto poznatky vyústili do objavu, keď neurobiológ Warren

S. McCulloch a štatistik Walter Pitts vytvorili prvý výpočtový model neurónu

a nazvali ho perceptrón. Položili tak základy neurónových sietí ako vednej disciplíny.

O niekoľko rokov neskôr, v roku 1949 popísal Donald Hebb svoj zákon o učení

a v roku 1958 publikoval Frank Rosenblatt algoritmus učenia viacvrstvovej

neurónovej siete s dopredným šírením signálov. Po roku 1969 však Marvin Minski a

Seymour Papert preukázali, že s pomocou jednovrstvovej neurónovej siete nie je

možné realizovať všetky základné logické funkcie, čo preukázali na príklade funkcie

XOR. Týmto sa intenzívny výskum neurónových sietí na mnoho ďalších rokov

razantne spomalil. K obratu došlo až v roku 1983, keď americká DARPA (Defense

Advance Research Project Association) získala nové investície na výskum

neurónových sietí a krátko nato v roku 1986 David Rumelhart a Yann LeCun

nezávisle na sebe navrhli dodnes najpoužívanejší algoritmus učenia viacvrstvových

dopredných sietí, algoritmus spätného šírenia chyby (Back.-Propagation). Týmto

úspechom bol vyvrátený pesimizmus Minskeho a Paperta a neurónové siete

zaznamenali novú vlnu záujmu. V súčasnosti sa výskumom neurónových sietí

zaoberajú prakticky všade vo svete a ich využitie je veľmi široké. [21]

Page 43: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 35 -

5.2 Princíp neurónových sietí

„Základným stavebným prvkom centrálneho nervového systému je neurón.

Bunka neurónu spracováva informácie a komunikuje s rozličnými časťami tela.” [22]. Existuje však mnoho typov neurónov v závislosti na charaktere činností, pre ktoré sú určené. Vo všeobecnosti sú však všetky typy neurónov odvodené od jednoduchého neurónu, ktorý je zobrazený na obrázku 5.1.

Obrázok 5.1: Anatómia biologického neurónu

Biologický neurón je tvorený bunkovým telom nazývaným sóma. Pre pripojenie na iné neuróny je z tela neurónu vyvedené dlhé tkanivo nazývané axón. To je na konci rozvetvené na mnoho menších výstupov, pomocou ktorých neurón komunikuje s inými neurónmi. Pre príjem signálov od iných neurónov slúžia menšie výbežky tkaniva nazývané dendrity. Na nich sa pomocou synaptických spojení pripoja výstupy axónov iných neurónov. Zaujímavosťou je, že jeden neurón dokáže vytvoriť až desať tisíc prepojení s inými neurónmi. Pri komunikácií neurónov prebieha veľmi zložitý chemický proces, pri ktorom dochádza buď k zosilneniu alebo utlmeniu signálu privedeného na synapsie. Práve synapsie predstavujú pamäťové miesta, ktoré majú schopnosť učiť sa prostredníctvom priebežnej adaptácie synaptických váh s cieľom prispôsobiť ich požadovanému výstupu neurónu. Signály spracované synapsiami vstupujú do tela neurónu, kde spôsobia určenie tzv. potenciálu neurónu. Ak hodnota potenciálu prekročí určitú prahovú hodnotu, dochádza k aktivácii výstupu neurónu a neurón vyšle signál cez axón do všetkých neurónov, na ktoré je pripojený. Naopak ak k prekročeniu prahu nedôjde, nedôjde ani ku aktivácii neurónu a nie je vyslaný žiadny výstupný signál.

Page 44: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 36 -

Mozog obsahuje približne 10 neurónov usporiadaných do štruktúry nazývanej neurónová sieť. Dokopy tvoria jeden z najzložitejších a súčasne najfascinujúcejších systémov aký poznáme. [22]

5.3 Matematický model neurónu

Matematický model neurónu je odvodený od biologického modelu

predstaveného v predchádzajúcej časti. Je tvorený vstupmi a výstupmi neurónu, synaptickými váhami a aktivačnou funkciou, ktorá reprezentuje sómu neurónu. Tento model neurónu je zložený z množiny vstupov neurónu , , … , , z ktorých je každý vynásobený odpovedajúcou hodnotou synaptickej váhy , , … , a výsledky sú privedené na sumačný člen ∑. Tu sa uskutoční súčet všetkých vážených vstupov a určí sa hodnota potenciálu neurónu u. Aktivácia neurónu je zabezpečená pomocou tzv. aktivačnej funkcie Ѱ(ut), ktorá na základe potenciálu neurónu vypočíta aktuálny výstup, teda určí či dôjde alebo nedôjde k aktivácii neurónu. V závislosti na použití bolo definovaných množstvo aktivačných funkcií. Vo všeobecnosti sa však výstup týchto funkcií pohybuje v intervale ⟨; ⟩, vtedy hovoríme o unipolárnej aktivačnej funkcií, alebo v intervale ⟨−; ⟩, kedy hovoríme o bipolárnej aktivačnej funkcii. Opísaný model je zobrazený na obrázku 5.2.

Obrázok 5.2: Matematický model neurónu

kde , , … , predstavujú vstupné signály, , , … , predstavujú synaptické váhy neurónu, je potenciál neurónu, Ѱ¡ predstavuje aktivačnú funkciu a ¢ je výsledný výstup neurónu. [22]

5.4 Učenie neurónových sietí

Hlavnou črtou neurónových sietí je ich schopnosť naučiť sa zadaný vzor. Pod

pojmom „učenie sa“ rozumieme „účelovú adaptáciu synaptických váh tak, aby celý systém siete mal na výstupe požadovanú odozvu.“ [22]. Princíp učenia teda spočíva v eliminácií, alebo posilňovaní synaptických váh v závislosti na požadovanom výstupe neurónu. Vo všeobecnosti poznáme dve techniky, ktorými je požadovaný výstup neurónu získaný. V prvom prípade je zadaný ručne užívateľom, ktorý

£4 =w

¤4 = Ѱ£4 w

w

w ⋮ Y

Page 45: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 37 -

vystupuje v roli tzv. učiteľa, odtiaľ má táto technika názov učenie s učiteľom. V druhom prípade ide o určenie požadovaného výstupu pomocou samoorganizujúceho mechanizmu, ktorý podľa stanovených kritérií zhodnotí výstupné signály vzhľadom na vstupné signály a určí najvhodnejšiu stratégiu. Túto techniku nazývame učenie bez predlohy.

• Učenie s učiteľom Jedná sa o učenie, pri ktorom sa hodnoty synaptických váh nastavujú v závislosti na odchýlke aktuálneho výstupu siete od požadovaného výstupu určeného učiteľom. Ak výstup siete dosiahne prípustnú chybu, t.j. rozdiel medzi aktuálnym a požadovaným výstupom je v určitej tolerancii, považuje sa sieť za naučenú. Nasledovný vzťah vyjadruje rovnicu zmeny synaptických váh a nazýva sa delta pravidlo: 3w = ¥); − ¤,5. 1 kde ¥ je koeficient rýchlosti učenia, xi je aktuálny vstup, yi je aktuálny výstup a di je požadovaný výstup. Výsledná hodnota 3w je pripočítaná k aktuálnej hodnote

danej váhy ako: w =w + 3w5. 2

Na princípe učenia s učiteľom je založený aj v súčasnosti najpoužívanejší algoritmus učenia, algoritmus spätného šírenia chyby (Back-Propagation algoritmus).

• Hebbovo učenie Jedná sa o techniku učenia bez učiteľa. „Neurónové siete s Hebbovým učením odkrývajú závislosti medzi niektorými entitami použitými na reprezentáciu analyzovaného problému“ [22].

• Kompetitívne učenie Ide o techniku učenia bez učiteľa. „Neurónová sieť s konkurenčným učením je sieť, v ktorej sú adaptované synaptické váhy len toho výstupného neurónu, ktorý má najvyššiu hodnotu potenciálu spomedzi všetkých výstupných neurónov. Takýto neurón je pomenovaný víťazný neurón.“ [22]

• Samoorganizácia „Je to neurónová architektúra, ktorá zobrazuje viacdimenzionálne vzory vo vstupných dátach do dvojdimenzionálneho priestoru takým spôsobom, aby topologická štruktúra vzorov zostala zachovaná.“ [22] Jedná sa o techniku učenia bez učiteľa.

Page 46: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 38 -

5.4.1 Algoritmus Back-Propagation

Spočíva v postupnom vyhodnocovaní reakcie neurónovej siete na jednotlivé vzorky - vstupy, v porovnávaní týchto výstupov s príslušnými predlohami (správnymi odpoveďami) a v úprave synaptických váh tak, aby rozdiely medzi reakciou upravenej neurónovej siete a predlohy boli minimálne. Algoritmus Back-Propagation pozostáva z nasledovných krokov:

1. Inicializácia váh na malé náhodné hodnoty

2. Výber vstupného vektora ¦ a jeho aplikácia na vstup siete ako t

§ = ,5.3 3. Dopredné šírenie vstupného signálu zo vstupného vektoru cez sieť.

Výstupy v jednotlivých vrstvách sú určené ako:

§©ª = ѰE©«ª§©«ªF,5.4 4. Výpočet chýb ¬©­ pre neuróny vstupnej vrstvy (m=M) pri porovnaní p-tého

vstupného vzoru s požadovaným p-tým vzorom ®© ¬©­ = Ѱ’©­)[®© − §©­2,5.5

5. Výpočet chýb pre predchádzajúcu vstupnú vrstvu spätným šírením chýb ¬©ª = Ѱ’(©ª )∑ ©«ª¬«ª« ,5.6

6. Modifikácia váh ©°±²= ©³+∆ ©ª, pričom

∆ ©«ª = ´¬©ª§«ª ,5.7 7. Návrat do kroku 2 a opakovanie výpočtu pre ďalší vstupný vektor

Page 47: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 39 -

5.4.2 Kohonenovo (kompetitívne) učenie

Algoritmus Kohonenovho učenia je založený na kompetitívnom učení, je však istým vylepšením tohto prístupu. Algoritmus pozostáva z nasledujúcich krokov: 1. Voľba topológie mapy a okolia 2. Inicializácia váh v kompetitívnej (pevne danej) vrstve 3. Výpočet vzdialeností ;, medzi vstupným vektorom X =(x1,x2,…,xn), kde

xi je vstup uzla i, a každým neurónom j sa realizuje podľa

;, = − w ,5.8

pričom wij definuje váhu medzi vstupom i a neurónom j.

4. Adaptácia váh plastickej siete - hľadanie všetkých neurónov v okolí 1µ víťazného neurónu c a adaptácia ich váh v súlade s algoritmom učenia.

+ 1 = + ¶0 −2, |·C ∈ 1µ5.9 + 1 = ,5.10 kde + 1 je nová hodnota váhy, t je okamžitý čas, ¶(t) je skalár predstavujúci rýchlosť učenia z intervalu ¶ ∈ 0, 1 a 1µje okolie víťazného neurónu c. [20]

5.5 Architektúry neurónových sietí

„Využitie a výpočtová sila neurónov sa úplne prejavuje až v neurónových

sieťach, t.j. v ich vzájomnom prepojení do sieťovej štruktúry. Ak sa neuróny usporiadajú do vrstiev, takejto štruktúre sa hovorí vrstvené (jednovrstvové alebo viacvrstvové) neurónové siete.“ [22]. Architektúrou neurónovej siete sa teda rozumie usporiadanie neurónov do štruktúry, ktorá prepája jednak jednotlivé neuróny medzi sebou a jednak vrstvy navzájom. Väčšinu v súčasnosti používaných architektúr neurónových sietí tvoria viacvrstvové siete. V tejto časti sa pokúsime vytvoriť prehľad najpoužívanejších architektúr neurónových sietí.

5.5.1 Dopredné siete

Najpoužívanejšou neurónovou architektúrou súčasnosti sú dopredné siete.

V týchto sieťach je signál privedený na vstup neurónu, ktorý ho spracuje a svoj výstup privedie na vstup ďalšieho neurónu. Dobrým príkladom tejto siete je sieť perceptrónov, ktorá je najjednoduchším typom doprednej siete.

Page 48: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 40 -

Prvé aplikácie neurónovej siete boli založené práve na spomínanej doprednej sieti, pričom však obsahovali iba vstupné a výstupné neuróny. Vstupné vzory tak boli prostredníctvom týchto vstupných neurónov privádzané na výstupné neuróny, ktoré vykonali výpočet a vrátili výstup. Na príklade vidieť, že neuróny sú teda organizované do tzv. vrstiev. Takejto architektúre hovoríme jednovrstvová neurónová sieť a jej štruktúra je zobrazená na obrázku 5.3. Na trénovanie jednovrstvových sietí sa používa delta pravidlo (vzťah 5.1).

Vstupná vrstva Výstupná vrstva

Obrázok 5.3: Architektúra jednovrstvovej doprednej neurónovej siete.

Ako však preukázali v roku 1969 Minski a Papert, touto sieťou nie je možné realizovať niektoré jednoduché matematické funkcie ako napr. funkciu XOR. Tento problém bol vyriešený pomocou pridania ďalšej, tzv. skrytej vrstvy neurónov medzi vstupnú a výstupnú vrstvu. Na trénovanie takejto siete bolo vytvorené pravidlo spätného šírenia chyby (Back-Propagation algoritmus). Štruktúru tejto siete je možné vidieť na obrázku 5.4. Dopredné siete teda môžu byť jednovrstvové tvorené vstupnou a výstupnou vrstvou, kde vo vstupnej vrstve neprebieha samotný výpočet, alebo viacvrstvové, ktoré majú navyše medzi vstupnou a výstupnou vrstvou ešte vrstvu skrytú. Vstupná vrstva Skryté vrstvy Výstupná vrstva

Obrázok 5.4: Architektúra viacvrstvovej doprednej neurónovej siete.

°

¢

¢

¢ª

°

¢

¢

¢ª

Page 49: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 41 -

Na obrázkoch 5.3. a 5.4 sú vyplnenými krúžkami vyznačené vstupné neuróny, ktoré tvoria vstupnú vrstvu. Pomocou nich sú do siete privádzané vstupy , , … , °. Prázdnymi krúžkami sú reprezentované neuróny, ktoré sú usporiadané vo výstupnej a v skrytých vrstvách. Počet skrytých vrstiev ako aj počet neurónov v nich je voliteľný a je závislý na riešenom probléme. Počet vstupných neurónov je daný rozmerom vstupného vektora = , , … , ° a počet výstupných neurónov je daný rozmerom výstupného vektora ¢ = ¢, ¢, … , ¢ª). Špeciálnu modifikáciu doprednej siete predstavuje sieť s časovým posunom (TDNN z angl. Time-Delay Neural Network). „TDNN v podstate poskytuje viacvrstvovej sieti okno do minulosti, okrem momentálneho vstupu v čase t vidí sieť ešte aj vstupy z minulých D krokov (v časoch − , − , . . . , − ¹).“ [10]. Táto architektúra siete s výhodou využíva na trénovanie algoritmus spätného šírenia chyby, vzhľadom na svoju jednoduchosť. Za zmienku tiež stojí využitie tejto architektúry, keďže bola ako prvá použitá na rozpoznávanie foném [23], ako aj na rozpoznávanie písaného textu. [24]

5.5.2 Asociačné pamäte

Asociačné pamäte sa vyznačujú schopnosťou „zapamätať si“ obraz dát privedených na vstup pamäte počas trénovania. Natrénovaná sieť potom dokáže po privedení neznámeho vzoru na vstup vyvolať na výstupe najpodobnejší zo vzorov, na ktoré bola natrénovaná. Na rozdiel od predchádzajúcich architektúr, ktoré boli usporiadané do vrstiev neurónov sa v spojení s označovaním neurónov asociačnej pamäte používa pojem pole. Množstvo vzorov, ktoré je asociačná pamäť schopná pojať je daná jej kapacitou, ktorá je úzko spätá s rozmerom poľa neurónov asociačnej pamäte. „Neurónové siete typu asociačných pamätí sú siete s učením s učiteľom. Na rozdiel od sietí perceptrónového typu, v ktorých vstupné signály sa šíria len dopredným smerom, pre siete typu asociačných pamätí je charakteristické obojsmerné šírenie signálov, teda aj v spätnom smere.“ [22].

Na obrázku 5.5 je zobrazená asociačná pamäť typu BAM (Bidirectional Associative Memory).

Obrázok 5.5: Topológia siete BAM (Bidirectional Associative Memory)

¤ ¤ ¤

w

… …

… …

Page 50: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 42 -

Princíp učenia siete BAM spočíva na sčítaní korelačných matíc každej dvojice vektorov ©, ¢©, ktorými sú vyvolané vzorky z BAM siete. Zvláštnosťou tejto siete je, že jej trénovanie neprebieha iteratívne adaptáciou váh synaptických spojení, ale jednorázovo prostredníctvom rezonancie sietí. Počet vstupných a výstupných neurónov je podobne ako pri dopredných sieťach daný rozmerom vstupného a výstupného vektora. Množstvo vzorov, ktoré dokáže sieť zahrnúť, je dané jej kapacitou, ktorá je závislá na konkrétnej miere zabúdania. Hornú hranicu kapacity môžeme vyjadriť podľa vzťahu uvedenom v [25]: | = 2O9º,5.11 kde n je dimenzia vstupného vektora . Podľa [26], maximálny počet vzorov, ktoré potom dokáže sieť uchovať v pamäti je daný vzťahom: . < min, |,5.12 kde n je dimenzia vstupného vektora a p je dimenzia výstupného vektora ¤. [22].

5.5.3 Rekurentné siete

Na rozdiel od dopredných sietí sa rekurentné siete vyznačujú tým, že majú aspoň jednu spätnú väzbu, ktorá umožní neurónu získať údaje z predchádzajúceho behu. Spätná väzba môže byť realizovaná medzi výstupom neurónu a vstupom do siete, od neurónu vo vyššej vrstve k neurónu nižšej vrstvy alebo neurónom samým so sebou. Štruktúru rekurentnej siete zobrazuje obrázok 5.6.

Vstupná vrstva Skrytá vrstva Výstupná vrstva

Obrázok 5.6: Architektúra dvojvrstvovej rekurentnej neurónovej siete.

¢

Page 51: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 43 -

Špeciálnu kombináciu asociatívnej pamäte a rekurentnej siete predstavuje Hopfieldova sieť, ktorej štruktúra je zobrazená na obrázku 5.7. Jedná sa o úplne prepojenú, symetrickú sieť, kde je prepojenie „každý z každým, okrem samého seba“.

Obrázok 5.7: Topológia siete Hopfieldovho modelu pre 3 neuróny

Výstupné signály jednotlivých neurónov môžu vzhľadom na ich prahovú aktivačnú funkciu nadobúdať iba hodnoty 0 alebo1. Výstup siete je preto možné popísať sériou binárnych čísel. „Časový vývoj Hopfieldovej siete s n neurónmi možno chápať ako trajektóriu vedúcu cez vrcholy n - rozmernej hyperkocky.“ [10]. V prípade siete z obrázku 5.6. sa sieť môže vzhľadom na 3 výstupy neurónov nachádzať v jednom z 2b = 8 možných stavov. Táto situácia je zobrazená na obrázku 5.8.

Obrázok 5.8: Ilustrácia stavového priestoru Hopfieldovej siete s 3 neurónmi

1

3

2

w = w

Page 52: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 44 -

Ak je na vstupe siete prezentovaná poškodená verzia natrénovaného vzoru, sieť ju vďaka svojej dynamike zrekonštruuje. „Trajektória siete vedie do jedného, potom už stále opakujúceho sa vzorca aktivity celej siete – atraktora prislúchajúceho trénovaciemu príkladu. Atraktory zodpovedajú lokálnym minimám energie, pričom viaceré stavy môžu končiť v tom istom atraktore.“ [10].

5.5.4 Samoorganizujúce mapy

Ľudský mozog je organizovaný do oblastí, ktoré sú medzi sebou navzájom prepojené. Práve táto myšlienka sa stala inšpiráciou pre návrh samoorganizujúcich sa neurónových sietí alebo máp (z angl. Self-Organizing Maps - SOM). Siete SOM zväčša obsahujú rádovo stovky až tisíce neurónov, čo má za následok vysokú časovú náročnosť trénovania. Práve pre veľký počet prvkov sa im často hovorí samoorganizujúce mapy, skôr ako siete. SOM sa v praxi často využívajú pri analýze veľkého množstva vstupných dát, čo zahrňuje okrem iného aj oblasť rozpoznávania reči. [20].

Najznámejšou SOM je Kohonenova samoorganizujúca mapa (z angl. Kohonen

Self-Organizing Maps - KSOM). „Je považovaná za jednu z najviac aplikovaných oblastí neurónových sietí založených na princípoch kompetitívneho učenia.“ [22]. Na obrázku 5.9 je zobrazená architektúra Kohonenovej samoorganizujúcej mapy.

Obrázok 5.9: Štruktúra Kohonenovej samoorganizujúcej mapy.

Princíp metódy spočíva v zhlukovaní jednorozmerných vstupných vzorov a ich transformácie priestoru s nižšou dimenziou, pričom sú hľadané vzájomné závislosti a spoločné vlastnosti. SOM je tvorená dvomi vzájomne prepojenými sieťami, pričom zmeny váh prebiehajú iba v jednej z nich. Druhá sieť je pevne daná a predstavuje kompetitívnu sieť pre porovnávanie s prvou sieťou. Samotné zhlukovanie prebieha

= w , w , … , w = , , … ,

Page 53: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 45 -

hľadaním neurónov, ktorých vzdialenosti od prvkov vstupného vektoru je čo najmenšia. Pre tento účel sa najčastejšie používa Euklidovská vzdialenosť a neurón, ktorého Euklidovská vzdialenosť od daného prvku vstupného vektoru je najmenšia nazývame tzv. víťazný neurón. Práve okolo tohto víťazného neurónu sa vytvorí tzv. zhluk neurónov, ktoré sa tomuto víťaznému neurónu najviac podobajú. Takto vzniknuté zhluky potom reprezentujú dominantné vlastnosti vstupného vektoru. Pre účely trénovania Kohonenovej samoorganizujúcej mapy sa používa Kohonenovo (kompetitívne) učenie popísané v 5.4.2.

5.6 Hlboké neurónové siete

Hlboké neurónové siete (z angl. Deep Belief Networks) sú umelé neurónové

siete, ktoré modelujú hlbokú topológiu kortikálnych stĺpcov v neokortexe. V porovnaní s tradičnými sieťami preto obsahujú väčší počet skrytých vrstiev. Každá vrstva sa skladá z latentných stochastických premenných, ktoré najčastejšie nadobúdajú iba binárne hodnoty. Tieto latentné stochastické premenné nazývame tiež skrytými jednotkami alebo detektormi čŕt (feature detectors). Slúžia na reprezentáciu istých čŕt či vzorov v jednotkách nižšej vrstvy. Postupným skladaním týchto detektorov do hierarchickej siete, vieme vo vysokých úrovniach kódovať veľmi užitočné „abstraktné“ informácie.

Uplatnenie a využitie hlbokej neurónovej siete je naozaj široké. DNB boli pôvodne vyvinuté ako grafické modely a ich hlavnou úlohou bolo rozpoznávať objekty v obrázkoch.[27]

5.6.1 Formálny opis

Jednoduchú implementáciu DBN zaručujú stochastické binárne neuróny, ktoré sa pri stavbe DBN používajú. Z dôvodu použitia binárnych neurónov, môžu v systéme nastať len dva aktivačné stavy, a to 0 alebo 1, pričom pravdepodobnosť, že neurón bude aktívny, je hladká nelineárna funkcia (sigmoidná funkcia) všetkých vstupov, ktoré prijme:

|) = 1, = 11 + ½h ∑ ¾i¿ihi 5.13 kde si a sj vyjadrujú stav binárnych neurónov i a j, wij je váha spojenia medzi i a j, a bj je prah (bias) jednotky j. [28] Spojením takýchto neurónov dostávame tzv. Boltzmann machine (BM). Táto sieť je tvorená obojsmernými spojeniami medzi jednotlivými neurónmi, pričom váhy týchto spojení sú symetrické a zdieľané medzi sebou. Obojsmerné spojenia zabezpečujú

Page 54: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 46 -

propagáciu aktivity neurónov v oboch smeroch, ale iba v jednom smere súčasne. Aktivita môže teda prebiehať v dvoch smeroch: zdola-nahor a zhora-nadol. V prvom prípade sieť rozpoznáva a učí sa štruktúru vstupných dát, v druhom prípade sieť náhodne generuje naučené dáta. Vďaka tejto vlastnosti, nazývame BM generatívnym modelom. Hlavným nedostatkom BM je rýchlosť učenia, ktorá je pomalá a tým v praxi nepoužiteľná. Tento fakt je ale možné obísť obmedzením spojení, zjednodušením algoritmu učenia a učením iba jednej skrytej vrstvy naraz. Výsledkom tohto obmedzenia je tzv. Restricted Boltzmann Machine (RBM). RBM sieť je zložená len zo vstupnej a jednej skrytej vrstvy, pričom spojenia medzi nimi sú obojsmerné a reflexívne spojenia sú zakázané. Postupným naskladaním viacerých RBM na seba, dostávame sieť s hlbokou štruktúrou, ktorá je schopná efektívneho učenia. Učenie DBN zostavených z RBM pozostáva z viacerých krokov, ktoré postupne zlepšujú naučený vnútorný model trénovacích dát. Najskôr je natrénovaná prvá vrstva na vstupných dátach a potom sa postupne každá vrstva učí rozpoznávať pravidelnosti v už natrénovaných vrstvách. Nakoniec sa všetky vrstvy zložia dokopy a doladia sa výstupy. [28] [29]

5.6.2 Učenie jednej vrstvy Učenie DBN je v porovnaní s učením cez backpropagation algoritmus veľmi

rozdielne. Dochádza k postupnému učeniu jednotlivých vrstiev (každá vrstva predstavuje jednu RBM), namiesto učenia celej siete naraz. Ak je úlohou klasifikovať vzory do kategórií, je potrebné najskôr zvoliť vhodnú reprezentáciu štruktúry vstupných vzorov. Predstavme si, ako vstupný vzor určitý obrázok. Učenie prvej vrstvy potom znamená hľadanie korelácií medzi jednotlivými pixelmi obrázka. Táto prvá fáza je typ učenia bez učiteľa (unsupervised learning), pretože vyžaduje len vstupné dáta. Učenie jednej vrstvy začína nastavením nulových váh na symetrických spojeniach medzi pixelom i a každým detektorom j. Váha wij sa následne postupne aktualizuje použitím rozdielu nameraných korelácií:

∆w = Á)⟨⟩Âá4g − ⟨⟩ÄÅÆš4Äȵg,,5.14 kde Á je rýchlosť učenia, ⟨⟩Âá4g je frekvencia s ktorou sú pixel i a detektor j spolu

aktívne, keď prebieha aktivita v smere zdola-nahor a ⟨⟩ÄÅÆš4Äȵg je

korešpondujúca frekvencia, avšak pri aktivite v smere zhora-nadol, teda keď sieť rekonštruuje resp. generuje naučené dáta. Vidíme, že učenie (R)BM je vskutku

Page 55: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 47 -

hebbovskej povahy. Pravdepodobnosť, s akou nastavíme stav každého detektora na 1, odvodíme z nasledujúceho vzťahu:

|) = 1, = 11 + ½h ∑ ¾i¿ihi∈ÉiÊËÌÍ ,5.15 kde bj je prah j a si binárny stav pixelu i. Po nastavení stavov všetkých neurónov skrytej vrstvy, zmeníme smer aktivity neurónov, čím sa spustí generovanie resp. rekonštrukcia trénovacieho obrázku. Rovnako ako pri predchádzajúcom kroku, stav pixelov nastavíme na 1 s nasledujúcou pravdepodobnosťou:

| = 1 = 11 + ½i ∑ ¾h¿ihh∈čÏÐÍ ,5.16 Postupujeme nasledovným spôsobom s využitím metódy alternate Gibbs sampling:

1. Zvolíme si náhodný obrázok 2. Súčasne aktualizujeme stavy všetkých detektorov podľa vzťahu (1.

Pravdepodobnosť) 3. Súčasne aktualizujeme stavy všetkých pixlov podľa vzťahu (2.

Pravdepodobnosť) 4. Alternujeme medzi krokmi 2 a 3, kým RBM nedosiahne tzv. “tepelnú

rovnováhu” (thermal equilibrium), t.j. situáciu kedy sú stavy v oboch prípadoch ustálené.

Keď je úspešne natrénovaná prvá vrstva detektorov, je možné pristúpiť k učeniu ďalších vrstiev. [28] [29] [30]

Page 56: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 48 -

Obrázok 5.10: Princíp učenia hlbokej neurónovej siete. Na vstupe matica m -frekvenčných kepstrálnych koeficientov (MFCC) trénované pre 20 výstupných

povelov.

5.6.3 Učenie viacerých vrstiev

Na učenie iba prvej vrstvy detektorov čŕt nepostačuje namodelovanie štruktúry dát, preto je potrebné učiť aj ďalšie vrstvy. Preto výstupy už naučenej vrstvy sú považované za vstupy pre ďalšiu vrstvu. Druhá vrstva bude preto modelovať korelácie medzi jednotlivými detektormi, čím sa dosiahne ešte hlbšie “pochopenie” štruktúr, ktoré sa v trénovacích dátach nachádzajú.

Toto učenie vrstvy po vrstve je možné použiť toľkokrát, koľkokrát je to potrebné, bez toho aby sa prejavili nejaké nedostatky. Predpokladom je, že po natrénovaní všetkých vrstiev siete detektory čŕt zachytia v trénovacích dátach mnoho štatistických pravidelností a je možné RBM naskladať na seba, čím sa vytvorí DBN. Nič už nebráni samotnej klasifikácii obrázkov do jednotlivých kategórií. [27]

5.6.4 Dolaďovanie pomocou backpropagation

Doterajšie trénovanie siete, ktoré prebiehalo bez učiteľa treba vnímať ako spôsob odstránenia problému spojeného s inicializáciou váh pri použití backpropagation algoritmu. Tým, že sme sieť naučili vnútornú štruktúru dát, vyhli sme sa slepému nastaveniu váh na náhodné hodnoty.

525

RBM

525

RBM 525

350

RBM 1000

w3

w2

w1

525

350

1000

20

w

w

wb

525

350

1000

20 wÑ + ÒÑ

Predtrénovanie bez učiteľa

Trénovanie s učiteľom

Fine-tuning

wb + Òb

w + Ò

w + Ò

Page 57: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 49 -

Hoci druhý problém ostáva, zvolením nízkej hodnoty rýchlosti učenia, je možné sa mu vyhnúť. [27]

5.6.5 Zhrnutie DBN sa začali reálne používať len relatívne nedávno. Napriek tomu si ihneď

získali rešpekt vďaka flexibilite, ktorú ponúkajú. Ako jeden z príkladov flexibility je možné spomenúť, že DBN je pôvodne grafický model, avšak úspešne sa využívajú na rôzne iné účely s veľmi dobrými výsledkami. Hlboké neurónové siete dokážu vďaka využitiu hlbokej architektúry modelovať rôznorodé dáta s veľkou presnosťou, a to aj napriek faktu, že boli pôvodne navrhnuté ako grafický model. [27] [32] [33] [30]

Page 58: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 50 -

6 Algoritmy a ich zložitosť

V tejto kapitole sa budeme zaoberať problémom stanovenia výpočtovej náročnosti algoritmu. Rozoberieme pojmy ako „obtiažnosť“ a „výpočtová zložitosť“ algoritmu a rozdiely medzi „ľahkými“ a „ťažkými“ problémami z hľadiska výpočtovej zložitosti.

6.1 Algoritmy

Pod pojmom algoritmus rozumieme postupnosť krokov, ktorá nás dovedie

k žiadanému riešeniu daného problému. Žiada sa, aby algoritmus mal tieto vlastnosti: • determinovanosť – má byť zadaný konečným počtom jednoznačných pravidiel • efektívnosť – má zaručiť vyriešenie úlohy po konečnom počte krokov

• hromadnosť – má byť použiteľný na celú triedu prípadov úlohy svojho typu • konečnosť – má zaručiť, že algoritmus skončí v konečnej dobe

• správnosť – má zaručiť správnosť výsledku vydaného algoritmom

Pravidlá v algoritme musia byť rozhodnuteľné v okamžiku výpočtu. Pekný príklad nekorektného pravidla uvádza [31]: „Ak existujú mimozemské civilizácie, tak choď domov, inak zostaň tu.“ Pretože nevieme, či mimozemské civilizácie existujú alebo nie, nevieme v algoritme pokračovať. V praxi sa ukázalo ako rozumné posudzovať algoritmy podľa počtu elementárnych krokov, ktoré potrebujú na vyriešenie daného problému. Tieto elementárne kroky môžu byť sčítanie, odčítanie, násobenie, delenie, porovnávanie s vetvením atď. Jednotlivé elementárne kroky považujeme za rovnako časovo náročné. Algoritmus teda vyrieši danú konkrétnu úlohu U v čase T, ak na jej vyriešenie potrebuje T elementárnych krokov. Pri vyhodnocovaní závislosti počtu krokov algoritmu T(n) na dĺžke n úlohy môže závisieť nielen od množstva vstupných dát, ale aj od ich vzájomnej konfigurácie. Preto funkcia T(n) môže vyjadrovať iba hornú hranicu počtu krokov algoritmu pre najhorší prípad úlohy s dĺžkou n (worst case analysis).

Page 59: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 51 -

6.2 Výpočtová zložitosť

Výpočtová zložitosť priamo nesúvisí so zložitosťou samotného algoritmu

z ľudského pohľadu. Algoritmus môže byť veľmi jednoduchý na pochopenie i implementáciu, a napriek tomu môže byť jeho výpočtová zložitosť veľká, a naopak.

Na určenie výpočtovej zložitosti sa používajú dve miery:

• časová zložitosť • pamäťová zložitosť

V závislosti na počte vstupných prvkov n poznáme nasledujúce typy výpočtovej zložitosti:

1. lineárna: t = a · n + b 2. logaritmicko lineárna: t = a · n · log(n) + b · n + c 3. polynomiálna: t je funkciou nejakého polynómu n 4. algoritmy so zložitosťou väčšou než je polynomiálna

Z uvedených typov zložitosti sa pritom za rýchle považujú iba typy 1. - 3.

6.3 Polynomiálne transformácie

Častým postupom pri riešení nejakého problému je transformovať ho na jedno

alebo viac riešení iného problému. Tak napríklad násobenie dvoch celých čísel vieme previesť na sériu sčítaní. Hľadanie najväčšieho spoločného deliteľa dvoch čísel prevedieme na postupnosť delení so zvyškom. Po takomto prevode môžeme povedať, že takto upravená úloha je v istom zmysle ľahšia, ako predchádzajúca úloha.

Definícia: Nech je daný problém P1 so vstupnými dátami D1. Problém P1 môžeme riešiť aj tak, že ho pretransformujeme na iný problém P2 tak, že dáta D1 prerobíme na dáta D2 problému P2. Ak riešenie R2 problému P2 vieme prerobiť na riešenie R1

problému P1, transformácia je hotová. Ak prerobenie dát D1 na D2 a riešenia R2 na R1

vyžaduje len polynomiálny počet elementárnych operácií, nazveme túto transformáciu polynomiálnou transformáciou. V niektorých prípadoch vyriešenie problému P1 vyžaduje vyriešiť niekoľko prípadov problému P2 (napr. násobenie prevádzame na niekoľko sčítaní). Definícia: Ak prevody dát a riešení vyžadujú len polynomiálny počet elementárnych operácií a výpočet vyžaduje polynomiálny počet výpočtov problému P2, hovoríme, že sme problém P1 polynomiálne redukovali na problém P2.

Page 60: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 52 -

Definícia: Ak problém P1 možno polynomiálne redukovať na problém P2 a naopak, problém P2 možno polynomiálne redukovať na P1 hovoríme, že problémy P1, P2 sú polynomiálne ekvivalentné.

6.4 NP - ťažké úlohy

Definícia: Ak úlohu P1 možno polynomiálne redukovať na úlohu P2, znamená to, že ak existuje polynomiálny algoritmus riešenia úlohy P2, potom existuje aj polynomiálny algoritmus pre úlohu P1. Naopak to však nemusí platiť – ak existuje polynomiálny algoritmus pre P1, polynomiálna redukovateľnosť P1 na P2 ešte nič nehovorí o zložitosti problému P2. Definícia: Ak sú však problémy P1, P2 polynomiálne ekvivalentné, existencia polynomiálneho algoritmu pre jeden implikuje existenciu polynomiálneho algoritmu pre druhý. Definícia: Hovoríme, že problém P je NP–ťažký, ak úlohu možno polynomiálne redukovať na P. Definícia: Hovoríme, že problém P je NP–ľahký, ak problém P možno polynomiálne redukovať na úlohu lineárneho programovania. Definícia: Hovoríme, že problém P je NP–ekvivalentný, ak sú oba problémy P NP-ľahké a NP-ťažké. Doteraz sa podarilo pre stovky úloh dokázať, že sú NP–ekvivalentné. Pre ďalšie sa podarilo dokázať, že sú NP–ťažké. Pre žiadnu NP–ťažkú úlohu sa doteraz nepodarilo nájsť polynomiálny algoritmus. Nepodarilo sa však ani dokázať, že polynomiálny algoritmus pre ne neexistuje. Nájdenie takého algoritmu pre jedinú zo stoviek NP–ekvivalentných úloh by znamenalo existenciu polynomiálneho algoritmu pre všetky ostatné. Všeobecne sa neverí, že by sa to mohlo niekomu podariť, preto sú na NP–zložitosti niektorých úloh založené napr. aj niektoré kryptografické systémy. [31]

Page 61: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 53 -

6.5 Asymptotické hodnotenie

Pre hodnotenie zložitosti algoritmov a tým aj ich výkonnosti boli zavedené

nasledovné označenia pre určenie rádu ich horného (O), dolného (ΩΩΩΩ) a presného (ΘΘΘΘ) ohraničenia. Nech f, g sú funkcie, ktoré sú definované na množine prirodzených čísel (N). Potom:

• f(N) = O(g(N)), ak existujú konštanty c a N0 také, že f(N) ≤ c.g(N) pre všetky N ≥ N0, vtedy O udáva hornú hranicu ilustrovanú obrázkom 6.1.

Obrázok 6.1: Znázornenie závislosti horného ohraničenia výpočtového času O od veľkosti vstupného problému.

• f(N) = ΩΩΩΩ(g(N)), ak existujú konštanty c a N0 také, že f(N) ≥ c.g(N) pre všetky N ≥ N0, vtedy ΩΩΩΩ udáva dolnú hranicu ilustrovanú obrázkom 6.2.

Obrázok 6.2: Znázornenie závislosti dolného ohraničenia výpočtového času ΩΩΩΩ od

veľkosti vstupného problému.

Page 62: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 54 -

• f(N) = ΘΘΘΘ(g(N)), ak existujú konštanty c1, c2 a N0 také, že c1.g(N) ≤ f(N) ≤. c2.g(N) pre všetky N ≥ N0, vtedy ΘΘΘΘ udáva presné ohraničenie ilustrované obrázkom 6.3.

Uvedené priradenia O, ΩΩΩΩ, ΘΘΘΘ predstavujú triedy funkcií podobnej zložitosti pri ignorovaní konštánt. Sú preto užitočné pre asymptotické vyhodnotenie zložitosti. [32]

Obrázok 6.3: Znázornenie závislosti presného ohraničenia výpočtového času ΘΘΘΘ od

veľkosti vstupného problému.

Pri hodnotení výpočtovej zložitosti nami navrhovaných algoritmov budeme počítať ich maximálnu výpočtovú zložitosť. Budeme preto používať horné ohraničenie výpočtovej zložitosti O.

Page 63: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 55 -

7 Ciele dizertačnej práce Systémy rozpoznávania reči sa stávajú čoraz žiadanejšími nie len na platforme

osobných počítačov, ale aj na jednoduchších technických prostriedkoch, mobilných a embedded zariadeniach. Nevýhodou týchto platforiem oproti osobným počítačom je jednoznačne výpočtový výkon, preto vývoj efektívneho systému rozpoznávania reči aj pre spomínané platformy by bol pomerne zaujímavým prínosom. V tejto práci sa zameriavame práve na problematiku rozpoznávania reči určeného pre mikrokontroléry a embedded zariadenia, pričom ťažisko práce sa sústreďuje na minimalizáciu výpočtových nárokov celého procesu pri využití potenciálu a výhod týchto zariadení oproti osobných počítačom. V rámci práce boli testované nové prístupy optimalizácie frekvenčnej analýzy v podobe riedkej Fourierovej transformácie opísanej v 9.2.1, pričom výsledná optimalizácia je aplikovateľná ako na embedded zariadenia, tak na osobné počítače. Okrem toho boli v rámci práce vyvinuté metódy optimalizácie výpočtovej náročnosti procesu rozpoznávania reči. Prvou metódou je využitie modulu FPGA na dedikovanie frekvenčnej analýzy zamerané na úplné prebratie úlohy frekvenčnej analýzy opísanej v 9.2.3, pričom mikrokontroléru sú dodávané už len výsledné frekvenčné komponenty frekvenčného spektra v reálnom čase. Ďalšou z navrhovaných metód je metóda nerovnomernej nerovnomernej segmentácie opísaná v 9.3 použiteľná na redukciu množstva frekvenčných komponentov frekvenčného spektra, čo má vplyv na počet informatívnych príznakov vstupujúcich do klasifikácie prehovoru. Vzhľadom na rozsah tejto práce, ktorý sa zameriava najmä na optimalizáciu výpočtovej zložitosti rozpoznávania reči boli pre potreby testovania vykonaných optimalizácií zvolené pokiaľ možno čo najjednoduchšie extrahovateľné rečové jednotky. Týmito rečovými jednotkami sú izolované povely, teda celé slová. Všetky vyššie opísané ciele je možné zhrnúť do nasledujúcich bodov:

• Výber vhodných rečových jednotiek pre slovenský jazyk za účelom ich rozpoznávania (viď. časť 1.5).

• Návrh a výber vhodnej metódy segmentácie na zvolené rečové jednotky (viď. časť 9.3).

• Výber najefektívnejšej metódy parametrizácie zvolených segmentov (viď. 9.4).

• Výber najefektívnejšej metódy klasifikácie reči na základe získaných parametrov (viď. 9.4).

• Návrh systému rozpoznávania reči a minimalizácia jeho výpočtovej náročnosti(viď. 9.4).

Page 64: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 56 -

• Návrh, experimentálne overenie a vyhodnotenie efektivity systému rozpoznávania reči pre embedded a mobilné zariadenia (viď. 9.5).

Page 65: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 57 -

8 Rozpoznávanie povelov v multirobotických systémoch V rámci Katedry technickej kybernetiky Fakulty riadenia a informatiky Žilinskej

univerzity v Žiline bol pre testovacie účely vyvinutý multirobotický systém (MRS) s názvom Georges. Je zložený z homogénnych robotov, schopných medzi sebou komunikovať okrem iného aj prostredníctvom rečových povelov. Cieľom systému je robotmi zosnímané vyslovené povely rozpoznať pomocou jednoduchého algoritmu s nízkou výpočtovou zložitosťou, pričom snahou úlohy je nielen zvýšiť úspešnosť rozpoznávania povelov, ale súčasne znížiť komunikačné nároky podsystému.

8.1 Použitý multirobotický systém

Experimentálny multirobotický systém pozostáva z autonómnych mobilných

robotov so schopnosťou snímať vybrané fyzikálne veličiny, spracovávať ich, komunikovať medzi sebou ako aj s nadradeným dohliadacím, riadiacim a monitorovacím systémom. Bol vyvinutý za účelom overovania algoritmov z oblasti prieskumu a mapovania terénu, sledovania pohybujúcich sa cieľov a pod.

Obrázok 8.1: Blokový diagram robota George.

Page 66: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 58 -

Bloková schéma navrhnutého systému je znázornená na obrázku 8.1, fotografia skonštruovaného systému je zobrazená na obrázku 8.2.

Obrázok 8.2: Multirobotocký systém Georges

8.2 Rozpoznávací algoritmus

Multirobotický systém obsahuje štyri zhodné roboty s možnosťou autonómneho

správania sa. Jednotlivé roboty sú rozmiestnené v monitorovanej oblasti, pričom každý sníma akustický signál prostredníctvom vstavaných mikrofónov. Prehovor obsluhy MRS je snímaný každým robotom, ktorý identifikuje začiatok prehovoru. Tie roboty, ktoré identifikujú začiatok prehovoru, nazývame aktívne roboty (AR). Na procese klasifikácie príkazu sa podieľajú len tie roboty, ktoré identifikovali začiatok prehovoru.

Obrázok 8.3: Multirobotický systém pre úlohu rozpoznávania povelov.

Na obrázku 8.3 sú jednotlivé roboty MRS označené ako MRi , di reprezentuje

vzdialenosť i-teho robota od hovoriaceho.

Page 67: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 59 -

Predpokladajme, že akustický signál prijímaný snímačmi jednotlivých robotov je: = − u + , (8.1)

kde ai je parameter vyjadrujúci útlm signálu generovaného rečníkom, pričom je závislý od vzdialenosti snímača od rečníka di. τi je časové oneskorenie akustického signálu na ceste medzi rečníkom a snímačom i-teho robota. ei(t) je interferenčný biely Gaussovský šum s nulovou strednou hodnotou ei(t)=N(0, σ), ktorý je ilustrovaný na obrázku 8.4.

Obrázok 8.4: Signál s(t) nezašumený a) a po aplikácií šumu so SNR = 10 dB b).

Každý z robotov systému nepretržite sníma akustický signál Si(t) a na základe krátkodobej energie signálu a počtu prechodov nulou vyhodnocuje začiatok prehovoru. Ak robot vyhodnotí začiatok prehovoru, robot sníma signál Si(t), transformuje ho na diskrétny ekvivalent a získané vzorky uchová. Pretože identifikovaný začiatok prehovoru sa pri jednotlivých robotoch môže mierne líšiť, je potrebné posunúť jednotlivé vektory Sk tak, aby sa eliminoval ich vzájomný časový posun. Hovoríme o procese časového zarovnania.

Obrázok 8.5: Časové zarovnanie

Ako je to ilustrované obrázkom 8.5, v procese časového zarovnania je potrebné zo skupiny robotov zvoliť referenčného robota RR. Môže to byť robot s najväčšou energiou signálu Sk(i), prípadne dopredu určený referenčný robot a pod. Na základe vzájomnej korelačnej funkcie medzi vektorom referenčného robota a každého

Page 68: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 60 -

ďalšieho robota, ktorý identifikoval začiatok prehovoru, je potrebné určiť časový posun, pri ktorom vzájomná korelačná funkcia dosahuje maximum. Na základe takto určeného posunu je potrebné upraviť jednotlivé vektory tak, aby ich začiatky zodpovedali začiatku prehovoru identifikovaného referenčným robotom. Proces časového zarovnania je realizovaný v každom robote autonómne na základe vlastného nasnímaného vektora Sk a vektora referenčného robota Sr. Vektor Sr je bezprostredne po nasnímaní vzoriek signálu vysielaný referenčným robotom všetkým ďalším robotom v MRS. Takto sa proces časového zarovnania realizuje paralelne v každom autonómnom robote, ktorý v danom časovom okne identifikoval prehovor. Potom nasledujú ďalšie etapy spracovania signálu. Jednotlivé kroky spracovania sú ilustrované na obrázku 8.6.

Obrázok 8.6: Bloková schéma procesu rozpoznávania povelov.

Pri vykonaných experimentoch bola použitá vzorkovacia frekvencia 16 kHz pri rozlíšení 12 bitov. Po identifikácii začiatku prehovoru uloží každý robot pre účely rozpoznania prehovor dĺžky 1024 ms, čo predstavuje 16384 vzoriek. Výhodou takéhoto počtu je, že sa jedná o mocninu čísla 2, teda je možné signál úplne rozdeliť na konštantný počet mikrosegmentov pre Fourierovu transformáciu. Na každý mikrosegment je aplikovaná Hammingova oknová funkcia a po spracovaní signálu pomocou rýchlej Fourierovej transformácie vypočítame 256 kepstrálnych koeficientov, ktoré budeme pokladať za vektor charakteristík s 256 zložkami. Následne pomocou Euklidovskej vzdialenosti identifikujeme povel na základe referenčných povelov: „back“, „go“, „left“, „right“ a „stop“. Vzhľadom na počet robotov v priestore, výpočtový výkon každého z nich a šírku prenosového komunikačného kanála, ktorým spolu komunikujú, je možné pri procese zberu a vyhodnocovania dát postupovať na základe rôznych scenárov. Voľba najvhodnejšieho scenára je závislá na preferenciách koncového používateľa – krátka doba odozvy, nízke prenosové nároky, nízke výpočtové nároky atď. V rámci nášho návrhu sme sa preto rozhodli simulovať správanie systému v štyroch rôznych

Page 69: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 61 -

scenároch, pričom každý je optimalizovaný pre iné preferencie koncového používateľa.

8.3 Testovanie algoritmu pomocou informačnej fúzie

Úlohou informačnej fúzie je zvýšenie kvality riešenia a potláčanie chýb

vznikajúcich pri zaznamenávaní informácie z prostredia prostredníctvom kooperácie jednotlivých robotov. Závislosť kvality riešenia však nie je postavená len na hrubom počte prvkov systému, ale aj na spôsobe a úrovni fúzie informácií. Jednotlivé typy fúzie sa líšia zameraním na minimalizáciu rôznych parametrov systému. Vo všetkých navrhovaných scenároch je použitý centralizovaný multirobotický systém s agentom špecialistom. Roboty sa počas snímania prehovoru nepohybujú.

8.3.1 Scenár 1: Fúzia dát V rámci experimentu bol porovnávaný systém pozostávajúci z dvoch aktívnych

robotov 8.1(a) nahrávajúcich vyslovený povel pri rôznych úrovniach aditívneho šumu so systémom pozostávajúcim zo štyroch aktívnych robotov 8.1 (b).

(a) (b)

Tabuľka 8.1: Euklidovské vzdialenosti fúzie dát referenčných povelov a vysloveného povelu pri rôznych úrovniach aditívneho šumu, nahrávaného (a) dvomi robotmi, (b)

štyrmi robotmi.

Ako ilustruje tabuľka 8.1, pri zvýšení počtu robotov dochádza k poklesu odchýlky v hodnote Euklidovskej vzdialenosti medzi vysloveným povelom a referenčnou množinou. Navrhovaná metóda fúzie dát teda v súlade s očakávaniami zabezpečuje v prípade snímania povelu vyšším počtom robotov spoľahlivejšie rozpoznávanie. Je však zrejmé, že výhody snímania signálu skupinou robotov sa pri nízkom zašumení

Page 70: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 62 -

plne neprejavia. Podmienky, pri ktorých výkon šumu dosahuje tak nízku hodnotu, sa len ojedinele vyskytujú v reálnych podmienkach.

Graf 8.1: Závislosť Euklidovskej vzdialenosti od počtu robotov a úrovne aditívneho

šumu.

Experimenty boli vykonané pre vyslovený povel „go“ pre rôzny počet robotov a rôznu úroveň aditívneho šumu. Ako môžeme vidieť z grafe 8.1, Euklidovská vzdialenosť s rastúcim počtom robotov a s klesajúcim šumom klesá. Uvedený scenár kladie pomerne vysoké nároky na komunikačný podsystém, čo je spôsobené množstvom dát, ktoré sú vysielané od RR k ostatným účastníkom a naopak. Rozdelenie záťaže pri klasifikácii je nerovnomerné, čo vyplýva z centralizovanej architektúry systému. Dochádza však k zníženiu výpočtových nárokov na jednotlivých robotov a ich presun na RR.

8.3.2 Scenár 2: Fúzia charakteristických vlastností Podobne ako pri predchádzajúcom scenári, aj v tomto prípade bolo spracovanie dát

centralizované a zamerané na zníženie nárokov na prenosový podsystém. V rámci experimentu sme dospeli k podobným záverom ako pri predchádzajúcom scenári. Ako vyplýva z tabuľky 8.2, pri fúzii charakteristických vlastností má zvýšenie počtu robotov za následok pokles odchýlky v hodnote Euklidovskej vzdialenosti medzi vysloveným povelom a referenčnou množinou. Experiment, ktorého výsledky sú zobrazené v tabuľke 8.2 s použitím (a) dvoch a (b) štyroch aktívnych robotov bol opäť vykonaný pri rôznych úrovniach aditívneho šumu.

(a) (b)

Page 71: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 63 -

Tabuľka 8.2: Euklidovské vzdialenosti fúzie charakteristických vlastností referenčných povelov a vysloveného povelu pri rôznych úrovniach aditívneho šumu, nahrávaného

(a) dvomi robotmi, (b) štyrmi robotmi.

V tomto prípade došlo oproti scenáru č. 1 na jednej strane k zníženiu nárokov na komunikačný podsystém, avšak na strane druhej došlo k zvýšeniu výpočtových nárokov kladených na jednotlivé roboty. Rozdelenie výpočtovej záťaže medzi jednotlivé prvky systému je teda pre takýto systém rovnomernejšie. Úloha finálneho rozhodnutia je však stále v réžii referenčného robota RR. Scenár č. 2b je iba miernou modifikáciou scenára č. 2, pričom hlavným rozdielom je len zvýšenie úrovne distribuovaného spracovania dát a zníženie zaťaženia prenosového podsystému. Zároveň sú ale kladené vyššie nároky na pamäťový podsystém robotov, keďže každý z robotov musí uchovávať v pamäti všetky vzory povelov. Výsledné hodnoty Euklidovských vzdialeností sa však oproti scenáru č. 2 nemenia.

8.3.3 Scenár 3: Fúzia rozhodnutí

V tomto prípade sú kladené nízke nároky na prenosový podsystém pri relatívne rovnomernom výpočtovom zaťažení jednotlivých robotov. Výpočtové nároky na jednotlivé prvky systému sú však oproti predchádzajúcim situáciám značné. S použitím algoritmu pre fúziu rozhodnutí dosahovali všetky roboty správne rozhodnutie. Vzhľadom na to by sa Euklidovské vzdialenosti v tabuľkách pre scenár č. 3 zhodovali s tabuľkou zo scenára č. 2. V prípade, že by niektorý z robotov rozpoznal povel inak ako ostatné roboty v skupine, jeho výsledok by bol ignorovaný,

Page 72: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 64 -

a teda výsledná hodnota Euklidovskej vzdialenosti by nebola neovplyvnená. V takom prípade by scenár č. 3 dosahoval lepšie výsledky ako scenáre č. 1 a 2. Ďalšou možnosťou modifikácie tohto scenára je vyradenie výsledkov od robota, ktorý mal najvyššiu Euklidovskú vzdialenosť pri povele, o ktorom sa rozhodlo, že bol vyslovený. Takýmto spôsobom boli dosiahnuté výsledky, ktoré sú zobrazené v nasledujúcej tabuľke 8.3.

(a) (b)

Tabuľka 8.3: Euklidovské vzdialenosti fúzie rozhodnutí referenčných povelov a

vysloveného povelu pri rôznych úrovniach aditívneho šumu, nahrávaného (a) dvomi robotmi, (b) štyrmi robotmi.

8.4 Vyhodnotenie experimentov

Ako vstupy pre každý zo scenárov boli používané rovnaké signály, a teda

prostredníctvom dosiahnutých výsledkov je možné jednotlivé scenáre porovnať. V grafe 8.1 je vidieť, ako je presnosť klasifikácie ovplyvnená rastúcou úrovňou šumu, ktorá je reprezentovaná Euklidovskou vzdialenosťou vektora kepstrálnych koeficientov vzoru a vektora kepstrálnych koeficientov testovaného prehovoru. Porovnanie jednotlivých scenárov je založené na výsledkoch zaznamenávania signálu štyrmi AR. Keďže sú Euklidovské vzdialenosti zhodné v scenároch č. 2, 2b a pri použitom algoritme aj v scenári č. 3, do grafu boli vynesené výsledky scenáru č. 1, 2 a modifikovaného scenáru č. 3.

Page 73: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 65 -

Graf 8.2: Porovnanie scenárov pri použití rôznej úrovne aditívneho šumu.

Z grafu je zrejmé, že pri scenári č. 1 bola dosiahnutá najnižšia Euklidovská vzdialenosť. S rastúcou úrovňou šumu sa rozdiel v týchto vzdialenostiach prejavoval výraznejšie. Porovnanie jednotlivých scenárov je možné vykonať aj z hľadiska zaťaženia komunikačného podsystému. V grafe 8.3 je uvedené zaťaženie pri použití piatich vzorových povelov pri posielaní potrebných dát do RR jedným aktívnym robotom. Úrovne šumu v tomto prípade nemá vplyv na zaťaženie komunikačného podsystému.

Graf 8.3:Zaťaženie komunikačného podsystému.

Page 74: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 66 -

Z uvedených výsledkov vyplýva, že scenár č. 1 síce dosahuje najlepšie výsledky z hľadiska rozpoznania, avšak najviac zaťažuje komunikačný podsystém. Z grafov 8.1 a 8.2 tiež vyplýva, že pri výbere vhodného scenára je potrebné uvažovať o spoľahlivosti riešenia, úrovni distribuovaného spracovania dát, nárokoch na pamäťový podsystém robotov, ale aj o nárokoch na komunikačný podsystém. Viac informácií ohľadom opísaného systému je možné nájsť v [33].

Page 75: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 67 -

9 Optimalizácia procesu rozpoznávania reči

Táto práca si dáva za cieľ popísať súčasný stav problematiky rozpoznávania reči z pohľadu úspešnosti rozpoznávania, ako aj výpočtovej náročnosti a následne preskúmať možnosti jeho optimalizácie. V tejto kapitole sa budeme venovať jednotlivým častiam procesu rozpoznávania reči a možnosťami využitia alternatívnych, či dokonca nových spôsobov ich realizácie s cieľom zefektívnenia celého procesu rozpoznávania reči.

9.1 Formálny opis procesu rozpoznávania reči

Proces rozpoznávania reči môžeme bez ohľadu na použitú metódu rozdeliť na dve

základné fázy, ktorými sú fáza trénovania a fáza rozpoznávania. Fáza rozpoznávania tiež slúži aj ako testovacia fáza pre verifikáciu trénovaného systému. V tejto časti si stručne popíšeme jednotlivé kroky oboch procesov, ktoré sa budeme snažiť v ďalšej časti tejto práce optimalizovať.

9.1.1 Proces trénovania

Úlohou procesu trénovania zobrazenom na obrázku 9.1, je extrakcia informačného obsahu reči na základe trénovacej množiny a následne vytvorenie modelu opisujúceho pozorovaný dej. Celý proces pozostáva z extrakcie príznakov (LPC opísané v 2.3, MFCC opísané v 2.5 a pod.), trénovania a použitia vektorového kvantizátora a trénovania zvoleného klasifikátora. Podľa použitej metódy extrakcie príznakov je v niektorých prípadoch potrebné vykonať transformáciu signálu z časovej do frekvenčnej oblasti použitím Fourierovej transformácie.

Obrázok 9.1.: Proces trénovania systému rozpoznávania reči.

Frekvenčná analýza

Trénovanie vektorového kvantizátora

Trénovanie klasifikátora

s(n)

y(k)

Extrakcia príznakov vo frekvenčnej

oblasti

Aplikácia oknovej funkcie

Extrakcia príznakov v časovej oblasti

Vektorová kvantizácia

Page 76: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 68 -

Výsledkom procesu je skutočnosť, že natrénovaný model je schopný extrahované vektory príznakov kvantizovať do sekvencií tried, ktoré následne vstupujú do klasifikátora. Tu dôjde k rozpoznaniu rečového prehovoru na niektorý z natrénovaných povelov.

9.1.2 Proces testovania a rozpoznávania

Úlohou tohto procesu je otestovať funkčnosť modelu na testovacej množine,

pričom na základe získaných výsledkov je možné model doladiť a znova trénovať. Po dokončení fázy testovania je model pripravený na reálne použitie. Bloková schéma procesu testovania je zobrazená na obrázku 9.2.

Obrázok 9.2.: Proces testovania a použitia systému rozpoznávania reči.

V ďalších častiach tejto práce sa budeme venovať optimalizácii procesu frekvenčnej analýzy, ktorá býva veľmi často súčasťou procesu extrakcie príznakov. Ďalej sa budeme zaoberať výberom najvhodnejšej klasifikačnej metódy so zreteľom na úspešnosť, ale najmä na výpočtovú náročnosť rozpoznávania. Okrem toho sa pokúsime optimalizovať množstvo príznakov vstupujúcich do nasledovných častí procesu a čo najviac tak zefektívniť výsledný proces rozpoznávania reči.

9.2 Optimalizovaná frekvenčná analýza

Najnáročnejšou časťou procesu rozpoznávania reči z pohľadu výpočtovej

náročnosti je jednoznačne frekvenčná analýza. V súčasnosti najpoužívanejšou a výpočtovo veľmi efektívnou metódou frekvenčnej analýzy je rýchla Fourierova transformácia, ktorej výpočtová zložitosť je O(N log N). V tejto kapitole sa budeme zaoberať metódami, ktoré potenciálne za určitých podmienok prekonávajú výpočtové nároky rýchlej Fourierovej transformácie, ktorá sa v súčasnosti považuje za štandardný prístup pri transformácii signálu z časovej do frekvenčnej oblasti.

Frekvenčná analýza

Vektorová kvantizácia

Klasifikácia

s(n)

y(k)

Aplikácia oknovej funkcie

Extrakcia príznakov v časovej oblasti

Extrakcia príznakov vo frekvenčnej

oblasti

Page 77: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 69 -

9.2.1 Riedka Fourierova transformácia

Predpokladajme, že máme signál dĺžky N, ktorý je riedky vo frekvenčnej

oblasti. Riedky v tomto prípade znamená, že frekvenčné spektrum tohto signálu vypočítané napr. pomocou DFT (diskrétnej Fourierovej transformácie) opísanej v 2.1.1 by obsahovalo iba malé množstvo k ≪N nenulových koeficientov, pričom ostatné koeficienty N - k je možné zanedbať. Jednou z možností získania takýchto výstupov je použitie rýchlej Fourierovej transformácie na celý signál a následný výber k nenulových koeficientov.

Ďalšou možnosťou je použitie algoritmu riedkej Fourierovej transformácie (sFFT z angl. Sparse Fast Fourier Transformation) prezentovaný (MIT 2012), ktorý predstavuje techniku výpočtu k nenulových koeficientov s nižšou výpočtovou náročnosťou ako metódy založené na princípe FFT. Kým FFT má výpočtovú zložitosť O(N log N), algoritmus sFFT má potenciálne nižšiu zložitosť O(k log N) pre vstupné

signály s riedkym spektrom, respektíve O(k log N log) pre všeobecnejšie prípady,

kedy je spektrum „približne“ riedke, teda sa v ňom nachádza viac ako k nenulových koeficientov (napr. množstvo tónov skrytých v zašumenom signáli). Princíp algoritmu je možné rozdeliť do dvoch základných krokov. Prvým krokom je postupné prehľadávanie frekvenčného spektra a určenie počtu a pozícií významných frekvencií vo frekvenčnom spektre a následne v druhom kroku odhad ich energie. Pre určenie pozície významných frekvencií sa frekvenčné spektrum postupne delí do stále menšieho počtu pásiem, pričom ďalej prehľadávame iba tie pásma, v ktorých je koncentrovaná energia signálu. Výsledkom je banka filtrov, ktorá v každom nájdenom pásme lokalizuje práve jednu významnú frekvenciu. Celý postup si demonštrujeme na nasledovnom príklade.

Obrázok 9.3: Charakteristika kombinovaného Gaussovho a box-car filtra časovej oblasti zobrazená vľavo a banka takto navrhnutých filtrov pokrývajúca jednotlivé

pásma frekvenčného spektra zobrazená vpravo.[zdroj: [34]]

Page 78: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 70 -

Nech G je Gaussov filter, pre ktorý platí Ô = ÕÖlog , kde B je počet pásiem, H je

box-car filter s šírkou pásma n / B. Kombináciou Gaussovho a box-car filtra získame

filter J× = Ø× ∗ , ktorého charakteristika je zobrazená na obrázku 9.3 Pre pokrytie celého frekvenčného pásma potom vytvoríme banku takto navrhnutých filtrov tak, ako to ilustruje obrázok 9.3 vpravo. Aplikáciou filtra na signál x dôjde k prepusteniu významných frekvencií v určitých pásmach spektra, a naopak k utlmeniu ostatných - menej významných frekvencií tak, ako je to zobrazené na obrázku 9.3 vpravo.

Obrázok 9.4: Určenie výskytu významných frekvencií v jednotlivých pásmach

frekvenčného spektra.[zdroj: [34]]

Výsledkom celého procesu je zúženie sledovaného frekvenčného spektra iba na jednotlivé úseky s výskytom významných frekvencií tak, ako je to zobrazené na obrázku 9.4. Takto získané frekvenčné spektrum obsahuje malý počet významných frekvenčných zložiek a prakticky všetky ostatné menej významné frekvenčné zložky boli utlmené. Z hľadiska spracovania rečových signálov nedošlo k výraznej strate informačnej hodnoty signálu, čím algoritmus spĺňa kritérium pre možnosť rekonštrukcie pôvodného signálu bez straty informačného obsahu. [34]

9.2.2 Praktické využitie riedkej Fourierovej transformácie

Prvým cieľom tejto práce bolo preskúmať alternatívne možnosti vykonania frekvenčnej analýzy so zreteľom na zníženie výpočtového výkonu. Ako výhodná cesta sa javila práve možnosť použitia sFFT opísanej v 7.1. Ako už bolo spomenuté, algoritmus sFFT prekonáva v súčasnosti používanú rýchlu Fourierovu transformáciu iba za určitých podmienok.

Page 79: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 71 -

Obrázok 9.5: Porovnanie výpočtových časov frekvenčnej analýzy jednotlivých algoritmov v závislosti na počte vzoriek vstupného signálu pri hodnote sparsity

k = 50[zdroj: [34]].

Na obrázku 9.5 vidíme porovnanie výpočtových časov jednotlivých algoritmov frekvenčnej analýzy pre rôzne dĺžky vstupného signálu n, pri hodnote sparsity k = 50. Vo frekvenčnom spektre teda sFFT vyhodnotila 50 najvýznamnejších frekvencií. Pre porovnanie boli zvolené algoritmy FFTW [35] a AAFFT [36], ktoré predstavujú optimalizované implementácie rýchlej Fourierovej transformácie. Ako môžeme vidieť, algoritmus sFFT (čierna prerušovaná čiara) prekonáva časové nároky FFTW (plná červená čiara) až od počtu vzoriek vstupného signálu n > 2b. Pre porovnanie, v problematike rozpoznávania reči sa bežne používa frekvenčná analýza na úseky reči 20-40 ms, čo pri vzorkovacej frekvencií 8 kHz predstavuje 160-320 vzoriek. Pre použitie FFT je potrebné, aby bol rozmer vstupného signálu mocnina čísla dva, preto najbližšie takéto číslo z uvedeného intervalu je 256, teda 2. Pre rozpoznávanie sa používajú aj vyššie hodnoty vzorkovacej frekvencie až do 44.1 kHz, avšak ani v tomto prípade nepresahuje dĺžka vstupných dát 2048 vzoriek, teda 2. Predchádzajúce merania boli vykonané pri hodnote sparsity k = 50, t.j. bolo vyhodnotených 50 najvýznamnejších frekvencií frekvenčného spektra. V ďalšom experimente sme sa zamerali na rôzne hodnoty sparsity, pričom nás zaujímalo ako počet hľadaných frekvencií ovplyvní výpočtové nároky sFFT. Na obrázku 9.6 vidíme porovnanie závislosti medzi počtom hľadaných významných frekvencií a časom potrebným pre výpočet frekvenčnej analýzy pomocou jednotlivých algoritmov.

Page 80: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 72 -

Obrázok 9.6: Porovnanie výpočtových časov frekvenčnej analýzy jednotlivých algoritmov v závislosti na sparsite signálu pri hodnote počtu vzoriek vstupného

signálu n = 2. [zdroj: [34]]

Ako vidíme, z uvedeného merania vyplýva, že čím je v analyzovanom signáli nižší počet predpokladaných významných frekvenčných koeficientov k, tým je výpočet rýchlejší. Pri dostatočne dlhom vstupnom signále a pre prípady riedkeho rozloženia frekvencií vo frekvenčnom spektre je teda sFFT výrazne efektívnejšou metódou frekvenčnej analýzy oproti optimalizovanej implementácii FFT. Uvedené merania boli zamerané na určenie vplyvu hodnoty sparsity k a počtu vzoriek vstupného signálu n na výpočtový čas sFFT. V oboch prípadoch z nameraných údajov vyplýva, že takýto postup je možné efektívne použiť iba na veľké množstvo vstupných dát, pričom podľa očakávaní, efektivita stúpa so znižovaním hodnoty sparsity k. Využitie metódy v reálnom čase na malé množstvá dát teda nie je vhodné, pretože na tento typ úlohy sa stále lepšie hodí FFT. Pre potvrdenie tohto tvrdenia sme sa rozhodli vykonať ešte posledné meranie zamerané na veľmi nízku hodnotu sparsity k pri množstve dát n, ktoré sa v problematike reči najčastejšie používa.

Page 81: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 73 -

Obrázok 9.7.: Závislosť výpočtového času sFFT dané jednak počtom vzoriek

vstupného signálu n a rôznych hodnôt sparsity k.

Na obrázku 9.7 môžeme vidieť výsledky merania výpočtového času sFFT v závislosti jednak na počte vzoriek vstupného signálu n, ako aj hodnôt sparsity k = 4, 8 a 15. Výsledné časy boli opäť porovnané s efektívnou implementáciou rýchlej Fourierovej transformácie FFTW [35].

Výsledky merania potvrdzujú nižšiu efektivitu algoritmu pri aplikácii na malé množstvo vstupných dát uvedená metóda pri spracovaní dát v reálnom čase neprekračuje efektivitu FFT. Avšak na základe uvedených experimentov sa javí metóda veľmi vhodná pri spracovávaní veľkého množstva dát, a preto je vhodná napríklad v situáciách, kedy rozpoznávame veľké množstvo prehovorov uložených v pamäti alebo na pevnom disku.

9.2.3 Frekvenčná analýza s použitím FPGA

Väčšina metód frekvenčnej analýzy využíva pre výpočet priamo procesor, či

samotný mikrokontrolér. Keďže zariadenie je tým pádom preťažené, dôjde k výraznému zníženiu jeho výpočtových možností, ktoré by inak mohli byť využité na ostatné časti procesu rozpoznávania. Výsledkom je tzv. latencia systému, čo je časové oneskorenie spôsobené príliš veľkým množstvom výpočtov, ktoré už procesor nie je schopný vykonávať v reálnom čase.

Jednou z možností, ako predísť zahlteniu procesora veľkým množstvom jednoduchých výpočtov je paralelizovanie úlohy, čo však nie je na väčšine mikrokontrolérov možné, keďže ide o jednoprocesorové systémy. Alternatívou je tiež dedikovanie úlohy na

Page 82: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 74 -

externú výpočtovú jednotku, ktorá by dodala výsledky výpočtov späť procesoru. Takúto výpočtovú jednotku môžu predstavovať napríklad programovateľné hradlové polia (z angl. Field-programmable gate array, skrátene FPGA). Jedná sa o špeciálne číslicové integrované obvody obsahujúce rôzne zložité programovateľné bloky prepojené konfigurovateľnou maticou spojov. Typická štruktúra FPGA je zobrazená na nasledujúcom obrázku 9.8. Logické bloky (LB) sú prepojené pomocou konfigurovateľnej matice. Logické bloky predstavujú Input / Output bloky (IOB), pomocou ktorých sú do LB dodávané vstupné dáta, a naopak výsledné dáta sú vyvedené na výstup.

Obrázok 9.8.: Typická štruktúra FPGA. IOB predstavuje Input/Output blok pre vkladanie a získavanie vstupov a výstupov a Logický blok LB slúži na vykonanie

samotných výpočtov.

V rámci práce sme sa pokúsili navrhnúť spôsob implementácie frekvenčnej analýzy práve na FPGA. Celý proces frekvenčnej analýzy je zložený z dvoch krokov. Prvým je výpočet diskrétnej Fourierovej analýzy opísanej v 2.1.1, vypočítanej na začiatočnom mikrosegmente dĺžky 128 vzoriek, čo pri vzorkovacej frekvencii 8 kHz predstavuje 16 ms. V našom prípade sme použili 16-bitové vzorkovanie.

Bloková schéma implementácie DFT na FPGA je zobrazená na obrázku 9.9. Ako môžeme vidieť na obrázku, vzorka x(n) zo vstupu je vynásobená príslušnými hodnotami kosínus a sínus z Look up tabuľky (LUT), čím dostaneme reálnu (kosínus) a imaginárnu (sínus) zložku komplexnej exponenciály. Výsledné zložky sú uložené v dvoch FIFO registroch, pomocou ktorých postupne dochádza k sumácii aktuálnych a predchádzajúcich zložiek.

Page 83: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 75 -

Obrázok 9.9.: Diskrétna Fourierova transformácia na FPGA.

Po vykonaní prvotnej analýzy nasleduje druhý krok, ktorý zahŕňa výpočet kĺzavej Fourierovej transformácie opísanej v 2.1.3 na zvyšných mikrosegmentoch signálu rovnakej dĺžke ako v predchádzajúcom kroku, a to 128 vzoriek.

V tomto kroku je analýza vykonávaná pri príchode každej novej vzorky na vstup. Bloková schéma analýzy je zobrazená na obrázku 9.10. Na začiatku celého procesu máme FIFO register naplnený reálnymi a imaginárnymi zložkami frekvenčného spektra vypočítanými v predchádzajúcom kroku. Od každej novej vzorky je odčítaná posledná zložka vo FIFO registri. Následne je takto upravená vzorka vynásobená príslušnými hodnotami kosínus a sínus z Look up tabuľky (LUT), čím opäť dostaneme novú reálnu (kosínus) a imaginárnu (sínus) zložku komplexnej exponenciály. Takto získané reálne a imaginárne zložky sú postupne ukladané do výsledných FIFO registrov. Sumáciou ich prvkov dostávame reálnu a imaginárnu zložku príslušného frekvenčného komponentu po zahrnutí vplyvu aktuálnej vzorky.

Pre dokonalú rekonštrukciu signálu je tak v podobe dvojrozmerného vektora reálnej a imaginárnej zložky zachovaná amplitúda aj fáza každého frekvenčného komponentu. Amplitúdu frekvenčnej zložky je potom možné vypočítať pomocou vzťahu ako: r = Ö0*2 + 0-.2 (9.1)

Page 84: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 76 -

x(n-N)

ReX(k)ImX(k)

FIFO

128x16

12

x(n)

12

12

kA(6:0) A(6:0)

COUNTER

ImX(k)nReX(k)n

-

Re

Im

inc k

-

a

b

c d

NÁSOBIČKA KOMPL. ČÍSIEL

LUT

128 x 16

kN

2πcos k

N

2πsin

LUT

128 x 16

LUT

128 x 16

a c b d a cd b

LUT

128 x 16

ImX(k)(n-N)

ReX(k)(n-N)

Obrázok 9.10.: Kĺzavá diskrétna Fourierova transformácia na FPGA.

Frekvenčná analýza s použitím FPGA môže byť použitá v rôznych aplikáciách najmä v kombinácii so zariadeniami s mikrokontrolérom. Priebežné výsledky frekvenčnej analýzy môžu byť použité pri ďalšej analýze v procese rozpoznávania reči. Výpočtová náročnosť celého procesu je daná zložitosťou jeho jednotlivých krokov. Zložitosť implementovanej frekvenčnej analýzy zahŕňa DFT, ktorej výpočtová zložitosť je O(N2), a kĺzavú DFT, ktorej výpočtová zložitosť je O(N/2 log2 N). Redukciou

výpočtovej zložitosti na O(N log N) použitím FPGA sme dosiahli optimalizáciu výpočtového výkonu a znížili tak celkovú výpočtovú zložitosť rozpoznávacieho procesu.

9.3 Nerovnomerná segmentácia rečového signálu

Výstupom frekvenčnej analýzy, ktorej sme sa venovali v predchádzajúcej časti,

je množina vektorov hodnôt príslušných frekvenčných komponent frekvenčného spektra. Cieľom segmentácie je práve na tejto spektrálnej úrovni zredukovať množstvo vektorov odstránením redundantných vektorov, čím dôjde k zníženiu výpočtových nárokov všetkých nasledujúcich procesov v celom procese rozpoznávania reči.

Page 85: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 77 -

Segmentácia sa vykonáva so zreteľom na nasledovné kritériá. Prvým kritériom je prahová hodnota energie, ktorá slúži na detekciu prehovoru a ticha. V prípade, že Euklidovská vzdialenosť vektora n a nulového vektora, ktorú vypočítame podľa vzťahu 9.2 nepresiahne úroveň ticha, dochádza ku kumulácii vektorov do tzv. klastra. V opačnom prípade posudzujeme druhé kritérium, pri ktorom určíme kontrast vo frekvenčnom spektre na základe Euklidovskej vzdialenosti dvoch za sebou idúcich vektorov vzdialeností opäť podľa vzťahu.

T =Ö − ¤

9.2 Ak je hodnota kontrastu nižšia ako prahová hodnota, vektory sú naďalej kumulované do klastra. Avšak ak sú splnené oba kritéria a obe hodnoty presiahnu prah, vezmeme všetky vektory uložené v klastri a vypočítame z nich priemerný vektor spriemerovaním jednotlivých prvkov pre všetky vektory. Následne rozšírime tento priemerný vektor o nový prvok N+1 obsahujúci informáciu o počte vektorov v aktuálnom klastri. Nakoniec klaster vyprázdnime a pokračujeme v segmentácii. Určitý problém predstavuje nastavenie prahových hodnôt energie a kontrastu tak, aby bol zaručený optimálny pomer medzi zachovaním informačného obsahu rečového prehovoru a množstvom odstránených redundantných vektorov. Tento problém sme riešili tak, že sme segmentáciu vykonávali súbežne na dvoch rečových prehovoroch obsahujúcich rovnaký povel vyslovený rovnakým rečníkom. Keďže prehovory sú veľmi podobné, cieľom bolo dosiahnuť čo najpodobnejšie výsledky segmentácie pri použití rovnakých parametrov, avšak pri zachovaní hraníc jednotlivých foném podľa anotácie pre jednotlivé prehovory.

Obrázok 9.11: Nerovnomerna segmentácia slova „eseáta“.

Takýmto spôsobom sme analyzovali 500 anotovaných dvojíc rôznych povelov, čím sme získali dostatočne veľkú množinu parametrov. Pre určenie výsledných

Page 86: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 78 -

parametrov sme vypočítali medián z tejto množiny. Príklad výslednej segmentácie s použitím výsledných parametrov je zobrazený na obrázku 9.11. S použitím získaných parametrov segmentácie sme vykonali opätovnú segmentáciu množiny 500 anotovaných dvojíc rôznych povelov za účelom určenia priemernej miery redukcie redundantných vektorov v jednotlivých prehovoroch. Výsledná miera redukcie sa pohybovala v intervale ⟨92%; 79%⟩, pričom medián tejto miery sa nachádzal na hodnote 86%. Výpočtová zložitosť procesu rozpoznávania reči zahŕňa jednotlivé kroky opísané v blokovej schéme na obrázku 9.2. Keďže segmentácia je aplikovaná až po vykonaní frekvenčnej analýzy, budeme optimalizovať iba výpočtové zložitosti extrakcie príznakov, vektorovej kvantifikácie a klasifikácie, ktoré môžeme vyjadriť ako ¦ = §1 + §1 + §1 9.3

, kde N je počet vstupných vektorov spektrálnej analýzy. Pomocou opísanej nerovnomernej segmentácie je možné znížiť počet týchto vektorov z N vstupných vektorov na M redukovaných vektorov, pre ktoré platí M<(N/2). Keďže zložitosť segmentácie je O(N), môžeme celkovú zložitosť krokov vrátane segmentácie vyjadriť s hornou hranicou zložitosti ako Æ = §1 + §1/2 + §1/2 + §1/2 9.4 Výsledné zrýchlenie procesu z môžeme následne vyjadriť ako

= 4É4Û = §f"f"§Üf%ÝÞ"%Ý%"" ß 9.5

Po úprave za predpokladu, že k je konštanta a počet vstupných vektorov N sa blíži k ∞ dostaneme nasledovný limitný zápis á = lim→ã E2 − Ñbf"fF = 2 9.6

Z tohto zápisu vyplýva, že zrýchlenie sa s rastúcim počtom vstupných vektorov blíži k dvojnásobku oproti procesu bez použitia nerovnomernej segmentácie. Vo väčšine prípadov však platí M<(N/4), z čoho vyplýva zrýchlenie blížiace sa až ku štvornásobku oproti procesu bez použitia nerovnomernej segmentácie.

Page 87: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 79 -

9.4 Návrh algoritmu rozpoznávania izolovaných povelov

V predchádzajúcich častiach tejto kapitoly sme sa zaoberali možnosťami

optimalizácie jednotlivých častí procesu rozpoznávania reči. V tejto časti sa pokúsime využiť vyvinuté postupy optimalizácie pri návrhu algoritmu izolovaných povelov. Algoritmus budeme navrhovať so zreteľom na implementáciu algoritmu v embedded zariadeniach.

Obrázok 9.12:Bloková schéma nami zvoleného modelu rozpoznávania reči.

Pri návrhu algoritmu môžeme vychádzať z formálneho opisu procesu rozpoznávania reči v časti 9.1. Bloková schéma navrhovaného algoritmu je zobrazená na obrázku 9.12. Prvým problémom, ktorý bolo potrebné vyriešiť, bola voľba informatívnych príznakov, čo súvisí s prípadnou potrebou frekvenčnej analýzy. Hlavnými kandidátmi v našom prípade boli lineárne prediktívne kepstrálne koeficienty (LPC opísané v 3.3) a melovo frekvenčné kepstrálne koeficienty (MFCC opísané v 3.5). Obe metódy extrakcie informatívnych príznakov sa vyznačujú rôznymi vlastnosťami. Výhodou LPC koeficientov oproti MFCC je fakt, že ich môžeme vypočítať priamo z rečového prehovoru v časovej oblasti. Pre ich výpočet teda nie je potrebné vykonať frekvenčnú analýzu. Na druhej strane, výhodou MFCC je vyššia informačná hodnota vychádzajúca z frekvenčnej analýzy a nelineárneho vnímania frekvenčného spektra v podobe melovej škály, ktorá sa viac blíži k spôsobu, akou reč vníma aj ľudské ucho. Na prvý pohľad teda máme možnosť voľby medzi nižšou výpočtovou zložitosťou LPC vyjadrenou ako O(N2) a vyššou informačnou hodnotou MFCC so zložitosťou O(N log N) + O(M), kde N je počet vzoriek signálu a M je počet frekvenčných vektorov Fourierovej transformácie. Avšak využitím optimalizovanej frekvenčnej analýzy, ktorou sme sa zaoberali v celej časti 9.2 sme schopní delegovať úlohu frekvenčnej analýzy na modul FPGA, čím docielime markantné zníženie výpočtovej zložitosti MFCC na O(M). Pre ilustráciu si môžeme predstaviť rečový prehovor dĺžky 1 sekunda. Pri vzorkovacej frekvencii 16 kHz bude počet vzoriek N rovný 16 000. Frekvenčná analýza pomocou rýchlej Fourierovej transformácie predpokladá na vstupe mikrosegmenty s veľkosťou

Gaussov model

rozptylu

Hammingova oknová funkcia

s(n) Frekvenčná

analýza Extrakcia MFCC

Klasifikačný algoritmus

Segmentácia y(k)

Page 88: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 80 -

mocniny čísla 2, v našom prípade 512 vzoriek, pričom jednotlivé mikrosegmenty sa vzájomne prekrývajú v jednej tretine. Signál teda bude obsahovať . = 9 ∙ )–¾,¾ = 3 ∙ )æ –ç,ç =è 91mikrosegmentov, (9.9)

kde N je spomínaný počet vzoriek, o je stupeň prekrytia mikrosegmentov a s je veľkosť mikrosegmentu. Každý mikrosegment potom vstupuje do Fourierovej transformácie. Výstupom transformácie je 512 frekvenčných koeficientov, pričom výsledné spektrum je symetrické, preto stačí brať do úvahy iba jeho jednu polovicu, teda 256 z nich. Ako sme ukázali v časti 9.3, výsledná miera redukcie vektorov vo frekvenčnom spektre po použití navrhovanej nerovnomernej segmentácie sa pohybovala v intervale ⟨92%; 79%⟩, pričom medián tejto miery sa nachádzal na hodnote 86%. Po aplikácii nerovnomernej segmentácie sa po redukcii dostaneme približne k hodnote 12 frekvenčných vektorov, z ktorých následne vypočítame MFCC.. Pre počet operácií MFCC ] = 12 ∙ 256, vyjadrených ako počet frekvenčných vektorov Fourierovej transformácie s rozmerom 256 a počet operácií LPC N2 teda platí vzťah ] ≪ 1, teda výpočtová zložitosť klesne pod úroveň výpočtovej zložitosti LPC. Z tohto dôvodu sme sa rozhodli v navrhovanom algoritme ako informatívne príznaky použiť práve MFCC. Ďalšou úlohou bol výber klasifikačného algoritmu. Pre účely testovania efektivity navrhovanej metódy segmentácie boli zvolené najpoužívanejšie z rôznych kategórií metód. Z kategórie metód využívajúcich vzorové reprezentácie bola vybraná metóda nelineárneho zarovnania časovej mierky (DTW) opísaná v kapitole 4. Zástupcom kategórie metód využívajúcich pravdepodobnostné modely bola zvolená metóda skrytých Markovových modelov opísaná v kapitole 5. Ako posledná testovaná metóda bola vybraná hlboká neurónová sieť opísaná v časti 6.6, reprezentujúca najnovší trend na poli rozpoznávania reči ako zástupca adaptívnych klasifikačných metód. Adaptívne klasifikačné metódy ako napr. spomínaná hlboká neurónová sieť nie sú tak priamo obmedzené rozmerom vstupných dát, ako uvedené algoritmy DTW a Markovove modely. Aj za predpokladu, že vstupné dáta sú reprezentované ako matica mel-koeficientov určitého rozmeru, neurónová sieť dokáže zohľadniť súvislosti medzi jednotlivými riadkami a stĺpcami matice. Avšak pre použitie ostatných spomínaných algoritmov je potrebné vektory mel-koeficientov aproximovať na sekvenciu konečného počtu číselných hodnôt pomocou procesu vektorovej kvantizácie opísanej v časti 3.6. Pre tento účel sme použili tzv. zmes Gaussových modelov (z angl. Gaussian mixture model) viď. bloková schému na obrázku 9.12. Pomocou tejto metódy je možné najprv v procese trénovania rozdeliť všetky pozorované vektory trénovacej množiny do určeného počtu klastrov, pričom každý klaster je reprezentovaný práve jedným centroidom. Následne v procese aproximácie

Page 89: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 81 -

neznámych vektorov dochádza k prideľovaniu číselných hodnôt jednotlivým vektorom pomocou indexu centroidu na základe klastra, do ktorého boli zaradené. Sekvencia takto získaných indexov je potom privedená na vstup klasifikátora a rozpoznaná na niektorý z natrénovaných výstupov. Ukážka jednotlivých vektorov mel-koeficientov zaradených do klastrov podľa príslušnosti k danému centroidu je zobrazená na obrázku 9.13. Príslušnosť vektorov k jednotlivým zhlukom je vyjadrená farebne.

Obrázok 9.13: Jednotlivé vektory mel-koeficientov zaradené do klastrov podľa príslušnosti k danému centroidu. Jednotlivé klastre sú vyjadrené rôznymi farbami.

Veľmi dôležitou úlohou v procese návrhu vhodného rozpoznávacieho algoritmu je posúdenie vplyvu navrhovanej nerovnomernej segmentácie. V časti 9.3 sme preukázali pozitívny vplyv navrhovanej metódy na celkovú výpočtovú zložitosť rozpoznávacieho algoritmu. Okrem tejto vlastnosti je však potrebné experimentálne overiť aj vplyv metódy na úspešnosť rozpoznávania, ako aj jej vplyv na robustnosť systému v prípade prítomnosti nepriaznivých vplyvov prostredia. Návrh vhodného rozpoznávacieho algoritmu je teda podmienený výberom najvhodnejšej klasifikačnej metódy, ako aj vplyvom navrhovanej segmentačnej metódy na úspešnosť a robustnosť rozpoznávania. Výsledný algoritmus bude preto navrhnutý až na základe výsledkov experimentálneho porovnania jednotlivých variantov algoritmu v ďalšej časti tejto kapitoly.

Page 90: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 82 -

9.5 Experimentálne overenie

V predchádzajúcej časti venovanej návrhu algoritmu rozpoznávania sme

definovali niekoľko najpoužívanejších metód klasifikácie. Úlohou tejto časti je na základe výsledkov experimentov určiť vlastnosti algoritmu rozpoznávania povelov pri použití jednotlivých metód klasifikácie. Okrem toho je potrebné určiť vplyv navrhovanej metódy segmentácie pri použití toho ktorého klasifikačného algoritmu. Invariantnosť algoritmu voči určitej úrovni šumu výrazne ovplyvňuje jeho celkovú robustnosť. Preto sme sa pre účely vyhodnotenia jednotlivých variantov (scenárov) algoritmu rozpoznávania rozhodli otestovať ich úspešnosť rozpoznávania pri rôznych úrovniach zašumenia vstupného signálu. Pre tento účel sme vybrali dva druhy šumu. Prvým z nich je najbežnejší biely šum označený ako SNRw (z angl. white, teda biely), ktorý dostal názov podľa analógie s bielym svetlom, keďže obsahuje rovnomerne zastúpené všetky frekvencie. Jedná sa o náhodný šum, ktorý má rovnomernú spektrálnu hustotu a rovnaký výkon v ktoromkoľvek pásme rovnakej šírky. Frekvenčnú charakteristiku použitého bieleho šumu môžeme vidieť na 9.14, pričom referenčná hodnota k úrovni šumu bola stanovená na 1 mW. [37]

Obrázok 9.14: Spektrum bieleho šumu.

Nekonečný frekvenčný rozsah signálu bieleho šumu je iba teoretický. Ak by bol jeho výkon nenulový vo všetkých frekvenciách, bol by celkový výkon signálu nekonečný. V praxi je signál biely pokiaľ má ploché spektrum v definovanom rozsahu frekvencií. Biely šum je veľmi často používaný pre testovanie v najrôznejších aplikáciách spojených so spracovaním reči. Okrem toho tiež býva základom niektorých generátorov náhodných čísel.

Page 91: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 83 -

V druhom prípade bol zvolený ružový šum označený ako SNRp (z angl. pink, ako ružový), tiež známy ako „1/f šum“. Jeho výkonová spektrálna hustota je priamo úmerná prevrátenej hodnote frekvencie (viď. obrázok 9.15). Energia je rovnaká v pásmach, ktoré sú rovnako široké v logaritmickej mierke (napr. vo všetkých oktávach), čo odpovedá logaritmickému charakteru ľudského vnímania. Referenčná hodnota k úrovni šumu bola opäť bola stanovená na hodnotu 1 mW.

Obrázok 9.15: Spektrum ružového šumu.

Ružový šum sa preto často používa pri testovaní zvukových systémov, aby sa zistilo, či majú v celom rozsahu požadovaný prenos. Hodnota intenzity oboch typov šumu bola rozdelená do ôsmich úrovní, pričom jednotlivé úrovne sa navzájom prekrývali v matici 8x8. Jednotlivé prvky takto vzniknutej matice boli zmiešané s práve jednou neznámou iteráciou všetkých natrénovaných povelov, čím sme získali maticu rôzne zašumených povelov. Každá z variantov algoritmu rozpoznávania bola najprv aplikovaná na nezašumený signál práve jednej iterácie pre každý z natrénovaných povelov. Následne bola aplikovaná na maticu zašumených povelov. Výsledkom experimentu je trojrozmerný graf, vyjadrujúci percentuálnu úspešnosť rozpoznania algoritmu pri rôznej úrovni vplyvu prostredia na rozpoznávaný signál. Na základe týchto údajov je následne možné vyhodnotiť vlastnosti jednotlivých variantov rozpoznávacieho algoritmu a určiť najvhodnejší variant pre cieľové embedded zariadenie.

9.5.1 Scenár 1: Nelineárne zarovnanie časovej mierky

Prvou alternatívou bola metóda nelineárneho zarovnania časovej mierky opísaná v kapitole 3. Jedná sa o najstaršiu z navrhovaných klasifikačných metód, založenú na analýze časových radov nezávisle na ich dĺžke alebo rýchlosti. V porovnaní s ostatnými navrhovanými metódami má pomerne nízku výpočtovú zložitosť O(N2),

Page 92: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 84 -

ktorá je veľmi závislá na dĺžke a počte porovnávaných vzorov N. Metóda je vhodná na porovnávanie obmedzeného množstva povelov a s použitím metódy Cross-words Reference Template [38] dosahuje vysokú úspešnosť rozpoznávania.

Obrázok 9.16: Úspešnosť rozpoznávania algoritmu s použitím metódy DTW,

s použitím rovnomernej segmentácie.

Na obrázku 9.16 môžeme vidieť úspešnosť rozpoznávacieho algoritmu pri použití klasifikačnej metódy DTW bez použitia navrhovanej nerovnomernej segmentácie. V porovnaní s obrázkom 9.17, na ktorom je znázornená úspešnosť rovnakej metódy s použitím nerovnomernej segmentácie, vidíme niekoľko odlišností.

Obrázok 9.17: Úspešnosť rozpoznávania algoritmu s použitím metódy DTW, s použitím navrhovanej metódy nerovnomernej segmentácie.

Page 93: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 85 -

Najvýraznejšou vlastnosťou je strmosť oboch grafov. Vidíme, že v oboch prípadoch je graf pomerne strmý smerom k bodu s najvyššou intenzitou oboch typov šumu. Tento jav nám hovorí o pomerne vysokom vplyve šumu na úspešnosť rozpoznávania, čo vyplýva z použitia mel-frekvenčných kepstrálnych koeficientov. V prípade použitej segmentácie úspešnosť klesá prudšie ako v prípade varianty bez použitia segmentácie, avšak ak sa pozrieme na porovnanie úspešnosti rozpoznávania oboch variant uvedených v tabuľke 9.1 zistíme, že nami navrhovaná metóda segmentácie okrem pomerne značného zníženia výpočtovej náročnosti sa zvýšila úspešnosť rozpoznávania algoritmu pri nezašumenom vstupnom signáli o 3.3%.

Z uvedeného experimentu teda vyplýva, že použitie navrhovanej metódy nerovnomernej segmentácie spôsobilo na jednej strane zvýšenie úspešnosti rozpoznávania pri nezašumenom signáli, avšak na strane druhej zníženie robustnosti algoritmu vo vzťahu k zvýšenej hodnote zašumenia.

9.5.2 Scenár 2: Skryté Markovove modely

Ďalšou možnosťou bolo použitie štatistického prístupu k problematike rozpoznávania povelov v podobe skrytých Markovových modelov opísaných v 4. kapitole. V tomto prípade výpočtová zložitosť algoritmu závisí tiež na počte stavov jednotlivých Markovových modelov, pričom každý model má výpočtovú zložitosť O (N2T), kde N je počet stavov modelu a T je dĺžka vstupnej sekvencie. Metóda sa hodí pre rozpoznávanie veľkej množiny povelov, pričom aj v tomto prípade platí závislosť výpočtovej zložitosti najmä na dĺžke vstupnej sekvencie.

Obrázok 9.18: Úspešnosť rozpoznávania algoritmu s použitím metódy skrytých

Markovových modelov, s použitím rovnomernej segmentácie.

Page 94: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 86 -

Na obrázku 9.18 je zobrazená úspešnosť rozpoznávacieho algoritmu pri použití klasifikačnej metódy skrytých Markovových modelov bez použitia navrhovanej nerovnomernej segmentácie. Ako môžeme vidieť v porovnaní s obrázkom 9.19, na ktorom je znázornená úspešnosť rovnakej metódy s použitím nerovnomernej segmentácie, v tomto prípade je situácia oproti predchádzajúcemu variantu odlišná. Použitie nerovnomernej segmentácie okrem nepatrného zvýšenia úspešnosti rozpoznávania pri nezašumenom signále o zhruba 1.3% spôsobilo tiež mierne zvýšenie robustnosti rozpoznávacieho algoritmu v závislosti na zašumení vstupného signálu.

Obrázok 9.19: Úspešnosť rozpoznávania algoritmu s použitím metódy skrytých

Markovových modelov, s použitím navrhovanej metódy nerovnomernej segmentácie.

Pri tomto variante teda môžeme konštatovať, že použitie nerovnomernej segmentácie v tomto prípade pri razantnom znížení výpočtovej zložitosti neznížilo robustnosť, ani percentuálnu úspešnosť rozpoznávania navrhovaného algoritmu.

9.5.3 Scenár 3: Hlboká neurónová sieť

Poslednou navrhovanou metódou bolo použitie relatívne nového prístupu na poli rozpoznávania reči v podobe hlbokých neurónových sietí opísaných v časti 5.6. Táto metóda rozpoznávania reči sa v poslednej dobe stala známou vďaka zvýšeniu úspešnosti oproti štatistickému prístupu rozpoznávania pri použití skrytých Markovových modelov, čo prispieva k atraktívnosti tejto metódy. Hlavnou odlišnosťou hlbokej neurónovej siete oproti bežne používanej doprednej sieti je najmä väčší počet skrytých vrstiev a aj razantne väčší počet použitých neurónov. Jediným ďalším rozdielom je už len spôsob trénovania siete, preto je výpočtová zložitosť tejto klasifikačnej metódy totožná so zložitosťou bežnej neurónovej siete, vyjadrená ako

Page 95: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 87 -

§)1.,w,, (9.10) kde wij je váha i-teho neurónu v j-tej vrstve. Avšak ako je uvedené v 9.4, neurónová sieť na rozdiel od ďalších dvoch posudzovaných metód klasifikácie dokáže priamo klasifikovať informatívne príznaky MFCC, a teda nevyžaduje použitie vektorovej kvantizácie v podobe Gaussovho modelu rozptylu, čo do určitej miery znižuje jej vyššie výpočtové nároky. Na nasledujúcich obrázkoch 9.20 a 9.21 je zobrazená úspešnosť rozpoznávania algoritmu bez a s použitím navrhovanej metódy nerovnomernej segmentácie. Hneď na prvý pohľad môžeme vidieť niekoľko zaujímavých vlastností oproti prvým dvom variantom. Najvýraznejšou je náchylnosť na šum smerom k bodu s najvyššou intenzitou oboch typov šumu, ktorá je podobne ako pri 1. variante vyššia v prípade použitia navrhovanej metódy nerovnomernej segmentácie.

Obrázok 9.20: Úspešnosť rozpoznávania algoritmu s použitím metódy hlbokej

neurónovej siete, s použitím rovnomernej segmentácie.

Variant algoritmu bez použitia metódy nerovnomernej segmentácie naopak vykazuje výbornú odolnosť voči obom typom zašumenia vstupného signálu, teda aj vysokú robustnosť.

Page 96: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 88 -

Obrázok 9.21: Úspešnosť rozpoznávania algoritmu s použitím metódy hlbokej neurónovej siete, s použitím navrhovanej metódy nerovnomernej segmentácie.

Ďalšou zaujímavou vlastnosťou použitia hlbokej neurónovej siete ako klasifikačnej metódy je najvyššia percentuálna úspešnosť spomedzi všetkých navrhovaných klasifikačných metód. Cenou za výborné výsledky je však jej vyššia výpočtová zložitosť. Použitím navrhovanej metódy nerovnomernej segmentácie je síce možné túto zložitosť znížiť na porovnateľnú úroveň s ostatnými klasifikačnými metódami, avšak opäť za určitú cenu, ktorou je v tomto prípade citlivosť na zašumenie, t.j. zníženie robustnosti aj úspešnosti rozpoznania. Určitým riešením by mohlo byť nastavenie parametrov navrhovanej nerovnomernej segmentácie tak, aby sa znížila efektívnosť segmentácie. Bolo by tak možné nájsť vhodný pomer medzi ušetreným výpočtovým výkonom a vysokou úspešnosťou rozpoznávania.

9.6 Vyhodnotenie výsledkov experimentov

Z uvedených experimentov vykonaných pre rôzne úrovne aditívneho šumu

vyplýva, že rozpoznávací algoritmus je relatívne invariantný voči ružovému šumu. Naopak biely šum výrazne ovplyvňuje výsledky rozpoznávania. Experimenty tiež ukázali vplyv navrhovanej metódy nerovnomernej segmentácie na robustnosť algoritmu voči šumu a jeho úspešnosť pri rozpoznávaní natrénovaných povelov. Výsledky úspešnosti pri rozpoznávaní neznámych iterácií natrénovaných povelov rozpoznávaných pomocou navrhovaných metód klasifikácie bez a s použitím nerovnomernej segmentácie sú zobrazené v tabuľke Tabuľka 9.1.

Page 97: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 89 -

Tabuľka 9.1:Úspešnosť rozpoznávania navrhovaných metód s použitím rovnomernej a

navrhovanej nerovnomernej segmentácie.

Z uvedených výsledkov vyplýva mierne zvýšenie úspešnosti rozpoznávania vplyvom nami navrhovanej nerovnomernej segmentácie. Je teda možné konštatovať, že navrhovaná metóda v prípade použitia metód nelineárneho zarovnania časovej mierky a skrytých Markovových modelov úspešnosť neznižuje. To však neplatí pri použití klasifikácie pomocou hlbokej neurónovej siete, kde bol výsledok rozpoznania aj výsledná robustnosť celkového rozpoznania voči zašumeniu navrhovanou metódou nerovnomernej segmentácie negatívne ovplyvnený. Výsledky z tabuľky Tabuľka 9.1. sú pre lepšiu názornosť zobrazené aj v grafe 9.1.

Graf 9.1: Úspešnosť algoritmu rozpoznávania použitím rôznych metód klasifikácie,

s použitím rovnomernej a navrhovanej nerovnomernej segmentácie.

Klasifikačná

metóda

Bez použitia segmentácie

Po použití segmentácie

DTW 90.00% 93.33%

HMM 93.76% 95.00% DNN 98.00% 90.00%

Page 98: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 90 -

Na základe vykonaných experimentov sme dospeli k záveru, že výber klasifikačného algoritmu vhodného pre navrhovaný systém rozpoznávania povelov je závislý na podmienkach jeho použitia. V prípade požiadavky minimalizácie výpočtového výkonu je vhodné zvoliť ako klasifikačný algoritmus metódu dynamického zarovnania časovej mierky, pričom navrhovaná metóda nerovnomernej segmentácie výrazne znižuje výpočtovú náročnosť metódy a mierne zvyšuje úspešnosť rozpoznávania. Naopak, ak je prioritou systému maximálna úspešnosť rozpoznávania, vhodným kandidátom je klasifikácia s využitím hlbokej neurónovej siete. Vyššia úspešnosť rozpoznávania je však dosiahnutá na úkor výpočtovej zložitosti, ktorú je síce možné redukovať pomocou navrhovanej metódy nerovnomernej segmentácie, avšak vždy za cenu určitého zníženia úspešnosti rozpoznávania a citlivosti na úroveň aditívneho šumu. Klasifikácia s využitím metódy skrytých Markovových modelov predstavuje spomedzi navrhovaných metód istý konsenzus medzi úspešnosťou rozpoznávania, výpočtovou zložitosťou a citlivosťou na aditívny šum. Navrhovaná nerovnomerna segmentácia v tomto prípade nielen znížila výpočtovú náročnosť algoritmu, ale spôsobila aj zvýšenie úspešnosti rozpoznávania a robustnosti algoritmu voči aditívnemu šumu, čím prakticky priniesla zlepšenie pre všetky pozorované kritériá algoritmu. Metóda klasifikácie pomocou skrytých Markovových modelov má navyše v porovnaní s metódou dynamického zarovnania časovej mierky ďalšiu výhodnú vlastnosť, ktorou je schopnosť natrénovať značne veľké množstvo povelov, čím môžeme dosiahnuť plnohodnotnejší systém rozpoznávania reči.

Page 99: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 91 -

Záver V rámci práce boli testované nové prístupy optimalizácie frekvenčnej analýzy

v podobe riedkej Fourierovej transformácie, pričom výsledná optimalizácia je aplikovateľná ako na embedded zariadenia, tak na osobné počítače. Okrem toho boli v rámci práce vyvinuté metódy optimalizácie výpočtovej náročnosti procesu rozpoznávania reči. Prvou metódou je využitie modulu FPGA na dedikovanie frekvenčnej analýzy zamerané na úplné prebratie úlohy frekvenčnej analýzy, pričom mikrokontroléru sú dodávané už len výsledné frekvenčné komponenty frekvenčného spektra v reálnom čase. Ďalšou z navrhovaných metód je metóda nerovnomernej segmentácie použiteľná na redukciu množstva frekvenčných komponentov frekvenčného spektra, čo má vplyv na počet informatívnych príznakov vstupujúcich do klasifikácie prehovoru. Výsledkom tejto dizertačnej práce sú teda nové postupy, umožňujúce zefektívniť rozpoznávanie reči a znížiť tak výpočtovú náročnosť celého procesu rozpoznávania. Zavedenie navrhovanej metódy nerovnomernej segmentácie vytvára nové možnosti pre vývoj nových metód rozpoznávania signálov, pričom možno očakávať ich nižšiu výpočtovú zložitosť a porovnateľné výsledky pri signáloch s vysokou mierou aditívneho sumu, než konvenčné metódy založené na rovnomernej segmentácii. Súčasne s poklesom výpočtovej zložitosti procesov dochádza nie len k úspore výpočtového výkonu, ale aj k zníženiu spotreby energie, čo platí najmä pre jednoduchšie technické prostriedky, a tiež mobilné a embedded zariadenia, ktoré v poslednej dobe zaznamenávajú prudké nasadenie v praxi. Práca sa snaží poukázať na možnosti využitia práve spomínaných jednoduchších technických prostriedkov. Aj keď niektoré z navrhovaných metód sú použiteľné aj pre osobné počítače, väčšina z týchto metód je v práci navrhnutá s ohľadom práve na mobilné a embedded zariadenia.

Na základe vykonaných experimentov sme dospeli k záveru, že výber klasifikačného algoritmu vhodného pre navrhovaný systém rozpoznávania povelov je závislý na podmienkach jeho použitia. V prípade požiadavky minimalizácie výpočtového výkonu je vhodné zvoliť ako klasifikačný algoritmus metódu dynamického zarovnania časovej mierky, pričom navrhovaná metóda nerovnomernej segmentácie výrazne znižuje výpočtovú náročnosť metódy a mierne zvyšuje úspešnosť rozpoznávania. Naopak, ak je prioritou systému maximálna úspešnosť rozpoznávania, vhodným kandidátom je klasifikácia s využitím hlbokej neurónovej siete. Vyššia úspešnosť rozpoznávania je však dosiahnutá na úkor výpočtovej zložitosti, ktorú je síce možné redukovať pomocou navrhovanej metódy nerovnomernej segmentácie, avšak vždy za cenu určitého zníženia úspešnosti rozpoznávania a citlivosti na úroveň aditívneho šumu. Klasifikácia s využitím metódy skrytých Markovových modelov predstavuje spomedzi navrhovaných metód istý konsenzus medzi úspešnosťou

Page 100: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 92 -

rozpoznávania, výpočtovou zložitosťou a citlivosťou na aditívny šum. Navrhovaná nerovnomerná segmentácia v tomto prípade nielen znížila výpočtovú náročnosť algoritmu, ale spôsobila aj zvýšenie úspešnosti rozpoznávania a robustnosti algoritmu voči aditívnemu šumu, čím prakticky priniesla zlepšenie pre všetky pozorované kritériá algoritmu. Metóda klasifikácie pomocou skrytých Markovových modelov má navyše v porovnaní s metódou dynamického zarovnania časovej mierky ďalšiu výhodnú vlastnosť, ktorou je schopnosť natrénovať značne veľké množstvo povelov, čím môžeme dosiahnuť plnohodnotnejší systém rozpoznávania reči.

Prínosom práce je teda výsledná navrhovaná metóda nerovnomernej segmentácie podrobená testovaniu na základe niekoľkých experimentov, ktorá umožňuje radikálne znížiť výpočtové nároky rozpoznávacieho algoritmu bez ohľadu na použitú klasifikačnú metódu, čím boli ciele dizertačnej práce splnené. Možností využitia navrhovaného riešenia je nespočetne veľa. Za spomenutie stojí napr. ovládanie počítača pomocou hlasu, ovládanie rôznych funkcií v inteligentných domoch pomocou vyslovených povelov, rečové ovládanie mobilných alebo embedded zariadení, pomôcka pre hendikepovaných a pod. Či sa navrhované postupy osvedčia v praxi ukáže až čas.

Page 101: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 93 -

Použitá literatúra [1] Deller, J. R., Proakis, J. G. a Hansen, J. H.L. Discrete-Time Processing of

Speech Signals. [ed.] ISBN: 0-7803-5386-2. s.l. : IEEE, 1999. ISBN: 0780353862 / 0-7803-5386-2.

[2] Psutka J., Müller L., Matoušek J., Radová V. Mluvíme s počítačem česky.

[editor] ISBN: 80-200-1309-1. Praha : Academia, 2006. ISBN 80-200-1309-1. [3] Rabiner, L., Juang B. Fundamentals of Speech Recognition. [ed.] ISBN: 0-13-

015157-2. s.l. : Prentice Hall, 1993. ISBN: 0130151572. [4] Ivanecký, J. Dizertačná práca. Automatická transkripcia a segmentácia reči.

Košice : Technická univerzita v Košiciach, 2003. [5] The Sliding DFT. Lyons., E. Jacobsen and R. s.l. : IEEE Signal Processing

Magazine., Mar. 2003, Zv. pp. 74-80. [6] Deller, J., Hansen, J.,Proakis J. Discrete-Time Processing of Speech Signals

(IEEE Press Classic Reissue). [ed.] ISBN: 978-0-7803-5386-2. s.l. : Wiley-IEEE Press, 1999. ISBN: 0780353862.

[7] Kuba, M. Rozpoznávanierečových signálov z malého počtu akustických

pozorovaní pomocou skrytých Markových modelov. Žilina : Žilinská univerzita, 2006.

[8] Juhár, J. Spracovanie signálov v systémoch automatického rozpoznávania reči.

[ed.] Habilitačná práca. Košice : Technická univerzita v Košiciach, Fakulta elektrotechniky a informatiky, Katedra elektroniky a multimediálnych telekomunikácií, 1999. Habilitačná práca..

[9] Jurečka, M. Rozpoznávanie reči s využitím umelých neurónových sietí. Žilina,

2009. [10] Zimmermann, J. Spektografická a škálografická analýza akustického, rečového

signálu. [ed.] ISBN 80-89038-22-0. Prešov : Náuka, 2002. ISBN 80-89038-22-0.

[11] M., Matteucci. Tutorial on Clustering Algorithms. Politecnico di Milano.

http://home.dei.polimi.it/matteucc/Clustering/tutorial_html/kmeans.html. [Online]

[12] T., Kardi. K-Means Clustering Tutorials. http://people.revoledu.com/kardi/

tutorial/kMean/. [Online]

Page 102: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 94 -

[13] Gaussian Mixture Models. Raja, Y., Shaogang, G. England : Department of Computer Science, Queen Mary and Westfield College.

[14] Watanabe K., Watanabe S. Stochastic Complexities of Gaussian Mixtures in

Variational Bayesian Approximation. s.l. : Journal of Machine Learning Research 7 625–644, 2006. ISBN 978-0-9719777-4-7.

[15] Myers C. S., Rabiner L. R. A Comparative Study of Several Dynamic Time-

Warping Algorithms for Connected-Word Recogniton. s.l. : The Bell System Technical Journal, 1981.

[16] Rabiner, L. R. A Tutorial on Hidden Markov Models, and Selected

Applications in Speech Recognition. s.l. : Proc. IEEE, Vol. 77, No. 2, pp. 257--286,, Feb. 1989.

[17] Sliacky, P. Využitie skrytých markovových modelov pre počítačové

rozpoznávanie hovorenej českej reči. [ed.] Kandidátska dizertačná práca. Praha : FJFI CVUT Praha, 2006. Kandidátska dizertačná práca..

[18] Nilsson M, Ejnarsson M. IEEE Signal Processing Magazine:. s.l. : Blekinge

Institute of Technology, 2002. [19] Tučková, J. Úvod do teorie a aplikací umělých sítí. [editor] 80-01-

02800-3 ISBN. Praha : ČVUT, 2003. ISBN, 80-01-02800-3. [20] Wilamowski, B., Chen. Y. Efficient Algorithm for Training Neural Networks

with one Hidden Layer. 1999. [21] Marček, D. Neurónové siete a ich aplikácie. [ed.] ISBN 80-8070-497-X.

Žilina : EDIS, 2006. ISBN 80-8070-497-X. [22] Waibel, A. Phoneme Recognition Using Time-Delayed Neural Networks. [ed.]

ISBN:1-55860-124-4. s.l. : ET AL, 1990. ISBN:1-55860-124-4. [23] Kosko, B. Neural Networks and Fuzzy Sytems: A dynamical sytems approch

to machine intelligence. Engelwood Cliffs : Prentice-Hall, 1992. ISBN 0-13-611435-0.

[24] Hertz J., Krogh A., Palmer R. G. Introduction to the Theory of Neural

Computation. [ed.] ISBN:0-201-50395-6. s.l. : Addision-esley, 1991. ISBN:0-201-50395-6.

[25] Vanek, R. Úvod do umelých neurónových sietí. Žilina : KDS VŠDS, 1995. [26] Lajtoš, M. Modelovanie kognitívnych procesov pomocou Deep Belief

Networks. 2012.

Page 103: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 95 -

[27] Binary Coding of Speech Spectrograms Using a Deep Auto-encoder. L. Deng, M. Seltzer, D. Yu, A. Acero, A. Mohamed, and G. Hinton. ISBN: 9781617821233, University of Toronto, Toronto, Ontario, Canada. : INTERSPEECH 2010.

[28] Hinton, Geoffrey E. To recognize shapes first learn to generate images.

Computational Neuroscience: Theoretical Insights into Brain Function. 2007. [29] Exploring Strategies for Training Deep Neural Networks. Larochelle H.,

Bengio Y., Louradour J., Lamblin P. s.l. : Journal of Machine Learning Research 1 (2009) 1-40.

[30] Plesník, J. Grafové algoritmy. Bratislava : Veda, 1983. [31] Húdik, M. Modelovanie, optimalizácia a predikcia výkonnosti paralelných

algoritmov. 2013. [32] Miček, J., Hyben, M., Frátrik, M., Púchyová, J. Voice command recognition in

multirobot systems: Information fusion. International Journal of Advanced Robotic Systems, 891-896. 2012.

[33] H. Hassanieh, P. Indyk, D. Katabi, E. Price. Nearly Optimal Sparse Fourier

Transform. s.l. : Massachusetts Institute of Technology, 2012. [34] Frigo M., Johnson S. Fastest Fourier Transform in the West. [Online]

Massachusetts Institute of Technology, 1999. [35] Sanders, L. AAFFT (Ann Arbor Fast Fourier Transform). [Online] 2008.

http://aafftannarborfa.sourceforge.net/. [36] Zhaohua W., Norden E. Huang. A Study of the Characteristics of White Noise

Using the Empirical Mode Decomposition Method. Greenbelt : Center for Ocean-Land-Atmosphere Studies., 2003.

[37] Waleed H. Abdulla, David Chow, Gary Sin. Cross-words Reference Template

for DTW-based Speech Recognition Systems. TENCON 2003. Conference on Convergent Technologies for the Asia-Pacific Region (Volume:4 ). 2003, ISBN 0-7803-8162-9.

[38] Kačur, J. Realization of a Dialog ASR System Based on ATK Tool. Brno :

TSP Brno, 2006. [39] VOJTKO, J. KAČUR, J. ROZINAJ, G. The training of Slovak speech

recognition system based on Sphinx 4 for GSM networks. Zadar, Croatia : ELMAR 2007, 2007.

Page 104: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 96 -

[40] SAMPA v slovenčine a jej význam z pohľadu viacjazyčných systémov na rozpoznávanie reči. Ivanecký, J. s. 98-108, Bratislava : Slovenčina a čeština v počítačovom spracovaní,, 2001, Zv. Veda 2001.

[41] Multi-Modal Voice Application Design in a Multi-Client Environment.

Ivanecký, J. Klehr, M. Fischer, V. Kunzmann, S. České Budejovice : Proceeding of Text, Speeech, Dialog 2003, 2003.

[42] Automatická transkripcia slovenčiny v počítačovom rozpozávaní reči.

Ivanecký, J. s. 109-116, Bratislava : Sloveneina a ee1tina v poeítaeovom spracovaní., 2001, Zv. Veda 2001.

[43] K. Achan, S. T. Roweis, A. Hertzmann, B. J. Frey. A Segmental HMM for

Speech Waveforms. [ed.] UTML-TR-2004-001. s.l. : University of Toronto, 2004. UTML-TR-2004-001.

[44] Koubková, A a Pavelka, J. Úvod do teoretické informatiky. 3. vyd. [ed.]

ISBN 80-86732-03-7. Praha : MATFYZPRESS, 2003. ISBN 80-86732-03-7.

[45] Rocchesso, D. Introduction to signal processing. [ed.] GNU Free

Documentation Licence. Verona : Universit`a di Verona, 2003. GNU Free Documentation Licence.

[46] Bodenhausen U., Manke S. Connectionist Architectural Learning for High

Preformance Character and Speech Recognition. [ed.] ISBN: 0-7803-0946-4. Minneapolis : ICASSP'93, 1993. ISBN: 0-7803-0946-4.

[47] NAGY, M. Skryté markovove modely a rozpoznávanie číslic. [ed.]

Kandidátska dizertačná práca. Bratislava : FMFI UK Bratislava, 2004. Kandidátska dizertačná práca..

[48] Seman, O. Ovládanie počítača hlasom. [ed.] Diplomová práca. Bratislava :

FMFI UK Bratislava, 2004. Diplomová práca.. [49] VOJTKO, J. KOROSI, J. ROZINAJ,G. Comparison of Automatic Speech

Recognizer SPHINX 3.6 and SPHINX 4.0 for Creating Systems in Slovak Language. [ed.] ISBN: 978-80-227-2856-0. Bratislava : 15th International Conference on Systems, Signals and Image, 2008. ISBN: 978-80-227-2856-0.

[50] O’Shaughnessy, D. Speech Communications: Human and Machine. [ed.]

ISBN: 0780334493. s.l. : Wiley-IEEE Press, 1999. ISBN: 0780334493. [51] Forgáč, R., Mokriš, I. Umelé neurónové siete na redukciu dimenzie priestoru

príznakov a klasifikáciu. [ed.] ISBN 80-8055-743-8. Banská Bystrica : Univerzita Mateja Bela, 2002. ISBN 80-8055-743-8.

Page 105: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 97 -

[52] Manning, C., Schutze, H. Foundations of Statistical Natural Language Processing. [ed.] ISBN: 0262133601. s.l. : MIT Press, 1999. ISBN: 0262133601.

[53] Rabiner, L. Schafer, R. Digital Processing of Speech Signals. [ed.]

ISBN: 0780353862. s.l. : Wiley-IEEE Press, 1978. ISBN: 0132136031 .

[54] Wasserman, P.D. Neural Computing Theory and Practice. New York: Van

Nostrand Reinhold, 1989. ISBN 0-442-20743-3. [55] Recti?ed Linear Units Improve Restricted Boltzmann Machines. V. Nair, G. E.

Hinton. s.l. : Department of Computer Science, University of Toronto, Toronto., 2010.

[56] A new matrix approach to real FFTs and convolutions of length 2k. T. Lundy,

J. Van Buskirk. s.l. : Computing 80, 2007, Zv. 23-45. [57] T., Khanna. Foundations of neural networks. s.l. : New York: Addison-Wesley

Pubishing Company. ISBN 0-201-50036-1. [58] FastDTW: Toward Accurate Dynamic Time Warping in Linear Time and

Space. S. Salvador, P. Chan. s.l. : Dept. of Computer Sciences Florida Institute of Technology Melbourne., 2010.

[59] Reynolds, D. Gaussian Mixture Models. Lexington, USA : MIT Lincoln

Laboratory, 2001. [60] The In?nite Gaussian Mixture Model. Rasmussen, C. E. s.l. : n Advances in

Neural Information Processing Systems MIT Press, 2000, Zv. pp. 554–560,. [61] The Application of Hidden Markov Models in Speech Recognition. M. Gales,

S. Young. s.l. : Foundations and Trends in Signal Processing Vol. 1, No. 3, 2007, Zv. 195–304.

[62] The Design and Implementation of FFTW3. M. Frigo, S. G. Johnson. s.l. :

Proceedings of the IEEE 93, 2005, Zv. 216–231. [63] Automatic speech recognition and speech variability: A review. M.

Benzeghiba, R. De Mori, O. Deroo, S. Dupont. s.l. : Speech Communication 49, 2007, Zv. 763-786.

[64] Rozpoznávanie reči s využitím neurónových sietí. M., Hyben. Diplomová

práca, 2010. [65] Training Products of Experts by Minimizing Contrastive Divergence. Hinton,

G. E. s.l. : Gatsby Computational Neuroscience Unit, University College London., 2012.

Page 106: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 98 -

[66] A Fast Learning Algorithm for Deep Belief Nets. G. E. Hinton, S. Osindero,

Yee-Whye Teh. s.l. : Department of Computer Science, University of Toronto., 2010.

[67] Context-Dependent Pre-Trained Deep Neural Networks for Large-Vocabulary

Speech Recognition. G. E. Dahl, D. Yu, L. Deng. s.l. : IEEE TRANSACTIONS ON AUDIO, SPEECH, AND LANGUAGE PROCESSING, VOL. 20, NO. 1, JANUARY 2012. ISBN 1558-7916.

[68] E, Andrew. DFT: DISCRETE FOURIER TRANSFORM. s.l. : The University

of Michigan, 2006. ISBN 48109-2122. [69] Very Fast Fourier Transform Algorithms Hardware for Implementation.

Despain, A.M. s.l. : Computers, IEEE Transactions on (Volume:C-28 , Issue: 5 ), 2006. ISSN : 0018-9340.

[70] A linear filtering approach to the computation of discrete Fourier transform.

Bluestein, L. I. s.l. : Audio and Electroacoustics, IEEE Transactions on (Volume:18 , Issue: 4 ), 2003. ISBN: 0018-9278.

[71] Balanced Multiwavelet Bases Based on Symmetric FIR Filters. Selesnick, I.

W. s.l. : IEEE TRANSACTIONS ON SIGNAL PROCESSING, VOL. 48, NO. 1,, JANUARY 2000.

[72] Can Detectability Be Improved by Adding Noise? Kay, S. s.l. : IEEE SIGNAL

PROCESSING LETTERS, VOL. 7, NO. 1, JANUARY 2000. [73] Automatic Estimation and Removal of Noise from a Signal. C. Liu, R.

Szeliski. s.l. : IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 30, NO. 2., FEBRUARY 2008.

[74] The White Noise Approximation. Weinstein, S. s.l. : Communication

Technology, IEEE Transactions on (Volume:17 , Issue: 1 ), 2003. ISBN: 0018-9332.

[75] Robust estimation of a single complex sinusoid in white noise-H? filtering

approach. Nishiyama, K. s.l. : Signal Processing, IEEE Transactions on (Volume:47 , Issue: 10 ), 2002. ISBN: 1053-587X.

[76] Speech recognition in a noisy environment using a noise reduction neural

network and a codebook mapping technique. Ohkura, K. s.l. : Acoustics, Speech, and Signal Processing, 1991. ICASSP-91, 1991. ISBN: 1520-6149.

[77] Computational Complexity Analysis and Algorithm Design for Combinatorial

Optimization Problems. Watanabe, T. s.l. : Networking and Computing (ICNC), 2012 Third International Conference., 2012. ISBN: 978-1-4673-4624-5.

Page 107: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 99 -

[78] Reducing computational complexity of estimating multivariate histogram-

based probabilistic model. Ding, N. s.l. : Evolutionary Computation, 2007. CEC 2007. IEEE Congress, 2007. ISBN: 978-1-4244-1339-3.

[79] Analyzing Time Complexity of Parallel Algorithms for Knapsack Problem.

Padmavathi, S. s.l. : Signal Processing, Communications and Networking, 2007. ICSCN '07. International Conference, 2007. ISBN: 1-4244-0997-7.

[80] Speech segmentation and spoken document processing. Ostendorf, M. s.l. :

Signal Processing Magazine, IEEE (Volume:25 , Issue: 3 ), May 2008. ISBN: 1053-5888.

[81] Automatic Speech Segmentation Based on Boundary-Type Candidate

Selection. Park, S. S. s.l. : Signal Processing Letters, IEEE (Volume:13 , Issue: 10 ), Oct. 2006. ISBN: 1070-9908.

[82] Automatic phonetic segmentation. Toledano, D.T. s.l. : Speech and Audio

Processing, IEEE Transactions on (Volume:11 , Issue: 6 ), Nov. 2003, Zv. 617 - 625. ISBN: 1063-6676.

[83] Adaptive Time Segmentation for Improved Speech Enhancement. Hendriks,

R.C. s.l. : Audio, Speech, and Language Processing, IEEE Transactions on (Volume:14 , Issu[e: 6 ), Nov. 2006, Zv. 2064 - 2074. ISBN: 1558-7916.

[84] A pitch-based rapid speech segmentation for speaker indexing. Yang, M. s.l. :

Multimedia, Seventh IEEE International Symposium, Dec. 2005. ISBN: 0-7695-2489-3.

Page 108: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 100 -

Vlastné Publikácie

[1] Hyben, H. (2011), Informative attribute computation for detection period boundaries of human speech. TRANSCOM 2011: 9-th European conference of young research and scientific workers. June 27-29, 2011. Žilina: University of Žilina, 2011. - ISBN 978-80-554-0372-4. - S. 111-114.

[2] Mi ček M., Púchyová J., Hyben M. (2011). Speech communication in multirobot system. Proceedings of the VIth international scientific and technical conference Computer science and information technologies. November 16-19 2011, Lviv, Ukraine. - Lviv: Publishing House Vezha&Co, 2011. - ISBN 978-966-2191-04-2. - S. 255-257.

[3] Púchyová J., Hyben M. (2012), Command control of multirobot system. 10th international conference Process control 2012. Kouty nad Desnou Czech Republic, June 11-14, 2012. Pardubice: University of Pardubice, 2012. - ISBN 978-80-7395-500-7. - CD-ROM, C046B.

[4] Hyben M., Húdik M. (2012), Use of parallelism in the field of speech recognition. 10th international conference Process control 2012. Kouty nad Desnou Czech Republic, June 11-14, 2012. Pardubice: University of Pardubice, 2012. - ISBN 978-80-7395-500-7. - CD-ROM, C042A.

[5] Mi ček, J., Hyben, M., Frátrik, M., Púchyová, J. (2012). Voice command recognition in multirobot systems: information fusion. International Journal of Advanced Robotic Systems. Aiguo Song (Ed.), ISSN: 1729-8806. - 2012. - Vol. 9. InTech, DOI: 10.5772/52652. Thomson Reuters Current Contents. Available from: http://www.intechopen.com/journals/international_journal_of_advanced_robotic_systems/voice-command-recognition-in-multirobot-systems-information-fusion

[6] Hyben M., Miček J., Kochláň M. (2013), Hybrid voice recognition system: design methods and simulation experiments of hybrid voice recognition. Proceedings in conference of informatics and management sciences 2nd international conference ICTIC 2013. March 25.-29. 2013. Žilina, Slovak Republic. - ISSN 1339-231X. - Žilina: University of Žilina, 2013. - ISBN 978-80-554-0648-0. - CD-ROM, s. 342-347.

[7] Kochláň M., Miček J., Hyben M. (2013). Multiprocessor voice recognition system :

comprehensive digital alternative of the hybrid system. Informatics & IT Today ISSN 1339-147X. - 2013. - Vol. 1, no. 1 (2013), online, s. 40-45. Available from: http://www.sci-pub.com/archive/?vid=1&aid=1&kid=70101

[8] Púchyová J., Miček J., Hyben M. (2013), Particle filter prediction of road accident

caused by sufficient safety distance violation. Intelligent transportation systems 2013: virtual conference ITS 2013. August 26-30, 2013. - ISSN 1339-4118. Žilinská univerzita, ISBN 978-80-554-0763-0. - CD-ROM, s. 131-133.

Page 109: Rozpoznávanie reči s nízkou výpočtovou náročnosťou praca.pdf · ŽILINSKÁ UNIVERZITA V ŽILINE Fakulta riadenia a informatiky Rozpoznávanie reči s nízkou výpočtovou

- 101 -

[9] Kochláň M., Miček J., Hyben M. (2013), Wireless sensor network energy harvesting: radio frequency harvesting case study. Intelligent transportation systems 2013: virtual conference ITS 2013. August 26-30, 2013. - ISSN 1339-4118. Žilinská univerzita, ISBN 978-80-554-0763-0. - CD-ROM, s. 93-97.

[10] Hyben M., Miček J. (2013), Prevention of car accident caused by microsleep and

obstacle detection using camera. Intelligent transportation systems 2013: virtual conference ITS 2013. August 26-30, 2013. - ISSN 1339-4118. Žilinská univerzita, 2013. - ISBN 978-80-554-0763-0. - CD-ROM, s. 73-75.

[11] Húdik M., Hyben M., Hodoň M. (2013) , Navigation aid system for the electric

vehicle battery replacement operation. Intelligent transportation systems 2013 : virtual conference ITS 2013. August 26-30, 2013. - ISSN 1339-4118. Žilinská univerzita, 2013. - ISBN 978-80-554-0763-0. - CD-ROM, s. 69-72.

[12] Hyben M., Hodoň M. (2013) , Low-cost command-recognition device. Teleinformatics

2013. – Schválené recenzentom [13] Hyben M., Miček J. (2013), Prevention of car accident caused by insufficient safety

distance by vehicle detection using camera. Journal of Information, Control and Management Systems Vol. 11, NO 1 (2013) – Schválené recenzentom