Vysoká škola ekonomická v Praze Fakulta informatiky a statistiky Vyšší odborná škola informačních služeb v Praze
Viktoriia Yemchenko Moderní technologie pro ovládání PC hlasem Bakalářská práce
2011
PROHLÁŠENÍ
Prohlašuji, že jsem bakalářskou práci na téma “Moderní technologie ovládání PC hlasem” zpracovala samostatně a použila pouze zdrojů, které cituji a uvádím v seznamu použité literatury.
V Praze dne 19.12.2011
Podpis
ABSTRAKT
Předložená bakalářská práce je zaměřena na porovnání a výběr vhodného programu pro rozpoznávání hlasu v PC, provedení jeho praktického odzkoušení s vybraným počtem uživatelů a následné vyhodnocení použitelností softwaru pro psaní textu a jeho diktování z hlediska rychlosti a přesnosti. Teoretická část práce obsahuje obecný přehled historického vývoje technologií rozpoznávaní řeči a popisuje hlavní oblasti, kde se tyto systémy a technologie používají. Obsah teoretické části tvoří také popis principů rozpoznávání řeči počítačem a klasifikace existujících systémů. Praktická část teto bakalářské práce zahrnuje popis a porovnání dostupných programů pro rozpoznávání řeči a provedení testování pomocí vybraného programu.
The following bachelor work is focused on the comparison and following selection of the suitable voice recognition software as well as on its practical test with selected number of users and the subsequent evaluation of its usability for text writing and dictating with regard on speed and accuracy The theoretical part of the work contains a general overview of the historical development of speech recognition technology, describes the main areas where these systems and technologies can be used. The content of the work is a theoretical description of the principles of computer speech recognition and classification of existing programs. The practical part of this thesis is a description and comparison of available programs for speech recognition and execution of testing with the selected program.
Obsah 1
Úvod.........................................................................................................................7
2
Historie vývoje systémů hlasového ovládání PC ........................................................9
3
4
2.1
První programy......................................................................................................... 10
2.2
Období 60., 70. léta .................................................................................................. 11
2.3
Období 80., 90. léta .................................................................................................. 14
2.4
Moderní komerční programy: Dragon Naturally Speaking......................................... 16
Aplikace systémů rozpoznávání řeči .......................................................................19 3.1
Využití systémů rozpoznávání řeči ve zdravotnictví................................................... 19
3.2
Ozbrojené síly a řečové technologie ......................................................................... 20
3.3
Battle management a systémy rozpoznávání řeči ..................................................... 21
Popis principu rozpoznávání řeči počítačem ...........................................................23 4.1
Jednotlivé etapy procesu .......................................................................................... 23
4.2
Problémy a překážky při rozpoznávání...................................................................... 25
5
Klasifikace systémů rozpoznávání řeči ....................................................................26
6
Současný stav na trhu technologií pro ovládání PC hlasem .....................................33
7
Rešerše a popis aplikací pro rozpoznávání hlasu .....................................................32 7.1 7.1.1
Vytvoření množiny kriterií hodnocení ................................................................... 36
7.1.2
Stanovení vah kriterií ........................................................................................... 36
7.1.3
Stanovení etalonů kriterií ..................................................................................... 40
7.1.4
Výběr nejlepší varianty pomocí metody TOPSIS .................................................... 41
7.2
8
Vícekriteriální rozhodování při výběru programu ...................................................... 35
Popis programu Dictation 2005 ................................................................................ 47
Průběh praktického testu programu Dictation 2005 ...............................................55 8.1
Výběr vhodného textu .............................................................................................. 55 5
8.1.1
9
Texty .................................................................................................................... 55
8.2
Průběh testu ............................................................................................................ 56
8.3
Analýza výsledků ...................................................................................................... 60
Závěr ......................................................................................................................65
10 Seznam použitých zdrojů ........................................................................................66
6
1 Úvod Téma bakalářské práce „Ovládání počítače hlasem“ jsem si vybrala z několika důvodů. Podle mého názoru, téma je aktuální a myšlenka rozpoznávání řeči počítačem se stále rozvíjí. Druhým důvodem je můj zájem o technologický pokrok v tomto odvětví. A nakonec, chtěla bych vyzkoušet programy, které by mohly rozšířit nabídku funkcí mého vlastního počítače. Cílem této práce je porovnání a výběr vhodného programu pro rozpoznávání hlasu v PC, provedení jeho praktického odzkoušení s vybraným počtem uživatelů a následné vyhodnocení použitelností softwaru pro psaní textu a jeho diktování z hlediska rychlosti a přesnosti. Za účelem dosažení stanoveného cíle bylo potřeba splnit tyto úkoly:
Získání teoretických znalostí v oblasti technologií hlasového ovládání
Provedení rešerše dostupných aplikací
Výběr nejvhodnějšího programu pomocí metody vícekriteriální analýzy
Provedení praktického testování
Analýza dosažených výsledků
Rozpoznávání řeči počítačem je samozřejmě jeden z důležitých fenoménů dnešní doby. Hledáním způsobů, pomocí kterých by lidé mohli komunikovat s počítačem stejně jako mezi sebou, přičemž tak, aby nebyla potřeba přizpůsobit se úrovni komunikace PC, se již dávno zabývají vědci a inženýři. V poslední době bylo dosaženo hodně úspěchů - již mnoho let jsou hlasové příkazy vnímány jako jedna z alternativ rozšíření softwaru PC. Výskyt funkcí rozpoznávání řeči je samozřejmostí v řadě textových procesorů, systémy rozpoznávání řeči se často vyskytují v informačních servisech a také v bezpečnostních systémech. V procesu dlouholetého výzkumu se zjistilo, že pro řešení problému je potřeba využít znalostí nejen programátorů, ale také lingvistů, rozhlasových techniků, matematiků, biologů a dokonce i psychologů. Pro vytvoření systému rozpoznávání řeči se musí řešit velký počet úloh a úkolů.
7
Především je potřeba přeměnit chvění vzduchu do podoby elektrických signálů pomocí mikrofonu, zároveň musí byt odfiltrované interference a hluk. Pak signál musí být převeden do digitální podoby, což dovolí jeho další zpracování pomocí počítače. Práce lingvistů je nezbytná pro lepši porozumění konstrukčním zásadám řeči. Musí byt izolovány takové prvky řeči, které program musí umět rozpoznávat pří vstupním proudu – fonémy, morfémy, slabiky, slova atd. Lingvistika studuje takové aspekty řeči, které jsou nezbytné pro vytvoření systémů rozpoznávání a syntézy řeči. Zvuky souvislé řeči obsahují neustále se měnící spektrum harmonických frekvencí a také hluk. Hlasitost a rychlost řeči se také neustále mění. Kromě toho jeden a tentýž výraz, vyslovený různými lidmi, anebo dokonce i stejným člověkem, který se nachází v různých psychických stavech, muže mít odlišné spektrální a časové barvy. Tím se výrazně komplikuje vytvoření universálních systémů rozpoznávání, které by byly schopné „rozumět“ řeči různých lidí. Pro účel oddělení lingvistických struktur z digitalizovaného zvuku se používají různé matematické metody v kombinaci se speciálním počítačovým vybavením. Výzkumy biologů pomáhají ve studii mechanismů formování a rozpoznávání řeči. Psychologové pomáhají při řešení úloh vytvoření příjemného uživatelského rozhraní počítačových systémů.
8
2 Historie vývoje systémů hlasového ovládání PC V této kapitole uvádím základní popis historického vývoje programů a systémů, které využívají technologii automatického rozpoznávání řeči. Historie vývoje těchto programů začíná v roce 1952 vytvořením prvního jednoduchého rozpoznávače číslic v laboratoři Bell, a zdokonalení těchto technologií pokračuje dodnes. Níže je uvedená souhrnná tabulka historie vývoje programů: Období Programy
1952
Systém pro rozpoznávání izolovaných číslic pomocí měření formačních frekvencí
Vývojáři
Místo vývoje
Biddulph a Balashek
Laboratoř Bell
Rozpoznávací systém pro 10 samohlásek
Laboratoř MIT Lincoln
50. léta Systém pro rozpoznávání 10 slabik
60.léta
Radio Research Lab
Rozpoznávač foném
Univerzita v Kjotu
Rozpoznávač číslic
Laboratoř NEC
Rozpoznávač pro rozpoznávání 4 samohlásek a 9 souhlásek
College University
Threshold Technology Inc.
Výzkumný project APRA Fred Jelínek
Společnost IBM
Systém Harpy
Společnost APRA
CMU, Hearsay II, BBN HWIM
Společnost SUR-DAPRA
Systém Dragon 1997
Tom Martin
Systém Martina – rozpoznávání plynulé řeči Systém Angora
80. léta
Laboratoř RCA
Systém pro rozpoznávání samohlásek s názvem Suzuki a Nakata
První komerční system ASR VIP
70. léta
Olson a Belar
Stem Dragon Naturally Speaking
Tim Baker Společnost Dragon Systems
Tabulka 2.1: Historie vývoje programů pro rozpoznávání řeči 9
2.1 První programy Samozřejmě je jazyková komunikace pro člověka nejpohodlnější a nejpřirozenější. Není divu, že vědci a inženýři již mnoho let řeší problém verbální komunikace mezi člověkem a strojem. Počítače již delší dobu umějí “poslouchat“ uživatele a provádět dešifrace jejich slov. Během procesu integrace počítačů ve všech oblastech společnosti se stalo samozřejmosti, že mnozí lidé mají problémy v komunikaci se strojem. Hlavní důvody vytvoření programů pro rozpoznávání řeči počítačem jsou následující:
Uživatele občas nemohou jednoduše vyjádřit, co chtějí, musí se učit nazpaměť zastaralé příkazy nebo další procesy a algoritmy, které vůbec nejsou intuitivní či přírodní.
Navíc v procesu této komunikace je nutné použit pomalé a složité zařízení, například myš nebo klávesnici. Je zřejmé, že nový způsob komunikace s počítačem musí byt jednoduchý, rychlý a intuitivní. Systém rozpoznávání hlasu by se měl zajisté přizpůsobit člověku než naopak.
Obrovskou výhodou systémů rozpoznávání hlasu by mohlo být to, že mohou fungovat mnohem rychleji než jakékoli jiné typy rozhraní. Například hlasový program elektronické pošty dovoluje zapnout počítač, nadiktovat a odesílat zprávy, přičemž se nemusíte dotýkat ani myši, ani klávesnice. A tedy postižení lidé mohou díky těmto technologiím efektivněji komunikovat s počítačem.
První pokusy navrhnout systém pro automatické rozpoznávání řeči byly ve většině případů vedeny akusticko-fonetickou teorií, která popisuje fonetické prvky řeči (základní zvuky jazyka) a snaží se vysvětlit způsob jejich realizace v mluveném projevu. [10] Tyto prvky zahrnují fonémy, a také odpovídající místo a způsob artikulace, který se používá při tvoření zvuků v různých fonetických kontextech. Například je potřeba, aby hlasivky vibrovaly za účelem vytvoření samohlásky a vzduch, který se šíří přes hlasovou plochu, způsobuje tvoření přirozeného zvuku, který je podobný tomu, co se vyskytuje v akustické trubce. Tyto přirozené způsoby rezonance, tzv. formanty a formační frekvence, se projevují jako hlavní oblast koncentrace energie ve spektru řečí.
10
Pomocí systému rozpoznávání hlasu nevidomí lidé anebo ti, kteří z jakéhokoliv důvodu nejsou schopni použít klávesnici, mohou komunikovat s počítačem stejně dobře, jako ostatní. Technologie rozpoznávání hlasu mohou byt použitelné také v operativních informačních službách. Počítače pronikají hlouběji do našeho života a potřeba v operativní informatice roste obrovskou rychlostí. Stále rostoucí počet uživatelů se obrací na internetové služby pro nejnovější zprávy, sportovní zprávy, předpověď počasí, pro informace o vstupenkách, objednávkách, cenných papírech, pro provádění výzkumu anebo pro zjišťování programu nejbližšího kina. Řeč je ideální nástroj pro získávání informací. A to vám může zjednodušit komunikaci s počítačem. Pomocí systémů rozpoznávání mluveného jazyka se uživatel a stroj mohou zapojit do přímého dialogu, postupně, krok za krokem, se můžou přiblížit k požadovaným informacím. Například jsou již vyvinuté systémy rozpoznávání řeči určené pro poskytování přístupu k databázím, obsahujícím digitalizované klipy novinek vysílání. Ovládáním prohlížeče hlasem je odstraněna nutnost uživatele využívat pomalé ruční ovládání. [9] Již mnoho let lze na softwarovém trhu najít hlasové systémy, které jsou určené pro představitele určitých profesí, například pro lékaře a právníky. Mnoho představitelů těchto profesí používá systémy rozpoznávání řeči na denní bázi. Velmi populární se staly domácí spotřebiče a příslušenství aktivizující se hlasem.
2.2 Období 60., 70. léta Domnívalo se, že hned potom, co počítače začnou rozumět lidské řeči, se podaří vytvořit umělý intelekt. Vývoj technologií rozpoznávání řeči se začal v roce 1952, když Davis, Biddulph a Balashek vyvinuly v laboratoří Bell systém pro rozpoznávání izolovaných číslic pomocí měření formačních frekvencí (anebo pomocí odhadu v průběhu ozvučení každé číslice). [3] Dalším významným systémem se stal systém Olsona a Belara z laboratoři RCA pro rozpoznávání 10 slabik, vyslovených jedním mluvčím. Ve stejné době v laboratoři MIT Lincoln, Orgie vytvořili rozpoznávací systém pro 10 samohlásek, který byl nezávislý na mluvčím. Ale přesnost systémů rozpoznávání řeči dosáhla největšího úspěchu v roce 2001, a od té doby zůstává na stejné úrovni. V 60. letech několik japonských laboratoří prokázalo svou schopnost vytvořit účelový hardware, který měl za úkol rozpoznávání řeči. Nejpozoruhodnějším se stal systém pro 11
rozpoznávání samohlásek s názvem Suzuki a Nakata, vytvořený v laboratoři Radio Research Lab v Tokiu, a také rozpoznávač foném v Sakai a Doshita na univerzitě v Kjotu. Dalším zajímavým programem se stal rozpoznávač číslic z laboratoře NEC. Ve výzkumech Sakai a Doshita byl poprvé použitý řečový segmenter pro analýzu a rozpoznávání řeči v různých částech vstupního projevu. V protikladu izolovaný číslicový rozpoznávač implicitně předpokládal, že neznámý projev obsahuje kompletní číslo (určitě ne žádné jiné zvuky řeči nebo slova), a tudíž neexistovala potřeba v explicitním „segmentru“. Práce univerzity v Kjotu by mohla být považována za předchůdce kontinuálního systému rozpoznávání řeči.[31] Ve stejné době byl na univerzitě College University v Anglii vytvořený rozpoznávač pro rozpoznávání 4 samohlásek a 9 souhlásek. Pomocí začlenění statistické informace o přípustných fonémových sekvencích v angličtině se zvýšila celková fonémová rozpoznávací přesnost v případě slov, obsahujících dvě či více fonémů. Tato práce označila první použití statistické syntaxe (na úrovní fonémů) v historii automatického rozpoznávání řeči. Alternativou k použití segmentoru řeči se stala představa o přijetí nejednotného časového měřítka pro vyrovnání řečových vzorů . Tento koncept se stal aktuálním v roce 1960 díky práci Toma
Martina v laboratoři RCA, a také díky výzkumům Vintsuka
v Sovětském Svazu. Martin
si
během
své
práce
uvědomil
potřebu
vypořádat
se
s časovou
nerovnoměrností v opakovaných akcích řeči a navrhl řádu řešení, včetně detekce projevů koncových bodů, což výrazně zvýšilo spolehlivost výkonu rozpoznávacího procesu. Vintsuk navrhnul použití dynamického programování pro časové přizpůsobení dvou projevů k odvození smysluplných posouzení jejich podobností. Jeho práce, obecně známá jako Dynamické manipulace z časem, předcházela pracím Sako a Chiba, i když nebyla velmi známá na Západě. [24] V pozdních 60. létech firma Atal a Itakura zformulovala nezávisle základní pojmy lineárního prediktivního kódování (LPC), což značně zjednodušilo odhad reakcí vokálního traktu na řečové křivky. Během této doby také založil Tom Martin (na základě předchozích úspěchů v oblasti sladění řečových projevů) první komerční společnost s názvem Threshold Technology Inc. a vyvinul první skutečný produkt nazvaný ASR VIP-100 systém. Tento systém se 12
používal jen v několika jednoduchých aplikacích, které provozovaly televizní společnosti, a také společnost FedEx pro třídění balíčků na běžícím páse. V roce 1970 se začalo vyvíjet rozpoznávání plynulé řeči, které nevyžaduje, aby uživatel dělal pauzy mezi slovy. V roce 1970 vyvinul výzkumný projekt APRA ( při americkém ministerstvu obrany), ovlivněn především systémem Martina, další technologii porozuměni řeči - zejména pomocí uznání toho, že cílem automatického rozpoznávání řeči je její porozumění - nejen porozumění slov. Tato technologie se stala funkční během roku 1980 a stále se rozvíjí a zdokonaluje i dnes. APRA také založila program Speach Understanding Research.[25] Souběžně s výzkumem ARPA v roce 1970 se začaly formovat dva široké směry ve výzkumu rozpoznávání řeči ze strany společnosti IBM a Bell Laboratories. Obě dvě společnosti představují v zásadě dvě různé školy myšlenek, které se týkají použitelnosti automatického rozpoznávání řeči pro komerční využití. Píle a úsilí IBM pod vedením Freda Jelinka byly zaměřené na vytvoření „psacího stroje“ aktivovaného hlasem, jehož hlavní funkcí by byl převod mluvené věty do pořadí písmen a slov, které by se dále uvádělo na displeji, nebo na papíře. Rozpoznávací systém nazývaný Angora byl v podstatě závislý na mluvčím, takže psací stroj vyžadoval školení od jednotlivých uživatelů. Technické zaměření bylo na velikosti slovníku, a také na struktuře jazykového modelu, který byl reprezentován pomocí statistických a syntaktických pravidel, která popisovala pravděpodobnostní sled jazykových symbolů ( fonémů a slov). Soubor statistických, gramatických a syntaktických pravidel tvořil tzv. jazykový model, který definoval pravděpodobnost výskytu uspořádaného pořadí slov. Ačkoli jsou jazykový model a gramatika projevy jednacího jazyka, jejich role byly zásadně odlišné. Jazykový model, který charakterizuje vztahy slov v rámci určitého rozpětí, se stal praktickou a statistickou reprezentací gramatiky.[8] Účinnost jazykového modelu byla prokázaná ve známé „slovo-hře“ Claudia Shannona, která tvoří soutěž mezi člověkem a počítačem. V této hře museli počítač a člověk postupně odhadnout další slovo v libovolné větě. Člověk odhaduje slova na základě svých zkušeností v rodném jazyce, počítač používá nahromaděné statistické údaje. Ukázalo se, že jakmile rozsah slov přesáhnul 3, pravděpodobnost, že počítač vyhraje, se zvyšovala Od konce roku 1970 se stalo dynamické programování nepostradatelnou technikou pro automatické rozpoznávání řeči, hlavně kvůli publikaci Sako a Chiba 13
Po roce 1975 byly navrženy společností Itakura a Rabiner Levinson základní myšlenky a technologie pro rozpoznávání řeči, které byly založené na metodě LPC.
2.3 Období 80., 90. léta Mezi systémy vytvořenými společností APRA patří také Harpy systém, který byl schopný rozpoznávat řeč pomocí vestavěného slovníku s obsahem 1011 slov, a přitom s dostatečnou přesností. Systém Harpy přispěl konceptem grafického vyhledávání, kde byl rozpoznávací jazyk reprezentován jako propojená síť z lexikálních reprezentací slov. Systém také zahrnoval syntaktická pravidla slovních hranic. V navrhovaném systému Harpy byla vstupní řeč po procházení parametrickou analýzou rozdělená a rozdělené parametrické sekvence řeči byly pak podrobené odpovídající telefonní šabloně. [1] Systém grafického vyhledávání na základě vyhledávacích algoritmů předpokládal, omezoval, a pak ověřoval uznávané pořadí slov (zvuků), které splňovalo určitá omezení a nejvíce odpovídalo referenčním modelům. Systém Harpy se stal prvním systémem, který využil stavové sítě k efektivnímu určení nejbližšího odpovídajícího řetězce. Podobné metody nevznikly až do počátku roku 1990. Další programy v rámci výzkumu společnosti SUR DAPRA jsou CMU, Hearsay II a BBN HWIM. Přístup k rozpoznávání řeči, použitý v Hearsay II, který zahrnuje paralelní asynchronní procesy, se stal průkopnickým konceptem. Systém Hearsay II rozšířil poznatky v oblasti analýzy zvukové identity na vyšší úrovni hypotéz. Systém HWIM, vyvinutý společností BBN, byl naopak známý pro využiti zajímavých nápadů včetně lexikální dekódovací sítě, která začlenila sofistikovaná fonologická pravidla (zaměřená na přesnost rozpoznávání fonémů). Další systém, který stojí za zmínku, je Dragon systém, vyvinutý Timem Bakerem, který pak založil firmu se stejným názvem v Massachusetts se na počátku roku 1980 . V této době laboratoř Bell se zaměřovala na design systému, který by nebyl závislý na mluvčím, a který by mohl řešit akustickou variabilitu řečových signálů. Tento záměr vedl k vytvoření řady algoritmů pro tvorbu referenčních modelů slov a zvuků (původně šablon, ale nakonec statistických modelů), které by mohly být použité v širokém rozsahu.
14
Cílem
výzkumného
programu
Laboratoře
Bell
bylo
poskytnout
veřejnosti
automatizované telekomunikační služby, jako je hlasové vrtačení, řízení a přesměrování telefonních hovorů. Očekávalo se, že tyto automatizované systémy budou dobře fungovat pro velké populace bez potřeby školení jednotlivých uživatelů. [8] Hlavním úkolem řečového rozhraní je porozumět lidské řeči a adekvátně reagovat na hlasové příkazy. Úkolem je také naučit jednotky rozumět řeči bez „prostředníka jazyka“, ve kterém lidé komunikují mezi sebou, což znamená, že je potřeba vymyslet algoritmus pro rozpoznání zvukového signálu řeči. Přesně tohle je účelem technologie rozpoznávání řeči. Poprvé se na trhu objevily systémy rozpoznávání příkazů závislé na mluvčím. V takových systémech je zvukový obraz příkazu uložen jako komplexní etalon. Pro porovnání neznámého obsazení a standardního příkazu se používá algoritmus dynamického programování. Tyto systémy dobře pracovaly s rozpoznáváním malých souborů tvořených 10-30 příkazy a rozuměly příkazům pouze jednoho mluvčího, pro řeč, na kterou byly nakonfigurovány, což znamená, že byly závislé na mluvčím. K tomu, aby se systém rozpoznávání řeči naučil rozumět jedinému slovu, bylo nutné vytvořit slovník, který je mnohem větší - od několika desítek až do stovek tisíc slov. Metody používané ve vyspělých systémech nejsou vhodné pro tento úkol, protože je zkrátka nemožné vytvořit standardy pro tak mnoho slov. Navíc bylo úkolem, aby systém nebyl závislý na mluvčím, a aby byl schopen rozumět řeči jakékoliv osoby. Jedná se o velmi obtížný úkol, protože každý člověk má vlastní styl, který mj. obsahuje rychlost řeči a hlasu, zvláštní výslovnost atd. Tyto rozdíly jsou nazývány variabilitou řeči. Pro to, aby se počítalo s variabilitou řeči, se navrhovaly nové statistické metody, které se odvíjely především od matematického aparátu skrytých Markovových modelů (HMM), nebo umělých neuronových sítí. Namísto vytváření etalonů pro každé slovo se vytvářela měřítka jednotlivých zvuků, které tvoří slova, takzvané akustické modely. Akustické modely se vytvářejí pomoci statistického zpracování velkých řečových databází obsahujících hlasové záznamy stovek lidí.[9] Kromě toho, že bereme v úvahu informace o zvuku, zakořeněného v akustickém modelu, musí se také brát v úvahu informace o jazyku. Mezi slovy ve větě existuje velký počet různých spojení- gramatických, syntaktických a sémantických. K popisu těchto vztahů musí byt vyvinut jazykový model, který má pro každý jazyk svou vlastní strukturu a parametry. Systémy
automatického
rozpoznávání
řeči
jsou
dnes
široce
používány
v nejrůznějších oblastech lidské činnosti. Zajišťují kvalifikované odhady toho, co bylo 15
řečeno. Hraje se o šance. Vytvářejí se statistické modely. Čím více dat je zadáno do systému, tím přesnější bude odhad. V roce 1980 se stal dostupný tzv. Braunův korpus – tělo laterálního textu, ve kterém nabídka digitálních slov dosáhla skoro milionu. Braunův korpus se stal základním zdrojem pro vývoj a provoz naprosté většiny jazykových aplikací. K tvůrcům prvního jazykového korpusu patří lingvista českého původu Henry Kučera. S vytvořením tohoto korpusu lingvistika dostala pro svá jednotlivá odvětví novou, kvalitativně i kvantitativně odlišnou materiálovou základnu. Lingvistika získala zcela nové prostředky, jak operativně a efektivně pracovat s materiálovou základnou jazykového korpusu. Pomocí Braunova korpusu se přeměnily s růstem používání internetu v roce 1990 miliony slov na biliony. To vedlo k tomu, že Google opublikoval trilionový lingvistický korpus v roce 2006. Přesnost rozpoznávání řeči vzrostla k nebi, ale stejně nebyla dosažená úroveň přesností lidské řeči. [volný překlad: 10] K nejviditelnějšímu používání rozpoznávání plynulé řeči se vztahuje vytvoření automatického přepisu, který může časem nahradit sekretářky při diktování textu dopisů, poznámek v deníku, zpráv aj. V tomto případě se zajišťuje v důsledku snížení nákladů na pracovní sílu nejen ekonomie, ale také se zvyšuje míra soukromí. V současné době jsou tyto systémy více prováděné v angličtině, stále však se spoustou omezení. Systémy rozpoznávání ruské a české řeči se v současné době aktivně vyvíjejí. Na základě rozpoznávání řeči se vyvíjí hlasem kontrolované charaktery pro videohry, slovníky a překladatele, zkrátka komplexní systémy dialogu člověk-počítač. Po dlouhé době očekávání se ve světě technologií rozpoznávání řeči zrodila dvojčata: Aplikovaná Inteligence Kurzweila a její soupeř Dragon Systems. Software Kurzweila mohl k začátku třetího věku porozumět skoro tisíci slov – ale jenom v případě, že slova se vyslovují pečlivě a pomalu. O dva roky později, v roce 1987, se slovní zásoba počítače rozšířila do 20 000 slov, což se vešlo do rozsahu obvyklých lidských slovníků, které obsahuji od 10 000 do 150 000 slov. Přesto přesnost rozpoznávání zůstávala na velmi nízké úrovní, a to s 90% neúspěšností v roce 1993. Během dalších dvou let se však situace zlepšila. Přesnost rozpoznávání se zvýšila na 50 %. [9]
2.4 Moderní komerční programy: Dragon Naturally Speaking Důležitou etapou v historii rozvoje řečových technologií bylo v roce 1997 uvedení nového produktu firmy Dragon Systems – Dragon Naturally Speaking, který byl schopný rozpoznávat „normální“ lidskou řeč. Takže roky snahy rozmluvit se s počítačem se 16
zdánlivě vyplatily. Nicméně, základní jazyk strojního zařízení, který od roku 1950 shromažďoval zvuky do celých slov, se nezměnil. Pokrok v technologiích byl způsoben hlavně rychlejšími počítači a zvýšením kvality digitálního textu. Systémy rozpoznávání řeči se staly tak pokročilé a zároveň běžné, že se obchodní a zdravotnické společnosti obracejí na řešení rozpoznávání řeči pro všechny účely, od poskytování telefonické podpory, až po psaní lékařských zpráv. Technologický pokrok způsobil zabezpečování softwarů s použitím funkce rozpoznávání řeči a 90 procent přesnosti. Rozpoznávání řeči se používá v široké škále aplikací pro uspokojování potřeb spotřebitelů a podniků tím, že zjednoduší interakce se zákazníky, zvyšuje účinnost a snižuje provozní náklady. Kromě toho společnost Business Intelligence (IBM) zvyšuje popularitu rozpoznávání řeči, a tím zvětšuje výnosy z 677 milionů dolarů v roce 2002 na 5,3 miliardy dolarů v roce 2008. Nedávným pokrokem v softwarech pro rozpoznávání řeči se stalo vytvoření dynamického prostředí. Tato technologie oslovuje opravdu každého, kdo potřebuje mít hands-free přístup k výpočetní technice. Proto pokračuje vytvoření velkých slovníků a rozvoj kontinuálního rozpoznávání řeči, více a více společností se ubírá směrem k technologiím rozpoznávání řeči a vyhledávají zajímavá odvětví, kde by se v oblasti moderních technologií mohly uplatnit. I když k největším pokrokům ve vývoji technologie rozpoznávání hlasu došlo v posledních dvou desetiletích, tato technologie začala opravdu již vynálezem Alexandra Grahama Bella v roce 1870. Bellem byl zjištěn proces převedení vlny tlaku vzduchu (zvuku) na elektrické impulsy, tím začal proces odkrývání vědeckého porozumění řeči na matematickém základě.[25] Během posledních dvou desetiletí technologie rozpoznávání hlasu dosáhla v systémech rozpoznávání souvislé řeči bodu real-time, což rozšiřuje možnosti zabezpečení, tvorby obsahu a vyřešení různých úkolů s mimořádně vysokou přesností.
17
3 Aplikace systémů rozpoznávání řeči Systémy rozpoznávání hlasu jsou aplikované v různých oblastech lidského života. Nejjednodušší systémy mohou byt použité pro hlasová vytáčení, přesměrování hovorů, ovládání domácích spotřebičů, zadávání jednoduchých dat, ale také pro přípravu strukturovaných dokumentů. V této kapitole jsou popsané následující oblastí využití řečových technologií, a to:
Ve zdravotnictví
V ozbrojených sílách
V Battle managementu
3.1 Využití systémů rozpoznávání řeči ve zdravotnictví Složitější programy se používají pro zpracování textů – převod řeči do textu např. ve zdravotnictví a v letectví. Nejnovější výzkumy v oblasti rozpoznávacích technologií znatelně odlehčují převod mluveného slova do elektronického textu. To zabezpečuje velkou výhodu pro pracovníky zdravotní péče, především pro lékaře. Během lékařského transkripčního procesu „diktování doktorem“ se do elektronického souboru konvertuje diktát pomocí člověka, který provádí lékařskou transkripci. Vytvořený soubor se pak odesílá doktorovi, který tento dokument uchovává v počítači pro další použití. Celý tento proces trvá docela dlouho, přičemž v transkripčním odvětví neexistuje žádný všeobecný standard, který by určoval přesný čas zpracování dat, a který by byl měřítkem pro všechny poskytovatele transkripčních služeb. Toto je nejslabší místo lékařského transkripčního procesu, které může být ale jednoduše překonáno pomocí využití technologií rozpoznávání řeči. V současné době existují dva typy softwarů, určených pro výše zmíněné účely. První typ se nazývá Front-End software, druhý – Back-End software. Obě dvě zmíněné varianty mají svoje výhody a nedostatky. [10] V případě Front-End softwaru lékař diktuje a upravuje transkripční report, což znamená, že pomoc pracovníka anebo editora, který se zabývá transkripcí, není nutná. Pro lékaře je tento typ softwarové aplikace výhodný, protože může ušetřit čas v jeho plném rozvrhu. Nevýhodou Front-End softwaru je to, že v případě nepřítomnosti transkriptora nebo editora nelze zaručit přesnost vygenerovaného reportu, protože v současné době existující programy nejsou stoprocentně přesné. Kromě toho se 19
v případě, že si lékař nevšimne chyby během transkripčního procesu, ovlivní pravděpodobně velmi negativně celá léčba. Co se týče Back-End softwaru, zde musí mluvčí diktovat do digitálního diktovacího systému. Hlasový soubor společně s návrhem se následně odesílá pro editaci k lékařskému transkriptoru. Po úpravě a finalizaci souboru se report posílá zpátky k doktorovi na ověření a podpis. Tím pádem se přesnost, totiž výsledek rozpoznávacího softwaru, zvyšuje pomocí transkriptora, který filtruje a opravuje chyby. Mnozí lékaři preferují tento typ softwaru. Většina pracovníků zdravotnické péče považují za užitečnou integraci programů pro rozpoznávání řeči typu Back-End s transkripčním procesem. Takto se zkracuje doba zpracování dat, a zároveň je úroveň přesnosti stále vysoká. Vyhledávání, dotazy a vyplňování formulářů se dá mnohem rychleji provést hlasem, než pomocí klávesnice. Řešení v oblasti zdravotní péče jsou velmi specifická dle každého státu, nicméně některé firmy se snaží přizpůsobit řešení pro potřeby konkrétního trhu.
3.2 Ozbrojené síly a řečové technologie Technologie rozpoznávání řeči jsou také hodně používané v ozbrojených silách, například ve vysokovýkonných bojových letadlech. Značné úsilí bylo v posledních deseti letech věnované testování a vyhodnocování systémů rozpoznávání řeči pro stíhací letadla. Za zmínku stojí program USA věnovaný rozpoznávání řeči pro pokročilou stíhací integrační technologii pro letadlo typu F-16 VISTA, a také francouzský program pro instalaci systémů rozpoznávání řeči v letadlech Mirage. Také jsou již vyvinuté výjimečné programy ve Velké Británii, zabývající se různými platformy letadel. V těchto programech se úspěšně ukázaly vyvinuté rozpoznávače řeči ve stíhacích letadlech s aplikacemi včetně následujících funkcí: nastavení radiofrekvence, komandního a auto pilotního systému, který je dokonce schopný sledovat bodové souřadnice a parametry uvolnění zbraně, plus také funkci letového displeje. Během práce se Švédskými piloty, létajícími na JAS-39, Englung v roce 2004 zjistil, že rozpoznávání se zhoršuje s růstem G-zatížení. Dalo by se taky očekávat, že úroveň přesnosti rozpoznávání se zhorší kvůli používání nepravopisné angličtiny, ale negativní účinky lámané angličtiny nebyly v tomto případě zjištěné. Je samozřejmosti, že spontánní řečový projev způsoboval problémy při rozpoznávání, což bylo i očekáváno. Nedostatečná slovní zásoba programů a především nesprávná syntaxe podstatně omezují přesnost rozpoznávání řeči. 20
V současné době letoun typu Eurofighter Typhoon, jehož výrobcem je britská firma RAF UK, používá systém závislý na mluvčím, což znamená, že je vyžadováno, aby každý pilot vytvořil vlastní šablonu. Tento systém se nedá použít pro kritické, bezpečnostní anebo zbraňové úkoly (např. uvolnění zbraně), ale je použitelný pro celou řadu dalších kabinových funkcí. Hlasové příkazy jsou v tomto případě vždycky potvrzené vizuální, anebo sluchovou zpětnou vazbou. Systém představuje hlavní konstrukční prvek, který vede ke snižování pracovního zatížení pilota, a dokonce umožňuje pilotovi přiřazovat cíle pomocí jednoduchých příkazů. Tyto systémy jsou v současné době také vyvíjené a jsou v procesu testování pro letoun typu F35 Lightning II a Alenia Aermacchi M-346. Úroveň přesností těchto systémů se přibližuje k 98 %. [21] Systémy rozpoznávání řeči se také používají ve vrtulnících. V tomto případě je hlavním problémem pro rozpoznávání hluk. Pilot vrtulníku obvykle nenosí masku, která by mohla snížit hlučnost v mikrofonu. V posledních deseti letech byly provedené důležité zkoušky a hodnocení programů, zejména americkou armádou Avionics, která se zabývá výzkumnou a vývojovou činností, a také se tomu věnuje královský letecký podnik ve Velké Británii. Ve Francii se vyvíjí rozpoznávač řeči pro vrtulník Puma. Poměrně efektivní jsou také výzkumné práce v Kanadě. Ke zkoumaným hlasovým aplikacím patří kontrola rádio-komunikace, navigační systémy a řízení auta pilotního režimu.
3.3 Battle management a systémy rozpoznávání řeči Systémy rozpoznávání řeči jsou také použitelné v tzv. Battle managementu. Battle management řídících středisek zpravidla vyžaduje rychlý přístup k řízení velkých, rychle se měnících informačních databází. Vedoucí a systémový operátor je potřeba, aby byly databáze co nejpohodlnější pro použití a zároveň přehledné, aby se dalo rychle a přesně orientovat v informačním prostředí, které se zobrazuje na displeji. Již byla podniknuta celá řada pokusů o vytvoření komerčního rozpoznávače pro prostředí Battle managementu. Byla také provedena studie rozpoznávacího zařízení, které bylo testováno spolu s integrovaným informačním systémem pro aplikaci v námořní bitvě. Uživatelé byli celkem nadšeni potenciálem systému, i když možnosti tohoto systému jsou stále omezené. Školící program pro řidiče letového provozu (ATC) představuje vynikající aplikace systémů rozpoznávání řeči. Mnoho ATC systémů v současné době vyžaduje, aby uživatel jednal jako „pseudo-pilot“, zapojil se do hlasového dialogu se zkušebním řidičem, což pomáhá simulovat dialog v reální ATC situaci. 21
V současné době se využívají softwary pro rozpoznávání řeči také pro automatický překlad, v automobilním průmyslu, v telematice, v Real Time Voice writing, v hands-free počítačových systémech, pro interaktivní hlasové odpovědi, v oblasti mobilní telefonie, v multimediální interakci a také ve videohrách.
22
4 Popis principu rozpoznávání řeči počítačem Rozpoznávání řeči představuje víceúrovňový úkol rozpoznávání obrazů, ve kterém jsou akustické signály analyzovány a strukturovány do hierarchie konstrukčních prvků (např. fonémy, slova, fráze a věty). Každá úroveň hierarchie může poskytnout určitý dočasný konstant, např. možné sekvence slov, nebo známé typy výslovnosti, které snižují počet chyb při rozpoznávání na nižší úrovni. Čím více informací víme o vstupním signálu, tím snadněji dokážeme zpracovat a rozpoznat tuto informaci.
4.1 Jednotlivé etapy procesu Proces rozpoznávání hlasu probíhá v několika fázích. V každé fázi zpracování řečového signálu se používá několik různých metod. Proces rozpoznávání hlasu lze rozdělit do několika hlavních etap. Nyní podrobněji o jednotlivých etapách. (viz obrázek č.4.1.1)
Příjem hlasového signálu
Analýza signálu
Řečový záběr
Akustické modely
Akustická analýza
Mnoho záběrů
Korigování času
Pořadí slov
Testování
Segmentace
Obrázek 4.1.1: Etapy rozpoznávání [8]
23
První etapou je příjem hlasového signálu a předběžné zpracování řeči.
Během druhé etapy jde o rozpoznávání fonémů a slov. Třetí závěrečnou etapou je porozumění řeči.
Získávání hlasového signálu neboli diskretizace hlasu je definovaná jako proces získávání a zpracování zvukového signálu. Hlas je reprezentován jako změny akustického tlaku v mikrofonu, pro které jsou charakteristické relativně nízkofrekvenční signály v rozsahu od cca 0 až 4 kHz. Existují dva typy zvuků: znělé a neznělé. Znělé zvuky se tvoří vibracemi hlasivek při průchodu zvuku. Tento akustický signál je modulován napětím hlasivek. Vibrace rezonují v hlasovém kanálu. Proud vzduchu, který vytváří zvuk, se nazývá vlnou vzniklou v hlasivkách. Tento signál je kvaziperiodický a jeho doba trvání se nazývá dobou trvání základního tónu. Resonanční signál znělých zvuků se obvykle skládá ze čtyř frekvenčních složek – tzv. formantů. Formanty jsou hlasovým razítkem pro různé zvuky produkované
lidským
řečovým
aparátem.
Neznělé
zvuky
jsou
produkované tak, že vzduch prochází hlasovým kanálem bez vibrací hlasivek. Oba typy zvuků jsou považované za časové řady dat, převzaté z pravidelných časových intervalů. Pro izolaci požadovaného intervalu se používají prostorová okna. Některé funkce okna vypočítávají průměrnou amplitudu, počet nulových přechodů a transformace „Fourierova signálu“ během intervalu. Pro odstranění hluku se používají různé filtrační techniky.
Pro rozpoznávání fonémů a skupin fonémů se používají takové metody, jako „skrytý Markův model“ a uměle neuronové sítě, anebo kombinace obojích.
Třetí nejsložitější etapou procesu rozpoznávání řeči je porozumění řeči. „Rozumět“ řeči je to nejtěžší. V této fázi musí být pořadí slov ve větě přeměněné na reprezentaci toho, co chtěl mluvčí říct. Je dobře známo, že porozumění řeči je založené na obrovském množství jazykových a kulturních znalostí. Většina systémů pro rozpoznávání hlasu disponuje znalostmi o přirozeném jazyku a konkrétních okolností.
24
4.2 Problémy a překážky při rozpoznávání Jedním z hlavních problémů při rozpoznávání hlasu je rozpoznávání mluvčího, tj. proces automatického určování toho, “kdo řekl”, na základě individuální informace vstupující do řečového signálu. V tomto případě můžeme mluvit o identifikaci nebo ověření reproduktoru. Identifikace je nalezení kontrolních frází v určitém množství, které odpovídá způsobu mluvení reproduktoru. Verifikace mluvčího je zjišťováni identity mluvčího. Technologie rozpoznávání mluvčího umožňuje využívat hlas pro řízení přístupu, např. telefonní přístup k bankovním službám, k databázím, na e-komerce systému, anebo v hlasové poště, a také přístup k tajemnému zařízení. Obě tyto technologie požadují, aby byl uživatel zařazen do systému, takže musí nechat zapsat vzor své řeči, podle kterého systém může vybudovat šablonu. Na cestě rozvoje rozpoznávání řeči stoji několik zásadních překážek.
Jednou z nich je nedostatečný objem slovníků.
Druhá je vytvoření šablony nepřetržité řeči, třetí překážkou jsou pak různé přízvuky a výslovnost.
Toto jsou nejdůležitější překážky pro automatizované systémy rozpoznávání hlasu, ale existuji také i další problémy, jako např. porozumění sémantice řeči aj. Objemy slovníků definují stupeň složitosti, požadavky na výpočetní výkon a spolehlivost systémů rozpoznávání hlasu. Je možné přizpůsobit se k nepřetržitému toku řeči, ale existují také přísná sémantická pravidla, podle kterých je potřeba se řídit, aby byl systém schopen pochopit sémantiku kombinace slov ve větě. Stále je potřeba pokračovat v důkladném výzkumu, což může pomoci se „vyrovnat” s takovými vlastnostmi řeči, jako je morfologie, důraz, výška zvuku, rychlost, hlasitost, slučování slov, kontext, artikulace, lingvistická informace, synonyma atd. Předpokládá se, že hlavním směrem vývoje se stane modelování jazyků, které by mohlo být použité v systémech pro rozpoznávání řeči. Nebyl dokonce vyřešen problém oddělení řečového signálu od hlukového pozadí. V současné době jsou uživatelé systémů rozpoznávání řeči nuceni buď pracovat v podmínkách minimálního hlukového pozadí, anebo nosit helmu s mikrofonem u úst. Kromě toho musí uživatel “informovat” počítač o tom, co se právě děje. Samozřejmě, že to není nejlepší varianta uživatelského rozhraní. Řešení těchto problémů již bylo zahájeno, a již byly obdrženy nadějné výsledky. 25
Jedním z dlouho očekávaných vývojů v oblasti rozpoznávání hlasu se staly dialogové systémy typu člověk-stroj; výzkumem těchto systémů se zabývají ve mnoha laboratořích a vysokých školách. Tyto systémy jsou schopné pracovat s nepřetržitým řečovým tokem a s neznámými mluvčími, chápat význam fragmentů řeči. Tyto systémy pracují v reálném čase a jsou schopné vykonávat pět funkci: rozpoznávání řeči – převod řeči do textu, skládající se z jednotlivých slov; porozumění – analýza vět a porozuměni významu; obnova informací – získávání dat z operačních zdrojů na základě sémantického významu; generování lingvistické informace – budování vět, reprezentujících obdržené údaje, ve vybraném jazyku; syntéza řeči – převod vět do syntetizované počítačové řeči.
26
5 Klasifikace systémů rozpoznávání řeči Každý sytém pro rozpoznávání řeči má nějaké problémy, které musí řešit, a také komplex přístupů, který je pak aplikován pro řešení určitých úkolů. Podíváme se na hlavní charakteristiky, podle kterých mohou být klasifikované systémy rozpoznávání lidské řeči, a také na to, jak určitá (dis)funkce může ovlivnit výkon celého systému. Jednou z nejdůležitějších charakteristik je velikost slovníku systému. Je zřejmé, že čím větší je obsah slovníku zapsaného do systému rozpoznávání, tím větší je četnost chyb při rozpoznávání slov systémem. Například slovník, který se skládá z 10 číslic, může být rozpoznáván prakticky bezchybně, zatímco četnost chyb při rozpoznávání slovníku velikosti 100000 může dosáhnout až 45% chybovosti. Na druhou stranu může rozpoznávání malého slovníku produkovat velké množství chyb, pokud jsou si slova v tomto slovníku navzájem velmi podobné. Dalším bodem ve kvalifikaci systémů je to, zda je systém závislý na mluvčím, anebo není. Podle definice je systém závislý na mluvčím určený pro použiti jedním uživatelem, zatímco systém nezávislý na mluvčím je navržen pro práci s jakýmkoliv uživatelem. Nezávislost na mluvčím – těžko dosažitelný cíl, protože během procesu školení systému se systém konfiguruje podle parametrů mluvčího. Četnost chyb rozpoznávání takových systémů je obvykle 3-5 krát vyšší než četnost chyb v systémech, které jsou závislé na mluvčím. Dále se systémy klasifikují podle toho, zda jsou schopné rozpoznávat plynulou řeč, anebo jenom oddělenou. Pokud je v řeči každé slovo oddělené od dalšího chvílí ticha, pak říkáme, že tato řeč je oddělená. Plynulou řečí rozumíme přirozeně vyslovené věty. Rozpoznávání plynulé řeči je mnohem obtížnější vzhledem k tomu, že hranice jednotlivých slov nejsou jasně vymezené a jejich výslovnost je silně narušena rozmazáním vyslovených zvuků. Posledním a velmi důležitým bodem je účel systému rozpoznávání řeči. Účel systému určuje požadovanou úroveň abstrakce, na kterém se bude provádět rozpoznávání řeči. V příkazovém systému (např. hlasové vytáčení v mobilním telefonu) bude pravděpodobně rozpoznávání slov či frází probíhat jako rozpoznávání jediného řečového prvku, přičemž systém diktátu bude vyžadovat velkou přesnost rozpoznávání a s největší pravděpodobností se bude při procesu interpretace vyslovené věty opírat nejen o to, co bylo vyslovené v tuto chvíli, ale také o to, co bylo vyslovené předtím.
26
Navíc v systému musí být integrovaný soubor gramatických pravidel. Čím přesnější pravidla jsou, tím snazší je realizovat systém rozpoznávání řeči. Při vytváření systému rozpoznávání řeči je třeba zvolit úroveň abstrakce, která je adekvátní pro konkrétní úkol, dále je také nutné zvolit parametry zvukové vlny, které budou použity pro rozpoznávání, a v neposlední řadě také metody pro zjišťování těchto parametrů. Podíváme se na základní rozdíly ve struktuře a procesu fungování různých systémů rozpoznávání řeči. (viz obrázek 5.1)
27
Rozpoznávání řeči Dle spotřebitelských charakteristik Závislé na mluvčím
Nezávislé na mluvčím Dle velikostí slovníku
Ohraničený počet slov
Slovník velkého rozsahu Dle typu řeči Plynula řeč
Jednotná slova Dle funkce Příkazové systémy
Systémy diktovky
Rozpoznávací systémy
Dle typu strukturní jednotky Alofon
Fonéma
Diafon, Trifon
Slovo, fráze
Kepstrální analýza
Velvetová analýza
Dle extrakce příznaků Spektrální analýza
Koeficienty lineárního předpokladu
Dle funkčního mechanizmu Expertní systémy
Jednoduché detektory
Zpětného úkolu nalezení artikulačních parametrů Pravděpodobnostně-sitové Markovské procesy Dynamické programování Metoda neuronových sítí
Obrázek 5.1: Klasifikace systémů pro rozpoznávání řeči
25
Programy rozpoznávání řeči se dají rozlišovat podle strukturální jednotky. Během procesu analýzy řeči mohou být jako základní jednotka vybrána jednotlivá slova, anebo jednotlivé časti vysloveného slova, jako jsou fonémy, tritóny a alofóny. Podle toho, jaká strukturní část byla vybrána, se mění struktura, všestrannost a komplexnost slovníku prvků určených pro rozpoznávání. Dále se zkoumané programy liší dle extrakce příznaků. Pořadí počítání tlaku zvukové vlny je příliš nadměrné pro systémy rozpoznávání zvuků a obsahuje spoustu zbytečných informací, které nejsou nutné pro samotný proces rozpoznávání, anebo, dokonce, škodlivé. Pro uznání řečového signálu je z něj potřeba dostat jakékoliv parametry, které dostatečně reprezentují tento signál pro rozpoznávání. Programy se také rozlišují dle mechanismu fungování. V moderních systémech jsou široce používány různé přístupy mechanismů fungování systémů rozpoznávání řeči. Pravděpodobnostní síťový přístup je takový, že se řečový signál rozdělí do určitých částí, potom se provádí pravděpodobnostní odhad toho, ke kterému prvku slovníku se vztahuje určitá část, rozuměj celý vstupní signál. Přístup, který je založený na řešení inverzního problému syntézu zvuku je v tom, že podle vstupního signálu se zjišťuje charakter pohybu artikulátorů řečového traktu a pomocí speciálního slovníku se zjišťují vyslovené fonémy.
32
6 Současný stav na trhu technologií pro ovládání PC hlasem O očekávaném výbuchu na trhu řečových technologií svědčí nejenom nekonečné rozhovory o těchto technologiích, ale také bezkompromisní čísla a grafy ve zprávách od předních světových analytických společností. Odborníci, kteří spolupracují s mediální korporací CNN, považují rozpoznávání řeči za jednu z osmi nejperspektivnějších technologií.
Mlrd. USD
Růst trhu řečových technologií 5 4.5 4 3.5 3 2.5 2 1.5 1 0.5 0 1998
2000
2002
2004
2006
Rok Obrázek 6.1: Růst trhu řečových technologií v letech 2000-2005 [10]
33
Rozdělení trhu řečových technologií
1%
3%
96%
akustické systémy identifikace hlasu automatické rozpoznávání řeči
Obrázek 6.2: Rozdělení trhu řečových technologií Všeobecně se považuje, že se lidstvo nachází na pokraji boomu, průlomu, který povede k vážné redistribuci stávajícího high-tech trhu, a díky tomu se uvolní obrovské finanční prostředky. Boj za obdržení těchto prostředků probíhá jíž dnes, přičemž hlavni “bitva” se odehrává mezi softwarovými společnostmi v oblasti automatického rozpoznávání řeči. V dnešní době existuje největší poptávka po dvou hlavních druzích těchto systémů: Prvním druhem jsou automatická call-centra, neboli help desky, které jsou schopné odpovědět na jednoduché příchozí otázky. Automatické
zpracování
telefonních
hovorů
je
provozováno
americkým
telekomunikačním operátorem AT&T, investiční bankou Charles Schwab & Co, maloobchodní sítí Sears, a také obchodním řetězcem supermarketů Roebuck. I když je v současnosti lídrem tohoto typu podle množství používaných call-center Amerika, výhodu těchto systémů si v poslední době začínají uvědomovat i v Evropě. Například švýcarské železnice již poskytují svým německy mluvicím cestujícím podobné služby, které poskytují United Airways. Automatické call-centrum je dobré řešení, ale velmi náročné a nákladné. Navíc kromě toho, že počet společností, které jsou schopné nainstalovat tyto systémy, je velmi
34
omezený, nebude již mít tento segment trhu miliardové obraty, jelikož už nemůže nadále růst. Druhým nejpopulárnějším produktem v naší době, založeném na technologiích rozpoznávání řeči, je specializovaný systém pro diktování. Tyto systémy jsou určeny pro specialisty určitých profesí. Nyní se podíváme na očekávaný růst na trhu řečových technologií. Trh technologií pro rozpoznávání hlasu vzroste podle odhadů o 8,8 % v 2015 v porovnání s rokem 2010. Celková velikost trhu v hodnotě 38,4 miliard dolarů v roce 2011 má dosáhnout 58,4 miliard dolarů v roce 2015. Trh hardwaru pro přenos signálu a pro snížení okolního hluku dosáhl hodnoty 16,5 miliard dolarů v roce 2010 a odhadovaný růst k roku 2015 činí 9,8 %; (viz. obrázek 6.2). Technologie automatického rozpoznávání řeči a text-to-speach software tvořil 13,6 miliard dolarů v roce 2010, v roce 2015 se pravděpodobně zvýší na 18,9 miliard dolarů. [32]
Přehled celosvětového trhu technologií pro hlasové o v lá d á n í
30 25 20 Bln. USD 15
Software Hardware Ostatní zařízení
10 5 0 2009
2010
2015
Rok
Obrázek 6.3: Přehled celosvětového trhu technologií pro hlasové ovládání [32]
35
7 Rešerše a popis aplikací pro rozpoznávání hlasu Nejvíce propracovaných programů existuje zatím pro anglický jazyk. Pro češtinu a ruštinu jsou tyto programy složitější převážně kvůli mnohem větším slovníkům, které musí obsahovat všechny možné varianty slov. Problémem vytvoření efektivních programů pro rozpoznávání řeči pro slovanské jazyky je také volné pořadí slov, což je v angličtině více striktní. Využití každé varianty slova ve slovníku programu jako jiného slova vede ke zmenšení procenta přesnosti rozpoznávání, ačkoli se u těchto slov liší většinou jen koncovky. Dalším problémem je průměrná délka slova, která je ve slovanských jazycích mnohem větší něž v angličtině. Po provedení rešerší programů určených pro hlasové ovládání počítače jsem vybrala deset programů, které podporují ovládání v různých jazycích. Zde je uveden seznam a krátký popis těchto programů:
MyDictate o Tvůrci tohoto programu brali zřetel zejména na handicapované osoby, které nemůžou používat ruce.
o Výhodou je možnost diktování všem osobám schopným dobře vyslovovat a současně očima sledovat dění na monitoru počítače, přičemž jsou diktována jednotlivá slova, mezi kterými je nutné vždy udělat krátkou pauzu.
o Diktovat lze do libovolného programu běžícího pod operačním systémem Windows XP CZ, a to do místa, kde je umístěn kurzor.
JetVoice. o
Program JetVoice je určen pro běžné uživatele počítače.
o
Nahrávání probíhá pomocí mikrofonu. Program je schopný nahrát řadu příkazů, které budou provedeny po pouhém vyslovení po dokončení nahrávání.
o
Příkazy mohou být různé, od spouštění nějakého programu, přes zkratkovou klávesu až po otevření CD-ROM.
32
Dragon Naturally Speaking. o
Tento program uvítají zejména vytížení firemní pracovníci.
o
Díky Dragon Naturally Speaking programu mohou uživatelé diktovat dokumenty, posílat e-maily či vyhledávat na webu.
Diktograf. o
Diktograf byl vyvinut cíleně pro běžné uživatele. Umožňuje ovládat některé funkce počítače za pomoci hlasových příkazů, a také je pomocníkem pro diktování textu v libovolném textovém editoru.
Simon 0.3. o
Běžní uživatelé mohou dále využívat výhod programu Simon 0.3, který se skládá z balíčku akcí pro jednu konkrétní úlohu. Tou může být ovládání myši, Firefoxu, přehrávače hudby apod., navíc tento program zvládá rozpoznat řeč i bez tréninku.
Dictation 2005 o
Program je vytvořený pro běžné uživatele počítače – využívá se pro účely diktování textu do textového redaktoru a hlasového ovládání jiných programů.
o
Funguje na platformě Windows
Speak To Text o
Je to jednoduchý detektor. Používá se pro ovládání jiných programů v počítači pomocí hlasových příkazů
o
Funguje na platformě Windows
Tatzi 2.0 o
Jednoduchý program pro ovládání počítače hlasem za pomocí anglických příkazů
o
Funguje na platformě Windows
Detailní popis výše zmíněných programů dle jednotlivých kriterií je uveden v následující tabulce:
33
jazyk
Cena
závislost na mluvčím
velikost slovníku
typ řeči
funkce
typ strukturní jednotky
funkční mechanizmus
rozšíření slovníku uživatelem
MyDictate
CZ
9.308,- Kč
ano
velký
jednotná slova
diktování
fonémy
expertní systém
ano
JetVoice
AJ
Zdarma
ano
malý
jednotná slova
jednotlivé příkazy
slova
jednoduchý detektor
ne
Dragon Naturally Speaking
AJ
3.351,- Kč
ne
velký
plynulá řeč
diktování
slova, fráze
expertní systém
ano
Diktograf
RU
Zdarma
ano
střední
plynulá řeč
diktování
slova, fráze
expertní systém
ano
Simon 0.3
AJ
Zdarma
ano
malý
jednotná slova
jednotlivé příkazy
fonémy
jednoduchý detektor
ne
Dictation 2005
AJ
Zdarma
ano
střední
plynulá řeč
diktování
slova, fráze
expertní systém
ano
SpeakToText
AJ
Zdarma
ano
střední
jednotná slova
diktování
slova, fráze
jednoduchý detektor
ano
Tatzi 2.0
AJ
Zdarma
ano
malý
jednotná slova
jednotlivé příkazy
slova
jednoduchý detektor
ne
Perpetum Mobile
RU
1.500,- Kč
ano
velký
jednotná slova
diktování
slova, fráze
expertní systém
ano
Název programu
Tabulka 7.1: Popis programů
34
7.1 Vícekriteriální rozhodování při výběru programu Obecnou součástí vícekriteriálního rozhodování mezi variantami výběru programu je šest relativně samostatných kroků (33):
vytvoření účelově orientované množiny kritérií hodnocení
stanovení vah kriterií hodnocení
stanovení vzorových hodnot vah kriterií (etalonů)
hodnocení dosažených výsledků variant
posouzení rizika spojeného s případnou realizací variant
určení preferenčního pořadí variant a výběr nejlepší varianty
Diagram 7.1.1:.Obecný postup vicekriteriálního hodnocení
35
7.1.1 Vytvoření množiny kriterií hodnocení Sestavení kritérií hodnocení řečových programů je vůbec základním krokem celého postupu vícekriteriálního hodnocení existujících variant. Jejich špatným zvolením můžeme významně ovlivnit celkový výsledek hodnocení. Prvním bodem pro vhodné zvolení kritérií je dostatečné poznání samotného objektu hodnocení a systémové pochopení jeho struktury a funkcí. Není-li soubor kriterií úplný, může dojit k hrubému zkreslení výsledků hodnocení. V této bakalářské práci jsou objekty vícekriteriálního rozhodování programy pro ovládání PC hlasem. Pro výběr nejvhodnějšího programu jsem stanovila následující kritéria:
Jazyk programu
Cena programu
Závislost na mluvčím
Velikost slovníku programu
Schopnost programu rozpoznávat plynulou řeč
Funkce programu
Typ strukturní jednotky
Funkční mechanismus programu
Možnost rozšíření slovníku uživatelem
7.1.2 Stanovení vah kriterií Stanovení vah kriterií je dalším postupem multikriteriálního hodnocení. Úzce závisí na úplnosti soustavy kritérií, které jsou odrazem podstatných vlastností dané varianty. Pro stanovení vah kritérií existuje celá řada různých metod. V daném případě jsem zvolila metodu párového srovnání kriterií, tzv. Fullerovou metodu. Podstatou této metody je zvolit, které ze dvou kritérií je při párovém srovnání důležitější. Dvě kritéria se postupně srovnávají mezi sebou, čili počet porovnání se vypočítá vzorcem:
N k ,2
k k 1 2
(Vzorec 1)
36
Srovnání se provádí v tzv. Fullerově trojúhelníku. Kritéria se pevně očíslují pořadovými čísly 1,2,…,k. Dále se vytvoří trojúhelníkové schéma, jehož dvouřádky tvoří dvojice pořadových čísel uspořádaných tak, že se každá dvojice kriterií vyskytne právě jedenkrát. Poté je nutné označit zakroužkováním u každé dvojice to kriterium, které je považované za důležitější. Počet zakroužkování i-tého kritéria označíme ni. Váha i-tého kritéria se pak vypočte dle tohoto vzorce:
i
ni ; i 1,2,..., k N
(Vzorec 2)
Fůlleruv trojúhelník má následující schéma:
Obrázek 7.1.2.1: Fullerův trojúhelník (34) Výhodou této metody je jednoduchost vyžadované informace od uživatele. Po úpravách je možno připustit i situaci, že některá kritéria jsou stejně důležitá nebo nesrovnatelná.
37
Označíme kritéria z podkapitoly 7.1.1 následujícím způsobem: Jazyk programu
1
Cena programu
2
Závislost na mluvčím
3
Velikost slovníku programu
4
Schopnost programu
5
rozpoznávat plynulou řeč Funkce programu
6
Typ strukturní jednotky
7
Funkční mechanismus
8
Možnost rozšíření slovníku
9
uživatelem Tabulka 7.1.2.1: Kritéria Pomocí těchto kritérií můžeme sestavit Füllerův trojúhelník a následně spočítat váhy kriterií:
1 1 1 2 3 4 2 2 3 4 3 4
1 1 1 1 1 5 6 7 8 9 2 2 2 2 2 5 6 7 8 9 3 3 3 3 3 5 6 7 8 9 4 4 4 4 4 5 6 7 8 9 5 5 5 5 6 7 8 9 6 6 6 7 8 9 7 7 8 9 8 9
Obrázek 7.2.1.2 : Výpočet vah kritérií pomocí Füllerova trojúhelníku
38
Dle vztahu nyní určíme váhy jednotlivých kritérií, tedy důležitost, jakou jim přisuzujeme:
i
Kritérium kritérium 1 - Jazyk programu
0,083
kritérium 2 - Cena programu
0,194
kritérium 3 - Závislost na mluvčím
0,167
kritérium 4 - Velikost slovníku programu
0,056
kritérium 5 - Schopnost programu rozpoznávat plynulou řeč
0,194
kritérium 6 - Funkce programu
0,083
kritérium 7 - Typ strukturní jednotky
0
kritérium 8 - Funkční mechanismus programu
0,140
kritérium 9 – Možnost rozšíření slovníku uživatelem
0,083
Suma vah všech kritérií
1,000
Tabulka 7.2.1.2: Váhy kritérií vypočtené metodou Füllerova trojúhelníku Nyní můžeme seřadit tato kritéria dle stupně důležitosti: Pořadí
Kritérium
1 2
kritérium 5 - Schopnost programu rozpoznávat plynulou řeč kritérium 2 - Cena programu
3
kritérium 3 - Závislost na mluvčím
4
kritérium 8 - Funkční mechanizmus programu
5
kritérium 6 - Funkce programu
6
kritérium 1 - Jazyk programu
7
kritérium 9 - Možnost rozšíření slovníku uživatelem
8
kritérium 4 - Velikost slovníku programu
9
kritérium 7 - Typ strukturní jednotky Tabulka 7.2.1.3: Kritéria dle stupně důležitosti
39
7.1.3 Stanovení etalonů kriterií Nynějším úkolem je stanovení souboru vzorových hodnot kritérií:
Vzorová hodnota
Kritérium kritérium 1 - Jazyk programu
čeština
kritérium 2 - Cena programu
bezplatný
kritérium 3 - Závislost na mluvčím
není
kritérium 4 - Velikost slovníku programu
velký
kritérium 5 - Schopnost programu rozpoznávat plynulou řeč
ano
kritérium 6 - Funkce programu
diktování
kritérium 7 - Typ strukturní jednotky
slova, fráze
kritérium 8 - Funkční mechanismus programu
expertní systém
kritérium 9 - Možnost rozšíření slovníku uživatelem
ano
Tabulka 7.1.3.1: Etalony kriterií
40
7.1.4 Výběr nejlepší varianty pomocí metody TOPSIS Pro výběr nejvhodnější varianty v daném případě je vhodné použit jednu z metod, založených na minimalizaci vzdálenosti od ideálního řešení. Tyto metody jsou založeny na posouzení variant podle jejich vzdálenosti od fiktivní varianty, jinak také řečeno ideální či bazální varianty, a na kardinálním hodnoceni variant podle jednotlivých kriterií a jejich vah. V mém případě řešení úlohy o výběru nejlepšího programu jsem se rozhodla použít metodu TOPSIS (Technique for Order Preference by Similarity to Ideal Solution.) Metoda TOPSIS je založena na výběru varianty, která je nejblíže k ideální variantě a současně nejdále od bazální varianty.
Ideální varianta – ve všech kriteriích nabývá nejlepších hodnot
Bazální varianta – ve všech kriteriích nabývá nejhorších hodnot
Předpokládá se maximalizační a kvantitativní charakter všech kriterií. Převedeme všechna kvalitativní kritéria na kvantitativní (viz tabulka 7.1.4.1)
41
jazyk
závislost na mluvčím
velikost slovníku
funkce
typ strukturní jednotky
funkční mechanismus
rozšíření slovníku uživatelem
typ řeči
MyDictate
3
1
3
2
3
3
3
3
JetVoice
2
1
1
2
2
3
2
1
Dragon Naturally Speaking
2
3
3
3
3
3
3
3
Diktograf
1
1
2
3
3
3
3
3
Simon 0.3
2
1
1
2
2
3
2
1
Dictation 2005
2
1
2
3
3
3
3
3
SpeakToText
2
1
2
2
3
3
2
3
Tatzi 2.0
2
1
1
2
2
3
2
1
Perpetum Mobile
1
1
3
2
3
3
3
3
Název programu
Tabulka 7.1.4.1: Převod kvantitativních kriterií na kvalitativní
42
Podruhé je nutné vytvořit normalizovanou kriteriální matici Aij, kde i=1, 2, ..., m; j=1, 2,
..., n. Normalizované hodnoty kritérií spočítáme dle následujícího vzorce:
b
ij
a m
ij
a i 1
(Vzorec 3) 2 ij
43
Kritéria
Varianty řešení
f1
f2 -
f3
f4
f5
f6
f7
f8
f9
0,169
0,507
0,169
0,338
0,169
0,338
0,338
0,169
0,169
0,169
0,169
0,338
0,169
0,169
0,338
0,507
0,338
0,338
0,507
0,338
0,338
MyDictate
0,507
JetVoice
0,338
Dragon N.S.
0,338
Diktograf
0,169
0
0,169
0,338
0,338
0,338
0,507
0,169
0,338
Simon 0.3.
0,338
0
0,169
0,169
0,169
0,169
0,169
0,169
0,169
0,338
0
0,169
0,338
0,338
0,338
0,507
0,338
0,338
SpeakToText
0,338
0
0,169
0,338
0,169
0,338
0,507
0,169
0,338
Tatzi 2.0.
0,338
0
0,169
0,169
0,169
0,169
0,338
0,169
0,169
0,169
0,507
0,169
0,338
0,507
0,338
0,169
Dictation 2005
Perpetum Mobile
0,169
0,930 0 0,335
0,150
Tabulka 7.1.4.2: Normalizovaná kritéria
44
Ideální a bazální varianty jsou znázorněny v této tabulce: Kritéria
Varianty řešení
f1
f2
f3
f4
f5
f6
f7
f8
f9
H
0,507
0
0,338
0,507
0,338
0,338
0,507
0,338
0,338
D
0,169
-0,930
0,169
0,169
0,169
0,169
0,169
0,169
0,169
Tabulka 7.1.4.3: Ideální a bazální varianty Nyní vypočteme hodnoty užitkové funkce dle následujících matematických vzorců. Vzdálenost od ideální hodnoty:
d i v1 hi1 H1 v 2 hi 2 H 2 ... vk hik H k 2
2
2
(Vzorec 4)
Vzdálenost
d i
MyDictate
0,422
JetVoice
0,216
Dragon N.S.
0,155
Diktograf
0,118
Simon 0.3.
0,164
Dictation 2005
0,089
SpeakToText
0,134
Tatzi 2.0.
0,161
Perpetum Mobile
0,889
Tabulka 7.1.4.4: Vzdálenost variant od ideální hodnoty 45
Dle výsledků výpočtů je zřejmé, že varianta programu Dictation 2005 je nejméně vzdálená od ideální varianty.
46
7.2 Popis programu Dictation 2005 Nejlepší variantou podle vícekriteriálního hodnocení je Dictation 2005. Tento program má následující charakteristiky:
Podle spotřebitelských charakteristik je tento program Dictation 2005 závislý na mluvčím, ale může byt používán několika uživateli
Slovník programu je větší něž střední
Program je schopný vnímat a zpracovávat plynulou řeč
Dle funkce je tento systém diktovací a rozpoznávací
Systém je založený na spektrální analýze a Markovských modelech
Jedním z důvodů, proč jsem vybrala přesně tento systém pro zkoumání, je také dostupnost jeho zkušební verze na internetu zdarma.
Hlavním problémem při výběru vhodného programu pro účel provedení testování bylo, že většina programů pro rozpoznávání řečí jsou moc drahé a nedostupné pro běžného uživatele. Rozhraní testovaného programu, anglicky „interface“, je v anglickém jazyce, rozpoznávacím jazykem je také angličtina. Tento fakt nebyl překážkou v provedení testování, jelikož stačilo, aby uživatel uměl anglicky číst. Program má následující požadavky na operační systém:
RAM: 32/64 MB
Místo na disku: 100 MB
Operační systém: Win 98/ NT 4.0/ 2000/ Me/ XP
Prohlížeč: Internet Explorer
Monitor: rozlišení 800x600
Rychlost procesoru: Pentium Type 100Mhz +
WinZip 7.0
Multimedia Industry Standard Souncard a externí reproduktory
47
Před použitím je nezbytné provést trénink programu, vývojáři doporučují trénovat program dokonce po dobu dvou měsíců. Program Dictation 2005 má v nabídce funkcí nejenom diktování textů, ale také převedení zvukových souborů do textové podoby, zpracování textů v aplikaci Microsoft Word a funkci Point and Speak. Všechny tyto funkce jsou velmi užitečné pro zpracování běžných souborů, což uživatel pozná zejména po dostatečném natrénování programu. Nabídka Menu programu Dictation 2005 v.5.5.:
Obrázek 7.2.1 : Nabídka programu Dictation 2005 Při výběru položky “Dictation” z nabídky Menu se nám zobrazí okno pro diktování a formátování textu .
48
Obrázek 7.2.2: Okno pro diktování a formátování textu Aby však program porozuměl textu, který se bude diktovat, je třeba na začátku provést tzv. trénink programu. Před začátkem trénování musíme zaprvé naladit a nakonfigurovat mikrofon. Vzdálenost mikrofonu od uživatele nesmí přesáhovat šedesát centimetrů, jinak nelze zaručit přesnost rozpoznávání. Důležité je také to, aby v místnosti, kde se nachází uživatel a počítač, byl co nejmenší hluk, který by jinak mohl snížit pravděpodobnost správného rozpoznávání slov. Pro správné fungování programu na počítači musí byt nainstalována a zapnuta funkce rozpoznávání řeči v systému Windows. V případě, že mikrofon je nainstalovaný správně, můžeme začít s trénováním. Nejprve musíme vybrat z nabídky menu „Dictation“, a poté „Speaker Training“. Následně se objeví okno s nabídkou textů, pomocí kterých můžeme program trénovat. Na výběr máme osm textů, které jsou tvořeny slovy používanými v běžném životě.
49
Obrázek 7.2.3 : Nabídka textů pro trénování Po výběru textu pro trénování je uživateli nabídnuto přečíst text nahlas. Tím si program uloží do paměti vzory slov vyslovených uživatelem. Podle těchto vzorů bude pak program schopný rozpoznat, co uživatel říká. Problém je v tom, že stejný uživatel může vyslovit stejné slovo pokaždé jinak, proto je požadováno, aby uživatel přečetl co nejvíce textů během trénování, aby si počítač zapamatoval několik vzorů stejného slova a dokázal je v budoucnu rozpoznat.
50
V průběhu trénování se každé přečtené slovo zabarví, což znamená, že počítač tomuto slovu porozuměl a program si ho zapsal do paměti:
Obrázek č.7.2.4 : Průběh trénování Po dokončení tréninku lze začít diktovat libovolný text. Po každém vysloveném slově nebo čísle nabízí program nejen nejvhodnější slovo, ale také několik alternativ, ze kterých si můžeme vybrat v případě, že program slovo neodhadl správně:
Obrázek č.7.2.5 Nabídka možných slov 51
Do slovníku programu lze také přidávat nová slova:
Obrázek 7.2.6 : Přidání slov do slovníku Součástí programu je také funkce filtrování textu:
Obrázek 7.2.7: Filtrace výslovnosti 52
Během procesu diktování existuje možnost ovládat editor pomocí určitých příkazů. Program v sobě obsahuje příkazy, pomocí kterých lze:
Kapitalizovat písmena a formátovat text
Měnit výběr textu
Provádět opravy v textu
Mazat vybraný text
Navigovat kurzor myši
Posouvat text
Psát interpunkce
Vypnout / zapnout poslech atd.
Před každým příkazem se musí vyslovit orientační slovo “Computer”, aby počítač rozpoznal, že jde o příkaz, nikoli o nové slovo. Program Dictation 2005 lze používat i v editoru Microsoft Word:
53
Obrázek 7.2.8 : Využití programu v Microsoft Word
54
8 Průběh praktického testu programu Dictation 2005 8.1 Výběr vhodného textu Za účelem provedení testování jsem se rozhodla vybrat dva různé texty se stejným počtem slov, a to ve výši 160 slov.
První text je spojený s tématem mé bakalářské práce. Každý z uživatelů dostal za úkol nadiktovat text do programu. Tento text obsahuje nová slova a informace o jejich výslovnosti, které nebyly uloženy v databázi programu. Pomocí tohoto textu jsem mohla zjistit, zda je program schopný rozpoznat hlas stejného uživatele a správně odhadnout nová slova.
Druhým textem se stal tréninkový text z nabídky samotného programu Dictation 2005. Prostřednictvím diktování tohoto textu jsem se snažila zjistit, nakolik přesně program rozpoznává slova a fráze uložené v databázi. Před začátkem diktování měl každý z dvanácti uživatelů za úkol vytvořit svůj vlastní uživatelský profil a provést trénink programu, který se skládal z přečtení tohoto textu do mikrofonu, aby si program uložil do databáze informace o hlasu, výslovnosti a případném přízvuku uživatele.
8.1.1 Texty Zde uvádím dva příklady textů, které se objeví na výběr ihned při spuštění tréninkového menu programu Dictation 2005: “Voice recognition is an alternative to typing on a keyboard. Put simply, you talk to the computer and your words appear on the screen. The softwares have been developed to provide a fast method of writing onto a computer and can help people with a variety of disabilities. It is useful for people with physical disabilities who often find typing difficult, painful or impossible. Voice recognition software can also help those with spelling difficulties, including users with dyslexic, because recognised words are always correctly spelled. Today speech technologies are commercially available for a limited but interesting range of tasks. These technologies enable machines to respond correctly and reliably to human voices, and provide useful and valuable services. While we are still far from having a machine that converses with humans on any topiclike another human, 55
many important scientific and technological advances have taken place, bringing us closer to the “Holy Grail” of machines that recognize and understand fluently spoken speech.“ “The two pots. Two pots had been left on the bank of a river, one of brass, and one of earthenewer. When the tide rose they bothfloated off down the stream. Now the earthenware pot tried its best to keep a loof from the brass one, which cried out: “Fear nothing, friend, I will not strike you.” “But I may come in contact with you,” said the other, “if I come too close; and whether I hit you, or you hit me, I will suffer for it. Therefore the strong and the weak cannot keep company. The Four Oxen and the Lion. A lion used to prowl about a field in which four oxen used to dwell. Many a time he tried to attack them; but whenever he came near they turned their tails to one another, so that whichever way he approached them he was met by the horns of one of them. At last, however, they fell to fighting among themselves.”
8.2 Průběh testu Testu se zúčastnilo celkem dvanáct lidí.Těchto dvanáct účastníků jsem rozdělila podle následujících kritérií:
Dle rodného jazyku (viz obrázek 8.2.1):
o
čtyři rodilí mluvčí angličtiny
o
čtyři rodilí mluvčí češtiny
o
čtyři rodilí mluvčí ruštiny Účastníci dle rodného jazyku
anglický, 4 ruský, 4
anglický český český, 4
ruský
Obrázek 8.2.2: Účastníci dle rodného jazyku
56
Dle pohlaví (viz obrázek 8.2.2):
o
šest mužů
o šest žen Účastníci dle pohláví
muži, 6, 50%
ženy, 6, 50%
muži
ženy
Obrázek 8.2.1: Účastníci dle pohlaví
Dle věku (viz obrázek 8.2.3):
o
čtyři účastníci ve věku 18 až 22 let
o
čtyři účastníci ve věku 25 až 28 let
o čtyři účastníci ve věku 30 až 33 let Účastníky dle věku
25 až 28 lét 18 až 22 lét
18 až 22 lét 25 až 28 lét 30 až 33 lét
30 až 33 lét
Obrázek 8.2.3: Účastníci dle věku
Dle počtu přečtených tréninkových textů o
3x
o
2x
o
1x
57
Všichni účastníci měli za úkol:
Nadiktovat oba dva texty do programu Dictation
Zjistit počet správně rozpoznaných slov zvlášť pro každý text
Zjistit čas diktování pro každý text
Napsat oba dva texty do programu Microsoft Word pomocí klávesnice
Zjistit čas psaní textů pomocí klávesnice
Každý z účastníků byl předběžně seznámen s programem Dictation 2005 . Všichni účastníci testu měli k dispozici počítače stejné výkonnosti a mikrofon stejné kvality, proto by neměly být rozdíly ve výsledcích testu ovlivněné technologickými parametry počítače a akustickou technikou. Níže je uveden vzor dotazníku, který každý z účastníků dostal k vyplnění. Podle údajů zjištěných z těchto dotazníků lze provést následnou analýzu výsledků testování.
58
Dotazník č… Rodný jazyk Věk Pohlaví Počet tréninkových textů přečtených před testem Text č. 1 Čas diktování Čas psaní pomocí klávesnice Celkový počet slov v originálu textu Počet správně rozpoznaných slov programem
? ? 160
?
Vypočítaná přesnost rozpoznávání Text č. 2 Čas diktování Čas psaní pomocí klávesnice Celkový počet slov v originálu textu
? ? ? 160
Počet správně rozpoznaných slov programem
?
Vypočítaná přesnost rozpoznávání
?
Obrázek 8.1.1: Vzor dotazníku
59
8.3 Analýza výsledků Po dokončení testovací fáze lze přistoupit k analýze dosažených výsledků. V tabulce na stránce 64 uvádím výsledky mého testu. Jak je zřejmé z této tabulky, průměrná rychlost diktování je větší než v případě psaní textů pomocí klávesnice (viz obrázek 8.3.1). Porovnání rychlostí psaní a diktování textů
Rychlost, min
5 4 Diktování
3 2
Psaní pomocí klávesnice
1 0
text č.1
text č.2
Obrázek 8.3.1: Porovnání rychlostí psaní a diktování textů Toto však nepotvrzuje hypotézu, že diktování do programu Dictation 2005 je jednodušší a efektivnější než psaní. V případě textu č. 1 vyšly tyto výsledky:
průměrná rychlost diktování činí 1,54 minuty
průměrná rychlost psaní za pomoci klávesnice stanoví 3,57 minut
Z tohoto výsledku vyplývá, že diktování je o 2,03 minuty rychlejší než psaní, avšak počet správně napsaných slov v případě diktování je menší o 34,25 % oproti psaní pomocí klávesnice. Tento fakt vylučuje to, že diktování do programu Dictation 2005 je alternativním řešením k psaní textu pomocí klávesnice (viz obrázek 8.3.2). Přesnost rozpoznávání: diktování vs psaní pomocí klávesnice 100
100
Přesnost rozpoznávání, %
100 80
65.75
58.9 Diktování
60 40
Psaní pomocí klávesnice
20 0
text č.1
text č.2
Obrázek 8.3.2: Přesnost rozpoznávání: diktování vs psaní pomocí klávesnice 60
V případě textů č. 2 vyšly následující výsledky:
průměrná rychlost diktování činí 2,11 minut
průměrná rychlost psaní za pomoci klávesnice stanoví 4,36 minut
Z těchto poznatků je zřejmé, že diktování je o 2,25 minut rychlejší než psaní, zároveň je vidět, že počet správně napsaných slov pří diktování je o 41,8 % menší než při psaní. Díky tomuto poznatku je vyloučena možnost nahrazení klávesnice programem Dictation 2005 (viz obrázek 8.3.2). Nyní rozebereme výsledky testu dle jednotlivých kritérií účastníků, aby bylo možné zjistit, zda přesnost rozpoznávání řeči programem Dictation 2005 záleží na některém z nich. Ze škály výsledků testování dle kritéria pohlaví jsem zjistila, že přesnost rozpoznávání v případě ženského hlasu
pro text č. 1 je o 0,5 % větší než v případě mužského hlasu
pro text č. 2 je o 0,2 % menší než v případě mužského hlasu (viz obrázek 8.3.3) Výsledky testu - podle pohlaví 65.5 66
Přesnost rozpoznávání, %
66 64 62
59 58.8
60
muži ženy
58 56 54
text č.1
text č.2
Obrázek 8.3.3: Výsledky testu – podle pohlaví Z těchto výsledků usuzuji, že přesnost rozpoznávání nezáleží na pohlaví mluvčího, resp. na výšce hlasu, jak jsem před začátkem testování předpokládala. Dalším kritériem jsem stanovila věk účastníků a výsledky vyšly následovně:
v případě textu č. 1 účastníci ve věku 18 až 22 let a účastníci ve věku 30 až 33 let mají skoro stejnou úroveň přesnosti rozpoznávání, zatímco účastníci ve věku 25 až 28 let dosáhli nejhorších výsledků
pro text č. 2 platí téměř shodné výsledky jako pro text č. 1 (viz obrázek 8.3.4)
61
Přesnost rozpoznávání, %
Výsledky testu - podle věku
68 66 64 62 60 58 56 54 52
67.5 66.75 63 59.75 59.5 57.5
18 až 22 let 25 až 28 let 30 až 33 let
text č.1
text č.2
Obrázek 8.3.4: Výsledky testu – podle věku Domnívám se, že tyto výsledky mohou znamenat závislost programu na témbru hlasu podle věkové kategorie. Za třetí a jedno z nejdůležitějších kritérií považuji rodný jazyk účastníků. Testování prokázalo, že nejlepšími výsledky z pohledu přesnosti rozpoznávání se mohou chlubit rodilí mluvčí angličtiny, což byla na počátku má hypotéza a takto se potvrdila. Lze to vysvětlit tím, že byl program vytvořený v angličtině, proto je předběžně naučený anglickému jazyku bez přízvuku. Čeští a ruští uživatelé disponují určitým přízvukem i jinou intonací, což patrně způsobuje problémy při rozpoznávání. Detailní výsledky testování podle rodného jazyka účastníků jsou znázorněné v tomto grafu:
Přesnost rozpoznávání, %
Výsledky testu - dle rodného jazyka
80 70 60 50 40 30 20 10 0
73.75 63.75 59.75
64.75 58.25 53.75 anglický český ruský
text č.1
text č.2
Obrázek 8.3.4: Výsledky testu – podle rodného jazyka
62
Posledním testovacím kritériem byl počet tréninkových textů přečtených každým účastníkem před začátkem testování. Podle obdržených výsledků lze konstatovat, že přesnost rozpoznávání obou textů je větší v případě účastníků, kteří přečetli více než jeden tréninkový text, což se dalo očekávat, jelikož možnost tréninku je vytvořená přesně proto, aby si program mohl co nejlépe „zvyknout“ na hlas a intonaci uživatele. Detailní výsledky jsou uvedené v grafu níže:
Přesnost rozpoznávání, %
Výsledky testu - podle počtu tréninků
80 70 60 50 40 30 20 10 0
70.5 67.25 62.25
61.25 59 56.5 jeden trénink dva tréninky tři tréninky
text č.1
text č.2
Obrázek 8.3.6: Výsledky testu – podle počtu tréninků
63
Dotazník
Č. 1
Č. 2
Rodný jazyk Věk Pohlaví Počet přečtených tréninkových textů
Č. 3
Č. 4
Č. 5
Č. 6
Č. 7
Č. 8
Č. 9
Č. 10
Čj
Aj
Č. 11
Č. 12
Rj
19 muž
21 muž
32 žena
25 žena
22 muž
30 muž
26 žena
25 žena
22 muž
31 muž
25 žena
30 žena
3
2
3
1
2
3
1
2
3
2
1
1
02.04
01.55
01.51
01.48
01.59
02.01
03:46
04:01
04:29
04:25
04:10
03:35
Čas diktování Čas psaní pomocí klávesnice Celkový počet slov v textu Počet správně rozpoznaných slov programem Vypočítaná přesnost rozpoznávání
01.44
01.55
01.47
02.02
Text č. 1 01.58 01.54
04:16
03:05
04:19
02:58
04:22
04:04
160 124
118
127
106
106
99
102
104
87
105
94
100
77%
73%
79%
66%
66%
61%
63%
65%
54%
65%
58%
62%
Čas diktování
02:00
02:10
01:59
02:15
Text č. 2 02:12 02:17
02:21
02:01
02:04
02:07
02:15
02:32
Čas psaní pomocí klávesnice
04:32
03:59
04:47
04:01
04:58
04:10
04:34
05:05
05:17
04:38
04:15
Celkový počet slov v originálu textu Počet správně rozpoznaných slov programem Vypočítaná přesnost rozpoznávání
05:01
160 111
105
108
94
95
88
93
98
73
96
85
91
69%
65%
67%
58%
59%
55%
58%
61%
45%
60%
53%
57%
Tabulka 8.3.1 : Výsledky testu
64
9 Závěr V závěru mé bakalářské práce bych ráda shrnula všechny teoretické a praktické znalosti, které jsem v procesu psaní této práce získala. Systémy automatického rozpoznávání řeči jsou dávnou záležitostí, možnost jejich použití lidé zkoumají již od roku 1952. Od této doby systémy pro rozpoznávání hlasu počítačem značně pokročily z technického i praktického pohledu. Počet komerčních programů a systémů se v dnešní době mnohonásobně zvýšil, trh s těmito produkty se může chlubit docela velkými zisky. Vývoj těchto programů se stále zdokonaluje a přináší značné úspěchy. Cílem mé práce bylo zvolení vhodného programu pro rozpoznávání hlasu v PC, provedení jeho praktického odzkoušení s vybraným počtem uživatelů, a následné vyhodnocení použitelnosti softwaru pro psaní textu a jeho diktování z hlediska rychlosti a přesnosti. Stanovený cíl považuji za splněný z několika důvodů:
Vhodný program pro rozpoznávání hlasu byl nalezen, a to pomocí vicekriteriálního rozhodování
Praktický test, kterého se zúčastnilo celkem dvanáct uživatelů, byl zdařený
Výsledky testování prokázaly, že psaní textu pomocí klávesnice je pomalejší než diktování, avšak v případě diktování přesnost rozpoznávání textu nepřesahuje 79 %. Tento fakt svědčí o tom, že klávesnici nelze nahradit programem Dictation 2005.
Na základě výsledků praktického testu lze usuzovat, že přesnost rozpoznávání řeči počítačem je závislá na jazykových dovednostech uživatele a částečně na témbru hlasu.
Pro mě osobně mělo zpracování této bakalářské práce velký přínos. Kromě toho, že jsem prostudovala spoustu nové a zajímavé literatury, jsem získala četné užitečné a zejména aktuální informace. Právě aktuálnost a markantní rozvoj počítačových programů pro ovládání počítače hlasem a světových moderních technologií vůbec považuji za velikou výhodu zvoleného tématu. Tato bakalářská práce nabízí ucelený přehled na danou problematiku, který dle mého názoru využijí zejména studenti a zájemci o tyto programy. 65
10 Seznam použitých zdrojů 1. LOWERRE, B. The Harpy Speech Understanding System : Trends in Speech Recognition. [s.l.] : Morgan Kaufmann Publishers, 1990. 586 s. 2. BAKER, J.K. Stochastic modeling for automatic speech understanding. In REDDY, D.R. Speech Recognition. New York : Academic Press, 1975. s. 521542. 3. DENES, P.B.; MATHEWS, M.V. Spoken Digit Recognition using time frequency pattern matching. In . 32. [s.l.] : J.Acoust.Soc.Amer., 1960. s. 1450-1455 4. ITAKURA, F. Minimum prediction residual principle applied to speech recognition. In . ASSP-23. [s.l.] : IEEE Trans. Acoust., Speech, Signal Processing, 1975. s. 67-72. 5. JUANG, B.H. On the Hidden Markov model and dynamic time warping for speech recognition - A unified wiev. In . 63, No. 7 . [s.l.] : AT&T Tech.J., 1984. s. 1213-1243. 6. MOHRI, M. Finite-State Transducers in Language and Speech Processing. Computational Linguistics. 1997, 23, 2, s. 269-312. 7. DENNIS, H. Klatt. Rewiev of the DAPRA Speech Understanding Project. J. Acoust. Soc. Am. 1977, 62, s. 1345-1366. 8. FROLOV, A.V.; FROLOV, G.V. Синтез и
распознавание речи. :
Современные решения [online]. 2003. Rusko : Svet, 2003 [cit. 2011-03-06]. Dostupné z WWW: http://frolov-lib.ru . 9. Speech-soft [online]. 2008 [cit. 2011-03-06]. РЕЧЕВЫЕ ТЕХНОЛОГИИ. Dostupné z WWW: http://speech-soft.ru/ . 10. Super-profi [online]. 2010 [cit. 2011-03-06]. Разработка интеллектуальных систем. Dostupné z WWW: http://www.super-profi.com . 11. Voicerecognition [online]. 2010 [cit. 2011-03-06]. Voice Recognition. Dostupné z WWW: http://www.voicerecognition.com.au . 12. Voicepc [online]. 2010 [cit. 2011-03-06]. Voice PC. Dostupné z WWW: http://www.voicepc.com . 66
13. KUBEŠ, Radek. Počítač vás poslechne na slovo. Idnes : Technet [online]. 5.04.2009, č. 35, [cit. 2011-03-06]. Dostupný z WWW: http://technet.idnes.cz . 14. ČAREK, Jan. Ovládání počítače hlasem s Typle. Extrawindows : Windows7 [online].
2.07.2009,
č.
49,
[cit.
2011-03-06].
Dostupný
z
WWW:
http://extrawindows.cnews.cz . 15. Petit : Výukové programy Petit [online]. 2009 [cit. 2011-03-06]. Dostupné z WWW: http://www.petit-os.cz . 16. Nuance : Dragon NaturallySpeaking Home [online]. 11. 2002, 2011 [cit. 2011-03-06]. Dostupné z WWW: http://www.nuance.com . 17. Technická podpora Microsoft [online]. 2010 [cit. 2011-03-06]. How To Use Speech
Recognition
in
Windows
XP.
Dostupné
z
WWW:
http://support.microsoft.com . 18. Speech Tech : Speech Technology [online]. 2011 [cit. 2011-03-06]. SpeechTech MegaWord . Dostupné z WWW: http://www.speechtech.cz . 19. Acoustical Society of Amerika [online]. 2011 [cit. 2011-08-19]. Dostupné z WWW: http://acousticalsociety.org/ . 20. BCC Research : Market Forecasting [online]. 2010 [cit. 2011-08-19]. Information Technology:
Voice
Recognition.
Dostupné
z
WWW:
http://www.bccresearch.com/report/voice-recognition-tech-markets-ift039b.html . 21. DAPRA : Information Innovative Office [online]. 2011 [cit. 2011-08-19]. Robust Automatic
Transcription
to
speech.
Dostupné
z
WWW:
http://www.darpa.mil/Our_Work/I2O/Programs/Robust_Automatic_Transcription_ of_Speech_%28RATS%29.aspx . 22. SpeechLab : Laboratoř počítačového zpracování řeči [online]. 2011 [cit. 2011-0819]. Dostupné z WWW: https://www.ite.tul.cz/speechlab/index.php . 23. JUANG, B.H.; LEE, C.H.; CHOU, Wu. Minimum classification error rate methods for speech recognition. IEEE Trans. Speech & Audio Processing. 1997, 5, 3, s. 257-265. 24. VINTSYUK, T.K. Speech Discrimination by Dinamic Programming. Kibernetika. 1968, 4, 2, s. 81-88. 67
25. История компьютера (Historie počítače) [online]. 2011 [cit. 2011-08-20]. Распознавание
речи
(Rozpoznávání
řeči).
Dostupné
z
WWW:
http://chernykh.net/content/view/146/ . 26. Центр речевых технологий (Centrum řečových technologií) [online]. 2011 [cit. 2011-08-20]. Dostupné z WWW: http://speechpro.ru/ . 27. Стэл (Stel) : Компьютерные системы (Počítačové systémy) [online]. 2011 [cit. 2011-08-20]. Продукты на основе речевых технологий (Produkce s použitím řečových technologií ). Dostupné z WWW: http://www.stel.ru/speech/ . 28. TATARNIKOV, Oleg. Компьютер пресс : Computer Press [online]. 2011 [cit. 2011-08-20]. Программы распознавания речи (Programy rozpoznávání řeči). Dostupné z WWW: http://www.compress.ru/article.aspx?id=12682&iid=477 29. DAVIS, K.H.; BIDDULPH, R.; BALASHEK, S. Automatic Recognition of Spoken Digits. J. Acoust. Soc. Am. 1952, 24, 6, s. 627-642. 30. OLSON, H.F.; BELAR, H. Phonetic Typewriter. J. Acoust. Soc. Am. 1956, 28, 6, s. 1072-1081. 31. SUZUKI, J.; NAKATA, K. Recognition of Japenese vowels - Preliminary to the recognition computer program. J. Radio. Res. Lab.. 1961, 37, 8, s. 193-212 32. BCC Research [online]. 2011 [cit. 2011-08-22]. Information Technology: Voice Recognition.
Dostupné
z WWW:
http://www.bccresearch.com/report/voice-
recognition-tech-markets-ift039b.html . 33. KORVINY, Peter. Korviny.cz [online]. 2011 [cit. 2011-12-15]. Teoretické základy vícekriteriálního
rozhodování.
Dostupné
z
WWW:
. 34. ŠMEJKÁLOVÁ, Marketa. Epame.cz [online]. 2011 [cit. 2011-12-15]. Softwarová realizace rozhodovací analýzy s vícekriteriálním rozhodováním. Dostupné z WWW:.
68