Sborník 2006 - České vysoké učení technické v Praze
Transkript
Sborník 2006 - České vysoké učení technické v Praze
ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická Katedra teorie obvodů ANALÝZA A ZPRACOVÁNÍ ŘEČOVÝCH A BIOLOGICKÝCH SIGNÁLŮ SBORNÍK PRACÍ 2006 Editoři sborníku Doc. Ing. Petr Pollák, CSc. Doc. Ing. Roman Čmejla, CSc. Prosinec 2006 ANALÝZA A ZPRACOVÁNÍ ŘEČOVÝCH A BIOLOGICKÝCH SIGNÁLŮ SBORNÍK PRACÍ 2006 Editoři: Doc. Ing. Petr Pollák, CSc. Doc. Ing. Roman Čmejla, CSc. [email protected] [email protected] Katedra teorie obvodů http://amber.feld.cvut.cz vedoucí: Prof. Ing. Jan Uhlíř, CSc. Laboratoř zpracování řeči http://noel.feld.cvut.cz/speechlab vedoucí: Prof. Ing. Jan Uhlíř, CSc. LaBiS - Laboratoř biologických signálů Společné pracoviště 3. LF UK a FEL ČVUT FEL http://amber.feld.cvut.cz/bio Laboratoř analýzy a zpracování biologických signálů České vysoké učení technické v Praze Fakulta elektrotechnická, Katedra teorie obvodů Technická 2, 166 27 Praha 6 - Dejvice vedoucí: Prof. Ing. Pavel Sovka, CSc. Výzkumná laboratoř EEG Ústav normální, patologické a klinické fyziologie 3. lékařská fakulta, Universita Karlova v Praze vedoucí: Prof. PhDr. Andrej Stančák, CSc. Poděkování: Tato publikace vznikla za podpory grantu GAČR 102/02/0124 „Hlasové technologie v podpoře informační společnostiÿ, GAČR 102/03/H085 „Modelování biologických a řečových signálůÿ a výzkumných záměrů MSM 210000012 „Transdisciplinární výzkum v oblasti biomedicínského inženýrstvíÿ a MSM 212300014 „Výzkum v oblasti informačních technologií a komunikacíÿ. Vydalo nakladatelství ČVUT, Zikova 4, 166 36 Praha 6, v roce 2006. ISBN: 80-01-03621-9 Ediční poznámka Předložený sborník je souhrnem prací realizovaných doktorandy katedry teorie obvodů v různých aplikačních oblastech číslicového zpracování signálů. Sborník navazuje na první sborník vydaný v minulém kalendářním roce. Sborník dává přehled o jednotlivých výzkumných aktivitách řešených ve skupině zpracování signálů na katedře teorie obvodů. Prezentované příspěvky jsou shrnující a podrobnější informace o řešených problémech lze nalézt v odkazovaných pramenech nebo i v elektronické podobě dostupných prezentacích z pravidelných seminářů studentů doktorského studia na adresách http://noel.feld.cvut.cz/aazs-IX http://noel.feld.cvut.cz/aazs-X V Praze 1. prosince 2006 Doc. Ing. Petr Pollák, CSc. Doc. Ing. Roman Čmejla, CSc. editoři sborníku Předmluva Tento díl sborníku prací studentů doktorského studia plynule navazuje na již pětiletou tradici katedry teorie obvodů. Studenti doktorského studia pravidelně prezentují výsledky své práce před svými kolegy i pedagogy na seminářích označovaných jako ”Pondělky”. Sborník, který držíte v ruce vychází z vybraných prezentací uplynulého roku 2006 zaměrených na aplikaci metod číslicového zpracování signálů v oblastech zpracování řeči a biologických signálů. Text proto poskytuje určitou představu nejen o práci doktorandů, ale i o zaměření části výzkumu prováděného na katedře. Semináře slouží dokorandům i pedagogům jejich školitelům - ke tříbení myšlenek a nápadů v mnohdy kritických diskusích. Přinášejí nové podněty pro zpracování disertačních prací. Vědecká práce na katedře je podporována nejen institucionálními výzkumnými záměry, ale i účelově financovanými projekty několika grantových agentur. Všem poskytovatelům podpory výzkumu chceme tímto sborníkem poděkovat. Zájemce o témata uvedená ve sborníku rádi přivítáme na našich seminářích. Jejich program je pod názvem ”Pondělky” uveden internetových stránkách katedry http://amber.feld.cvut.cz/bio V Praze dne 5.12.2006 Prof. Ing. Pavel Sovka, CSc. vedoucí katedry Obsah Marek Bártů: Akcelerátor pro KSOM 1 Petr Bergl: Zpřesňování hranic mezi fonémy pomocí meření odlišnosti ve spektru signálu 8 Václav Bolom: Zvýrazňování řeči pomocí vícekanálového zpracování 16 Hynek Bořil: Návrh odposlechové smyčky; Srovnání parametrizací pro rozpoznávání Lombardovy řeči 24 Petr Fousek: Příznaky pro automatické rozpoznávání řeči odvozené z dynamiky spektra 31 Zdeněk Chaloupka: Analýza kvality řeči pomocí HMM 37 Josef Rajnoha: Modelování neřečových událostí v robustním rozpoznávání řeči s malým slovníkem 43 Lukáš Ručkay: Analýza EEG pomocí ICA - odhad dimenze modelu 49 Lukáš Svoboda: Detekce korové aktivity vyvolané míšním neurostimulátorem u pacientů trpících nezvladatelnou neuropatickou bolestí 57 Pavel Štemberk: Konstrukce rozpoznávače řeči s použitím AT&T nástrojů 65 Martin Vondrášek: Virtuální elektrody v kochleárních implantátech Nucleus 24 72 Petr Zetocha: Analýza řeči dětí s vývojovou dysfázií pomocí Supervised SOM 78 Petr Zlatník: Vyhodnocování vad řeči dětí s využitím algoritmu DTW 84 Marek Bártů 1 Akcelerátor pro KSOM Marek Bártů České vysoké učení v Praze, Fakulta elektrotechnická [email protected] Abstrakt: In this work we are describing hardware implementation of Kohonen Self-Organizing Map. We examined existing neurocomputers and decided to work out our own neurocomputer with a different, more suitable architecture. Our neurocomputer is being realized on FPGA (Field-Programmable Gate Array). In this article we are describing basic neurocomputer unit structure as well as linkage of these elements into neurocomputer and units participation on computation process. 1. Úvod Při zpracování řeči lze využít metody založené na aplikacích umělých neuronových sítí. Jedním z typů umělých neuronových sítí (UNS) jsou KSOM. Jsou to UNS učící se bez učitele (viz [5]). KSOM jsou vhodnou alternativou ke klasickým metodám, a to zvláště v případech, kdy pracujeme se zašuměnými nebo nekompletními daty. KSOM lze s výhodou požít, mimo jiné, v úlohách vizualizace dat. KSOM mají schopnost konvertovat nelineární statistické vztahy mezi vícedimenzionálními daty do jednoduchých geometrických vztahů jejich obrazů v obvykle tří či dvourozměrném prostoru. Na našem pracovišti používáme KSOM ke klasifikaci a vizualizaci dat. Podstatnou nevýhodou KSOM je, tak jako u ostatních typů neuronových sítí, náročnost na výpočetní výkon. Pro reálné využití je výkonnost KSOM realizovaných na osobním počítači obvykle nedostatečná, proto se snažíme zkonstruovat akcelerátor - neuropočítač, který by umožnil vlastní výpočet výrazně zrychlit. Naším cílem je vyvinout neuropočítač, který by umožnil maximálně využít výhod hradlových polí - FPGA (Field Programmable Gate Array). Tím míníme možnosti integrace do autonomního systému a rekonfigurovatelnost (využíti prostředků FPGA i pro další úlohy spojené s příslušnou úlohou). Dalším požadavkem je možnost přizpůsobit neuropočítač konkrétnímu typu dat a dosáhnout zrychlení výpočtů. Posledním požadavkem na navrhovaný systém je možnost realizovat neuropočítač na komerčně dostupné vývojové desce s FPGA. 2. Problémy spojené s implementací KSOM Při hardwarové implementaci KSOM je důležitým faktorem konečná délka slova v realizovaném systému. Dostatečný počet bitů datového slova - délka slova - má zásadní vliv na rychlost konvergence sítě realizované neuropočítačem. Pokud je délka slova nižší než jistá kritická mez, dochází k divergenci sítě. Zároveň se zvyšujícím se počtem bitů stoupá složitost a nároky na hardware. To ovlivňuje vlastní výkonnost neuropočítače. Výsledná délka slova je tedy kompromisem mezi požadavky na rychlost konvergence sítě a hardwarovými nároky. Minimální délka slova pro konvergenci sítě záleží na distribuční funkci vstupních vektorů. Není možné vytvořit analytický popis pro obecný případ, a proto jsme při zjišťování optimální délky slova pro konkrétní úlohu odkázáni na simulace prováděné na reprezentativním vzorku vstupních dat. Při bližším rozboru v [1] se ukázalo že na vhodnou volbu délky slova jsou nejnáročnější synaptické váhy a funkce okolí neuronu. 2 Marek Bártů Pro snazší implementaci byl algoritmus KSOM zjednodušen. Realizovaná zjednodušení nemají vliv na konvergenci algoritmu, to bylo již prokázáno v existujících akcelerátorech [2], [3]. Uvažujeme hlavně zjednodušení výpočtu vzdálenosti vstupního vektoru, funkce okolí neuronu a realizace učícího faktoru. Pro výpočet vzdálenosti je použita bloková vzdálenost (2) místo eukleidovské. Použití blokové vzdálenosti částečně zpomalí konvergenci, ale přináší výrazné úspory v implementaci – nemusíme realizovat násobičku a odmocninu. V d =∑ ∣xi−mi∣ (1) i =1 3. Akcelerátor Akcelerátor je tvořen zřetězením jednotek realizujících funkce neuronu (na obrázcích značených N) doplněných jednotkami realizujícími komparátory (označeno K). Akcelerátor lze tedy jednoduše přizpůsobit konkrétní aplikaci, potřebné velikosti sítě, požadované rychlosti a použitému hardware. Každé jednotce je přiřazena logická adresa, takže "sousedství" neuronů je respektováno bez ohledu na fyzické uspořádání jednotek. Na následujících obrázcích je znázorněn návrh několika možných realizací. Obrázek 1: Realizace akcelerátoru zřetězením jednotek Na Obrázku 1 je neuronová síť tvořená zřetězením jednotek - neuronů. Toto uspořádání neuronů nevyžaduje použití podpůrných jednotek komparátorů. Příklad je pouze ilustrativní, takto realizovaný akcelerátor by měl velmi pomalou odezvu (úměrnou počtu neuronů) a toto uspořádání není vhodné pro praktickou realizaci. Mnohem výhodnější je realizace zobrazená na Obrázku 2. Na obrázku 2 je znázorněna realizace akcelerátoru řazením neuronů do paralelních větví zakončených stromem komparátorů. Popis komparátoru je uveden dále v textu. Výhodou tohoto uspořádání je mnohem rychlejší odezva než v předchozím případě. Odezva bude rovna pouze počtu neuronů ve v nejdelší větvi a hloubce stromu komparátorů. Marek Bártů 3 Obrázek 2: Realizace akcelerátoru řazením neuronů do paralelních větví Vhodným uspořádáním neuronů a komparátorů je možné realizovat strukturu na Obrázku 3. Tato struktura vychází přímo z původního algoritmu KSOM. V místě spojení větví je zařazen komparátor a v místě spojování cest v prostředním neuronu je dvojstupňový "strom" komparátorů. Data do struktury vcházejí z vnějšího okraje struktury a výsledek (vítěz) je nalezen po průchodu strukturou komparátorů uprostřed. Obrázek 3: Přirozená struktura KSOM Akcelerátor lze realizovat samostatně, je třeba pouze doplnit další podpůrné jednotky. Schéma takto realizovaného akcelerátoru je znázorněno na Obrázku 4. Vhodně uspořádané neurony jsou doplněny lokální pamětí, řadičem pro řízení výpočtu, řadičem pro řízení RAM paměti a blokem komunikace s osobním počítačem. Paměť RAM je externí paměť na prototypové desce FPGA. Řadič paměti se stará o její řízení a přesun dat do vyrovnávacích lokálních blokových pamětí (BRAM). 4 Marek Bártů Obrázek 4: Schéma akcelerátoru Komunikační kanál má zajistit dodání potřebných dat neuročipu. Je třeba zadat inicializační hodnoty neuronů (přímý zápis do datových struktur jednotlivých neuronů) a sadu vstupních vektorů (uloženou v paměti RAM). Při trénování se vlastní kanál používá pouze k zadání dat a předávání výsledků, výpočet probíhá samostatně v čipu. Pro účely ladění předpokládám vybavení neuročipu diagnostickým režimem, který umožní pozastavit výpočet a přistupovat ke všem datovým strukturám v neuročipu. V režimu klasifikace bude nejvýhodnější, kvůli rychlosti komunikace, aby byla data zadána v dávkách. Data se uloží do RAM paměti, klasifikují a výsledky se potom odešlou všechny najednou. Prozatím máme k dispozici řadič pro UART [4]. Pokud by ale bylo třeba rychlejší komunikace, bylo by vhodné realizovat rychlejší komunikační kanál, např. USB. Základní funkcí řadiče je řídit vlastní neurony. V řadiči může být implementováno „promíchání vstupních vektorů“ tedy postup, kdy se v jedné epoše vybírají vstupní vektory x náhodně, a to tak, že každý vektor je vstupem právě jednou. Klasická implementace předpokládá vstup vektorů v každé epoše v pořadí jak byly zadány. Další funkcí řadiče je určení poloměru okolí vzhledem k probíhající epoše trénování. Předpokládám využití tabulky, která bude předepisovat změny v určitých epochách. Obsah této tabulky bude součástí inicializačních dat, posílaných z PC. Jak bylo popsáno v předchozím odstavci, na konvergenci sítě má vliv konečná délka slova. Proto je v akcelerátoru možnost změnit počet bitů slova použitého k uložení synaptických vah neuronu, počet bitů akumulátoru i dimenzi vektoru vstupních dat. Je tedy možné generovat akcelerátor přímo přizpůsobený aplikaci, a to tak se, že se jednoduše změní tento parametr a znovu se provede syntéza. Simulaci vlivu konečné délky lze uskutečnit přímo ve VHDL simulátoru nebo v jiném vhodném prostředí s dostatečnou podporou pro matematické operace (Matlab). Akcelerátor lze také realizovat jako součást systému na čipu (SoC), akcelerátor pak bude v roli periferie. Marek Bártů 4. 5 Popis neuronu Schéma neuronu je na Obrázku 5. Silná čára reprezentuje tok dat, slabší čáry potom řídící signály. Neuron se do struktury akcelerátoru zapojuje pomocí vstupní a výstupní brány. Dále neuron obsahuje datovou paměť. Tato paměť slouží k uložení synaptických vah neuronu. Veškeré výpočty probíhají v SAD (Substitute-ADd) jednotce. Výpočty řídí řadič, který je implementován jako jednoduchý stavový automat. Bližší popis bloků včetně propojení s ostatními bloky, je uvedeno dále v textu. Obrázek 5: Schéma neuronu V akcelerátoru jsou neurony vzájemně propojeny pomocí vstupních a výstupních bran. Brány obsahují datové vodiče a indikaci přítomnosti dat. Dále pak obsahují signál "break", který indikuje, že příchozí datové slovo bude kódem příkazu. Bezprostřední průchod dat mezi vstupní a výstupní branou umožňuje neuronu fungovat v průchozím režimu – bez zpracovávání dat. Tento mód je nutný v režimu ladění (debug) a inicializace. Pro realizaci paměti vah je možné využít blokové paměti na čipu FPGA nebo paměti distribuované – složené z hradel FPGA obvodu. Distribuovaná paměť odčerpává část prostředků čipu FPGA, která by mohla být jinak použita k realizaci dalších neuronů. Nicméně, využití distribuované paměti je nutné, protože množství blokové paměti je omezené. Napojení na datovou sběrnici umožňuje nejen do paměti nahrát inicializační váhy, ale i číst obsah v ladícím módu. Obrázek 6: SAD jednotka 6 Marek Bártů Veškeré aritmetické operace jsou realizovány v SAD (Substitute-Add Accumulate) jednotce. SAD jednotka má na starosti výpočet vzdálenosti mezi vstupním vektorem a váhami, nalezení vítěze, výpočet vzdálenosti od vítězného neuronu a úpravu vah v režimu trénování. Schéma SAD jednotky je na Obrázku 6. SAD jednotka se skládá z bloku výpočtu absolutní hodnoty rozdílu, akumulátoru, posuvného registru a bloku pro úpravu vah. Blok výpočtu absolutní hodnoty spolu se sčítačkou a akumulátorem se uplatní při výpočtu vzdálenosti neuronu od vstupního vektoru dat a při výpočtu vzdálenosti od vítězného neuronu. Podle výsledku tohoto výpočtu se nastaví posuvný registr. Posuvný registr se uplatní při výpočtu úpravy váhy podle vítězného neuronu. Při tomto výpočtu se vypočítá rozdíl váhy a příslušné složky vektoru a tento přírůstek se posune o určitý počet bitů – vydělí mocninou dvou. Blok pro úpravu vah je sčítačka, která vypočítává hodnotu váhy neuronu podle vztahu (2). Konstanta představuje bitový posun – dělení. w n1i =w nik⋅∣wn i −mi∣ 5. (2) Postup výpočtu Neuropočítač funguje následovně: v první, přípravné fázi, je pomocí PC nahrán soubor inicializačních hodnot a vstupních vektorů do paměti RAM na prototypové desce s vlastním hradlovým polem, v němž je neuropočítač realizován a jsou inicializovány jednotlivé neurony. Další fází je trénování - vstupní vektor je distribuován složku po složce. Jednotlivé neurony přímo provádí výpočet vzdálenosti. Mezivýsledek výpočtu je uložen v akumulátoru každého neuronu. Hledání vítěze provádí neuropočítač tak, že krajní neurony pošlou hodnotu svého akumulátoru (a svou adresu) následujícímu neuronu. Ten provede porovnání s vlastním akumulátorem a vítěznou hodnotu pošle dalšímu neuronu v cestě (včetně adresy). Tímto způsobem bude po posledním porovnání v prostředním neuronu znám vítěz pro daný vstupní vektor. Poslední částí trénování je adaptace. Všem neuronům je předána adresu vítězného neuronu a poloměr okolí. Každý neuron pak srovnáním obdržené a vlastní adresy individuálně zjistí svou příslušnost k okolí vítězného neuronu a provede úpravu svých vah. 6. Závěr Hlavní výhodou je plně distribuovaná architektura. Další výhodou je přímé komunikační schéma mezi neurony, bez nutnosti implementovat dlouhé a výpočet zpomalující sběrnice. Neurony přenášejí data přímo mezi sebou. Implementace v FPGA, které je založeno na SRAM, umožní škálovatelnost systému, použití v komplexním systému nebo při rekonfiguraci. Po první verzi jsem po implementaci získal následující odhady: implementace až 40 neuronů v obvodu XC2V1000, kdy každý neuron může pracovat na maximální hodinové frekvenci 150 MHz. V současné době dokončuji druhou verzi a plánuji numerické testy konvergence sítě akcelerátoru a porovnání rychlosti s osobním počítačem. 7. Poděkování Tento projekt je podporován grantem Transdisciplinární výzkum v biomedicínském inženýrství II, MSM6840770012 Českého Vysokého Učení technického v Praze. Marek Bártů Reference [1] Thiran P., Peiris V., Heim P., Hochet B.: Quantization Effects in Digitally Behaving Circuit Implementations of Kohonen Networks, IEEE Transactions on Neural Networks No. 3, Vol. 5., 1994 [2] Porrman, M., Witkowski, U., Kalte, H., Ruckert, U.: Implementation of Artifical Neural Networks on a Reconfigurable Hardware Accelerator, In Proceedings of the 10th Euromicro Workshop on Parallel, Distributed and Network-based Processing, Grand Canaria Island, Spain, 2002, pp. 243 – 250 [3] Ienne, P.: Architectures for Neuro-Computers: Review and Performance Evaluation, Technical Report of the EPFL-DI no. 93/21, Lausanne, Swiss (1993) [4] Bártů M.: Implementation of communication protocol between the FPGA kit and the PC via the serial interface. Unpublished technical report Z06-3 (in Czech), FEE CTU Prague, 2006. Available at http://amber.feld.cvut.cz/fpga/ . [5] Kohonen, T.: Self-Organizing Maps. Springer-Verlag Berlin, Heidelberg, New York, 3rd ed., 2001, ISBN 3-540-67921-9 7 8 Petr Bergl Zpřesňování hranic mezi fonémy pomocí měření odlišnosti ve spektru signálu Petr Bergl České vysoké učení technické v Praze, Fakulta elektrotechnická [email protected] 20. listopadu 2006 Abstrakt: V příspěvku je popsán algoritmus pro zpřesňování hranic mezi fonémy, jejichž pozice byla nejdříve odhadnuta pomocí HMM. Řečový signál je poté analyzován metodami měřícími odlišnost ve spektru signálu. Výstupem těchto měření jsou křivky, ve kterých by hranice mezi fonémy měla být indikována lokálním maximem. Pozice těchto maxim jsou poté použity na aktualizaci hranic odhadnutých pomocí HMM. Celkem je použito 14 metod pro měření odlišnosti ve spektru, z nichž většina využívá autoregresní model signálů. Výkonnost navrženého postupu je demonstrována na databázi 18 řečových signálů. 1. Úvod Skryté Markovovské modely (HMM) jsou v současné době dominantní na poli rozpoznávání řeči, pro přepis neznámých promluv, stejně jako pro lokalizaci hranic mezi fonémy v promluvách se známým textem (např. labelování databází, kde je stejný text čten více jedinci). Přesnost polohy detekovaných hranic však může být poměrně omezená. V tomto příspěvku předpokládáme, že přechod mezi fonémy je doprovázen měřitelnými změnami ve spektru signálu. Tyto změny se pokusíme detekovat pomocí měr odlišnosti a jejich polohu použijeme pro zpřesnění odhadů získaných z HMM. Podobný přístup je popsán např. v [1], námi navržený algoritmus je jedinečný ve využívání vysokého počtu měr s rozličným nastavením. 2. 2.1. Metody měření odlišnosti a experimenty s reálnými signály Použití míry odlišnosti pro analýzu signálu Mějme dva signály, x1 (n) a x2 (n). Naším úkolem je zjistit, jak moc jsou si signály (ne)podobné, tj. zjistit míru jejich odlišnosti. Pro jednoduchost předpokládejme, že oba mají stejnou délku N . Nejjednodušší míra odlišnosti spekter signálů může být definována takto: v u −1 u 1 NX (X1 (n) − X2 (n))2 , (1) dX = t N n=0 Petr Bergl 9 Obrázek 1: Vlevo–Výpočet míry d pro segmentaci signálu x(n). Vpravo–Řečový signál, jeho spectrogram a křivka vypočtená pomocí míry dF F T kde X1 a X2 představují spektra vypočtená pomocí FFT. Takováto míra pak může být použita pro analýzu signálu za pomoci klouzajícího okna délky L. Okno nejprve nasadíme na začátek signálu. Levá půlka okna definuje signál x1 (n), pravá půlka definuje x2 (n). Z těchto signálů vypočteme míru odlišnosti d. Poté okno posuneme. Situaci popisuje obrázek 1 (vlevo). Velikosti d vypočtené pro jednotlivé posuny si zapamatujeme a vyneseme je pro časové okamžiky odpovídající středu okna. Výsledkem je křivka C, ve které by měla být místa změn hlásek označena lokálním maximem. Ukázka řečového signálu, jeho spectrogramu a křivky vypočtené pomocí míry dF F T viz obr. 1 (vpravo). Předpokládejme, že řečový signál je nejprve analyzován pomocí HMM a jsou odhadnuty M pozice hranic mezi hláskami bHM . Signál poté proměříme pomocí míry odlišnosti, výsledi kem je křivka C zmiňovaná v předchozím odstavci. Pozice lokálních maxim v C bychom M rádi zužitkovali pro zpřesnění hranic bHM . Použijeme následující „aktualizačníÿ algoriti mus: 10 Petr Bergl For i = 1, . . . , M HM M (poloměr prohledávaného okolí 1. Najdi polohu lokálního maxima tM i v blízkosti bi je εi ). 2. Porovnej hodnotu maxima C(tM i ) s prahem h. M new Když C(ti ) > h je nová poloha hranice dána pozicí maxima tM = tM i , t.j. bi i ; HM M new . jinak se pozice nemění, t.j. bi = bi M je počet hranic, práh h se nastavuje vzhledem k typu míry, např. se h nastaví na střední hodnotu křivky C. Poloměr hledání εi se mění v závislosti na rozdílné délce hlásek. 2.2. Použití míry odlišnosti pro analýzu databáze Pro další postup předpokládejme následující: • Máme k dispozici databázi řečových signálů, ve které je stejný text čten více jedinci. • Pro každý signál byly ručně vytvořeny kontrolní hranice bcon i . M jsou k dispozici. • Každý signál byl analyzován pomocí HMM ⇒ bHM i • Databázi náhodně rozdělíme na trénovací a testovací část. Nyní každý signál z trénovací části analyzujeme následujícími mírami (pro každou použijeme řadu nastavení, L je délka klouzajícího okna ve vzorcích, p je řád AR modelu): • dX definována v předchozím textu, L ∈ {200, 400, . . . , 1200}; √ • dCep = N1 c1 − c2 , kde c1 a c2 představují kepstrum signálu, L ∈ {200, 400, . . . , 1200}; √ • dlpc = N1 b1 − b2 , kde b1 a b2 jsou parametry AR modelu, L ∈ {400, 800}, p ∈ {2, 4, 8}; • dCC , daná rozdílem kepstrálních koeficientů odvozených z koefficientů AR modelu, L ∈ {800, 1000}, p ∈ {2, 4, 8}; • dBay definovaná výstupem Bayesovského detektoru viz [3], [4], L ∈ {800, 1000}, p ∈ {2, 4, 8}; • dRBD definovaná výstupem Bayesovského detektoru s využitím rozdílných řádů AR modelu v levé a pravé části okna, viz [4], L ∈ {800, 1000}; p ∈ {2/4, 4/2, 2/8, 8/2, 4/8, 8/4}; Poznámka: AR řád 2/4 představuje p = 2 pro levou část a p = 4 pro pravou část okna; vždy je také použito alternativní nastavení (tj. 4/2). • dBSCD daná Bayesovským detektorem změny střední hodnoty (Step Changepoint Detector), L ∈ {300, 400, . . . , 800}; • dGLR definovaná pomocí General Likelihood Ratio, viz [2], L ∈ {400, 800}, p ∈ {2, 4, 8}; Petr Bergl 11 • dKull je Kullback-Leiblerova divergence, viz [6], L ∈ {400, 800}, p ∈ {2, 4, 8}; • dBha je Bhattacharyova divergence, viz [7], L ∈ {400, 800}, p ∈ {2, 4, 8}; • dM ah je Mahalanobisova míra, viz [5], L ∈ {400, 800}, p ∈ {2, 4, 8}; • dL2 představuje L2 metriku, viz [5], L ∈ {400, 800}, p ∈ {2, 4, 8}; • dJM je Jeffreys-Matusitova míra, viz [5], L ∈ {400, 800}, p ∈ {2, 4, 8}; • dItak je Itakurova divergence, viz [8], L ∈ {400, 800}, p ∈ {2, 4, 8}; Celkem tak obdržíme 90 křivek pro každý signál. Pro každý signál a každou křivku provedeme „aktualizačníÿ algoritmus popsaný dříve. Obdržíme tak množiny nových hranic bnew . i Pro rozhodnutí, zda jsou nové hranice lepší či horší než ty původní, použijeme ruční labely bcon i . Skóre pro odhadnutou pozici můžeme definovat takto: ( s(bi ) = 1, 0, |bi − bcon i | ≤ τ; |bi − bcon i | > τ; (2) čili s(bi ) je 1, jestliže odhadnutá pozice leží dostatečně blízko k pozici skutečné (kontrolní), τ je zvolená tolerance, např. 12, 5 ms. Toto skóre můžeme vypočítat pro oba odhady, tedy M se váže pouze jak pro původní bHM tak pro aktualizované bnew (nezapomeňme, že bnew i i i na jednu křivku). Index zlepšení pak můžeme definovat jako M Ii = s(bnew ) − s(bHM ), i i (3) tj. Ii se rovná 1, když se pozice hranice zlepšila (aktualizovaná pozice je v toleranci dané rovnicí 2, zatímco původní nebyla); Ii je 0, když nedošlo k žádné změně (tj. stav původní i nové hranice je totožný; buď jsou obě v toleranci, nebo v ní není ani jedna); Ii je −1, když aktualizací došlo ke zhoršení (nová pozice není v toleranci, zatímco původní byla). Index Ii spočteme pro všechny hranice v signálu, zvlášť pro každou z křivek (každá křivka definuje odlišnou množinu bnew ). Nyní pro jednu konkrétní hranici ve všech signálech a pro i jednu konkrétní křivku (jednu množinu bnew ) vyčíslíme následující statistiky: i • Si0 je počet signálů, kde Ii = 0; • Si1 je počet signálů, kde Ii = 1; • Si−1 je počet signálů, kde Ii = −1. 12 Petr Bergl hranice X-m m-a a-t t-e e-ř ř-í i-d d-ou ou-š š-k k-a a-X dBay Si1 9 0 8 1 6 4 2 8 5 4 5 4 6 2 3 6 8 2 8 0 8 1 10 0 Si0 Si−1 Si0 1 1 0 0 1 1 2 1 0 2 1 0 8 9 4 8 7 6 5 5 7 6 6 9 dcep Si1 Si−1 1 1 0 1 5 1 2 0 2 1 4 0 2 3 3 2 3 0 4 0 3 1 1 0 Tabulka 1: Hodnoty S–statistik pro míru dBay , L = 1000, p = 8 a míru dcep , L = 1000. Výsledky pro všechny hranice (’X’ je pauza), pro 10 signálů z trénovací množiny. Příklad těchto hodnot pro míru dBay , okno délky L = 1000 a AR řád p = 8 nalezneme v tabulce 1 (vlevo). Příklad je pro databázi čítající 18 signálů, trénovací množinu tvoří 10 z nich. Každý signál je pouze jedno slovo „mateřídouškaÿ vyslovené dítětem, vzorkovací frekvence je 8 kHz. Tabulka 1 popisuje schopnost míry dBay (s konkrétním nastavením) zlepšit pozici hranic v tomto slově. Podívejme se např. na pátý řádek tabulky (hranice mezi ’t’ a ’e’). Je zjevné, že ke změně nedošlo pro 2 signály (Si0 = 2), ke zlepšení došlo u 8 signálů (Si1 = 8), ke zhoršení nedošlo ani u jednoho (Si−1 = 0). Z toho vyplývá, že míra dBay pro L = 1000 a p = 8 je schopna výrazně upřesnit pozici hranice mezi ’t’ a ’e’. Na druhou stranu, výsledky pro některé jiné hranice jsou dosti špatné, např. pro hranici ’š-k’ je 8 signálů beze změny, pozice se zhoršila pro 2 signály. V tabulce 1 (vpravo) jsou uvedeny výsledky pro kepstrální vzdálenost dcep , L = 1000. Výsledky pro hranici ’š-k’ jsou dobré (Si0 = 6, Si1 = 4, Si−1 = 0). Zdá se tedy, že kepstrální vzdálenost je pro detekci ’š-k’ vhodnější než míra dBay . Uvědomme si, že tabulka 1 reprezentuje hodnoty pro dvě křivky (dBay a dCep s určitým nastavením). Křivek je celkem 90 a naším úkolem je teď najít tu nejvhodnější pro každou z hranic. Jinými slovy musíme najít metodu, pro kterou je hodnota Si1 maximální a hodnota Si−1 naopak minimální. Výsledky (nejlepší míry a nastavení) nalezneme v tabulce 2 (vlevo). Tyto metody použijeme pro „aktualizačníÿ algoritmus pro osm signálů z testovací části databáze. Tj. hranice ’m-a’ bude aktualizována v každém signálu pomocí Kullback-Leiblerovy divergence (viz druhý řádek na obr. 2); hranice ’a-t’ pomocí Bhattacharyovy míry (viz třetí řádek na obr. 2), hranice ’t-e’ pomocí Bayesovského detektoru (viz čtvrtý řádek na obr. 2). Pro další pozice postupujeme obdobně. Nyní je naším úkolem ověřit, zda výše popsaný princip (selekce metod plus ”aktualizační” algoritmus) vedl ke zpřesnění hranic v testovacích signálech. Pro aktualizované pozice spočteme S–statistiky, výsledky viz tabulka 2 (vpravo). Je zjevné, že pozice většiny hranic byla zpřesněna. Petr Bergl 13 hranice X-m m-a a-t t-e e-ř ř-í i-d d-ou ou-š š-k k-a a-X nej. míra dKull dBha dBay dRBD dRBD dCC dBay dCep dCep - metody L p 800 8 800 4 1000 8 800 2/4 1000 4/2 1000 2 800 2 1000 400 - Si0 8 7 3 3 4 4 8 6 2 6 5 8 ověření Si1 Si−1 0 0 1 0 5 0 4 1 4 0 2 2 0 0 2 0 6 0 2 0 0 3 0 0 Tabulka 2: Vlevo–Nejvhodnější metody a jejich nastavení pro každou hranici (pro ’X-m’, ’i-d’ a ’a-X’ žádná vhodná metoda nalezena nebyla). Vpravo–Hodnoty S–statistik pro osm testovacích signálů. Hodnoty se vztahují k metodě uvedené na stejném řádku v levé části tabulky. Obrázek 2: Proces aktualizace hranic. V 1. řádku je promluva ’mate’ s HMM odhady; ve 2.–4. řádku jsou křivky pro Kullback-Leiblerovu, Bhattacharyyovu divergenci a pro Bayesovský detektor. V 5. řádku jsou hranice aktualizované pomocí lokálních maxim v předchozích křivkách. Čárkovaně jsou vykresleny kontrolní ruční labely. 14 Petr Bergl Jinou statistikou popisující přesnost odhadů je průměrná hodnota skóre z rovnice 2. Ta je definována následovně: s̄ HM M s̄ new R X N 100 X M = s(bHM ); i,r R r=1 i=1 (4) R X N 100 X = s(bnew ); R r=1 i=1 i,r (5) kde R je počet signálů; bi,r je odhad i-té pozice v r-tém signálu; s̄HM M tedy reprezentuje průměrný počet případů, ve kterých je HMM odhad dostatečně blízko ke kontrolním labelům (tj. „počet zásahůÿ), s̄new je „počet zásahůÿ po aktualizaci. Pro naší databázi jsou hodnoty pro různou velikost tolerance τ uvedeny v tabulce 3. Zřetelné navýšení počtu zásahů demonstruje užitečnost výše popsaného postupu. Zároveň je dobré si uvědomit, že hodnota τ není důležitá jen pro vyhodnocování výsledků, ale hraje podstatnou roli v trénovací fázi algoritmu, konkrétně při výpočtu S–statistik. τ 10 ms 12, 5 ms 15 ms s̄HM M 38% 43% 45% s̄new 58% 68% 65% Tabulka 3: Hodnoty „počtu zásahůÿ před a po aktualizaci pro různé hodnoty tolerance τ . 3. Závěry Ukázali jsme, že „aktualizační algoritmusÿ spolu s precizním výběrem metod může vést k podstatnému zpřesnění hranic mezi hláskami získaných pomocí HMM. Kullback-Leiblerova divergence se jako jediná zdá být přijatelná pro hledání hranic typu nazál–samohláska (’m-a’). Pro hranici typu samohláska–ticho (’a-t’) byla zvolena Bhattocharyova vzdálenost. Bayesovský detektor se ukázal být velmi vhodný pro typ explozíva– samohláska (’t-e’). Zatímco většina ostatních detektorů reaguje na explozi ’t’, Bayesovský detektor spolehlivě reaguje až na hranici mezi hláskami. Skvěle detekuje také typ samohláska–frikativ (’ou-š’). Bayesovský detektor s rozdílnými řády v levé a pravé části okna (dRBD ) detekuje dobře hranici samohláska–frikativ (’e-ř’) i frikativ–samohláska (’ř– í’). Kepstrální detektory se zdají být vhodné pro frikativní kontext. Je nutné však také zmínit některé nevýhody zmíněného přístupu. Pokud jsou HMM odhady naprosto špatné, aktualizace s tím nic nezmůže, poněvadž hledání lokálního maxima ve křivce je omezeno pouze na blízké okolí HMM labelu. Další nevýhodou je výpočetní náročnost algoritmu. Zvláště trénovací část (výpočet většího počtu měr) je značně časově náročná. Algoritmus však rozhodně není určen pro on–line použití jeho hlavním úkolem je usnadnit zpracování rozsáhlých databází. Poděkování Tento výzkum byl podporován z grantů GAČR 102/03/H085 ‘Modelování biologických a řečových signálů’, IGA MZ ČR NR 8287-3/2005, ‘Počítačová analýza řečového projevu a celonočních EEG záznamů u dětí’ resp. výzkumného záměru MŠMT MSM6840770012 ‘Transdisciplinární výzkum v biomedicínckém inženýrství 2’. Petr Bergl 15 Reference [1] Omar, K.M., Hasegawa-Johnson, M. Levinson, S.: Gaussian Mixture Models of Phonetic Boundaries For Speech Recognition. IEEE Workshop on Automatic Speech Recognition and Understanding Workshop. Trento, Italy, December 2001. [2] Appel, U., Brandt, A.: Adaptive Segmentation of Piecewise Stationary Time Series, Information Sciences, 1983, no. 29, p. 27 − 56 [3] Ruanaidh, J.O., Fitzgerald, W.J.: Numerical Bayesian Methods Applied to Signal Processing, Statistics and Computing, Springer, Berlin, 1996. [4] Cmejla, R., Sovka, P.: Recursive Bayesian Autoregressive Changepoint Detector for Sequential Signal Segmentation. In EUSIPCO-2004 – Proceedings [CD-ROM]. Wien: Technische Universitat, 2004. [5] Sooful, J.J., Botha, J.C., An acoustic distance measure for automatic cross-language phoneme mapping, PRASA’01, pp. 99 − 102, South Africa, November 2001. [6] Couvreur, L., Boite, J.-M., Speaker Tracking in Broadcast Audio Material in the Framework of the THISL Project, Proc. of ESCA ETRW Workshop on Accessing Information in Spoken Audio, Cambridge (UK), pp. 84 − 89, April 1999. [7] Mak, B., Barnard, E., Phone clustering using the Bhattacharyya distance, in ICSLP96, The Fourth International Conference on Spoken Language Processing,vol.4, 1996. [8] J.Psutka, Komunikace s počítačem mluvenou řečí, Academia, Praha, 1995 16 Václav Bolom Zvýrazňování řeči pomocí vícekanálového zpracování Václav Bolom České vysoké učení technické v Praze, Fakulta elektrotechnická [email protected] Abstrakt: Algoritmy vícekanálového zpracování zvýrazňují užitečný signál, který dopadá na mikrofonní pole z požadovaného směru. Signály dopadající z jiných směrů mají být co nejvíce potlačeny. Příspěvek je úvodem do této problematiky. Představuje základní algoritmy vícekálového zpracování. Experiment demonstruje vliv úhlu dopadu rušení a odstupu signálu od šumu na výstupní signál. 1. Úvod Příspěvek se zabývá možnostmi využití vícekanálového zpracování při zvýrazňování řeči v šumu. Zvýrazňování řeči v šumu je důležitou úlohou např. při mobilní komunikaci, v pomůckách pro sluchově postižené, při sběru dat pro analýzy apod. Data pro vícekanálové zpracování jsou snímána mikrofonním polem. Nejjednodušším případem je lineární řada s konstantním rozestupem jednotlivých mikrofonů. Přínosem vícekanálových systémů je skutečnost, že využívají geometrického rozložení zdrojů signálu v prostoru. Vhodnou úpravou parametrů těchto systémů se provádí tvarování přijímací charakteristiky (beamforming). V tomto příspěvku jsou uvažována jistá zjednodušeni. Oproti praktické situaci uvažujeme, že jsou zdroje signálu dostatečně vzdáleny od mikrofonní řady. Dopadající vlnu pak můžeme považovat za rovinnou, což značně zjednodušuje úvahy. 2. Typy rušení ve vícekanálových systémech Ve vícekanálových systémech se mohou vyskytovat tři druhy rušení. Jsou to prostorově koherentní, prostorově nekoherentní a prostorově difusní rušení. K jejich klasifikaci je vhodná koherence [6] definována jako φij (ejωT ) , Γij (ejωT ) = q φii(ejωT )φjj(ejωT ) (1) kde φij je vzájemná spektrální výkonová hustota (CPSD) a φii je spektrální výkonová hustota (PSD) dvou realizací signálu získaných ve dvou různých místech prostoru. Václav Bolom 17 Prostorově koherentní rušení je reprezentováno rovinnou vlnou, která dopadá na řadu pod obecným úhlem φc , který je ovšem odlišný od úhlu dopadu užitečného signálu. Koherentní rušení se objevují na všech senzorech s časovým posunem. Tuto situaci vystihuje obrázek 1. Časové zpoždění τ mezi jednotlivými senzory závisí na jejich vzdálenosti a úhlu dopadu. Vyjadřuje ho vztah D τ = cos ϕc , (2) c kde D je vzdálenost mezi senzory, c rychlost šíření zvuku a ϕc úhel dopadu rušení. Koherence prostorově koherentního rušení se v celém frekvenčním rozsahu blíží jedničce. Koherence prostorově nekoherentního rušení se v celém frekvenčním rozsahu blíží nule. Toto rušení může být způsobeno např. šumem elektrických soustav. Prostorově difusní rušení vzniká odrazy signálu od stěn. V literatuře zabývající se difusním rušením [1] se modeluje difusní rušení pomocí nezávislých zdrojů rozmístěných na kulové ploše. Koherence pak má tvar sin( ωD ) Γ(ejωT ) = ωDc . (3) c V experimentech uvedených v tomto příspěvku je uvažováno pouze koherentní rušení. 3. Modelování vstupních dat V simulacích je uvažováno rozložení zdrojů zvukového signálu podle obrázku 1. Zdroje se nacházejí v dostatečné vzdálenosti od senzoru, takže příchozí signály tvoří rovinné vlny. Užitečný řečový signál dopadá kolmo na radu a koherentní rušení pod úhlem φc . Vzorky užitečného signálu jsou na všech mikrofonech shodné. V případě rušení dochází ke zpoždění τ mezi jednotlivými kanály. Zpoždění závisí na úhlu φc a vzdálenosti mezi mikrofony D. Je dáno vztahem 2. Další zdroje rušení nejsou v tomto modelu uvažovány. Signál na i-tém senzoru je dán vztahem xi [k] = s[k] + ni [k], (4) kde s[k] označuje užitečný signál a ni [k] rušení na i-tém senzoru. Za užitečný signál byla vybrána nahrávka promluvy pořízené v bezodrazové komoře. Tento signál je shodný pro všechny kanály. Rušení je tvořeno šumovým signálem s normálním rozdělením. Signál byl nejprve zkopírován do všech kanálu. Poté byly kanály vůči sobě zpožděny. Zpoždení vzorků mezi jednotlivými kanály neodpovídá celočíselnému násobku vzorkovací periody. Zpožděné vzorky byly interpolovány ve frekvenční oblasti [5]. Amplituda vstupních signálu je normována do intervalu h−1, 1i. Mixace užitečného signálu a rušení byla provedena podle vztahu X = S + kN, (5) kde X, S a N jsou matice vstupního, resp. užitečného a rušivého signálu. k představuje konstantu, která byla nastavována podle požadovaného SNR [5]. 18 Václav Bolom Obrázek 1: Model signálů dopadajících na řadu dvou mikrofonů. 4. Tvarování přijímací charakteristiky (Beamforming) Úloha vícekanálového příjmu se často označuje jako tvarování přijímací charakteristiky (beamforming). Tyto metody se vedle předzpracování řeči používají v dalších oblastech, např. seismologii, radarech apod. Při vzorkování analogového signálu je třeba dodržet časovou vzorkovací podmínku [7]. U vícekanálových metod realizujících zároveň časovou i prostorovou filtraci je třeba ohlídat i podmínku pro prostorové vzorkování. Představme si vícekanálový systém jako FIR filtr. Nechť je signál dopadající pod úhlem ϕc vzorkován mikrofonní řadou tak, že zpoždění mezi dvěma sousedními kanály činí jeden vzorek. Frekvence ω0 se v rovině řady jeví jako ω = ω0 D cos ϕc , cTs (6) kde Ts značí vzorkovací periodu. Nedostatečná vzdálenost mezi senzory může vést k nejednoznačnosti určení směru dopadu. 4.1. Dělení metod směrového příjmu Metody směrového příjmu se dělí podle různých kritérií [7]. Podle prvního kritéria se rozlišují algoritmy pracující v časové nebo frekvenční oblasti. Algoritmy použité při experimentech umožňují obojí způsob zpracování. Podle dalšího kritéria se metody dělí na beamformery nezávislé na datech a na Staticky optimální. Nezávislé beamformery aproximují požadovanou impulsovou odezvu nezávisle na statistikách vstupních dat. Metodika jejich návrhu je analogická k návrhu FIR filtrů. Aproximace impulsové odezvy je však polynomiální úlohou pro řady s konstantním rozestupem senzorů. Váhy statisticky optimálních beamformerů se nastavují v závislosti na statistikách vstupních dat. Odezva se nastavuje tak, aby byl na výstupu minimální příspěvek od šumu a signálu z jiných směrů nežpožadujeme. Ke správnému nastavení vah je třeba stacionárních dat a znalosti jejich statistik 2. řádu. Pro nestacionární data se používají adaptivní algoritmy [8]. Přehled základních algoritmů včetně způsobu nastavování vah uvádí [7]. Východiskem pro experimenty je adaptivní beamformer s okrajovými podmínkami [2] často označovaný jako Frostův algoritmus. 4.1.1. Frostův algoritmus Frostův algoritmus je adaptivní algoritmus, který nastavuje váhy systému tak, aby byl na výstupu minimální rozptyl výstupního signálu. Schéma algoritmu je na obrázku 2. Předpokladem pro správnou činnost je kolmý dopad užitečného signálu na mikrofonní řadu. Dopadá-li užitečný signál pod jiným úhlem, je třeba zavést na začátek všech větví příslušné zpoždění a vstupní signál natočit. Václav Bolom 19 Obrázek 2: Schéma Frostova algoritmu. Algoritmus řeší úlohu w∗ = arg min E[y 2 [n]] = arg min E[(x[n]T w[n])2 ]. w w (7) y značí výstup algoritmu, x je vektor vstupních dat a w vektor vah. Z rovnice je zřejmé, že řešením je nulový vektor. Takovéto řešení však produkuje nulový výstup. Nulovému výstupu lze zabránit zavedením okrajových podmínek. Pro užitečný signál dopadající kolmo na řadu lze celý systém nahradit jednou větví. Váhy takovéhoto filtru jsou pro jednotlivá zpoždění rovny součtu vah větví celého systému (viz obrázek 2). Impulsová odezva tohoto filtru F je definuje okrajovou podmínku pro hledání optimálních vah. Za F se typicky volí Diracův impuls, aby byla konstantní frekvenční charakteristika. Okrajovou podmínku lye matematicky zapsat jako CT w = F, (8) kde C značí matici realizující sčítání vah po sloupcích (viz obrázek 2). Aktualizace vah je prováděna algoritmem LMS s okrajovými podmínkami (Constrained LMS) [8]. Frostův algoritmus lze rozdělit do dvou kroků, filtrace a aktualizace vah. Filtrace y[n] = x[n]T w. (9) Aktualizace vah w[0] = f w[n + 1] = P[w[n] − µx[n]y[n]] + f , kde P = E − C(CT C)−1 CT f = C(CT C)−1 F (10) (11) (12) (13) (14) 20 Václav Bolom 4.1.2. Algoritmus GSC Nevýhodou Frostova algoritmu je nutnost používáni algoritmu LMS s okrajovými podmínkami. Dále může během jeho činnosti docházet ke kumulaci numerických chyb [3]. Tyto nevýhody odstraňuje implementace označovaná jako Generalised Sidelobe Canceller (GSC) [3]. LMS algoritmus s okrajovými podmínkami je převeden na normální LMS algoritmus. V [3] je také ukázána ekvivalence obou algoritmů. Struktura algoritmu je zachycena na obrázku 3. Na vstupu mohou být buď vzorky signálu, nebo jeho spektra. Systém se skládá ze dvou větví. Horní větev tvoří beamformer nezávislý na datech označovaný jako DAS (Delay And Sum). Jeho váhy wi jsou rovny M1 . M představuje počet kanálů. Jedná se v podstatě o průměrování. Dolní větev se označuje jako ANC (Adaptive Noise Canceller). Jejím cílem je odhad rušení přítomného ve výstupu Yb (ejωT ). Podmínkou správné činnosti této větve je perfektní odstranění užitečného signálu ze všech kanálů. To zajišťuje blokovací matice BM s M řádky M − 1 sloupcem. Nejčastěji má tvar [3] 0 ... 0 1 −1 0 1 −1 . . . 0 BM = . .. .. . . .. . . . . . . 0 0 0 0 . .. . 0 . . . 1 −1 (15) Váhy Hi jsou řízeny LMS algoritmem [8] tak, aby Yh (ejωT ) byl odhadem rušení přítomného v Yb (ejωT ) ve smyslu nejmenších čtverců. Obrázek 3: GSC. 5. Experimenty Cílem experimentů bylo provést simulace vybraných algoritmů a prozkoumat jejich vlastnosti. Testován byl algoritmus GSC. Byl zkoumán vliv počtu kanálů a směru šíření rušení na SNR [5] ve výstupním signálu. Testovací signály byly namodelovány pro 2 až 12 kanálů a pro φc = 60◦ a φc = 30◦ . Odstup signálu od šumu byl na vstupu zvolen 0 dB. SNR na výstupu byl odhadnut na základě znalosti průběhu čistého signálu. Pro vstupní SNR = 0 dB je SNRE roven SNR na výstupu algoritmu. Václav Bolom 21 Algoritmy byly implementovány ve frekvenční oblasti. Bylo použito metody sčítání přesahů (OLA) [5]. Segment tvořilo 128 vzorků, váhování bylo prováděno Hammingovým oknem s 50% překryvem. 5.1. Výsledky experimentů Výstupem systému je jednorozměrný signál zvýrazněné řeči. Obrázek 5 ukazuje časové průběhy vstupního signálu (jednoho kanálu), výstupního signálu a čistého nezašuměného signálu. Tytéž signály zachycuje obrázek 6 na spektrogramech. Tabulka 1 ukazuje vliv počtu kanálů a směru šíření rušivého signálu na zlepšení SNR (SNRE)[5]. Hodnoty z této jsou graficky zachyceny na obrázku 4. ϕc = 60◦ M SNRE [dB] 2 ϕc = 30◦ M SNRE [dB] 0,9 2 2,4 4 3,3 4 5,3 6 4,9 6 7,0 8 6,1 8 8,2 10 6,9 10 9,1 12 7,7 12 9,9 Tabulka 1: Experimentální závislost SNRE na počtu kanálů při různých úhlech dopadu rušivého signálu Experimentalni prubeh SNRE φc = 30° φc = 60° φ = 30° c φc = 60° 3 4 5 6 7 M→ 8 9 10 11 12 Obrázek 4: Závislost SNRE na počtu kanálů a směru šíření rušivého signálu. 22 Václav Bolom Vstupni signal (jeden kanal) 1 0.5 0 −0.5 −1 0 1000 2000 3000 4000 0 1000 2000 3000 4000 0 1000 2000 3000 4000 6000 7000 8000 9000 n→ 5000 6000 Cisty signal 7000 8000 9000 n→ 7000 8000 9000 n→ 5000 Vystup 1 0.5 0 −0.5 −1 1 0.5 0 −0.5 −1 5000 6000 Obrázek 5: Časové průběhy vstupních a výstupních dat. Vstupni signal (jeden kanal) 20 Frequency 1 0 −20 0.5 −40 −60 0 0 500 1000 1500 2000 2500 Vystup 3000 3500 4000 4500 n → 20 1 Frequency −80 0 −20 0.5 −40 −60 0 0 500 1000 1500 2000 2500 3000 Cisty signal 3500 4000 4500 n → 20 1 Frequency −80 0 −20 0.5 −40 −60 0 0 500 1000 1500 2000 2500 3000 3500 4000 4500 n → Obrázek 6: Spektrogramy vstupních a výstupních dat. −80 Václav Bolom 6. 23 Závěry Z výsledků algoritmu je patrné, že algoritmus provádí zvýrazňování řeči. SNRE se pohybovalo od 0,9 dB pro 2 kanály do 7,7 dB pro 12 kanálů pro rušení dopadající pod úhlem 60◦ . Pro rušení ze směru 30◦ bylo SNRE od 2,4 dB pro 2 kanály do 9,9 dB pro 12 kanálů. Z grafu 4 je patrné, že zvýraznění je tím větší, čím více se směr šíření rušivého signálu odklání od kolmého směru. Rušení dopadající kolmo na řadu by nebylo zvolenou metodou potlačeno vůbec. Systém by ho „považoval“ za užitečný signál. Dosavadní výzkum se dosud pohyboval na úrovni simulací. Mým cílem je ověřit získané poznatky měřením. Na katedře máme k dispozici vícekanálovou jednotku, která je schopna nahrávat synchronně až z dvanácti mikrofonů najednou. Prvním krokem by mělo být nahrávání v bezodrazové komoře. Experimenty by měly objasnit, jaký vliv bude mít skutečnost, že na řadu dopadají kulové vlnoplochy. Cílem tohoto experimentu bude kompenzace tohoto jevu. Měli bychom zjistit, zda bude stačit zavedení určitého zpoždění na jednotlivé senzory. V dalším výzkumu chci navázat na disertační práci Jana Ingerleho [4]. Tato práce se zabývá kombinací metod směrového příjmu s postfiltrací. Cílem bude rozvíjet metody, které budou mít vliv i na difusní šum. Součástí tohoto výzkumu je odvození a výpočet kritérií pro hodnocení kvality potlačení rušení. Poděkování Tento výzkum byl podporován z grantů GAČR 102/03/H085 „Modelování biologických a řečových signálů“ a výzkumného záměru MŠMT MSM6840770012 „Transdisciplinární výzkum v biomedicínském inženýrství 2“ . Reference [1] Cron, B. F.; Sherman, C. H. Spatial-correlation functions for various noise models. Journal of acoustic society of America 34, 11 (1962). [2] Frost, O. L. An algorithm for linearly constrained adaptive array processing. In IEEE August 1972, vol. 60, pp. 926–934. [3] Griffiths, L. J.; Charles, W. J. An alternative approach to linearly constrained adaptive beamforming. IEEE Transaction on Antenas and Propagation AP-30, 1 (January 1982). [4] Ingerle, J. Methods of speech signal enhancement combining beamforming and postfiltration. PhD thesis, FEL ČVUT, Prague, February 2003. [5] Sovka, P.; Pollák, P. Vybrané metody číslicového zpracování signálů. Vydavatelství ČVUT, Praha, 2003. [6] Uhlíř, J.; Sovka, P. Číslicové zpracování signálů. Vydavatelství ČVUT, Praha, 2002. [7] van Veen, B. D.; Buckley, K. M. Beamforming: A versatile approach to spatial filtering. IEEE ASSP Magazine (April 1988), 4–24. [8] Widrow, B.; Stearns, S. D. Adaptive Signal Processing. Prentice-Hall, 1985. 24 Hynek Bořil Návrh odposlechové smyčky Srovnání parametrizací pro rozpoznávání Lombardovy řeči Hynek Bořil České vysoké učení v Praze, Fakulta elektrotechnická [email protected] Abstrakt: Prezentovaný příspěvek se zabývá problematikou sběru Lombardova efektu a rozpoznávání řeči pod tímto efektem. V první části je provedena studie útlumu šíření zvuku způsobeného uzavřenými sluchátky. Tento jev má negativní vliv na způsob, jak se mluvčí slyší při nahrávání Lombardovy řeči v simulovaném hlučném prostředí. Z toho důvodu je určena útlumová charakteristika sluchátek a navržena eliminační odposlechová smyčka. V druhé části příspěvku jsou porovnány standardní a nově navržené parametrizace z hlediska robustnosti vůči Lombardovu efektu. 1. Úvod Jedním z aktuálních požadavků kladených na systémy automatického rozpoznávání řeči (ASR) je schopnost spolehlivé činnosti v reálných prostředích. Je známo, že úspěšnost ASR výrazně klesá v hlučných podmínkách. Rozpoznávání je v tomto případě ovlivněno jak samotnou přítomností šumu v řečovém signálu, tak skutečností, že mluvčí mění charakteristiky řeči tak, aby zajistil její srozumitelnost (Lombardův efekt – LE) [1]. Oba zmíněné faktory negativně ovlivňují schopnost akustických modelů rozpoznávače klasifikovat jednotlivé řečové jednotky a dochází tak k propadu rozpoznávacího skóre. V posledních desetiletích byla věnována značná pozornost vývoji algoritmů pro potlačování šumu resp. zvýrazňování řeči. Jak se však v současnosti ukazuje, i při úspěšném potlačení hlučného pozadí dochází v případě silné přítomnosti LE k naprostému kolapsu ASR. Pro dosažení robustního rozpoznávání je tedy nutné zaměřit se také na potlačení vlivu LE. Této problematice se věnuje prezentovaná práce. V první části příspěvku je provedena studie vlivu sluchátek při sběru promluv v simulovaném hlučném prostředí a navržena kompenzační odposlechová smyčka. V druhé části jsou srovnány klasické a nově navržené parametrizace z hlediska robustnosti vůči LE. 2. Návrh odposlechové smyčky Při sběru databáze CLSD'05 bylo mluvčím zprostředkováváno simulované hlučné prostředí pomocí uzavřených sluchátek [2]. Aby se zmírnil vliv útlumu způsobeného sluchátky na to, jak se mluvčí slyší, byl k hluku přimíchán řečový odposlech. Hlasitost odposlechu byla nastavována podle individuálních potřeb mluvčích. Jak se však ukázalo, subjektivní nastavování úrovně odposlechu mělo za důsledek odlišné reakce na konstantní intenzitu reprodukovaného hluku. Tuto nežádoucí variabilitu lze eliminovat použitím odposlechové smyčky, jejíž přenos bude jednoznačně definován tak, aby eliminoval útlum způsobený sluchátky. Hynek Bořil 25 Obecně vzato, zvukové vlny se ke smyslům posluchače šíří dvěma cestami. Jedna je prezentována vibracemi lebečních kostí, druhá postupuje vzduchem a vnějším a středním uchem. Lze předpokládat, že nasazení uzavřených sluchátek na hlavu může výrazně ovlivnit šíření zvuku uchem, zatímco přenos lebečními kostmi zůstane téměř identický (ačkoliv hmota hlavy a soustavy hlava-sluchátka je mírně odlišná). Pokud je útlum způsobený sluchátky znám, lze navrhnout řečový odposlech, který tento útlum bude eliminovat. Pro určení směrové charakteristiky útlumu sluchátky bylo provedeno měření na umělé hlavě v bezodrazové komoře. K měření byl použit systém Pulse v.8 firmy Brüel & Kjær [3] a umělá hlava splňující doporučení ITU P.85 [4]. Pro analýzu vlivu sluchátek byly změřeny monaurální směrové charakteristiky přenosu zvuku bez a se sluchátky, směrová charakteristika útlumu sluchátky pak byla určena jako jejich rozdíl [5], viz obr. 1. Attenuation (dB) 30 20 10 0 -10 200 150 4 10 100 3 10 50 0 Angle (°) 2 10 Frequency (Hz) Obrázek 1: Útlum způsobený sluchátky – monaurální směrová charakteristika. Měření charakteristiky bylo provedeno pro rozpětí úhlů 0-180°, při úhlu 0° směřuje hlava nosem ke zdroji, při úhlu 90° je k němu natočena uchem. Měření nebylo prováděno pro úhly větší než 180°, jelikož v tomto případě by se zvuk v bezodrazové komoře šířil k měřenému uchu pouze vibracemi lebky, u kterých lze vliv sluchátek považovat za zanedbatelný. Angle (°) 75 90 105 60 120 45 135 30 150 15 0 30 30 1000 Hz 2000 Hz 4000 Hz 8000 Hz 165 20 20 10 10 0 -10 0 -10 Attenuation (dB) 180 Obrázek 2: Směrové charakteristiky útlumu pro vybrané frekvenční složky. 26 Hynek Bořil Měření prokázalo, že frekvenční charakteristika útlumu je silně závislá na úhlu, pod kterým se zvuk k uchu šíří. Směrovost útlumu pro vybrané frekvenční složky je ukázána v detailu na obr. 2. Je tedy zřejmé, že útlum sluchátky je závislý na parametrech konkrétní nahrávací místnosti (rozměry, absorpční koeficienty) a pozici mluvčího. Jak je patrné z obrázků 1, 2, pro nízké frekvenční komponenty je útlum menší a také méně směrový. Některé harmonické složky jsou nasazením sluchátek dokonce mírně zesíleny (způsobeno změnou masy soustavy hlava-sluchátka). V dalším kroku bylo provedeno měření útlumu v místnosti a pozici, kde se nacházeli mluvčí při sběru databáze CLSD’05. V tomto případě byly pro měření monaurálního přenosu zvuku bez a se sluchátky použity třetinooktávové pásmové šumy, rozložené v pásmu 80-8000 Hz. Na obrázku 3 je zobrazena útlumová charakteristika nahrávací místnosti (Rec. room) a pro srovnání také vybrané charakteristiky útlumu z bezodrazové komory. Attenuation by Headphones (dB) 25 20 15 10 0° 90° 180° Rec. room 5 0 100 1000 10000 -5 -10 Frequency (Hz) Obrázek 3: Útlumové charakteristiky – bezodrazová a nahrávací místnost. Z ekvivalentních křivek hlasitosti [6] je známo, že oblast nejvyšší citlivosti lidského ucha se pochybuje v rozmezí 3-4 kHz a je spojena s délkou (a tedy rezonanční frekvencí) zvukovodu. Z prezentovaných výsledků měření lze předpokládat, že nasazením sluchátek dochází ke změně konfigurace rezonátoru a posuvu rezonance do vyšších frekvencí. Tím dojde k vytvoření výrazného maxima útlumu v místě původní rezonance a výrazného propadu útlumu v místě nové rezonance. Na základě měření v nahrávací místnosti v pozici řečníka určíme přenosovou charakteristiku zpětnovazební smyčky tak, že ji položíme rovnu útlumové charakteristice sluchátky. 3. Srovnání parametrizací pro rozpoznávání Lombardovy řeči Pro testování standardních a nově navržených parametrizací byly vybrány ženské číslovky obsažené v databázi CLSD‘05. Testovací množiny byly tvořeny promluvami obsahujícími posloupnosti osmi po sobě jdoucích číslovek. Množina neutrálních promluv obsahovala 768 a LE sada 1024 číslovek od 4 mluvčích. Z LE promluv byly aplikací hlasové konverze, poskytnuté Davidem Sündermannem, odvozeny další dvě testovací sady – CLE (converted LE), kde byly normalizovány pozice formantových kmitočtů a F0 směrem k neutrální řeči, a CLEf0 – formanty zachovány, normalizováno pouze F0. Rozložení F0 pro jednotlivé sady je ukázáno na obrázku 4, N značí neutrální promluvy. Pro ilustraci jsou na následujících obrázcích ukázána i rozložení pro mužské číslovky. Hynek Bořil 27 18000 18000 F0 distribution Male digits 16000 14000 12000 Male_N Male_LE Male_CLE Male_CLEf0 10000 8000 6000 Number of samples 14000 Number of samples F0 distribution Female digits 16000 12000 8000 6000 4000 4000 2000 2000 0 Female_N Female_LE Female_CLE Female_CLEf0 10000 0 0 100 200 300 400 500 600 0 100 200 300 400 500 600 Frequency (Hz) Frequency (Hz) Obrázek 4: Rozložení F0 – číslovky. Z obrázku 4 je patrné, že u LE řeči dochází u obou pohlaví k výraznému posunu rozložení F0 do vyšších frekvencí. Řečová konverze (CLE, CLEf0) tato rozložení úspěšně normalizuje směrem k neutrální řeči. 2500 2500 Formants - Male digits /e/ /e'/ /i/ F2 (Hz) /i''/ 2000 /i''/ /e/ 1500 /a'/ /a''/ /a'/ /a/ 1500 /u'/ /o''/ /u'/ 1000 /o/ /o'/ /u/ 400 500 600 /o/ Male_N Male_LE Male_CLE Male_CLEf0 700 800 1000 900 500 300 /a''/ /o'/ /u''/ /a/ /u''/ 500 300 /e'/ /e''/ /e''/ F2 (Hz) 2000 Formants - Female digits /i'/ /i/ /i'/ /o''/ Female_N Female_LE Female_CLE Female_CLEf0 /u/ 400 500 F1 (Hz) 600 700 800 900 F1 (Hz) Obrázek 5: Pozice formantů samohlásek – číslovky. Na obrázku 5 jsou ukázány průměrné pozice prvního a druhého formantu v samohláskách číslovek. I zde je patrný výrazný posun formantů při LE. CLE v tomto případě úspěšně transformuje samohlásky s výše položenými formanty (/e/, /a/, /o/), samohlásky /u/ a /i/ se také posouvají směrem k neutrálním pozicím, ale nedosahují jich. Částečně však toto pozorování může být ovlivněno nepřesností algoritmu pro detekci formantů, neboť pro nízké frekvence mohou být formanty občas chybně zaměněny s F0, které se u LE řeči posouvá často do oblasti typického výskytu F1. Při LE také dochází u formantů k systematickému zužování šířek pásem – viz tabulka 1. Set Male digits Female digits Neutral 297 230 B1 (Hz) LE CLE 136 209 164 223 CLEf0 156 200 Neutral 268 252 B2 (Hz) LE CLE 169 284 201 320 CLEf0 208 258 Tabulka 1: Šířky formantů – hláska /a/. Jelikož je úspěšnost rozpoznávání silně závislá na šumovém pozadí v řečovém signálu, byly provedeny analýzy rozložení SNR pro jednotlivé testovací promluvy – obrázek 6. Je patrné, že při LE promluvách v simulovaném hlučném prostředí SNR výrazně narůstá, neboť mluvčí zvyšují hlasovou intenzitu zatímco úroveň okolního hluku zůstává téměř konstantní. 28 Hynek Bořil 140 100 SNR histograms Males 100 80 60 40 Neutral_M LE_M CLE_M CLEf0_M 20 SNR histograms Females 80 Number of utterances Number of utterances 120 60 40 Neutral_F LE_F CLE_F CLEf0_F 20 0 0 0 20 40 60 80 100 0 20 40 60 80 100 SNR (dB) SNR (dB) Obrázek 6: Rozložení SNR. Zde testované nové parametrizace byly odvozeny ze standardních MFCC resp. PLP modifikací banky filtrů (FB) [8]. Parametrizace 20Bands-LPC byla odvozena z PLP záměnou původní Bark FB za banku dvaceti obdélníkových filtrů rozložených ekvidistantně bez překryvu v pásmu 0-4 kHz. Big1-LPC byla odvozena z 20Bands-LPC sloučením prvních tří filtrů v jeden. Parametrizace RFCC obsahují FB tvořenou devatenácti filtry rozloženými v pásmu 625-4000 Hz. Varianta DCT je odvozena z MFCC a LPC z PLP parametrizace. Důvody pro tyto konfigurace jsou vysvětleny v [8] a [7]. Pro srovnání byly testovány také standardní parametrizace MFCC a PLP a modifikace MFCC-LPC, kde jsou extrahovány LPC kepstrální koeficienty, a PLP-DCT, extrahující DCT kepstrální koeficienty – princip je znázorněn na obrázku 7. -1 preemfáze s(k) segmentace DCT-1 FFT banka filtrů filtru banka FFT cn log|.|2 LPC→c Obrázek 7: Extrakce parametrů s DCT a LPC kepstrálními koeficienty. Poslední testovanou parametrizací byl Expolog, navržený pro robustní rozpoznávání hlasité řeči [1]. Zde byla FB v MFCC parametrizaci modifikována způsobem znázorněným na obrázku 8, převzato z [1]. Obrázek 8: Expolog – modifikovaná frekvenční osa. Hynek Bořil 29 Výsledky rozpoznávání na neutrálních, LE, CLE a CLEf0 promluvách jsou ukázány v tabulce 2 a na obrázku 9. FE\Set Neutral LE CLE CLEf0 MFCC 3,65 71,29 30,86 58,59 MFCC-LPC 2,86 46,68 26,17 48,83 PLP 2,86 47,36 25,2 49,02 PLP-DCT 2,47 51,17 23,44 52,54 Expolog 3,91 35,74 26,66 37,79 20Bands-LPC 2,99 42,09 19,92 42,68 Big1-LPC 4,69 27,15 20,41 25,29 RFCC-DCT 5,08 26,07 22,56 22,56 RFCC-LPC 4,56 22,95 23,14 23,73 Tabulka 2: Výsledky rozpoznávání číslovek – word error rate – WER (%). 80 Features - performance on female digits 70 60 Neutral LE CLE CLEf0 WER (%) 50 40 30 20 10 0 MFCC MFCC-LPC PLP PLP-DCT Expolog 20Bands-LPC Big1-LPC RFCC-DCT RFCC-LPC Obrázek 9: Výsledky rozpoznávání číslovek – word error rate – WER (%). Z tabulky 2 a obrázku 9 je zřejmé, že na úrovni standardních parametrizací PLP překonalo MFCC na neutrálních i LE datech. Překvapivě modifikace MFCC-LPC vykazuje prakticky identické výsledky jako PLP, přestože každá z parametrizací využívá jinou FB a sestává z jiných kroků úpravy signálu. Expolog výrazně překonává MFCC i PLP na LE promluvách na úkor zhoršení úspěšnosti na neutrálních datech. Z nově navržených parametrizací nejlepších výsledků dosahuje 20Bands-LPC, která na neutrálních datech dosahuje srovnatelné úspěšnosti jako standardní MFCC a PLP a na LE datech je výrazně překonává, a RFCC-LPC, která dosahuje největší úspěšnosti na LE datech, na úkor úspěšnosti na neutrálních promluvách. Použití hlasové konverze CLE pro normalizaci F0 a formantů směrem k neutrální řeči zlepšilo rozpoznávací skóre u většiny parametrizací, nejvýraznější přínos byl pozorován u 30 Hynek Bořil standardních parametrizací, jejich modifikací záměnou typu extrahovaných kepstrálních koeficientů a parametrizace 20Bands-LPC. 4. Závěry V příspěvku byl prezentován návrh zpětnovazební smyčky eliminující útlum způsobený zavřenými sluchátky a provedeno srovnání úspěšnosti parametrizací při rozpoznávání neutrálních a LE číslovek z databáze CLSD’05. Bylo ukázáno, že nově navržené parametrizace dosahují větší úspěšnosti při rozpoznávání LE řeči nežli standardně používané MFCC a PLP parametrizace. Parametrizace 20Bands-LPC poskytuje srovnatelné výsledky na neutrální řeči jako standardní parametrizace, na LE řeči je výrazně překonává. Nejlepších výsledků na LE řeči bylo dosaženo při parametrizaci RFCC-LPC. Řečová konverze CLE zlepšila úspěšnost rozpoznávání u většiny parametrizací. 4. Poděkování Tento výzkum byl podporován z grantu GAČR 102/03/H085 “Modelování biologických a řečových signálu”, GAČR 102/05/0278 “Nové směry ve výzkumu a využití hlasových technologií” a výzkumného záměru MŠMT MSM6840770014 “Výzkum perspektivních informačních a komunikačních technologií”. Reference [1] Bou-Ghazale; S. E., Hansen, J. H. L. A Comparative Study of Traditional and Newly Proposed Features for Recognition of Speech under Stress. IEEE Trans. on Speech and Audio Processing, 8(4), 2000, pp. 429-442. [2] Bořil, H.; Pollák, P. Design and Collection of Czech Lombard Speech Database. 15771580, INTERSPEECH-05, Lisboa, Portugal, 2005. [3] Brüel & Kjær. PULSE X Sound & Vibration Analyzer. http://www.bksv.com/pdf/ /bu0228.pdf. [4] ITU – P.58 (1996). Recommendation – Head and torso simulator for telephonometry. http://www.itu.int/rec/T-REC-P.58-199608-I/E. [5] Bořil, H.; Bořil, T.; Pollák, P. Methodology of Lombard Speech Database Acquisition: Experiences with CLSD. Proc. of 5th Conference on Language Resources and Evaluation, Genova, Italy 2006, pp. 1644 - 1647. [6] Fletcher, H. Auditory patterns. Review of Modern Physics, vol. 12, pp. 47-65. [7] Bořil, H.; Fousek, P.; Sündermann, D.; Červa, P.; Žďánský, J. Lombard Speech Recognition: A Comparative Study. Proc. of 16th Czech-German Workshop on Speech Processing, Prague 2006. [8] Bořil, H.; Fousek, P.; Pollák, P. Data-Driven Design of Front-End Filter Bank for Lombard Speech Recognition. INTERSPEECH - ICSLP'06, Pittsburgh, Pennsylvania 2006, pp. 381 – 384. [9] Bořil, H.; Fousek, P. Influence of Different Speech Representations and HMM Training Strategies on ASR Performance. Proc. of POSTER 2006 [CD-ROM], Prague 2006. Petr Fousek 31 Příznaky pro automatické rozpoznávání řeči odvozené z dynamiky spektra Petr Fousek České vysoké učení technické v Praze, Fakulta elektrotechnická [email protected] Abstrakt: Jedním z problémů současných automatických rozpoznávačů řeči je špatná robustnost vůči variabilitě kanálu. V této práci je navržena zcela nová parametrizační metoda s teoretickým potenciálem snížit vliv kanálového rušení. Časový vývoj energií ve frekvenčních pásmech řeči je filtrován dvourozměrnými filtry, jejichž vlastností je potlačení neměnných složek ve spektru, což umožňuje částečnou separaci kanálu od řeči. Teoretické předpoklady jsou experimentálně ověřeny. Přínosem práce je rovněž rozšířený parametrizační nástroj CtuCopy. 1. Úvod Mohlo by se zdát, že problém automatického rozpoznávání řeči je již vyřešen. Záznam a zpracování zvuku je téměř výhradně řešeno v digitální oblasti, výpočetní technika je snadno dostupná a programy na převod mezi řečí a textem se stávají standardní součastí operačních systémů počítačů i mobilních telefonů. Přesto ani profesionální diktovací systémy stále nejsou dokonalé. Je mnoho problémů, které si člověk při vnímání řeči ani neuvědomuje, pro automatické systémy jsou jsou však stále překážkou. Jedná se o variabilitu samotné řeči (každý člověk mluví specifickým způsobem, který se mění dle situace), hluk prostředí (okolní zvuky, cizí řeč) a vliv přenosového kanálu (ozvěna místnosti, mikrofon, rušení při přenosu). Některé vlivy již lze potlačit, avšak současná metodika neřeší uspokojivě variabilitu kanálu. Kupříkladu konvenční rozpoznávač, který je natrénovaný na kvalitně nahranou řeč, není schopen rozpoznat řeč z telefonu, a to ani naopak. Tato práce se snaží dohonit tento hendikep automatických rozpoznávačů vývojem nových parametrizačních technik. 1.1. Důležitost dynamiky spektra Základní myšlenkou je zavést do příznaků informaci o delším časovém kontextu, než cca 25 ms, jak je tomu u konvenčních parametrizací [8]. Motivací jsou vlastnosti lidské produkce řeči i vnímání řeči. Informace o fonému jako stavební jednotce řeči je rozprostřena v delším časovém úseku vlivem koartikulace. Setrvačnost mluvícího ústrojí, minimální potřebná délka pro rozpoznávání člověkem, analýza vzájemné informace i modulační spektrum řeči nalézají délku potřebného úseku několik set milisekund, což je o řád výše, než s jakou běžně pracujeme [9, 2]. Konvenční příznaky pracují s krátkodobým spektrem řeči, 32 Petr Fousek avšak ukazuje se, že informace je zakódována spíše ve změnách spektra, nikoliv ve spektru samotném [1]. Příznaky odvozené z dlouhodobé dynamiky spektra již nyní nacházejí uplatnění ve špičkových systémech [10]. 2. Multi-RASTA filtrace Tato nová technika je založena na filtraci časového vývoje energie v úzkých frekvenčních pásmech řeči. Seznamme se nejprve velmi stručně s příbuznou myšlenkou systému TRAP [6], který umožní výklad nové metody M-RASTA. 2.1. TRAP příznaky frequency frequency Technika M-RASTA filtrace vychází z architektury systému TRAP. Příznaky nejsou odvozeny z krátkodobého spektra, nýbrž z delšího úseku spektrogramu, viz. obr. 1. time time Obrázek 1: Spektrogramy řeči. Vlevo: Příznaky z krátkodobého spektra jsou počítány “přes frekvenci”. Vpravo: TRAP příznaky jsou počítány z dlouhodobého vývoje “přes čas”. Spektrum se získá v následujících krocích (základ příznaků PLP [3]): 1. Segmentace signálu Hammingovým oknem délky 25ms s překryvem 10ms. 2. Výpočet krátkodobého spektra pomocí FFT. 3. Projekce amplitudového spektra na banku 15-ti filtrů v Barkově frekvenční škále (ve frekvenční oblasti). 4. Aplikace křivek konstatní hlasitosti a komprese dynamiky spektra. TRAPy se odvozují z tohoto energetického spektra obvykle jakožto 1000ms dlouhé trajektorie jednotlivých frekvenčních pásem (viz obr. 1). Máme tedy 15 trajektorií, každá délky 101 segmentů po 10ms, což je 1515 příznaků. Ty nelze přímo použít do konvenčního HMM/GMM dekodéru, proto je zařazena neuronová síť, jejímž úkolem je provést projekci 1515 vstupních příznaků na fonémovou sadu, která má obvykle rozměr kolem 40-ti fonémů. Neuronová síť je trénována tak, aby odhadovala posteriorní pravděpodobnosti výskytu jednotlivých fonému v daném segmentu řeči. Jinými slovy, každých 10ms síť odhadne, který foném je v tomto segmentu nejpravděpodobněji vysloven. Vnitřní struktura a metodika trénování neuronové sítě je mimo rámec tohoto výkladu [6]. Pravděpodobnosti jsou po úpravě (dekorelace a tvarování distribuční funkce) použity jako příznaky pro HMM/GMM dokodér. Petr Fousek 2.2. 33 Základní myšlenka Multi-RASTA Časový vývoj energie v pásmu (TRAP) má svou dynamiku. Spektrum trajektorie TRAP popisuje tzv. modulační spektrum. Toto spektrum kvantifikuje, do jaké míry jsou v daném pásmu zastoupeny pomalé a rychlé změny. A zde je právě možno uplatnit silná apriorní omezení, která mohou výrazným způsobem zvýšit robustnost vůči konvolučnímu šumu. Informace v řeči je kódována pomocí změn (modulací) spektra. Je známo, že vokální trakt má svou setrvačnost a nemůže se měnit libovolnou rychlostí. Modulační spektrum má maximum kolem 4Hz a rozsah cca 1-16Hz [7]. Naopak neřečové události se typicky nemění (kanál), nebo mění velmi pomalu. Filtrací modulačního spektra na 1-16Hz lze tedy omezit vliv kanálu, jak se osvědčilo u metody RASTA [5]. Multi-RASTA filtrace zobecňuje RASTA filtraci na dvourozměrnou filtraci spektrogramu, čili nejen časovou, ale i frekvenční a aplikuje nikoliv jeden filtr, ale banku filtrů. Impulsové odezvy filtrů jsou voleny tak, aby měly v čase nulovou stejnosměrnou složku, což eliminuje nežadoucí pomalé modulace. Jejich tvar je dán první a druhou derivací Gaussovy funkce: x x2 exp(− ), σ2 2σ 2 1 x2 x2 g2 [x] ∝ ( 4 − 2 ) exp(− 2 ), σ σ 2σ g1 [x] ∝ − (1) (2) Je to motivováno mj. podobnými odezvami neuronů v části mozkové kůřy savců, které zpracovávají akustické podněty. Více lze nalézt v [4]. Impulsové odezvy časových filtrů jsou patrné z obr. 2 a jejich modulační vlastnosti v obr. 3. Frekvenční filtry byly zkoušeny dva, a to aproximace první a druhé diference. Jejich impulsní odezva má délku 3 vzorky. −50 0 frames 50 −50 0 frames 50 0 0 −10 −10 dB dB Obrázek 2: Impulsové odezvy derivací Gaussovy funkce pro σ = 8 – 130ms. −20 −20 σ=130 ms −30 −40 0 10 −30 σ=8 ms 1 10 modulation frequency [Hz] −40 0 10 1 10 modulation frequency [Hz] Obrázek 3: Frekvenční charakteristiky derivací Gaussovy funkce pro σ = 8 – 130ms. 34 Petr Fousek 2.3. Postup výpočtu příznaků Výpočet je schematizován v obr. 4. Vstupem je výše uvedený spektrogram. Lineární 2D FIR filtraci lze rozložit na sekvenci časové a frekvenční filtrace. Spektrum v každém pásmu zvlášť je neprve filtrováno bankou Gaussovských filtrů (shodné filtry pro všechna pásma) a potom je aplikován frekvenční filtr, který reprezentuje jednoduchou/dvojitou diferenci. Vektor příznaků je tvořen spektry (každé 15 pásem) filtrovanými jednotlivými časovými filtry plus to vše filtrováno ještě frekvenčními filtry. Protože je příznaků mnoho, jsou zpracovány neuronovou sítí, podobně jako u metody TRAP. FIR Gaussian features critical bands bank −1 0 +1 2 −0.5 +1 −0.5 FIR bank time (frames) TANDEM probability estimator Critical band spectrogram Obrázek 4: Schema parametrizace M-RASTA. 2.4. Experimenty a optimalizace Funkce metody byla testována a optimalizována na rozpoznávači s malým slovníkem. Jeho přesný popis lze nalézt opět v [4]. Jedná se o rozpoznávání anglických číslovek. Základní vlastnosti: • HMM/GMM rozpoznávač, MLP neuronová síť, • HMM 29-ti fonémů, každý 5 stavů, 32 mixtures, • slovník 11 slov (“one” . . . “nine”, “zero”), 28 výslovnostních variant, • cca 4.5hod trénovacích dat (foneticky bohaté věty pro MLP a číslovky pro HMM), • cca 1.7hod nezávislých testovacích dat. Srovnávací parametrizace byly dvě, a to standardní PLP [3] a TRAP [6]. Jejich skóre jsou uvedena v tab. 1. parametry PLP TRAP WER[%] 5.2 4.7 Tabulka 1: Srovnávací parametrizace. Chyby rozpoznávání na úrovni slov (Word Error Rates). Rozsah časových konstant Gaussovských filtrů vyjádřený v rozptylech σ byl stanoven σ = 8 − 130 ms. Zdola byl omezen rozlišením spektrogramu (10ms), shora délkou filtru (1000ms). Počet různých konstant byl optimalizován v předběžných experimentech na 8. Petr Fousek 35 parametry M-RASTA časová M-RASTA časová + ∆f M-RASTA časová + ∆f + ∆2 f WER [%] 4.3 3.4 3.7 Tabulka 2: Důležitost frekvenční filtrace v M-RASTA příznacích. Experimenty s frekvenční filtrací ukázaly, že explicitní vyjádření souvislostí mezi pásmy pomocí diference je nepostradatelné, viz tab. 2. Druhá diference nepřinesla zlepšení skóre. Po optimalizaci je Gaussovských filtrů celkem 16. Celkový počet příznaků je pak roven 16x15 + 16x13 = 448 (15 pásem, 16 filtrů, verze s ∆f plus bez ∆f ; frekvenční filtrace není definována pro 2 krajní pásma). 2.5. Robustnost vůči konvolučnímu zkreslení Protože motivací pro M-RASTA byla robustnost vůči kanálovému šumu, ověření této vlastnosti bylo provedeno pomocí jednoduché preemfáze testovacích dat FIR filtrem s α = 0.97, což simulovalo změnu kanálu testovacích dat oproti trénovacím. Výsledky shrnuje tab. 3. parametry PLP TRAP M-RASTA časová M-RASTA časová + ∆f WER[%] 13.5 4.8 4.4 3.6 relativní propad [%] 160 3.4 2.1 4.0 Tabulka 3: Chyba rozpoznávání na datech se simulovaným kanálovým šumem. Konvenční PLP zcela zkolabovala, což mimo jiné dokumentuje význam tohoto výzkumu. Parametrizace s časovým kontextem TRAP vykazuje minimální ztrátu. Navržená metoda vykazuje ve své nejlepší variantě sice relativně vyšší ztrátu než TRAP, nicméně skóre je stále významně vyšší, než pro obě srovnávací metody. Parametrizace Multi-RASTA tedy splnila teoretické předpoklady, prokázala výborné vlastnosti i robustnost vůči kanálovému šumu. 3. Závěr Přínos práce za uplynulé období lze shrnout do následujících bodů: • Na základě teoretického rozboru byla navržena nová parametrizace řeči s předpokladem vyšší robustnosti vůči konvolučnímu zkreslení. • Metoda byla implementována mj. pomocí parametrizačního nástroje CtuCopy, který byl ve verzi 3.0 rozšířen, viz http://noel.feld.cvut.cz/speechlab. • Teoretické předpoklady byly ověřeny na rozpoznávači s malým slovníkem. Bylo ukázáno že metoda předčí konvenční a používané parametrizace. 36 Petr Fousek Poděkování Tento výzkum byl podporován DARPA EARS Novel Approaches z grantu č. MDA97202-1-0024. K dalším zdrojům patří granty IM2, AMI a M4. Částečná podpora byla rovněž z grantů GAČR 102/03/H085 “Modelování biologických a řečových signálů”, GAČR 102/05/0278 “Nové směry ve výzkumu a využití hlasových technologií”, AVČR 1ET201210402 “Hlasové technologie v informačních systémech” a výzkumného záměru MŠMT MSM6840770014 “Výzkum perspektivních informačních a komunikačních technologií”. Reference [1] Furui, S. Cepstral analysis technique for automatic speaker verification. In IEEE Trans. ASSP 1981, vol. 29, pp. 254–272. [2] Greenberg, S. Understanding speech understanding: Towards a unified theory of speech perception. In Workshop on the Auditory Basis of Speech Perception (1996), 1–8. [3] Hermansky, H. Perceptual linear predictive (plp) analysis for the speech. J. Acous. Soc. Am. (1990), 1738–1752. [4] Hermansky, H.; Fousek, P. Multi-resolution rasta filtering for tandem-based asr. In Proc. of Interspeech 2005 Lisbon, Portugal, 2005. [5] Hermansky, H.; Morgan, N. Rasta processing of speech. IEEE Transactions on Speech and Acoustics 2 (October 1994), 587–589. [6] Hermansky, H.; Sharma, S. Traps - classifiers of temporal patterns. In Proc. of ICSLP’98 November 1998. [7] Kanedera, N.; Arai, T.; Hermansky, H.; Pavel, M. On the relative importance of various components of the modulation spectrum for asr. Speech Communication 28, 1 (May 1999), 43–55(13). [8] Mermelstein, P. Distance measures for speech recognition: Psychological and instrumental. In Pattern Recognition and Artificial Intelligence, C. H. Chen, Ed. Academic Press, New York, 1976, pp. 374–388. [9] Yang, H. H.; Sharma, S.; van Vuuren, S.; Hermansky, H. Relevance of timefrequency features for phonetic and speakerchannel classification. Speech Communication (2000). [10] Zhu, Q.; Chen, B.; Gr.zl, F.; Morgan, N. Improved mlp structures for data-driven feature extraction for asr. In Interspeech’2005 - Eurospeech - 9th European Conference on Speech Communication and Technology 2005. Zdeněk Chaloupka 37 Analýza kvality řeči pomocí HMM Zdeněk Chaloupka, Jan Uhlíř České vysoké učení v Praze, Fakulta elektrotechnická [email protected], [email protected] Abstrakt: V tomto textu jsou shrnuty výsledky, které byly dosaženy algoritmem hledající časové zarovnání hlásek slova pomocí skrytých Markovových modelů – Hidden Markov Models (HMMs). Před aplikací algoritmu na reálná data jsme ověřili, že množina trénovacích dat je dostatečně velká pro správné natrénování HMMs a také jsme otestovali, zda je pro detektci výslovnostní chyby nejvhodnější model monofónový bez datových proudů a směsí. Metody detekce vad v řeči jsme rozdělili do dvou samostatných oblastí – hledání ve spektrální, nebo v časové oblasti. Zjistili jsme, že ve spektrální oblasti dochází častěji k chybám způsobeným chováním HMMs v oblasti řečového defektu. V časové oblasti jsme schopni detekovat výslovnostní chyby s jistým omezením, daným schopností řečníka vyslovit slovo (samozřejmě s chybami), protože algoritmus byl trénován a testován na dvou až čtyřslabičná slova. 1. Úvod Hlavním úkolem je navrhnout algoritmus schopný určit v promluvě s řečovými defekty, projevujícími se zejména nesprávným řazením a odlišným časovým zarovnáním jednotlivých hlásek, míru postižení řeči. Byla navržena metoda založená na bázi HMM, která je schopná lokalizovat jednotlivé hlásky v promluvách a určovat jejich trvání. V předchozích pracích bylo ukázáno s jakou přesností je algoritmus schopen lokalizovat začátky a konce hlásek (v porovnání s ručním zarovnáním), byla stanovena nejvhodnější parametrizace, ale nebylo ověřeno, zda je vybrána nejvhodnější konfigurace HMMs pro detekci výslovnostní vady. Při sledování řečových nahrávek bylo pozorováno, že výslovnostní vady se týkají zejména vynechání, zaměnění nebo vložení hlásky. Nejčastěji však dochází ke kombinaci těchto tří typů chyb. Důležitým charakterem řeči nemocných dětí je, že jsou schopny (alespoň v minimální míře) zachovávat rytmus slova, které jim je předříkáváno. Tím pádem dochází při výskytu nějaké chyby (vynechání, vložení, zaměnění hlásky) k časovým deformacím hlásek (většinou se jedná o prodloužení samohlásky) v bezprostředním okolí výskytu defektu. Dalším logickým bodem tedy bylo rozdělení algoritmu na hledání chyb v časové a spektrální oblasti. Ve spektrální oblasti jsme sledovali změnu logaritmu pravděpodobnostního skóre v závislosti na typu chyby a v časové oblasti jsme detekovali hlásky, jejichž délka překročila průměrné hodnoty stanovené u zdravých dětí. 2. Trénování a testování modelů HMM Pro natrénování modelů HMM byl použit programový balík HTK, který obsahuje veškeré základní nástroje potřebné pro práci s modely. Vstupními daty byly vektory parametrů řečových signálů obsahujících správně vyslovená slova. Pro trénování modelů bylo použito 40 zdravých mluvčí a pro testování 16 nemocných mluvčí. Trénování probíhalo Baum-Welchovým reestimačním algoritmem, který je implementován v HTK a jeho princip je možné najít v lit. [7]. Pro trénování jednotlivých stavů byl použit pouze monofónový 38 Zdeněk Chaloupka model, protože bylo zjištěno, že jeho přesnost je nejlepší s množstvím dat, která máme k dispozici pro trénování. Bylo však nutno otestovat zda máme nejvhodnější konfiguraci HMMs pro detekci výslovnostních chyb – tzn. jestli je počet datových proudů a směsí vyhovující. Pro testování byly vyvinuty dva různé testy. 2.1 Testovací algoritmy První testovací algoritmus již byl definován v předchozích pracech [4, 5, 6]. Je to pouhé porovnání přesnosti nalezených hranic hlásek pomocí referenčního zarovnání, které bylo vytvořeno manuální korekcí hranic hlásek obdržených od natrénovaných HMMs. Druhý algoritmus testování je více uzpůsoben charakteristice problému hledání výslovnostních chyb. Testovací algoritmus využívá vlastnostní algoritmu HTK, které pro popis zarovnávaného (rozpoznávaného) slova využívá jeho fonetickou transkripci. Abychom mohli jednoduše simulovat chybu, stačí ve fonetické transkripci zaměnit jakoukoliv hlásku. Touto jednoduchou úpravou zajistíme, aby algoritmus HTK při zarovnávání hledal ve správně vysloveném slovu jiný HM model pro nějakou hlásku a tím simuloval chybu ve vyslovení (záměnu hlásky). Očekáváme, že nastane poměrně velká změna ve výsledném log-pravděpodobnostním skóre. Problém nastává v případě, že budeme chtít simulovat chyby typu vynechání nebo přidání hlásky. Pro tento případ testování by to znamenalo, že ve fonetické transkripci bude přidána/odebrána jedna hláska. Taková změna však způsobí, že Viterbiho algoritmus [7] projde více/méně stavy a tím se výsledné skóre změní jinak, než je tomu v případě použití reálného algoritmu. Forced alignment algoritmus má pořád stejný počet modelů pro všechny realizace slova, mění se tedy jen počet hlásek vyslovených dítětem v závislosti na typu chyby při vyslovení. 3. Konfigurace a ověření parametrů Již dříve bylo ukázáno, že monofónový model bez přeskoků je nejvhodnější pro hledání přesného časového zarovnání [4, 5]. Pro generování vektorů z audio signálu byla pomocí testů vybrána parametrizace VTLN MFCC. Je však ještě třeba ověřit další parametry HMMs a otestovat dostatečnou natrénovanost modelů. Dalšími parametry modelů jsou počet datových proudů a počet použitých směsí. 3.1 Konfigurace dalších parametrů V předchozích pracech nebyla testována další konfigurace HMMs. Důležitým parametrem je počet datových proudů a směsí. Pro testování konfigurace byl použit test simulace chyby. Výsledné hodnoty jsou uvedeny v následující tabulce a vyjadřují rozdíl mezi log-pravděpodobnostním skóre všech slov bez vložené chyby a s vloženou chybou (čím větší rozdíl, tím lepší). Jak je vidět z následující tabulky, tak jednoduchý model bez směsí a datových proudů je nejvhodnější pro detekci chyby. word 1M1S 2M1S 3M1S pivo 126.61 83.463 98.274 papír 29.733 22.809 9.6777 květina 185.4 155.3 173.7 pohádka 63.079 47.462 49.207 1M3S 2M3S 3M3S pivo 126.61 92.375 97.743 papír 29.733 15.383 -5.5729 Zdeněk Chaloupka 39 květina 185.4 155.8 174.6 pohádka 63.079 41.486 36.247 Tab. 1. Suma chyby pro všechna slova a různé typy konfigurace HMMs; 1M-3M – počet mixtures, 1S-3S počet datových proudů. Situace odpovídá očekávání, neboť datové proudy a zvyšování počtu směsí má za úkol odstraňovat variabilitu jednotlivých hlásek pro různé řečníky, což v tomto případě snižuje schopnost algoritmu odlišovat chyby. 3.2 Natrénovanost modelů Pro ověření, zda je množina trénovacích dat dostatečná, jsme využili srovnání logpravděpodobnostního skóre nahrávek zdravých dětí, které nebyly v trénovací množině s nahrávkami zdravých dětí v trénovací množině. Při dostatečném počtu trénovacích dat, by rozptyl skóre pro stejná slova od různých řečníků měl být co nejmenší. Obrázek 1: Porovnání log-pravděpodobnostního skóre trénovacích a testovacích dat Jak je vidět z obrázku, trénovacích dat je dostatek, neboť log-pravděpodobnostní skóre trénovacích i testovacích dat má velmi podobný rozptyl hodnot. 4. Testování nejčastějších defektů Dříve, než budeme aplikovat algoritmus na reálná data, je potřeba otestovat chování HMMs pro jednotlivé typy výslovnostních chyb (vynechání, záměna, vložení hlásky). Pro tento typ testu byla připravena data manuálně, protože není možno využít metodu popsanou v kapitole 2.1 (z důvodů zde zmíněných). Některé hlásky slov tedy byly vyjmuty, zaměněny nebo vloženy ručně z daných nahrávek. Protože byla tato úprava časově náročná, byl tento test jen orientační a nelze z něj činit závěry o funkčnosti algoritmu. 4.1 Spektrální a časová oblast Na upravených datech bylo provedeno automatické zarovnání (forced alignment) a výsledné log-pravděpodobnostní skóre spolu s počtem hlásek lišících se od průměrné délky hlásek u zdravých dětí je přehledně zaneseno do tabulky 2. 40 Zdeněk Chaloupka Slovo Log-pravděpodobnostní skóre orig. + chyba - chyba záměna papír -345.84 0 -17.32 2 X X -13.01 1 dědeček -517.97 2 -11.68 2 X X -13.12 4 květina -545.3 1 -4.71 1 X X X X pohádka -499.81 2 -10.57 2 10.46 1 X X pokémon -470.57 0 -13.58 1 X X X X motovidlo -646.08 0 15.8 2 10.97 3 X X popelnice -620.56 0 8.08 1 3.54 2 -1.49 0 televize -511.55 1 -2.98 1 -18.69 2 X X Tab. 2. Změna log-pravděpodobnostního skóre v závislosti na typu chyby; orig. – skóre slova bez chyby, +/chyba – vložení/vyjmutí hlásky, záměna – záměna hlásky. V tabulce jsou hodnoty log-pravděpodobnostního skóre ve sloupcích 3, 4 a 5 (levá část) určeny jako změna od původní hodnoty (čím zápornější, tím lepší). Pokud hodnota klesá, algoritmus indikuje chybu správně, pokud hodnota stoupá, mohlo dojít k jedné z následujících situací. Pro výsledky v časové oblasti platí (pravá část sloupců), že s vloženou chybou by se měly zvyšovat počty hlásek určených jako chybné. Políčka v tabulce, označená šedým pozadím, indikují chybu. Tyto chyby se dají vysvětlit chováním HMMs. Mějme na paměti, že algoritmus automatického zarovnání používá pro všechny slova jejich skutečný transkripční popis (počet modelů se pro jedno slovo nemění) a že log-pravděpodobnostní skóre každé hlásky se normalizuje na počet segmentů, kterými její model prošel. V případě, že vložená hláska má spektrální charakteristiku podobnou hláskám v jejím okolí, model hlásky je zaměněn a model projde více stavy. Tedy log-pravděpodobnostní skóre klesá a délka roste. Obdobná je situace pro záměnu hlásky. V případě vyjmutí hlásky, nemůže najít model odpovídající segmenty a tudíž zkracuje svoji délku a skóre roste. Důležité je, že se vždy mění časové trvání jednotlivých modelů. Z tabulky je také jasně patrné, že pokud algoritmus selhal ve spektrální oblasti, v časové byla chyba objevena (až na jeden případ pro slovo „pohádka“). Samozřejmě není možno z tohoto testu dělat závěry, neboť byl proveden na velmi malé množině dat. Algoritmus otestujeme na nahrávkách promluv nemocných dětí. 5. Aplikace na reálná data Algoritmus byl použit na nahrávky nemocných dětí a zkoumána byla jak spektrální, tak časová stránka řeči. Nejprve se budeme zabývat oblastí spektrální. 5.1 Spektrální oblast Při aplikaci na reálná data bylo zjištěno, že lze sledovat ve spektrální oblasti vývoj jednoho řečníka. Pokusili jsme se zjistit, zda je možné rozdělit data do dvou tříd (zdravé, nemocné) na základě log-pravděpodobnostního skóre (viz obrázek 2). Zdeněk Chaloupka 41 Obrázek 2: Dělení do tříd na základě log-pravděpodobnostního skóre; kolečka – nemocné děti Podle obrázku lze říci, že data se dělí do tříd. Povšimněme si však realizací nahrávek nemocných dětí č. 4 a 5. Tyto nahrávky jsou pořízeny od stejného dítěte avšak s jistým časovým odstupem. Nahrávka č. 5 má horší log-pravděpodobnostní skóre a přitom kvalita vyslovení je lepší. Při bližším zkoumání bylo zjištěno, že v nahrávce č. 4 je podstatná část hlásek vynechána (Viterbiho algoritmus prochází méně stavy) a tudíž skóre roste (viz také vysvětlení v kapitole 4.1). 5.2 Časová oblast V časové oblasti byl algoritmus aplikován na přibližně 16 nahrávek. Slova byla oznámkována podle poslechového testu následovně: 1 – bez chyby, 2 – do 2 chyb, 3 – téměř nesrozumitelné. Výsledná známka mluvčího v testu byla určena průměrem známek přes všechny slova. Algoritmem byly nalezeny časové hranice hlásek a byla u nich stanovena délka. Výsledná hodnota v tabulce udává počet hlásek detekovaných jako špatné (jejich velikost se lišila od průměrné hodnoty o více než 1.2 násobek rozptylu hodnot) ze všech vyslovených v procentech. Mluvčí Špatných hlásek Poslechový test 1 46.11 2.58 2 38.64 1.84 3 24.81 1.42 4 25.97 1.33 5 40.00 1.7 6 38.46 2.27 7 46.43 2.33 8 20.78 1.42 9 50.98 2.22 10 50.00 2.81 Tab. 3. Porovnání poslechového a automatického testu na nemocných mluvčích. Z tabulky je patrné, že pouze ve dvou případech si poslechový a automatický test neodpovídají. Mluvčí č. 3, 4 a 8 mají méně než 28% hlásek detekovaných jako špatné 42 Zdeněk Chaloupka a známka poslechového testu je pod 1.5. Mluvčí 1, 6, 7, 9 a 10 mají více jak 38% hlásek detekovaných jako špatné a známka poslechového testu je více než 2.2. Zmíněné dva případy jsou způsobeny zejména nevyvážeností známky poslechového testu pro různě obtížná slova. Např. slovo „popelnice“ má více hlásek, které mohou být detekovány jako špatné a přitom poslechová známka slova má stejnou váhu jako pro slova s menším počtem hlásek. 6. Závěr Navrhnutý algoritmus automatického zarovnání je schopen detekovat chybu jak v časové, tak ve spektrální oblasti. Využití ve spektrální oblasti je podmíněno vyslovením přibližně stejného počtu hlásek jako má správně vyslovené slovo. V časové oblasti algoritmus funguje poměrně spolehlivě. Pro odstranění případných nesrovnalostí je potřeba váhovat slova koeficientem obtížnosti vyslovení. 7. Poděkování Tato práce byla podporována z grantu GA ČR – 102/03/H085 „Modelování biologických a řečových signálů“ a z výzkumného záměru MŠMT MSM6840770012 „Transdisciplinární výzkum v biomedicínském inženýrství II“. Reference [1] STEMMER, G. - HACKER, C. - STEIDL, S. - NÖTH, E.: Acoustic Normalization of Children's Speech. In EUROSPEECH-2003, 1313-1316. [2] WARWICKER, B. - LEES, J.: Landau Kleffner Syndrome. [online]. February 2001. [cit. 2005-0119]. <http://www.bobjanet.demon.co.uk/lks/home.html> [3] CHALOUPKA, Z. - UHLÍŘ, J.: Using Standard Algorithm and Cepstral Transformations for Analysis of Mispronounciation and Incorrect Phoneme Sequencing. In Digital Technologies 2004. Žilina: Technical University of Žilina, 2004, vol. 1, s. 44-48. ISBN 80-8070-334-5. [4] CHALOUPKA, Z.: Analysis of Mispronounciation Using Time Alignment of Phonemes. In ESSP-2005, 277-282, ISBN 3-938863-17-X. [5] CHALOUPKA, Z.: Mispronunciation Analysing Algorithm – Testing Methods and Results. In Digital Technologies 2005. Žilina: Technical University of Žilina, 2005, vol. 1. ISBN 80-8070-334-5. [6] CHALOUPKA, Z.: Mispronunciation Research in the Time and in the Spectral Domain. In POSTER 2006 - 10th International Student Conference on Electrical Engineering [CDROM]. Prague: CTU, Faculty of Electrical Engineering, 2006 [7] YOUNG, S. The HTKBook (for HTK Version 3.1) [online]. <http://nesl.ee.ucla.edu/projects/ibadge/docs/ASR/htk/htkbook.pdf>. [cit. 2005-01-19]. [8] HTK [software package]. Ver. 3.2.1. December 2002 [cit. 2005-01-19]. [9] SJÖLANDER, K.- BESKOW, J.: WaveSurfer - an Open Source Speech Tool. Proc. of ICSLP 2000, Bejing, China. 2000. Josef Rajnoha 43 Modelování neřečových událostí v robustním rozpoznávání řeči s malým slovníkem Josef Rajnoha České vysoké učení technické v Praze, Fakulta elektrotechnická [email protected] Abstrakt: V tomto článku je prezentována metoda modelování neřečových událostí řečníka v robustním rozpoznávači řeči s malým slovníkem na bázi skrytých Markovových modelů (HMM). Výsledky ukazují, že pouhé přidání informace o neřečových událostech a jejich modelování jednoduchými modely umožňuje dosáhnout výrazných zlepšení rozpoznávací úspěšnosti. Přestože je relativně snadné zahrnout tyto neřečové události do jednoduché gramatiky rozpoznávače, možnost jejich rozpoznávání je ovlivněna jejich vysokou variabilitou. 1. Úvod Hlasově ovládané systémy často pracují s reálnou spontánní řečí, která se v mnohém liší od čtených nahrávek. Spontánní řeč se vytváří ”za běhu” a mluvčí tak při řeči musí přemýšlet o tom, co bude následovat za právě promlouvaným slovem. To vede k výskytu například váhavých pauz v řeči. Navíc může být řeč přerušena zakašláním či doprovázena hlasitým nádechem, mlasknutím apod. Proto je nutné, aby byl rozpoznávač vůči těmo jevům odolný a nemohl je zaměnit například za některé slovo ze slovníku. V tomto příspěvku shrnuji výsledky modelování těchto neřečových událostí řečníka pomocí HMM v úloze rozpoznávání řeči v reálném prostředí s malým slovníkem nezávislé na mluvčím. Omezený slovník umožňuje použít jednoduchou gramatiku, do které lze snadno zahrnout modelované události a není tedy nutné se zabývat trénováním složitého jazykového modelu. 2. Rozpoznávač řeči S použitím systému nástrojů HMM Toolkit (HTK) [4] byl vytvořen rozpoznávač sekvence českých číslovek na bázi modelů fonémů. Rozpoznávač používá standardní levo-pravé 3stavové modely bez přeskoku stavů a 32 směsí (mixtures). Jedná se o modely českých fonémů a dva modely pro pausu. Číslovky jsou uspořádány do jednoduché gramatiky ve smyčce, což umožnilo snadné přidání modelovaných neřečových událostí do gramatiky. Signál je segmentován 16ms Hammingovým oknem s krokem 10ms. Z takto získaných segmentů je dále počítáno 12 MFCC koeficientů, jeden koeficient energie a také delta a akcelerační koeficienty. 44 3. Josef Rajnoha Trénovací databáze Pro natrénování modelů fonémů byla použita databáze SPEECON [2] (v dalším textu značena jako SPEEdat), obsahující nahrávky od různých mluvčích v různých prostředích. Tato databáze byla protříděna, aby neobsahovala přeřeknutí či jiné položky nevhodné pro trénování. SPEEdat tak obsahuje cca 60000 vět od 221 různých mluvčích z relativně tichého prostředí (kancelář, obývací pokoj) nahrávaných mikrofonem typu close-talk. V této databázi jsou rozlišovány dvě kategorie neřečových událostí řečníka : filled pause (pausa v řeči vyplněná zvukem) a jiná událost. Při předchozím trénování pouze modelů fonémů byly značky pro tyto události pouze vyjmuty z textového přepisu nahrávky a nebyly tak pro trénování brány v úvahu. Aby bylo k dispozici více dat pro trénování neřečových událostí, byla trénovací databáze následně rozšířena o databázi nahrávek z automobilu (CARdat), která obsahuje (po protřídění) dalších cca 40000 vět od 650 mluvčích. Pro potřeby tohoto rozpoznávače ale byly použity pouze nahrázvky ze stojícího automobilu. V této databázi jsou neřečové události řečníka rozděleny do více skupin : filled pause, kašel, odkašlání, mlasknutí a hlasitý dech. Toto dělení umožňuje přesnější trénování modelů neřečových událostí, neboť lze použít model pro menší skupinu událostí. Počet vět Počet neřečových událostí SPEEdat 63024 34994 CARdat 38391 15866 Tabulka 1: Zastoupení neřečových událostí řečníka v jednotlivých databázích Pro účely testování byla z obou databází vyjmuta část dat (SPEE test, CAR test), která byla použita pro testování úspěšnosti výsledného rozpoznávače. Příspěvky od mluvčích v této testovací množině nebyly použity pro trénování, čímž se testovala také robustnost rozpoznávače. 4. Modelování neřečových událostí Hlavní myšlenkou této práce je modelování neřečových událostí řečníka pomocí rozpoznávače na bázi HMM. Jelikož původní trénovací databáze SPEECON rozlišuje pouze dvě třídy těchto událostí, byly v prvním kroku přidány do sady modelů dva nové modely model pro filled pause (FIL) a model pro ostatní události (SPK). Tyto modely byly získány zkopírováním modelů foneticky blízkých fonémů. Pro inicializaci modelu FIL tak byl použit foném ”e”, pro model SPK pak plozivní foném ”p”. Model SPK byl v předchozím kroku inicializován zkopírováním modelu plozivní hlásky. To je vhodné pro případ modelování událostí typu mlasknutí či kašel. Mezi neřečovými událostmi je ale také událost ”hlasitý dech”, která má spíše frikativní charakter. To způsobuje, že je model SPK trénován na značně odlišné události a není tedy možné přesně vystihnout ani jednu z nich. Proto byla množina modelů rozšířena o model události typu dech (BRE). Problémem však je, že v trénovací databázi SPEEdat není událost BRE odlišena od ostatních událostí. Proto není možné s pomocí této databáze trénovat událost BRE odděleně od ostatních událostí. Pro další trénování tak byla použita pouze CARdat. Pro inicializaci modelu BRE byl v první fázi použit model SPK z prvního přetrénování, který je nadále používán pro modelování plozivních událostí. Po analýze výsledků rozpoznávání Josef Rajnoha 45 se dále ukázalo, že rozpoznávač označuje událost BRE jako velmi krátkou, délkou srovnatelnou s plozivními událostmi (viz tab. 2, první řádek). V reálné řeči je však dech událostí s mnohem delší dobou trvání, proto byl ve třetí fázi pro inicializaci modelu BRE použit model pro ticho, který modeluje delší událost, než je hláska ”f”. Tabulka 2, druhý řádek dokládá, že opravdu došlo ke zvýšení délky rozpoznané neřečové události. Po přetrénování se pak pro oba případy inicializačních modelů délky neřečových událostí mírně přiblížily. SPEE test CAR test fáze, inicial.model plosivní dech plosivní dech 2nd retrain, ”f”-model 20.06 25.44 23.77 21.38 2nd retrain, pausa 20.7 108.74 22.46 54.46 3rd retrain, ”f”-model 24.72 39.72 36.99 30.44 3rd retrain, pausa 21.81 102.17 33.7 55.21 Tabulka 2: Průměrná délka neřečových událostí Vlastní události pak byly přidány do gramatiky tak, jako by se jednalo o další slovo, které má systém rozpoznávat. 5. Experiment Výsledky byly srovnávány na úrovni míry chybovosti slov (WER - Word Error Rate) D+S+I WER = N · 100%, (1) kde N je počet rozpoznávaných slov, D je počet slov nezaznamenaných, S je počet slov zaměněných za jiné a I je počet nesprávně vložených slov (inzercí). Protože rozpoznané neřečové události nejsou pro úlohu rozpoznávání číslovek důležité, jsou z rozpoznaného textu následně vyjmuty. Tudíž výraz pro WER spíše vyjadřuje míru chybovosti na úrovni číslovek. Proto také nebylo bráno v úvahu, jestli byla jedna neřečová událost rozpoznána na místě, kde se skutečně nevyskytuje, zda byla vynechána nebo zda byla zaměněna za jinou neřečovou událost. Obrázek 3 ukazuje hodnotu WER dosaženou na SPEE test (šrafovaný sloupec) v daném trénovacím kroku, obrázek 4 ukazuje tytéž výsledky pro CAR test. Plné sloupky ukazují míru zastoupení nesprávně vložených slov. Právě míra nesprávně vložených slov z velké části vypovídá o schopnosti rozpoznávače eliminovat vliv neřečových událostí, které tak nejsou mylně označeny jako číslovka. 5.1. Výsledky pro dva modely neřečových událostí Původní rozpoznávač (bez modelů neřečových událostí) dosahuje hodnoty WER 4,99% na SPEE test (Obr. 3, sloupec a) a 11,18% WER na CAR test (Obr. 4, sloupec a). Po přidání dvou modelů neřečových událostí (viz sekce 4.) se úspěšnost znatelně zvýšila (okolo 20% pokles chyby pro SPEE test, 15% pro CAR test) a také počet nesprávně vložených slov poklesl (viz sloupec b). Je tedy zřejmé, že pouhé přidání jednoduchých modelů neřečových událostí do gramatiky rozpoznávače znatelně pomáhá zvýšit robustnost systému proti těmto událostem. Výsledky po prvním přetrénování jsou již ovlivněny rozšířením trénovací databáze, proto jsou uvedeny úspěšnosti rozpoznávání pro rozpoznávač bez modelů neřečových událostí fricative silence 46 Josef Rajnoha (sloupec c) a pro rozpoznávač s rozšířenou sadou modelů (sloupec d). Je zřejmé, že samotné rozšíření trénovací množiny vede na znatelné zvýšení úspěšnosti rozpoznávání. Po rozšíření sady modelů ale chybovost a také počet chybně vložených slov dále klesá. c d b e f g h i j k l m n o p 3.5 3 2.5 4 2 3 1.5 2 1 1 Insertions [%] a 5 WER [%] no mark fricative silence 0.5 0 Start Init 1st 3rd 2nd 4th 0 Obrázek 3: Výsledky pro databázi SPEE test b c d e f g h i j k l m n o p 10 10 8 7.5 6 5 4 2.5 2 0 Start Init 1st 2nd 3rd 4th Insertions [%] WER [%] a 0 Obrázek 4: Výsledky pro databázi CAR test Jak ale ukazují sloupce e pro nerozšířenou sadu modelů a f pro rozšířenou sadu, druhé přetrénování nevedlo k dalšímu zlepšení pro SPEE test a naopak se znatelně zvýšily hodnoty nejen WER, ale také zastoupení chybně vložených slov. 5.2. Výsledky pro tři modely neřečových událostí Sloupec g na obr. 3 ukazuje, že druhé přetrénování při použití tří modelů (FIL, SPK, BREodvozen z původního SPK) vede na zlepšení oproti druhému přetrénování s dvěma modely a výsledná úspěšnost rozpoznání se pro SPEE test téměř vyrovnala hodnotě po prvním přetrénování, zatímco pro CAR test nastal další významný pokles chybovosti. Sloupec h, resp. i ale ukazuje, že ke použití vhodnějšího inicializačního modelu (foném ”f” resp. pausa) k výraznému zlepšení nedošlo. Až další přetrénování poukázalo na nevhodnost inicializace události BRE modelem plozivní události (sloupec j bez trénování modelů událostí, k - model BRE inicializovaný modelem SPK, l - inicializace modelem ”f”, m - inicializace modelem pausy). Naopak další dvě možnosti inicializace se zdají být rovnocenné. 5.3. Zarovnání databáze SPEEdat S pomocí výše natrénovaných modelů neřečových událostí řečníka byla zarovnána databáze SPEEdat, což mělo umožnit nalézt nejvhodnější výslovnostní variantu slov v databázi a především zjistit, zda je označená ostatní událost spíše blízká události SPK nebo BRE. Jednoduchá analýza (bylo prozkoumáno jen několik položek kvůli rozsahu databáze) ale ukázala, že výsledky zarovnání nevedou ke zcela přesným výsledkům. Takový jev ale nebyl neočekávaný vzhledem k následujícím faktům : Josef Rajnoha 47 • Modely neřečových událostí řečníka použité k zarovnání nejsou natrénovány dostatečně • Neřečové události jsou na rozdíl od hlásek velmi variabilní a je potřeba velké množství dat pro trénování k vystižení této variability. • Na značení jednotlivých neřečových událostí pracovalo více lidí, z nichž každý má jiný pohled na problém, kdy už je událost tak málo zřetelná, aby nebyla označena. Proto mezi jednotlivými značkami může být veliký rozdíl. • Značky neřečových událostí nezasahují do řeči, ale jejich vzálemné překrytí nelze vyloučit a může dojít k situaci, kdy je uprostřed dechu mlasknutí. To při předpokladu, že je neřečová událost následována krátkou pauzou, vede opět na možnou nejednoznačnost značení události. Takto zarovnaná databáze byla následně použita (spolu s CARdat) k dalšímu přetrénoSfrag replacements vání modelů. Výsledky ukazuje soubor sloupců 4th - n pro trénování bez modelů, o s ”f”-inicializačním modelem a p s pauzou jako inicializačním modelem. V tomto kroku sice přesnost rozpoznávače poklesla, ale pokles není příliš značný a je tedy na místě se domnívat, že po jistém manuálním překontrolování zarovnaných dat by se mohl očekávat další pokles chybovosti. 5.4. Test v neznámých podmínkách S modely z 3. trénovací fáze byl dále uskutečněn test robustnosti rozpoznávače vůči nahrávacím podmínkám. Byly k tomu využity signály shodné se signály v databázi SPEE test, ovšem nahrávané s použitím jiného mikrofonu, než který byl použit pro nahrávání trénovací databáze. Graf na obr. 5 ukazuje dosaženou chybu. fricative no mark silence 12 WER [%] 8 2 6 4 1 2 0 3rd another conditions Insertions [%] 3 10 0 Obrázek 5: Neznámé nahrávací podmínky - SPEE test Pro případ SPEE test se přesnost znatelně snížila, ale menší nárůst počtu chybně vložených slov ukazuje, že změna nahrávacích podmínek ovlivnila výsledky rozpoznávání neřečových událostí méně, než výsledky rozpoznávání segmentů řeči. 6. Závěr Práce se zabývá modelováním neřečových událostí řečníka za účelem zvýšení robustnosti na mluvčím nezávislého rozpoznávače řeči na bázi HMM s malým slovníkem pracujícím v reálném prostředí. Výsledky experimentů lze shrnout do těchto bodů : • První výsledky ukazují, že již jednoduché modelování dvou tříd těchto událostí přináší do úlohy rozpoznání řeči zlepšení výsledků. Použitím modelů foneticky podobných fonémů bylo dosaženo snížení chybovosti o téměř 20%. 48 Josef Rajnoha • Rozšířením sady modelů a rozdělením plozivních a frikativních neřečových událostí řečníka bylo dále dosahováno postupného zvyšování přesnosti rozpoznávání na jedné z testovacích databází bez výrazných změn v přesnosti na druhé databázi. • Přetrénování rozpoznávače na databázi, jejíž data byla pomocí předchozích modelů zarovnána, vedlo k poklesu přesnosti rozpoznání, ale míra tohoto poklesu a možnost eliminovat v databázi chybně zarovnané neřečové události ukazují na možný přínos tohoto kroku. V celé práci se projevil vliv vysoké variability rozpoznávaných neřečových událostí a nedostatek dat pro trénování, přesto bylo docíleno poklesu chybovosti rozpoznávače na testovacích datech o 22% resp. 11,5%. Poděkování Tento výzkum byl podporován z grantů GAČR 102/03/H085 “Modelování biologických a řečových signálů”, GAČR 102/05/0278 “Nové směry ve výzkumu a využití hlasových technologií”, AVČR 1ET201210402 “Hlasové technologie v informačních systémech”, IGA MZ ČR NR 8287-3/2005 a výzkumného záměru MŠMT MSM6840770014 “Výzkum perspektivních informačních a komunikačních technologií”. Reference [1] RAJNOHA, J. : Modeling of Speaker Non-speech Events in Robust Speech Recognition. Czech-German Workshop 2006, Prague 2006. [2] Webové stránky projektu SPEECON. http://www.speechdat.org/speecon. [3] RABINER, L. : Fundamentals of speech recognition. Prentice-Hall, 1995. [4] YOUNG, S. - et al. : The HTK Book (for HTK Version 3.2.1). Cambridge University Engineering Department, 2002. [5] RAJNOHA, J. : Rozpoznávání řeči v reálných podmínkách na platformě standardního PC. Diplomová práce, ČVUT, 2006. [6] GAJIC, B. - MARKHUS, V. - PETTERSEN, S. G. - JOHNSEN, M. H. : Automatic Recognition of Spontaneously Dictated Medical Records for Norwegian. COST278 and ISCA Tutorial and Research Workshop - ROBUST2004, 2004. [7] SHRIBERG, E. E. : Phonetic Consequences of Speech Disfluency. International Congress of Phonetic Sciences, 1999. Lukáš Ručkay 49 Analýza EEG pomocí ICA - odhad dimenze modelu Lukáš Ručkay České vysoké učení technické v Praze, Fakulta elektrotechnická [email protected] Abstrakt: Aplikace analýzy nezávislých komponent (Independent Component Analysis, ICA) je rychle se rozšiřující oblast výzkumu a mnoho vědeckých týmu se věnuje zkoumání jejího přínosu pro slepou separaci signálů (Blind Source Separation, BSS) a dekonvoluci signálů. Tato práce se zabývá odhadem dimenze modelu pro ICA použitou na pohybové EEG. Odhad dimenze ICA modelu je zde proveden pomocí dvou metod. První metoda využívá korelační vzdálenosti odhadnutých komponent. Základem druhé metody je hierarchické clusterování využívající jako vstupní parametr opět korelační vzdálenosti komponent. 1. Úvod Slepá separace signálů (Blind Source Separation, BSS) [1] je obor, který se zabývá získáváním skrytých informací obsažených v souboru dat. Získávání těchto skrytých informací nemůže být provedeno zcela obecně, ale právě tímto tématem se zabývá obor BSS. Analýza nezávislých komponent (Independent Component Analysis, ICA) je jedna z mnoha metod pro řešení tohoto problému. ICA aplikovaná na EEG data je velice zajímavá a perspektivní metoda získávání informací ukrytých v mozku [4]. Naším hlavním cílem v oblasti zpracování biologických signálů je zvýšení rozpoznávacího skóre v databázi EEG obsahující odlišné pohyby (proximální-distální, extenzní-flexní nebo palec-malíček databáze). To je možné dosáhnout dekompozicí EEG na pohybové a nepohybové komponenty s využitím ICA [5]. Tato práce se zabývá výběrem stabilně odhadovaných nezávislých komponent z EEG dat a odhadem dimenze modelu ICA. Pojmem dimenze modelu ICA se zde rozumí počet všech komponent a to souvisejících i nesouvisejících s pohybem. Odhad dimenze ICA modelu je proveden na základě počtu stabilně odhadovaných komponent. 2. Analýza nezávislých komponent ICA je metoda, která se snaží nalézt zdrojové signály ze znalosti jejich kombinace. Přitom předpokládáme, že zdrojové signály nejsou pozorovatelné, a že nemáme žádné informace o tom jakým způsobem jsou zdrojové signály transformovány. V oblasti slepé separace signálů se setkáme se třemi základními modely popisující transformaci: lineární model, šumový model a konvolutorní model. EEG i EMG data splňují lineární model [4], [2], který můžeme popsat takto: X = A · S, kde S je m × Nd matice vstupních signálů (nezávislé 50 Lukáš Ručkay komponenty), A je mixážní matice rozměru n × m a X je n × Nd matice pozorovaných (měřených) signálů. Nd tedy značí délku jednotlivých řádků matic S a X. Počet měřených signálů a počet nezávislých komponent nemusí být shodný, avšak předpokladem pro úspěšnou separaci je n ≥ m, tedy počet měřených signálů je stejný nebo větší než počet zdrojových signálů. Z teoretického hlediska má největší význam situace n = m, což budeme předpokládat v dalším textu. Zdrojové signály (nezávislé komponenty) mohou b =W c · X, kde W c je odhad matice W, W = A−1 . Problém být odhadnuty následovně: S nalezení zdrojových signálů (nezávislých komponent) přechází na problém nalezení mac Separace či rozklad tice W. V dalším textu budeme používat matici W místo matice W. signálů je prováděn tak, aby výsledné komponenty byly nezávislé jak jen je to možné a zároveň jejich lineární kombinace tvořila pozorované signály. To je dosaženo maximalizací funkce F , která měří nezávislost komponent. 3. Popis experimentu Pro naše experimenty jsme použili EEG databázi obsahující 7 osob, které vykonávají distální a proximální pohyb – dohromady 14 subjektů. EEG bylo nahráno pomocí 64 elektrod, z nichž 59 bylo umístěno na skalpu hlavy [6]. Protože data jsou různě dlouhá, omezili jsme jejich délku na 27 úseků obsahujících vždy jeden pohyb. Pro předzpracování byla použita analýza hlavních komponent (Principal Component Analysis, PCA) pro dekorelace dat, ale bez redukce dimenze (žádný z původních 59 signálů nebyl zahozen), aby nebyly odstraněny signály nesoucí hledanou informaci. V případě analýzy pohybového EEG jsou těmito informacemi pohyby (distální a proximální). Abychom odhadli dimenzi modelu ICA provedli jsme rozklad EEG dat N-krát (N = 100) s náhodně generovanými inicializačními maticemi. Některé komponenty jsou závislé na inicializační matici a některé nikoli. Komponenty, které jsou nezávislé na inicializační matici, představují silné mozkové zdroje související s danou mozkovou aktivitou [7]. Komponenty získané pro různé inicializační matice nyní budeme srovnávat. Protože každá komponenta je plně popsána právě jedním řádkem separující matice W stačí pro srovnání komponent uvažovat tyto řádky. 4. Odhad dimenze modelu ICA pomocí korelace komponent V této části je popsána analýza výsledků opakované separace pomocí korelace jednotlivých komponent pro různé separující matice. Pro srovnání komponent stačí počítat jen nultý korelační koeficient Rxy [0]. Protože nalezené komponenty mohou mít obecně různé pořadí je nutné počítat korelace mezi všemi řádky všech matic (100 matic rozměru 59×59). Před výpočtem korelace je odstraněna střední hodnota a řádky jsou normovány na jednotkovou energii. To nám zajistí, že vzájemné energie dvou řádků a tedy i korelační koeficient Rxy [0] je menší než 1. V konečné fázi se výpočet korelace jednotlivých řádků zjednoduší na výpočet korelace dvou matic: Rxy = Wx · Wy T , x, y = 1 . . . N. (1) Prvek Rxy [i, j] korelační matice představuje nultý korelační koeficient mezi i-tým řádkem matice Wx a j-tým řádkem matice Wy (i-tou komponentou z matice Wx a j-tou komponentou z matice Wy ). V dalším kroku ke každému řádku matice Wx hledáme řádek z matice Wy s největší korelací. K jedné komponentě z referenční matice (Wx , x=1 . . . N) Lukáš Ručkay 51 Averaged mean and standard deviation of correlations (sorted by variance). Averaged mean and standard deviation of correlations (sorted by variance). 0.25 1 0.25 0.9 0.2 1 0.9 0.2 0.8 0.8 0.1 0.7 0.1 0.6 0.05 0.6 0.05 0.5 5 10 15 20 25 30 35 Component No. 40 45 50 55 0.4 0 0.5 5 10 15 distální, symm-gauss 20 25 30 35 Component No. 40 45 50 55 proximální, symm-gauss Averaged mean and standard deviation of correlations (sorted by std). Averaged mean and standard deviation of correlations (sorted by std). 0.25 1 0.25 0.9 0.2 1 0.9 0.2 0.8 0.8 0.1 Std 0.7 Mean 0.15 Std 0.15 0.7 0.1 0.6 0.05 0 0.4 Mean 0 Mean Std 0.7 Mean 0.15 Std 0.15 0.5 5 10 15 20 25 30 35 Component No. 40 45 50 55 0.4 0.6 0.05 0 0.5 5 10 distální, symm-tanh 15 20 25 30 35 Component No. 40 45 50 55 0.4 proximální, symm-tanh Obrázek 1: Průměrované střední hodnoty (µ̄[i], mean) a směrodatné odchylky (σ̄[i], std) korelací komponent počítaných pro 100 inicializačních matic. Algoritmus FastICA symmetric, nelinearita gauss a tanh. Analyzovaná osoba: 4, distální i proximální pohyb. nalezneme N − 1 komponent ze zbývajících matic (Wy , y=1 . . . N, y 6= x). Pro nalezené maximální korelace poté počítáme průměr µx [i] a rozptyl σx2 [i]: µx [i] = E max {Rxy [i, j]} , j=1...59 σx2 [i] = var max {Rxy [i, j]} . j=1...59 (2) Pro každou separující matici tedy dostaneme průměr a rozptyl komponent odhadnutých v této referenční matici. Za dobře odhadnuté komponenty považujeme ty, které splňují podmínku µx [i] > 0, 9 a σx [i] < 0, 05. Dané prahové hodnoty byly stanoveny empiricky. Tímto způsobem je možné získat výsledky vždy jen pro několik inicializačních matic. Abychom mohli porovnat výsledky pro různé nelinearity, vypočítáme dále průměr ze středních hodnot a směrodatných odchylek korelací komponent: µ̄[i] = N 1 X µx [i], N x=1 σ̄ 2 [i] = N 1 X σ 2 [i] N x=1 x (3) Pro snadné porovnání odhadů separující matice jsme všechny komponenty v rámci jedné matice srovnali podle velikosti směrodatné odchylky komponent od nejmenší po největší. Takto získané seřazené hodnoty µ̄[i] a σ̄[i] jsou zobrazeny na obr. 1. 4.1. Výsledky Z reálných EEG dat jsme se snažili odhadnout dimenzi modelu ICA. V našem testu jsme použili algoritmus FastICA ve verzi deflation i symmetric. Počet komponent jsme určovali na základě rozptylu (směrodatné odchylky) dosažených korelací počítaných pro 100 různých inicializačních matic. Z důvodu velkého množství výsledků zde uvedeme výsledky jen pro osobu 4. Při použití deflation algoritmu a nelinearity gauss bylo nalezeno 6–9 stabilně odhadnutých komponent pro distální pohyb a 14–18 komponent pro proximální pohyb. Při použití nelinearity tanh se pohyboval počet komponent v intervalu 17–23 pro distální 52 Lukáš Ručkay a 27–32 pro proximální pohyb. Pro nalezení těchto komponent je nutné spočítat všechny komponenty a na základě korelací vybrat jen ty dobře odhadnuté, neboť dobře odhadnuté komponenty mohou být nalezeny jak na začátku, tak i na konci výpočtu. Při použití algoritmu symmetric a nelinearity gauss bylo nalezeno 35–41 komponent pro distální pohyb a 41–46 komponent pro proximální pohyb, které měly směrodatnou odchylku menší než uvedená prahová hodnota. Opět při použití nelinearity tanh dojde k zvýšení počtu dobře odhadnutých komponent: 44–47 pro distální a 46–49 pro proximální pohyb. Ani v případě použití symmetric verze algoritmu FastICA nelze najít jen požadované komponenty, protože všech 59 komponent je odhadováno současně. V předchozí práci [3] zabývající se analýzou EEG byl odhad dimenze modelu ICA proveden pomocí PCA s redukcí dimenze. S pomocí PCA bylo nalezeno 35 hlavních komponent pro distální pohyb a 37 hlavních komponent pro proximální pohyb (osoba 4). Počty komponent byly stanoveny pomocí 95% konfidenčního intervalu – vybrané komponenty tedy pokrývají 95% celkové energie signálů. Tuto metodu považujeme za nevhodnou neboť dochází k odstranění komponent jen na základě výkonu (rozptylu) dané hlavní komponenty a daná komponenta může obsahovat cenné informace o pohybu. Uvedené odhady dimenze jsou shrnuty v tab. 1. V tabulce jsou také uvedeny odhady dimenze při použití jiných nelinearit. ↓ metoda gauss FastICA tanh symmetric pow3 skew gauss FastICA tanh deflation pow3 skew PCA osoba 4d 4p 35 – 41 41 – 46 44 – 47 46 – 49 41 – 46 40 – 43 38 – 44 39 – 45 6–9 14 – 18 17 – 23 27 – 32 14 – 19 27 – 35 22 – 27 38 – 45 35 37 Tabulka 1: Odhad dimenze modelu ICA různými metodami. Porovnáním počtu získaných komponent v tab. 1 zjistíme, že nelinearita tanh se jeví jako nejvýhodnější pro použití na EEG data – poskytovala největší počet stabilně nalezených komponent. Jinými slovy algoritmus symmetric ve spojení s nelinearitou tanh poskytuje výsledky, které jsou nejméně závislé na volbě inicializační matice. 5. Odhad dimenze modelu ICA pomocí hierarchického clusterování V této části uvedeme odhad dimenze modelu ICA, který je podobný odhadu uvedenému v předchozí kapitole. Postup odhadu dimenze je částečně změněn tak, aby nám umožnil snadno získat dobře odhadnuté komponenty. Zde rovněž nebudeme srovnávat celé komponenty, ale jen řádky separujících matic W. Separující matici W, kterou jsme získali pro k-tou inicializační matici označíme W(k). Každý řádek matice W si nyní můžeme představit jako bod v 59-rozměrném prostoru. Řádky matic W(k) popisující tutéž komponentu jsou podobné a v 59-rozměrném prostoru tvoří shluky (clustery). Myšlenka odhadu dimenze modelu ICA a výběru dobře odhadnutých komponent je tedy postavena na shlukování (clusterování) dat. Skutečnost, že řádky matic W(k) budou tvořit ve zmíněném Lukáš Ručkay 53 prostoru shluky ověříme tak, že vezmeme jednu matici W(k) a spočítáme korelační vzdálenosti mezi řádky r a s této matice: drs = 1 − s 59 P i=1 59 P i=1 (wri − wr ) (wsi − ws ) (wri − wr ) 2 s 59 P i=1 (4) . (wsi − ws ) 2 Takto získané vzdálenosti drs pro r, s = 1 . . . 59 vyneseme do grafu, tak jak ukazuje obr. 2a. Korelační vzdálenost drs může nabývat hodnot z intervalu h0, 2i. drs = 0 pro shodné vektory, drs = 1 pro maximálně rozdílné vektory a drs = 2 pro shodné vektory, které se liší pouze násobením -1. Pokud budeme uvažovat pouze různé řádky matice W (tedy r 6= s), potom je minimální a maximální vypočítaná vzdálenost mezi řádky min(drs ) = 0, 3441 a max(drs ) = 1, 5297. Z těchto čísel můžeme usuzovat na dostatečnou rozdílnost jednotlivých řádků matice W a tedy možnost shlukovat řádky ve vícerozměrném prostoru. 5 Korelacni vzdalenost d radku matice W. rs 3.5 60 Histogram korelacni vzdalenosti komponent x 10 1.5 55 3 50 45 2.5 40 1 2 Cetnost s 35 30 1.5 25 0.5 20 1 15 10 0.5 5 5 10 15 20 25 30 r 35 40 45 50 55 60 0 0 0 0.2 0.4 0.6 0.8 1 1.2 Vzdalenost komponent a 1.4 1.6 1.8 2 b Obrázek 2: a) Korelační vzdálenost drs mezi řádky wr· a ws· jedné separující matice W. b) Histogram korelačních vzdáleností drs mezi řádky mr· a ms· matice M. Algoritmus FastICA - symmetric, nelinearita tanh. V důsledku nejednoznačnosti ICA nemůžeme určit znaménko komponenty a proto můžeme při opakované aplikaci ICA získat stejné (podobné) komponenty lišící se ve znaménku. Abychom se vyhnuli tomuto problému, použijeme pro výpočet jak původní komponenty (řádky separující matice), tak komponenty násobené −1. Pro N-krát opakovanou ICA takto dostaneme soubor dat, ve kterém bude každá komponenta obsažena N-krát se znaménkem + a N-krát se znaménkem −. Podle rovnice (5) vytvoříme jednu velkou matici M, která bude obsahovat všechny matice W(k) násobené +1 a −1. Takto vzniklá matice má Mr = N · 59 · 2 = 11800 řádků a 59 sloupců. T T T T M = W(1) , . . . , W(N ) , −W(1) , . . . , −W(N ) T (5) Mezi všemi řádky matice M (i-tý řádek označíme mi· ) opět spočítáme korelační vzdálenosti podle rovnice (4) se záměnou m za w, tak aby se neopakovaly indexy (r = 1 . . . Mr − 1, s = r + 1 . . . Mr ). Z vypočtených vzdáleností jsme dále vypočetli histogram a zobrazili na obr. 2b. Obrázek potvrzuje skutečnost, že jednotlivé řádky matic W(k) jsou dostatečně odlišné. Největší četnost korelační vzdálenosti drs se pohybuje v intervalu 0, 5 . . . 1, 5. Hranice i celý obrázek jsou symetrické, neboť do výpočtu jsou zahrnuty 54 Lukáš Ručkay (k) (k) jak řádky wi· tak i řádky −wi· . Pozornost ovšem zaslouží zejména oblasti drs < 0, 1 a drs > 1, 9. V těchto oblastech a zejména směrem k hranicím obrázku je také vysoká četnost hodnot drs . To je způsobeno tím, že v každém běhu ICA jsou nalezeny některé komponenty stejné nebo alespoň vysoce korelované. Na základě obr. 2 se domníváme, že podobné řádky matic W(k) lze poměrně snadno clusterovat ve vícerozměrném prostoru. Zavedemeli nějaké kritérium pro velikost shluku, můžeme také odhadnout dimenzi modelu ICA. Pomocí clusterování můžeme také eliminovat nejednoznačnost pořadí komponent. 5.1. Clusterování Z používaných metod pro shlukovou analýzu můžeme uvést algoritmus k-means, hierarchické clusterování či samoorganizační mapy. Zde je použito hierarchické clusterování, které umožňuje stanovit podmínku pro tvorbu clusterů podle níž se vytvoří nezbytné množství clusterů – jako podmínku jsme zvolili velikost clusteru. Jako vstupní parametr pro tvorbu clusterů jsme zvolili korelační vzdálenosti drs mezi řádky matice M. V případě hierarchického clusterování musíme také zvolit vhodnou metodu pro spojování prvků. Pro naše testy jsme vybrali linkovací metodu average, která může být popsána následovně pro cluster r obsahující nr prvků a cluster s obsahující ns prvků: d(r, s) = ns nr X 1 X dist (xri , xsj ). nr ns i=1 j=1 (6) Funkce dist značí výpočet vzdálenosti podle vztahu (4). xri je i-tý prvek clusteru r a obdobně xsj je j-tý prvek clusteru s. Další vstupní parametr, který jsme volili je velikost clusteru. Zvolená hodnota davr = 0, 1 zajistí průměrnou korelaci mezi vybranými řádky větší než 0,9. S takto zvolenou hodnotou omezující velikost clusteru jsme data clusterovali. Clustery obsahující 100 prvků představují nezávislé komponenty nalezené v každém běhu ICA. Takto ovšem předpokládáme 100% přítomnost dané komponenty ve všech maticích. Toto kritérium zvolníme a budeme vyžadovat jen 95% přítomnost komponent v maticích. To znamená, že nyní budeme hledat clustery ve kterých je 95 . . . 100 prvků. Pro každý takovýto cluster c spočítáme průměr prvků (centroid) x(c) . Takto vznikly centroidy x(c) , které mají vždy párový prvek −x(d) . Dalším krokem ve výběru stabilních komponent je tedy výběr pouze jednoho z těchto párových prvků. Zbylé centroidy představují průměrné hodnoty odhadu stabilních komponent. 5.2. Výsledky Výše popsaným způsobem jsme testovali algoritmy FastICA a EFICA [2] na stejné EEG databázi. Algoritmus FastICA jsme testovali pro obě verze – deflation i symmetric. U obou algoritmů jsme také použili všechny dostupné nelinearity. Výsledky odhadu dimenze ICA modelu jsou shrnuty v tab. 2. Jako první jsme testovali algoritmus FastICA ve verzi deflation. Dle našich výsledků nelinearita gauss použitá v deflation verzi poskytla nejhorší výsledky ze všech – průměrný počet stabilních komponent je pouze 8 pro distální pohyby, resp. 7 pro proximální pohyby z celkového počtu 59. Nejlepší výsledky pro deflation verzi byly dosaženy s nelinearitou skew – 26 resp. 24 stabilních komponent. Nelinearita tanh je druhá nejleší pro verzi deflation a poskytovala 19 stabilních komponent pro distální i proximální pohyby. V symmetric verzi jsou výsledky pro různé nelinearity srovnatelné. Pro symmetric verzi je nejlepší nelinearita pow3 s kterou bylo nalezeno 44 resp. 43 stabilních komponent. Velice podobné výsledky byly také dosaženy s nelinearitou tanh a skew. Nejhorší výsledky pro verzi symmetric jsou dosaženy s nelinearitou gauss – 37 resp. 38 stabilních komponent. Lukáš Ručkay ICA algoritmus nelinearita gauss FastICA pow3 deflation skew tanh gauss FastICA pow3 symmetric skew tanh gauss EFICA pow3 (symmetric) rati tanh PCA - 95% konf. interval 55 1d 9 6 28 22 33 39 40 46 37 45 39 44 34 1p 7 13 25 17 33 35 37 34 42 41 35 40 35 2d 7 14 26 16 41 48 51 45 41 50 44 46 31 2p 10 6 21 15 46 44 44 49 45 44 45 50 31 3d 9 16 29 26 36 47 44 44 41 46 44 45 28 3p 4 15 27 20 37 43 38 43 38 44 40 42 31 osoba 4d 4p 6 13 8 23 17 32 16 23 40 42 44 44 39 41 45 49 41 47 45 45 48 49 51 50 35 37 5d 8 17 28 11 42 39 38 41 45 40 45 44 29 5p 8 15 24 21 39 49 39 39 40 48 41 38 29 6d 12 22 34 27 38 44 44 49 38 44 43 52 29 6p 8 7 20 24 34 45 43 42 39 46 41 43 28 7d 8 13 23 17 30 48 48 42 33 48 34 39 35 7p 5 8 20 14 35 43 44 40 38 45 35 40 33 Tabulka 2: Odhad dimenze modelu ICA různými metodami. Uvedeny jsou odhady pomocí algoritmu FastICA a EFICA. Pro srovnání je uveden odhad dimenze pomocí PCA, [3]. Maximální řád modelu je 59. Osoba #d značí distální pohyb a #p proximální pohyb. Jako poslední jsme testovali algoritmus EFICA. Zlepšení oproti FastICA algoritmu je patrné u všech společných nelinearit. Nejlepší výsledky algoritmu EFICA byly dosaženy s nelinearitou pow3, kde bylo nalezeno 45 resp. 44 stabilních komponent. Téměř shodné výsledky poskytuje nelinearita tanh, s tou bylo nalezeno 45 resp. 43 stabilních komponent. Algoritmus EFICA také přináší novou nelinearitu rati, která poskytla jen o málo horší výsledky než zmíněné nelinearity – 42 resp. 40 stabilních komponent. Nejhorší výsledky jsou dosaženy s nelinearitou gauss stejně tak jako u algoritmu FastICA – 39 resp. 41 stabilních komponent. Pro srovnání výsledků je opět uveden odhad dimenze pomocí PCA, [3]. S pomocí PCA bylo nalezeno 31 resp. 32 hlavních komponent a ty byly dále separovány pomocí FastICA. Dimenze modelu ICA odhadnutá verzí deflation zdaleka nedosahuje maximální možné hodnoty dané počtem použitých elektrod – 59. Verze symmetric poskytuje mnohem stabilnější výsledky a dalšího zlepšení je možné dosáhnout použitím algoritmu EFICA. 6. Závěr Z reálných EEG dat jsme se snažili odhadnout dimenzi modelu ICA. Náš test spočíval v opakování separace EEG signálů a následném porovnání odhadnutých komponent. V prvním případě jsme počet komponent určovali na základě rozptylu dosažených korelací počítaných pro 100 různých inicializačních matic. V druhém případě jsme počet komponent určovali pomocí korelační vzdálenosti mezi jednotlivými odhady dané komponenty. Pomocí hierarchického clusterování byly vytvořeny clustery s proměnným počtem prvků. Pro 100 opakování jsme hledali clustery obsahující 95 a více prvků s průměrnou korelační vzdáleností nepřesahující hodnotu drs = 0, 1. Rovněž jsme provedli srovnání počtu získaných komponent s počtem komponent získaným pomocí PCA [3]. Dosažené výsledky (viz. tab. 2) nás varují, že výsledky ICA algoritmů (zejména FastICA ve verzi deflation) jsou v každém běhu jiné (závislé na volbě inicializační matice). Z výsledků jednoho běhu ICA nelze určit, které komponenty jsou odhadnuty dobře a které hůře. K tomu je potřeba provést separaci několikrát a výsledky srovnat. 56 Lukáš Ručkay Výslekdy algoritmu FastICA ve verzi deflation se značně liší nejen v rámci použité nelinearity, ale také dle typu pohybu (viz. tab. 2). Počet stabilních komponent (makroskopických zdrojů EEG, [7]) nalezených pomocí FastICA ve verzi symmetric a algoritmu EFICA je podstatně méně závislý na použité nelinearitě a typu pohybu. U algoritmu EFICA je navíc zlepšena konvergence pomocí testu sedlových bodů a hledání skutečného globálního extrému [2]. Na základě těchto výsledků budeme dále používat algoritmus EFICA. Nalezené komponenty zahrnují pohybové i nepohybové komponenty a dokonce i komponenty představující rušení nebo šum, který má ovšem stále stejný charakter. Přestože pro různé kombinace algoritmů a nelinearit je nalezen odlišný počet komponent, některé z komponent jsou nalezeny vždy. Pohybové komponenty je možné získat frekvenční analýzou, kdy se hledají typické znaky související s pohybem jako je ERD (Event Related Desynchronization) a ERS (Event Related Synchronization) [3]. Poděkování Tento výzkum byl podporován z grantu GAČR 102/03/H085 “Modelování biologických a řečových signálů” a z výzkumného záměru MŠMT MSM6840770012 “Transdisciplinární výzkum v biomedicínckém inženýrství 2”. Reference [1] Jung, T.-P.; Makeig, S.; Humphries, C.; Lee, T.-W.; Mckeown, M. J.; Iragui, V.; Sejnowski, T. J. Removing electroencephalographic artifacts by blind source separation. Psychophysiology 37 (March 2000), 163–178. [2] Koldovský, Z.; Tichavský, P.; Oja, E. Efficient Variant of Algorithm FastICA for Independent Component Analysis Attaining the Cramér-Rao Lower Bound. Submitted to IEEE Transaction. on Neural Networks (May 2005). [3] Konopka, O.; Šťastný, J.; Sovka, P. Movement-related EEG Separation Using Independent Component Analysis. In The 3rd European Medical and Biological Engineering Conference November 2005, EMBEC 2005, pp. 1471–1475. [4] Lima, C.; Silva, C.; Tavares, A.; Oliveira, J. Blind Source Separation by Independent Component Analysis Applied to Electroencephalographic Signals. In International Workshop on Models and Analysis of Vocal Emissions for Biomedical Applications (Maveba), 3, Firenze 2003. [5] Ručkay, L.; Šťastný, J.; Sovka, P. Movement-Related EEG Decomposition Using Independent Component Analysis. In Analysis of Biomedical Signals and Images Proceedings of Biosignal 2006 June 2006, Brno: VUTIUM Press, pp. 78–80. ISBN 80-214-3152-0. [6] Stančák, A.; Feigeb, B.; Lücking, C. H.; Kristeva-Feige, R. Oscillatory cortical activity and movement-related potentials in proximal and distal movements. Clinical Neurophysiology 111, 4 (April 2000), 636–650. [7] Wentrup, M. G.; Gramann, K.; Wascher, E.; Buss, M. EEG Source Localization for Brain-Computer-Interfaces. In Proceedings of the 2nd International IEEE EMBS, Conference of Neural Engineering March 16–19 2005, pp. 128–131. Lukáš Svoboda 57 Detekce korové aktivity vyvolané míšním neurostimulátorem u pacientů trpících nezvladatelnou neuropatickou bolestí Lukáš Svoboda1 , Pavel Sovka1 , Andrej Stančák2 1 České vysoké učení technické v Praze, Fakulta elektrotechnická 2 Univerzita Karlova v Praze, 3. lékařská fakulta [email protected], [email protected], [email protected] Abstrakt: Spektrální analýza pomocí výkonové spektrální hustoty (PSD) může být úspěšně aplikována při detekci změn v EEG. Užití této metody je demonstrováno na EEG získaném od 10 pacientů, trpících nezvladatelnou neuropatickou bolestí v oblasti beder a dolních končetin. Tato bolest je tlumena pomocí elektrické stimulace dorzální páteřní míchy (SCS). S využitím spektrální analýzy bylo zjištěno, že SCS vybudí oscilace v mozkové kůře. U osmi pacientů byl při SCS zaznamenán signifikantní nárůst PSD na stimulačním kmitočtu. 1. Úvod Pro vyhodnocení změn signálů a vzájemných vazeb mezi nimi v současnosti existuje řada metod. Své stálé místo si udržují postupy založené na Fourierově transformaci, k nimž patří i výkonová spektrální hustota (PSD) použitá s několika rozšířeními k detekci změn výkonu EEG signálu na konkrétních kmitočtech. Data byla získána v rámci spolupráce s Ústavem normální, patologické a klinické fyziologie 3. lékařské fakulty Univerzity Karlovy. Jedná se o EEG záznamy 10 pacientů trpících failed back surgery syndromem (FBSS), což je onemocnění způsobující nezvladatelnou neuropatickou bolest v oblasti beder a dolních končetin, která často odolává léčbě farmaky [4]. Jedním z nefarmakologických postupů, které pomáhají tuto bolest mírnit, je elektrická stimulace dorzální páteřní míchy (spinal cord stimulation – SCS), při níž dochází k významnému potlačení intenzity vnímané bolesti. Korové projevy míšní stimulace již byly u omezeného počtu pacientů zkoumány pomocí fMR [2, 3], podstata elektrofyziologických změn korové aktivity při míšní stimulaci však dosud objasněna nebyla. V příspěvku je popsán postup, jímž bylo prostřednictvím PSD prokázáno, že SCS vyvolává v mozkové kůře oscilační aktivitu na stejném kmitočtu, jako je stimulační, a jímž byly lokalizovány oblasti, kde k tomu dochází. 58 2. Lukáš Svoboda Detekce statisticky významných změn ve spektru EEG Jako první bylo třeba zjistit, zda působením SCS v mozkové kůře oscilační aktivita vůbec vzniká. Předpokladem bylo, že vyvolané rytmy budou mít kmitočet shodný se stimulačním a mohou se vyskytovat v kterékoli oblasti kůry. K dispozici jsme měli EEG záznamy pořízené pomocí 111 povrchových elektrod, a to dva od každého pacienta – jeden při zapnuté stimulaci, druhý bez ní. 2.1. Odhad PSD Vyskytne-li se rozdíl mezi PSD párových EEG záznamů pořízených při zapnuté, respektive vypnuté míšní stimulaci, znamená to, že stimulace ovlivňuje elektrickou aktivitu mozku. Pokud se výkonový nárůst (ve srovnání se záznamem pořízeným při vypnuté stimulaci) projeví na stimulačním kmitočtu, je pravděpodobné, že SCS evokuje korové rytmy o stejném kmitočtu, jako je ten její. Výpočet odhadu PSD z reálných dat je odvozen v řadě publikací [1, 5], proto jsou uvedeny pouze výsledné vztahy v diskretizovaném tvaru, jak byly aplikovány při analýze našich EEG záznamů. Pro konzistentní odhad výkonové spektrální hustoty bylo použito vyhlazování spektra Welchovou metodou, jejíž jednotlivé kroky a mezivýsledky přibližuje schéma na obrázku 1. Obrázek 1: Princip vyhlazování spektra Welchovou metodou Jedná se o přímou metodu využívající diskrétní Fourierovy transformace váhovaných segmentů vstupního signálu. Vstupní posloupnost x[n] délky N rozdělíme na K navazujících úseků xk [l], každý o délce L vzorků – platí tedy N = KL (existuje i varianta, kdy se sousední úseky překrývají, tedy neplatí N = KL). Každý segment je poté přenásoben Lukáš Svoboda 59 zvoleným typem okna w[l] shodné délky (je nutné použít některé z hladkých oken, například Hammingovo) a pomocí DFT transformován na dílčí modifikovaný periodogram Ŝk [m], jak popisuje vztah ¯ ¯2 L−1 ¯ j2πml ¯ 1 T ¯¯X N Ŝk [m] = x[l + kL] · w[l] · e− L ¯ , k ∈ h0, K − 1i, K = , (1) ¯ ¯ WL¯ L l=0 kde L−1 1X 2 W = w [l]. L l=0 (2) Tak dostaneme celkem K dílčích modifikovaných periodogramů, jejichž zprůměrováním získáme požadovaný vyhlazený odhad: K−1 1 X Ŝx [m] = Ŝk [m]. K k=0 (3) Pomocí průměrování dosáhneme K-násobného snížení celkového rozptylu odhadu ve srovnání s periodogramem počítaným z celé vstupní posloupnosti. Výkonová spektrální hustota spočtená podle vztahu (3) byla transformována do decibelové stupnice: ŜxdB [m] = 10 log Ŝx [m] [dB]. (4) Průběh dílčího periodogramu a vyhlazeného výkonového spektra jsou na obrázku 1 uvedeny v tomto logaritmickém měřítku. 2.2. Intervaly spolehlivosti Posloupnost vzorků EEG signálu x[n] lze považovat za normálně rozdělenou, proto také její Fourierova transformace (reálná i imaginární část) je normálně rozdělena, neboť se jedná o transformaci lineární [5]. Rozdělíme-li vstupní posloupnost x[n] na K úseků, sčítáme při průměrování K náhodných veličin s χ22 rozdělením. Vyhlazený odhad má proto χ2d rozdělení o d = 2K stupních volnosti. Interval spolehlivosti pro vyhlazený odhad výkonové spektrální hustoty je definován vztahem ( ) dŜx [m] dŜx [m] Pr ≤ Sx [m] ≤ 2 = 1 − α, (5) χ2d; 1− α χd; α 2 2 kde Pr{·} označuje pravděpodobnost jevu ve složené závorce, d = 2K je počet stupňů volnosti a α je hladina významnosti určující, s jakou pravděpodobností se skutečná hodnota Sx [m] bude vyskytovat mimo spočtený interval (obvyklé hodnoty α jsou 0,01, nebo 0,05). Symboly χ2d; α a χ2d; 1− α představují kritické hodnoty χ2 rozdělení s d stupni volnosti 2 2 na hladině významnosti α2 , které jsou tabelovány. Vztah (5) vyjadřuje interval spolehlivosti pro jednu frekvenční čáru“. Pro výkonové ” spektrum vyjádřené v decibelech (logaritmickém měřítku) podle rovnice (4) je interval pro všechny kmitočty shodný. Je popsán rovnicí [5] ) ( d d ≤ SxdB [m] ≤ ŜxdB [m] + 10 log 2 = 1 − α. (6) Pr ŜxdB [m] + 10 log 2 χd; 1− α χd; α 2 2 60 Lukáš Svoboda 2.3. Parametry výpočtu Vlastnosti odhadu výkonové spektrální hustoty výrazně závisí na volbě parametrů jako je délka segmentu a typ váhovacího okna, překryv mezi segmenty či počet diskrétních frekvencí, pro které se PSD počítá. Hodnoty parametrů byly stanoveny tak, aby odhad PSD vyhověl několika protichůdným požadavkům: • vysoké frekvenční rozlišení PSD, • co nejmenší pronikání energie mezi sousedními spektrálními čarami“, ” • potlačení složek, jejichž frekvence není celočíselná (jako základní jednotku uvažujeme 1 Hz), • úzký interval spolehlivosti. Parametry použité při naší analýze shrnuje tabulka 1: Vstup sig se stim. bez stim. nfft 1024 1024 Fs 1024 1024 Parametry win hamming(1024) hamming(1024) over 0 0 p – 0,95 Výstupy spc conf f 1×513 – 1×513 1×513 2×513 1×513 Tabulka 1: Vstupní parametry a výstupní veličiny při výpočtu PSD Význam symbolů je následující: • nfft – počet diskrétních frekvencí, v nichž je výkonová spektrální hustota počítána. Číslo je vhodné volit jako mocninu dvojky, nejlépe shodně s délkou segmentu, aby při výpočtu FFT nedocházelo k jeho doplňování nulami. Pro reálný vstupní signál, jímž EEG záznam je, má pak výsledné spektrum délku nF2F T + 1. • Fs – vzorkovací frekvence vstupního signálu v hertzech. Na výpočet PSD nemá žádný vliv, slouží však k přepočtu normované frekvenční osy na kmitočty odpovídající skutečnému frekvenčnímu rozsahu signálu. • win – váhovací okno, jímž je segment signálu násoben. Důvodem je potlačení pronikání energie jedné spektrální složky do složek sousedních, které by snížilo kontrast“ ” mezi jednotlivými spektrálními čarami“. Váhování tento nežádoucí jev zmírní, ” ovšem za cenu snížení rozlišovací schopnosti (míra poklesu frekvenčního rozlišení závisí na zvoleném typu okna). • over – překryv mezi sousedními segmenty. Musí být menší než délka okna. Částečně eliminuje vliv použití váhovacích oken a zvyšuje počet průměrovaných dílčích modifikovaných periodogramů. Je-li nenulový, není možné přesně spočítat interval spolehlivosti. • p – představuje požadovanou pravděpodobnost, se kterou se skutečné hodnoty výkonové spektrální hustoty náhodného signálu mají vyskytovat ve spočteném intervalu spolehlivosti conf. Platí p = 1 − α, kde α je hladina významnosti (typicky α = 0,05 nebo α = 0,01). Lukáš Svoboda 3. 61 Výsledky Výkonové spektrum je z hlediska vlivu míšní stimulace na aktivitu mozku nejdůležitějším ukazatelem. Podává mám informace o tom, do kterých elektrod se stimulací vybuzená aktivita šíří a kde se projevuje nejsilněji. Na frekvenčních průbězích vidíme, zda při SCS vznikají také vyšší harmonické složky a zda se skutečná hodnota stimulačního kmitočtu shoduje s deklarovanou, případně jak se liší. Tabulka 2 uvádí pro každého pacienta hodnotu použitého stimulačního kmitočtu, frekvenci zjištěnou ze spočtených výkonových spekter a číslo elektrody s maximálním rozdílem mezi PSD se stimulací a PSD bez stimulace na zjištěném kmitočtu. Číslo pacienta Stim. kmitočet deklarovaný [Hz] Stim. kmitočet zjištěný [Hz] Číslo elektrody A01 A02 A03 A04 A05 A06 A07 A08 A09 A10 60 45 100 60 100 85 85 85 85 65 62 45 89 29 – 83 84 84 – 64 50 50 37 50 38 51 50 37 50 77 Tabulka 2: Deklarované a zjištěné hodnoty stimulačního kmitočtu a elektrody s nejvyšším výkonovým rozdílem na této frekvenci Nejvíce byl nárůst výkonu při SCS patrný na výkonových spektrech pacientů A01, A02, A07 a A08. Naopak žádný významný rozdíl se nepodařilo nalézt na PSD záznamů pořízených od pacientů A05 a A09, kde buď míšní stimulace korové oscilace nevybudila, nebo se tato aktivita v EEG záznamech neprojevila natolik, aby ji bylo možné považovat za statisticky významnou. Problematické bylo také hodnocení výkonového spektra u pacienta A03, neboť deklarovaná stimulační frekvence 100 Hz může interferovat s druhou harmonickou složkou síťového rušení. Totéž může nastat u již zmíněného pacienta A05. Na obrázku 2 jsou zachyceny výkonové spektrální hustoty prostorově filtrovaných EEG signálů z elektrod uvedených v posledním řádku tabulky 2 pro interval frekvencí 10–150 Hz a prvních pět pacientů. Modře je vykreslena výkonová spektrální hustota EEG bez přítomnosti stimulace, zeleně její interval spolehlivosti a červeně výkonové spektrum při zapnuté SCS. Deklarovaný stimulační kmitočet je naznačen černou tečkovanou čárou. Frekvenci, na níž došlo k maximálnímu nárůstu výkonu při SCS, označuje červená šipka. U pacientů A03, A06 a A10 byly jako významné zvoleny kmitočty blízké stimulačnímu, na nichž při SCS došlo ke zvýšení výkonu nad interval spolehlivosti PSD bez stimulace. Rozdíl PSD se stimulací a bez ní, třebaže je z tohoto pohledu statisticky významný, však v těchto případech dosahuje jen velmi malých hodnot. Nelze proto s jistotou tvrdit, že je důsledkem SCS, jelikož mohl vzniknout například celkovým vzájemným posunem spekter či vlivem šumu. Příčinou mohl být také vyšší rozptyl hodnot PSD se stimulací, které pak snadno přesáhnou interval spolehlivosti spočtený z PSD bez stimulace (jejíž rozptyl může být menší). 3.1. Povrchové mapy PSD Na obrázku 3 jsou povrchové mapy spočtené průměrováním map rozdílové výkonové spektrální hustoty všech deseti pacientů na zjištěném stimulačním kmitočtu fstim a nejbližších okolních frekvencích fstim − 1, fstim + 1. Jsou důkazem toho, že korové oscilace vznikající 62 Lukáš Svoboda Obrázek 2: Výkonová spektra s nejvyšším rozdílem výkonu na zjištěném stimulačním kmitočtu – pacienti A01 až A05 jako důsledek SCS jsou u jednotlivých pacientů lokalizovány shodně v oblasti pod elektrodami 37, 50, 51 a 63. Hodnoty rozdílu nacházející se v intervalu spolehlivosti, tedy statisticky nevýznamné, byly vynulovány. Jediným vážnějším nedostatkem PSD je neschopnost potlačit širokopásmové typy rušení, které zasahují všechny frekvence a výkonový rozdíl vyvolaný SCS (zvláště při vyšších stimulačních kmitočtech, které mají menší energii) v nich může snadno zaniknout. Lukáš Svoboda 63 Obrázek 3: Průměrné povrchové mapy rozdílových výkonových spekter pro zjištěný stimulační kmitočet a dvě nejbližší okolní frekvence – průměr všech pacientů 4. Statistická významnost rozdílů mezi PSD se stimulací a bez ní ve skupině všech pacientů K ověření statistické významnosti předpokladu, že míšní stimulace vyvolá u většiny pacientů na stimulačním kmitočtu zvýšenou elektrickou aktivitu některých částí mozkové kůry, byl použit párový t-test. Vstupní data jsou uvedena v tabulce 3. Číslo pacienta A01 A02 A03 A04 A05 A06 A07 A08 A09 A10 Frekvence Číslo fstim [Hz] elektrody 62 50 45 50 89 37 29 50 – 38 83 51 84 50 84 37 – 50 64 77 Výkonová spektrální hustota [dB] Ss∗ Sn∗ Ss∗ − Sn∗ 6,213519 18,169980 −6,691207 7,867134 −0,932345 0,749472 −1,291417 2,540490 −3,035791 1,050898 −4,001903 2,738629 −8,311514 4,006663 −2,290253 −1,280231 −4,073170 −2,944647 −2,664648 0,190503 10,215421 15,431351 1,620307 3,860471 1,357909 2,029703 2,781754 5,485138 −0,371143 0,860395 Tabulka 3: Maximální výkonové rozdíly na stimulačním kmitočtu pro jednotlivé pacienty Vysvětlivky k tabulce: Frekvence fstim je kmitočet, na kterém byl (na uvedené elektrodě) u každého z pacientů zjištěn největší výkonový rozdíl Ss∗ − Sn∗ mezi spektrálním výkonem se stimulací Ss∗ a bez stimulace Sn∗ . Normální rozdělení hodnot náhodných výběrů Ss∗ a Sn∗ bylo ověřeno pomocí Lillieforsova testu normality na hladině významnosti 1 %. Nulovou hypotézou bylo tvrzení, že ve výkonech EEG při stimulaci a bez ní není rozdíl, tedy H0 : µ∆ = 0, alternativní hypotézou tvrzení, že při stimulaci výkon narůstá, tedy H1 : µ∆ > 0, kde µ∆ = µs −µn je rozdíl (skutečných) středních hodnot veličin reprezentovaných náhodnými výběry ve čtvrtém a pátem sloupci tabulky 3. Hladina významnosti testu byla zvolena α = 0,05, počet stupňů volnosti je d = 9 (počet pacientů minus jedna). 64 Lukáš Svoboda Výběrový průměr výkonového rozdílu přes všechny pacienty (hodnoty v posledním 2 sloupci tabulky 3) je M∆ = 4,32713 [dB]. Výběrový rozptyl těchto hodnot S∆ = 24,1596 [dB2 ]. Testová statistika má hodnotu T = 2,78391. Kritická hodnota kvantilu Studentova t-rozdělení je tc = 1,83311. Protože T > 1,83311, zamítáme nulovou hypotézu ve prospěch hypotézy alternativní na hladině významnosti 5 %. Lze tedy tvrdit, že nárůst výkonu EEG při stimulaci je v rámci celé skupiny pacientů účastnících se studie statisticky významný. 5. Závěry Dosažené výsledky a jejich praktický přínos lze shrnout do několika bodů: • Bylo zjištěno, že EEG signály nasnímané při SCS vykazují na stimulačním kmitočtu u osmi z deseti pacientů signifikantní nárůst výkonu na elektrodách v centrální mediální oblasti skalpu. • Statistická významnost výkonového rozdílu v rámci skupiny všech pacientů byla potvrzena pomocí t-testu na hladině významnosti 5 %. • Výsledky prokázaly, že vznik indukovaných rytmů v primární senzomotorické kůře odpovídající dolním končetinám má přímou souvislost s elektrickou míšní stimulací. • Získané poznatky lze využít k optimalizaci hodnoty stimulačního kmitočtu a k zpřesnění polohy pro implantaci stimulační elektrody tak, aby došlo k vybuzení oscilací pouze v těch centrech, která somatotopicky souvisí s částmi těla postiženými bolestí. Poděkování Tento výzkum byl podporován z grantu GAČR 102/03/H085 Modelování biologických ” a řečových signálů“, IGA MZ ČR NR 8287-3/2005, Počítačová analýza řečového projevu ” a celonočních EEG záznamů u dětí“, resp. výzkumného záměru MŠMT MSM6840770012 Transdisciplinární výzkum v biomedicínském inženýrství 2“. ” Reference [1] Bendat, J. S.; Piersol, A. G. Random Data: Analysis and Measurement Procedures. John Wiley & Sons, New York, 1971. [2] Hautvast, R. W.; et al. Relative changes in regional cerebral blood flow during spinal cord stimulation in patients with refractory angina pectoris. The European Journal of Neuroscience (1997), 1178–1183. [3] Kiriakopoulos, E. T.; et al. Functional magnetic resonance imaging: A potential tool for the evaluation of spinal cord stimulation: Technical case report. Neurosurgery (1997), 501–504. [4] Kozák, J.; et al. Metodické pokyny pro farmakoterapii akutní a chronické nenádorové bolesti. Bolest – časopis pro studium a léčbu bolesti (2004), 9–18. [5] Sovka, P.; Uhlíř, J. Číslicové zpracování signálů. Vydavatelství ČVUT, Praha, 2002. Pavel Štemberk 65 Konstrukce rozpoznávače řeči s použitı́m AT&T nástrojů Pavel Štemberk České vysoké učenı́ technické v Praze, Fakulta elektrotechnická [email protected] Abstrakt: Přı́spěvek se zabývá konstrukcı́ rozpoznávače mluvené řeči s použitı́m konečných automatů. Práce je rozdělena do třı́ částı́, tak jak byla chronologicky vyvı́jena činnost na pracovišti katedry teorie obvodů. Prvnı́ částı́ je vlastnı́ rozpoznávánı́, máme-li hotovou rozpoznávacı́ sı́t’ ve tvaru AT&T FSM, druhou srovnánı́ rozpoznávače vytvořeného autorem tohoto přı́spěvku s jinými a poslednı́ část se zabývá jazykovým modelovánı́m na bázi morfologických kódů. Práce tak shrnuje autorovu činnost po dobu jednoho kalendářnı́ho roku. 1. Úvod Rozpoznávánı́ řeči pomocı́ konečných stavových automatů je v současné době doménou společnosti AT&T, která dává své nástroje v binárnı́ formě k vědeckým účelům volně k dispozici [5, 6, 2]. Nebudeme se zde zabývat vlastnı́ problematikou konečných automatů [3, 4], ale již konkrétnı́ aplikacı́ hotové rozpoznávacı́ sı́tě (H ◦ C ◦ L ◦ G, resp. H ◦ L ◦ G) na vstupnı́ promluvu a v poslednı́ kapitole vytvořenı́m sı́tě reprezentujı́cı́ jazykový model - G. Základnı́ výhoda reprezentace rozpoznávacı́ sı́tě překladovým konečným automatem spočı́vá v možnosti optimalizace této sı́tě. Na obr. 1. je na přı́kladě jednoduché gramatiky (uniformnı́ rozdělenı́ slov ”ano”, ”ani”, ”lano” záměrně vybraných dı́ky jejich dobrým možnostem optimalizace) zobrazena základnı́ výhoda v použitı́ WFST jako rozpoznávacı́ sı́tě. 2. Konstrukce rozpoznávače na bázi WFST Základem je Viterbiho algoritmus [9], který aplikujeme na danou rozpoznávacı́ sı́t’ (vstup by měl být na úrovni stavů). Podrobněji byl tento algoritmus popsán v [12], jeho modifikace pro komplexnı́ sı́t’ lze nalézt i v [8]. V základnı́ch bodech by se algoritmus dal popsat nějak takto: • pro procházenı́ rozpoznávacı́ sı́tě je použit algoritmus hledánı́ do šı́řky (BreadthFirst) [10], přičemž epsilon přechody jsou řešeny algoritmem hledánı́ do hloubky (Deepth-First) • algoritmus založen na generovánı́ hypotéz pro vybrané stavy a segmenty řeči 66 Pavel Štemberk 4 a:ani/3 0 <eps>:<eps>/0 <sil>:<sil>/0 1 2 <eps>:<eps>/0 3 n:<eps>/0 a:ano/4 9 i:<eps>/0 5 n:<eps>/0 10 6 <eps>:<eps>/0 o:<eps>/0 11 7 <eps>:<eps>/0 12 <sil>:<sil>/0 <sil>:<sil>/0 8/0 <sil>:<sil>/0 l:lano/5 13 a:<eps>/0 n:<eps>/0 14 o:<eps>/0 15 <eps>:<eps>/0 16 17 autLG.fst 0 <sil>:<sil>/0 2 3 a:<eps>/2.686 l:lano/5 4 a:<eps>/0 n:<eps>/5.984 7 5 n:<eps>/0 i:ani/0.313 o:ano/1.313 o:<eps>/0 6 <sil>:<sil>/0 1/0 8 autOLG.fst Obrázek 1: Ukázka neoptimalizované (nahoře) a optimalizované (dole) L ◦ G sı́tě pro slova ”ano”, ”ani”, ”lano” • hypotézy jsou pro každý segment seřazeny dle jejich hodnot (nalezených pomocı́ součtu pravděpodobnostı́ – mixtur vektoru přı́znaků v distribučnı́ch funkcı́ch vı́cerozměrného normálnı́ho rozdělenı́ [9, 11]) a následně podle kritériı́ prořezávánı́ ponechány jen ty nejdůležitějšı́ • proces se takto opakuje dokud nenı́ dosažen poslednı́ segment reprezentovaný vektorem přı́znaků vstupnı́ promluvy Na obr. 2. je vidět základnı́ princip procházenı́ rozpoznávacı́ sı́tě. Mimo jiné odtud plyne, že pokud máme alespoň 2 přechody z každého stavu, potřebujeme generovat alespoň 21 00 = 1, 27 × 103 0 hypotéz! Taková pamět’ která by udržela takto obrovské množstvı́ informacı́ však neexistuje, a tak se použı́vá prořezávánı́ při rozpoznávánı́. V popisovaném algoritmu se použı́vajı́ celkem 3 druhy prořezávánı́: 1. zachovánı́ N-nejlepšı́ch hypotéz pro stejný cı́lový stav - např. pro hypotézy s cı́lovými stavy 1,2,2,3,2,3,3,4,5,6 vznikne pro N=1 set hypotéz s cı́lovými stavy 1,2,3,4,5,6 2. stanovenı́ maximálnı́ho počtu hypotéz pro daný segment - rozumné rozmezı́ takto generovaných hypotéz (seřazených od nejvýhodnějšı́ k nejhoršı́) je cca 300 10000 3. svazkové prořezávánı́ - z angl. beam pruning - volı́me rozmezı́ pravděpodobnosti, kde seřazené hypotézy pro daný segment akceptujeme. Tento parametr bývá v rozpoznávačı́ch volitelný a bude použit i v grafech popisujı́cı́ výsledky rozpoznávánı́ této práce. 3. Srovnánı́ rozpoznávačů Pro trénovánı́ HMM modelů trifónů byla použita kompletnı́ databáze SPEECON dospělých osob. Ta zahrnuje 590 osob, cca 300 hodin zanotovaných promluv (fs=16 kHz) a nahrávky ze 4 mikrofonů. Pro trénovanı́ byl vybrán mikrofon s největšı́m SNR. Pro parametrizovánı́ dat byla zvolena délka segmentu 32ms, dále bylo použito 12 Mel-kepstrálnı́ch koeficientů + energetický koef. + 13 jejich delta a 13 akceleračnı́ch koeficientů [11]. Testovacı́ množina dat byla vybrána databáze TEMIC2 (celá databáze nahrávaná v Pavel Štemberk 67 5 0 1 2 3 4 1 6 5 0 1 2 3 4 1 2 1 2 2 3 1 2 2 3 6 5 0 1 2 3 4 6 5 0 1 2 3 4 2 3 3 4 5 6 6 5 0 1 2 3 4 6 Obrázek 2: Způsob vytvářenı́ jednotlivých hypotéz v rozpoznávacı́ sı́ti různých vozidlech), kde byly vybrány pouze položky s vypnutým motorem automobilu celkem testováno 560 osob. Jako rozpoznávače byly použity následujı́cı́ [14]: • HTK rozpoznávač HVite [11] • AT&T rozpoznávač z DCD nástrojů drecog [6], který je možné použı́vat pro rozpoznávacı́ sı́tě typu CLG, resp. LG i pro sı́tě HCLG, resp. HLG. Markovovy modely pro tento nástroj byly vytvořenu pomocı́ programu rct • rozpoznávač implementovaný v programu rct. Ten dokáže použı́vat nijak neupravované HTK HMM modely dı́ky implementovaným HTK knihovnám Obr. 3. ukazuje výsledky rozpoznávačů pro 38 různých slov (čı́slovek). Celkem se rozpoznávalo 1415 vět. Programy HVite i drecog pro HCLG sı́t’ dávajı́ podobné (nejlepšı́ cca 70%) výsledky. Program rct zatı́m dı́ky jeho jednoduchosti nevykazuje přı́liš dobré výsledky. Stojı́ za povšimnutı́ rozpoznávacı́ časy nasycenı́ (dalšı́ zvyšovánı́ hodnoty svazkového prořezávánı́ nemá vliv na dobu ani na skóre rozpoznávánı́) rozpoznávačů. U program rct tuto hodnotu nebylo možné zjistit. Výsledná skóre rozpoznávánı́ se mohou zdát malá, nicméně je na mı́stě upozornit na úplně jinou databázi, kde jsou navı́c použity 2 typy mikrofonů (pouze jeden je tzv. ”close talk”) a žádná úprava přı́znaků nenı́ použita. Později bylo prokázáno, že výběr pouze ”close talk” mikrofonu a kepstrálnı́ normalizace přı́znaků na celkový průměr trénovacı́ch dat [11] výrazně zlepšı́ rozpoznávacı́ skóre (konkrétně z 15% na 40% pro cca 900 slov a monofóny - 32 mitures). 68 Pavel Štemberk 50 300 40 200 30 20 100 10 0 pruning [−] correct words [%] TEMIC2, engine off, bh items (numerals), 38 various words − WORDS−SENT. = 11531−1415 600 90 HVite (score) drecogHCLG (score) 80 drecogCLG (score) 500 rct −V (score) 70 HVite (pruning) drecogHCLG (pruning) drecogCLG (pruning) 400 60 rct −V (pruning) 0 200 400 600 800 time [sec] 1000 1200 1400 0 Obrázek 3: Závislost úspěšnosti, resp. koeficientu prořezávánı́ na době rozpoznávánı́ pro jednotlivé rozpoznávače 4. Morfologické kódy pro český jazykový model Vygenerovánı́ jazykového modelu je možné provést pomocı́ nějakého trénovacı́ho textu a vhodnými nástroji [1, 2]. Za určitou dobu bylo použito několik postupů vytvořenı́ jazykového modelu a to na úrovni historiı́ levých kontextů slov, slabik, morfémů, či morfologických kódů [13]. Právě idea klasifikace slov na slovnı́ druhy (plus pád čı́slo a rod u ohebných slovnı́ch druhů) se stala motivacı́ pro vytvořenı́ jazykového modelu [7]. Pro nalezenı́ morfémů, resp. kořenů a koncovek byla použita databáze KRÁLÍK, která obsahuje cca 32K vět a 70K slov a má následujı́cı́ textový formát. řidičem může být ... atd. ... 110117 5231 1 527 1 řidič moci býti 42+02 912 21 41_01 2010439 2010440 2010441 Pět sloupců má následujı́cı́ význam (zleva): Slova skládajı́cı́ věty, morfologický kód, základnı́ tvary, informace o větných členech včetně skladby věty a počı́tadlo. Základnı́ ideou pro použitı́ této databáze v jazykovém modelovánı́ je nalézt vzory pro ohebné tvary slov, tedy množiny slov se stejnými koncovkami ve všech pádech popř. i rodech1 . Vznikl tak algoritmus nalezenı́ vzorů dle stejných koncovek daných slov a rozdělenı́ slov dle těchto vzorů. Základnı́m kritériem pro zařazenı́ daného slova do skupiny se stejnými koncovkami je alespoň 7 tvarů ze 14 (skupina všech pádů pro jednotné i množné čı́slo) jakéhokoliv rodu. #NOUNS <MODELS> 184 ůkol délka ... atd ... <WORDS> 1320 vývoz škodovka ... atd ... #ADJECTIVES <MODELS> 103 jiný 1 0 ka u ky 110211 110321 ý u ce 0 ku _ ko u ce em kou y ky ů ek ům kám y ky _ ky eH káH y kami ého _ 0 ém ı́ ýH ým é 0 0 ými 5 ůkol 6 délka ého ému Pro slovesa bude určeno odlišné řazenı́ do skupin dle vzorů Pavel Štemberk jiný ý ého ému ý jiný á é é ou jiný é ého ému é prvnı́ 0 ho 0 ho prvnı́ 0 ho mu 0 prvnı́ 0 0 0 0 prvnı́ 0 ho mu 0 ... atd ... <WORDS> 1425 nyplový 23 222 nespolehlivý 23 222 konkurenčnı́ 22 227 ... atd ... zdůrazňovati uji uješ uje _ zdůrazňovati _ uj _ _ zdůrazňovati _ _ _ _ zdůrazňovati _ _ _ _ najı́ti jdu jdeš jde _ najı́ti _ jdi _ _ najı́ti _ _ _ _ najı́ti _ _ _ _ ... atd ... <WORDS> 549 najı́ti 5151 1 2 najı́ti vyjı́ti 5131 1 2 najı́ti vyjadřovati 5241 1 6 zdůrazňovati ... atd ... #ADVERBS <UC_WORDS> 1996 nezbytně 66 14 zejména 1104118 311 .. atd ... #UC_NOUNS <UC_WORDS> 28517 vnitro 110412 1 zněnı́ 157416 1 .. atd ... 69 _ _ _ 0 _ _ _ ém é ém 0 m 0 m ým ou ým m m 0 m é é á 0 0 0 0 ýH ýH ýH H H H H ým ým ým 0 0 0 0 é é á 0 0 0 0 _ _ _ _ _ _ _ ýH ýH ýH _ H H H ými ými ými mi mi mi mi oval oval ovala ovalo šel šel šla šlo ujeme _ _ _ jdeme _ _ _ _ _ _ _ jdete jděte _ _ ujı́ _ _ _ jdou _ _ _ ovat _ _ _ jı́t _ _ _ _ _ _ _ _ _ _ _ _ _ ovány _ _ _ šly _ ovali _ ovaly _ šli šly šly _ 6 jiný 11 jiný 11 prvnı́ _ _ _ _ _ _ _ _ _ ován ována ováno šel _ _ šlo Samotné morfologické kódy zahrnujı́ pro ohebné slovnı́ druhy slovnı́ druh, čı́slo, rod a pád v tomto pořadı́. Tzn., že např. zájmeno jednotného čı́sla ženského rodu a 4. pádu by bylo kódováno symbolem pro sg fe n . Pro 4 ohebné slovnı́ druhy, které čeština má tak připadá 56 kódů na jeden druh. Slovesa jsou řazena do 25 skupin, samotný kód pak záležı́ na následujı́cı́m: • rozkazovacı́ způsob - slovnı́ druh, čı́slo, osoba a kód ”imp”; přı́klad pro rozkazovacı́ způsob 2. osobu množného čı́sla je ver pl se imp • přı́tomný čas - slovnı́ druh, čı́slo, osoba a kód ”pr”; přı́klad pro 2. osobu množného čı́sla je ver pl se pr • minulý čas - slovnı́ druh, čı́slo, rod (činný - trpný) a osoba; přı́klad pro ženský rod 2. osobu množného čı́sla trpného rodu je ver pl se pass fe Celkem tak potřebujeme 270 kódů pro libovolný počet slov. Analyzujeme-li morfologickým analyzátorem reprezentovaným pomocı́ FST (obr. 4.), resp. provedeme kompozici FSA reprezentujı́cı́ danou větu (př. obr. 4.), dostaneme větu reprezentovanou morfologickými kódy (obr. 4.). Odtud již je možné dále postupovat stejně jako v přı́padě samotných slov. 5. Závěry V článku byla popsána činnost na katedře po dobu jednoho roku. V základnı́ch bodech je možné shrnout výsledný stav vyvı́jeného programu rct jako rozpoznávače mluvené řeči na bázi rozpoznávacı́ sı́tě v AT&T WFST formátu a Markovových modelů v HTK formátu: 70 Pavel Štemberk 0 stál 1 tam 2 samotný 3 vysoký 4 sloup 5 Obrázek 4: Reprezentace věty ”stál tam samotný vysoký sloup” pomocı́ FSA nahoř e:adv_ tam:adv_ stál:ver_sg_past_mi_ stál:ver_sg_past_ma_ udělal:ver_sg_past_mi_ udělal:ver_sg_past_ma_ opravdový:adj_sg_mi_a_ opravdový:adj_sg_mi_n_ opravdový:adj_sg_ma_n_ samotný:adj_sg_mi_a_ samotný:adj_sg_mi_n_ vysoký:adj_sg_mi_a_ vysoký:adj_sg_mi_n_ vysoký:adj_sg_ma_n_ sloup:nou_sg_mi_a_ sloup:nou_sg_mi_n_ poř ádek:nou_sg_mi_a_ poř ádek:nou_sg_mi_n_ <sil>:<sil> 0 Obrázek 5: Morfologický analyzátor pro několik vybraných slov • podařilo se vyvinout jednoduchý rozpoznávač využı́vajı́cı́ tři druhy prořezávánı́ • algoritmus je ve formátu open-source, takže je velmi vhodný pro studijnı́ účely. • program je dobrým přı́kladem použitı́ HTK knihoven pro tvorbu vlastnı́ch programů • výsledky dle uvedeného srovnánı́ zatı́m nedosahujı́ srovnatelných skóre – rychlostı́ oproti porovnávaným Tvorba jazykového modelu pomocı́ morfologických kódů se zdá být nadějnou možnostı́ jak modelovat ohebný jazyk jakým je čeština. Nicméně možné tvary slov, majı́cı́ vı́ce jak jeden morfologický kód (např. homonyma ale i slova se stejnými koncovkami pro různé pády) tvořı́ výsledný morfologický analyzátor nedeterminizovatelným automatem a je tedy potřeba nejdřı́ve vytvořit sı́t’ HCL, resp. HL a pak zkomponovat s modelem založeným na n-gramu morfologických kódů. Poděkovánı́ Tento výzkum byl podporován z grantů GAČR 102/03/H085 “Modelovánı́ biologických a řečových signálů”, GAČR 102/05/0278 “Nové směry ve výzkumu a využitı́ hlasových technologiı́”, AVČR 1ET201210402 “Hlasové technologie v informačnı́ch systémech”, resp. výzkumného záměru MŠMT MSM6840770014 “Výzkum perspektivnı́ch informačnı́ch a komunikačnı́ch technologiı́”. Pavel Štemberk 71 adj_sg_ma_n_ 0 ver_sg_past_ma_ ver_sg_past_mi_ 1 adv_ 2 adj_sg_mi_a_ adj_sg_mi_n_ 3 adj_sg_mi_a_ adj_sg_mi_n_ 4 nou_sg_mi_a_ nou_sg_mi_n_ 5 Obrázek 6: Věta ”stál tam samotný vysoký sloup” reprezentovaná morfologickými kódy Reference [1] Allauzen, C., Mohri, M., Roark, B. A general weighted grammar library. [2] Allauzen, C., Mohri, M., Roark, B. Grm library - grammar library. http://www.research.att.com/ fsmtools/grm/. [3] Mohri, M. Finite-state transducers in language and speech processing. Association for Computational Linguistic 23 (1997), 2. [4] Mohri, M., Pereira, F. Weighted finite state transducers in speech recognition. Computer Speech and Language 1 (2002), 69–88. [5] Mohri, M., Pereira, F., Railey, M. At&t fsm library - finite-state machine library. http://www.research.att.com/ fsmtools/fsm/. [6] Mohri, M., Railey, M. Dcd library - speech recognition decoder library. http://www.research.att.com/ fsmtools/dcd/. [7] Nouza, J., Nouza, T. A voice dictation system for a million-word czech vocabulary. Proc. of ICCCT 2004, Austin, USA, ISBN 980-6560-17-5. 1 (2004), 142–152. [8] Psutka, J., Muller, L., Matoušek, J., Radová, V. Mluvı́me s počı́tačem česky, 1. ed. Academia, středisko společných činnostı́ AV ČR, ISBN 80-200-1309-1, 2006. [9] Rabiner, L. R.; Juang, B.-H. Fundamentals of Speech Recognition. Murray Hill, New Yersey, USA, 1993. [10] Sedgewick, R. Algoritmy v C, 1 ed. SoftPress s.r.o, ISBN 80-96497-56-9, 2003. [11] Young, S. The HTK Book (for HTK Version 3.2.1), 3.2 ed. Microsoft Corporation, Cambridge University Engineering Department, 2002. [12] Štemberk, P. Speech recognizer construction using the optimized network. In Nové smery v spracovánı́ signálov VIII Tatranské Zruby, May 2006. [13] Štemberk, P. At&t fsm & grm knihovny http://stembep.wz.cz/fsm-howto/grmtools.html. pro rozpoznávánı́ řeči. [14] Štemberk, P. Comparison of chosen asrs based on fsm. In POSTER 2006 [CD-ROM] ČVUT FEL Praha, Mar. 2006. 72 Martin Vondrášek Virtuální elektrody v kochleárních implantátech Nucleus® 24 Martin Vondrášek České vysoké učení v Praze, Fakulta elektrotechnická [email protected] Abstrakt: Kochleární implantát je elektronické zařízení, které nahrazuje sluchový vjem pacientům s těžkou sluchovou vadou pomocí stimulace sluchového nervu proudovými pulsy. Tento příspěvek se zabývá možnostmi využití virtuálních elektrod v kochleárních implantátech. První y možností je náhrada poškozené elektrody stimulací do sousedních elektrod. Druhá možnost využití virtuálních elektrod je jejich implementace do strategie ACE (SPEAK). 1. Úvod Kochleární implantát [1, 2] je elektronické zařízení zprostředkující sluchové vjemy pacientům s těžkou sluchovou vadou. Sluchové vjemy jsou vyvolávány přímou elektrickou stimulací sluchového nervu proudovými impulsy uvnitř hlemýždě. Algoritmus převodu akustického signálu na sled proudových impulsů je nazýván kódovací strategií. V současnosti jsou firmou Cochlear používány tři typy kódovacích strategií ACE, CIS a SPEAK. Algoritmy implementující kódovací strategie jsou uloženy v řečovém procesoru. Vlastní stimulace je prováděna implantátem, jehož tělo je umístněno na hlavě pod kůží pacienta, přičemž sada elektrod je zavedena do hlemýždě. 2. Virtuální elektroda Možnost vytvoření virtuální elektrody byla potvrzena výzkumem P.C. Loizu [5]. Při tomto výzkumu byl ale použit experimentální implantát, který umožňoval stimulaci do dvou sousedních elektrod dvěma proudovými pulsy současně. Kochleární implantát Nucleus® 24 Contour Advance™ [1] ale tento typ stimulace neumožňuje díky jednomu výstupnímu zesilovači. Výstup tohoto zesilovače je cyklicky přepínán mezi jednotlivé elektrody, proudové pulsy v sousedních elektrodách tak jsou vždy časově posunuté. Předchozí výzkumná práce na katedře teorie obvodů potvrdila, že virtuální elektroda může být úspěšně vytvořena i nonstimultální stimulací sousedních elektrod [6, 7]. Výhodou tohoto způsobu stimulace je možnost nastavení frekvence virtuální elektrody a to buď metodou konstantního stimulačního kmitočtu nebo metodou konstantních amplitud. Praktické ověření na pacientech s kochleárními implantáty potvrdily možnost vytvoření virtuální elektrody a definovaly vlastnosti jednotlivých metod nastavení kmitočtu. Díky jednodušší implementaci a možnosti přesnější nastavení frekvence byla pro další práci vybrána metoda konstantního stimulačního kmitočtu. 3. Náhrada poškozené elektrody Přibližně v deseti procentech případů se stává, že je jedna z intrakochleárních elektrod kochleárního implantátu poškozena během operace nebo má natolik vysokou impedanci že ji nelze použít. Pokud s nefunkční elektrodou sousedí dvě použitelné elektrody, mohly by tyto elektrody nahradit elektrodu nefunkční (obr .1) . Martin Vondrášek 73 Obr 1: Princip náhrady nefunkční elektrody. Pro ověření možnosti náhrady poškozené elektrody byl v Matlabu vytvořen testovací program (obr .2) s použitím Nucleus Matlab Toolboxu [3, 4]. Tento program stimuloval testovaného pacienta dvěmi sekvencemi. První představovala stimulaci do nefunkční elektrody (u testovaného pacienta byla elektroda funkční). Druhá sekvence pak stimulovala sousední elektrody. V případě této sekvence bylo možno měnit amplitudy stimulačních pulsů pro dosažení co nejpodobnějšího sluchového vjemu v porovnání s první sekvencí. Obr 2: Náhrada nefunkční elektrody. Testy s třeni pacienty sice prokázaly možnost vytvoření podobného tónu, ale tento tón měl velmi často nepříjemný bručivý podklad způsobený poměrně velkou vzdáleností mezi stimulovanými elektrodami. Praktický přínos při použití náhrady poškozené elektrody tak může být spíše negativní. 4. Implementace virtuálních elektrod do strategie ACE 4.1 Úvod Použití virtuálních elektrod ve strategii ACE (SPEAK) lze odůvodnit především zlepšením frekvenčního rozpoznání a tím zlepšení sluchového vjemu pacienta s kochleárním implantátem. Ve standardní strategii ACE je řeč zpracovávána 22 filtry (na obr. 3 označeny s „v“). Sluchový vjem pacienta je tak teoreticky složen z 22 různých tónů. To je obvykle dostatečné množství pro rozlišení řeči, ale pro rozlišení mluvčího či hudby velni málo. 74 Martin Vondrášek PP 1 virtual electrodes setting PP 1v x[t] electrode 1 segmentation FFT PP 2 energy calculation Band selection LGF channel mapping electrode 22 PP 21v patient setting PP 22 Obr 3: Blokové schéma strategie ACE s virtuálními elektrodami. Pokud mezi každými dvěmi fyzickými elektrodami vytvoříme jedu elektrodu virtuální, dostaneme tak 43 elektrod a 43 různých tónů. Zpracování řeči tak bude probíhat rovněž ve 43 pásmech (obr 3: červeně vykreslené filtry odpovídají virtuálním elektrodám). Pro použití virtuálních elektrod je nutné nastavit základní parametry jako je Threshold a Comfort level. Vzhledem k tomu že je vhodné pro vytvoření virtuální elektrody použít poněkud vyšší stimulační kmitočet než pacient dosud používal, je odvození Threshold a Komfort levelu od hodnot sousedních elektrod nevhodné. Proto byl vytvořen nástroj pro nastavení zcela nové mapy pacienta (obr. 4), která nerozlišuje mezi standardními a virtuálními elektrodami. Virtuální elektrody mají navíc jen nastavení kmitočtu. Design i ovládání tohoto nástroje je odvozen od programu Nucleus R126 který je standardně používán pro nastavení map v procesoru pacienta lékařem. Obr 4: Nastavení nové mapy pacienta . Program pro nastavení nové mapy pacienta je rozdělen do dvou částí. V první části (obr. 4 vlevo) jsou nastavovány základní parametry, v druhé části vpravo pak frekvence banky filtrů a individuální zesílení v každém pásmu. Mapa pacienta je uložena ve standardním souboru *.mat. 4.2 Změny v algoritmu V případě použití virtuálních elektrod je nutné pozměnit některé funkční bloky algoritmu na obr.3. Největší změna je nutná v bloku „Band selection“. Tento blok v každém segmentu řeči vyhledává několik pásem s největší energií signálu. Informace o těchto pásmech je Martin Vondrášek 75 později přenesena do implantátu. Na obrázku 5 vlevo je uveden příklad výběru pro 7 přenášených pásem. |H(z)| |H(z)| 200 Hz 200 Hz 8 kHz 8 kHz Obr 5: Standardní výběr maxim. 17 17 18 amplituda/elektrody amplituda/elektrody Pokud použijeme stejný algoritmus i pro strategii ACE s virtuálními elektrodami (poloviční šířka pásem), pak 7 pásem s maximální energií nepostihne druhé maximum ve spektru. Toto maximum je však také důležité pro dobrou srozumitelnost. Je proto nutné funkci bloku výběru maxim změnit. Algoritmus výběru maxim pro strategii využívající virtuální elektrody musí odstranit problémy s využitím jedné fyzické elektrody i pro stimulaci elektrody virtuální. Na obrázku 6a) je znázorněna stimulace do elektrod 18, 22 a do virtuální elektrody 20v (fyzická stimulace do 20 a 21). V tomto případě nenastává žádný problém. 19 20 21 18 19 20 21 22 22 a) t[ms] b) Obr 6: Stimulace do standardní a virtuální elektrody. t[ms] V případě, že má být využita jeda fyzická elektroda 19 pro stimulaci pásem 19 a 19v (obr. 6b) nastává problém s malou vzdáleností mezi pulsy v elektrodě 19. Tato vzdálenost je menší než refrakterní perioda nervových vláken sluchového nervu. U pacientů nastává „časová integrace“ pulsů. Sluchový vjem vyvolaný touto stimulací je shodný se stimulací s konstantní vzdáleností mezi pulsy ale s mnohem větší amplitudou proudových pulsů. Pokud by stimulace z obrázku 6b) nastala pro proudy blízké maximálním přípustným hodnotám (Comfort level), byl by sluchový vjem příliš silný a pro pacienta nepříjemný. Následující experiment objasnil vliv malých vzdáleností mezi pulsy. Stimulaci podle obrázku 7 pacient porovnával se stimulací s konstantní vzdáleností mezi pulsy. V průběhu testu jsme měnili stimulační kmitočet a vzdálenosti a a b podle obrázku 7. V případě že byla vzdálenost b mezi skupinami pulsů větší než 4 ms (250 Hz opakovací frekvence), pacient slyšel nízkofrekvenční tón nezávisle na místě stimulace. Pro vzdálenost a menší než 0,3 ms hlasitost tónu výrazně narostla. 76 Martin Vondrášek Uvažujeme-li stimulační kmitočet v rozsahu 720-1200 Hz a počet přenášených pásem 8-10, pak je maximální počet pásem, využívajících pro stimulaci stejnou fyzickou elektrodu roven dvěma. To je také odpověď na algoritmus výběru přenášených maxim. Seřadíme velikost energie v jednotlivých pásmech podle velikosti. První (největší maximum) bude přeneseno vždy, u každého dalšího musí být splněna výše popsaná podmínka. amplituda a b t[ms] pocet puslu ve skupine Obr 7: Seskupení pulsů. Poslední významnou změnou v algoritmu ACE s virtuálními elektrodami je změna segmentace. Nutnost změny segmentace demonstrujeme na následujícím obrázku. Jako vstup algoritmu standardní strategie ACE použijeme sinusový signál s rovnoměrně rostoucím kmitočtem. Výstup strategie (aktivita elektrod) je na obrázku 8a). V každé elektrodě je patrné zvýšení a následné snížení proudových pulsů. Tvar průběhu amplitudy proudových pulsů v každé elektrodě je dán odezvou na vstupní sinusový signál. Použijeme li stejný vstupní signál pro strategii ACE s virtuálními elektrodami, bude graf aktivity elektrod deformovaný (výřez na obr 8b). Vlivem změněného algoritmu výběru maxim (maximálně dvě přenášená pásma využívající pro stimulaci stejnou fyzickou elektrodu), jsou některé pulsy vynechány. Pacienti toto vynechání vnímají jako nepříjemné vrčení (začátek a konec stimulace je skokový). a) b) Obr 8: Standardní segmentace. c) Šířka odezvy každého filtru je dána frekvenčním rozlišením použité Fourierovy transformace. Zdvojnásobíme-li délku segmentu, zlepšíme frekvenční rozlišení a délky odezvy v jednotlivých elektrodách se zkrátí. (obr 8c). 5. Závěr Virtuální elektrody mohou být využity jako náhrada za poškozenou elektrodu nebo pro zlepšení frekvenčního rozlišení řečové strategie ACE. Náhrada poškozené elektrody elektrodou virtuální není adekvátní díky velké vzdálenosti mezi využívanými elektrodami. Výsledný tón má pak nepříjemný vrčivý podklad. Použití virtuálních elektrod ve strategii Martin Vondrášek 77 ACE s sebou přináší problémy, které ale lze uspokojivě řešit. Výsledná řečová strategie pak umožňuje lepší frekvenční rozlišení v porovnání se standardní strategií ACE. Standardní strategie ACE i ACE s virtuálními elektrodami jsou v současné době testovány na kvalitu řeči s hlediska její přirozenosti a srozumitelnosti. Obě strategie budou rovněž porovnány na ukázkách hudby. 6. Poděkování Tato práce vznikla za podpory výzkumného záměru “Transdisciplinární výzkum v biomedicínském inženýrství 2” č. MSM 6840770012 a grantem ” Modelování biologických a řečových signálů”, č 102/03/H085 Českého vysokého učení technického v Praze. Reference [1] CLARK, G. Cochlear implants, fundamentals and applications. New York: Springer NY, 2003. 830 p. ISBN 0-387-95583-6. [2] LOIZOU, P. Mimicking the Human Ear. IEEE Signal Processing, 1998, vol. 15, no. 5 ,p. 101-130. ISSN 0740-7467. [3] Nucleus Reference manual. Cochlear Ltd. Australia, 2001. N94359F ISSI. [4] Swanson, B. Nucleus Matlab Neural Toolbox. Cochlear Ltd. Australia, 2004. [5] LOIZOU, P. Mimicking the Human Ear. IEEE Signal Processing, 1998, vol. 15, no. 5 ,p. 101-130. ISSN 0740-7467. [6] M. Vondrášek, T. Tichý, P Sovka.Virtual Electrodes in Nucleus® 24 Implant. NIC Workshop 2006, Nechrlen, Belgium 2006. [7] Vondrášek, M. - Tichý, T. - Sovka, P.: Virtual Electrodes Discrimination in NucleusR 24 Cochlear Implant. In Applied Electronics 2006. Plzeň: ZČU Plzeň, 2006, s. 229-232. ISBN 80-7043-442-2. 78 Petr Zetocha Analýza dětské řeči s vývojovou dysfázií pomocí Supervised SOM Petr Zetocha České vysoké učení v Praze, Fakulta elektrotechnická [email protected], Abstrakt: Tento příspěvek vznikl při řešení společného projektu katedry teorie obvodů FEL ČVUT v Praze a dětské neurologické kliniky v Motole. Náplní projektu je, mimo jiné, hledání souvislostí mezi neurologickou poruchou dětí, kterou je vývojová dysfázie, a stanovením stupně poškození percepce a tvorby řeči. V oblasti aplikací neuronových sítí byla nejdříve zkoumána možnost klasifikace samohlásek vyslovovaných samostatně i jako součást slov. Výchozím předpokladem byl fakt, že vývojová dysfázie může ovlivnit tvorbu formantových kmitočtů, která se projeví kmitočtovým posunem v porovnání s hodnotami formantů u zdravých dětí. Bylo třeba sestavit databázi promluv se stejným obsahem pro obě sledované skupiny (zdravé i nemocné děti). Úspěšnost řešení závisí také na znalostech zákonitostí ve vývoji dětské řeči, a to v závislosti na věku a pohlaví. Pro řečové analýzy byly vybrány modifikované Kohonenovy samoorganizující se mapy, a to samoorganizující se mapy s učitelem (SSOM). Jednou z výhod tohoto typu neuronové sítě je výborná možnost vizualizace, což je vhodné zvláště pro netechnické uživatele. Jejich aplikace by měla prokázat schopnost nejen rozlišit nemocné děti od zdravých, ale rovněž popsat vývoj nemoci mezi jednotlivých vyšetřeními realizovanými po absolvování léčebné terapie. 1. Úvod V současnosti, se mnoho výzkumných skupin pokouší aplikovat známé matematickoinženýrské metody i v jiných oblastech lidského života. Jednou z těchto oblastí je pomoc hendikepovaným a nemocným lidem. Náš výzkumný tým se zaměřil na výzkum dětí s vývojovou dysfázií. Předpokládáme, že vývojová dysfázie ovlivňuje tvorbu formantových kmitočtů. Při porovnání se zdravými dětmi se to může projevit jako posun v rozmístění samohlásek zobrazovaných v samoorganizujících se mapách (typ umělé neuronové sítě). Pomocí těchto map chceme nejen nalézt hranici mezi zdravým a nemocným dítětem, ale také zjistit případný vývoj neurologického poškození, jakým vývojová dysfázie je. 2. Samoorganizující se mapa s učitelem Samoorganizující se mapa s učitelem (Supervised Self-Organizing Map - SSOM) je výsledkem snahy o sloučení Kohonenovy samoorganizující se mapy s algoritmem učení LVQ. Síť kombinuje aspekty vektorové kvantizace s topologickým uspořádáním vstupních vektorů. Algoritmus SSOM realizuje účinný způsob klasifikace, ale jen pro velmi dobře známá vstupní data nebo třídy dat [1], [4], [5]. SSOM se skládá z m neuronů umístěných na pravidelné mřížce. Pozice neuronů rj na mřížce je neměnná. Každý neuron je propojen se sousedícími neurony. Každý neuron má váhový vektor mj . Učení s učitelem v tomto případě znamená, že vstupní vektor je tvořen ze Petr Zetocha 79 dvou částí x0 a xc, kde x O = [ξ1 , ξ 2 ,K, ξ N ] ∈ ℜ N je původní vstupní vektor dimenze N a T x C = [t1 , t 2 ,K, t K ] ∈ ℜ K je vektor tříd, do kterých vektor x0 patří. Každý element ti vektoru xc T reprezentuje jednu z K tříd. Nový vektor x = [x O , x C ]T ∈ ℜ N + K bude dimenze N+K, což bude platit i pro váhové vektory sítě m i = [ μ i1 , μ i 2 ,K, μ iN + K ]T ∈ ℜ N + K . Po natrénování sítě bude každém neuronu automaticky přiřazeno návěští s informací o třídě, kterou zastupuje. Proces určování návěští pro neurony ve vztahu (1) je realizován na základě hledání maxima z posledních K elementů váhového vektoru mi. Li = arg max{ m i (N + k ) k = 1,2,K, K } k i = 1,2,K, m, (1) kde Li je návěští pro i-tý neuron, je to diskrétní symbol popisující třídu nebo skupinu, m je počet neuronů v síti. Vyšší hodnota jednoho z elementů vektoru mi(N+k) značí přímo úměrně vyšší četnost přiřazení trénovacích vzorů se stejnou třídou k neuronu v době učení. Je-li např. největší element mi(N+3), pak i-tý neuron je nejblíže vstupním vzorům ze třídy 3. Po skončení procesu určení návěští je posledních K elementů z každého váhového vektoru sítě odstraněno. Byly užitečné pouze ke klasifikaci neuronů v mapě. Pro klasifikaci nového (neznámého) vstupního vektoru x je nadále využíváno jen prvních N elementů. 3. Neasymptotický binomický interval spolehlivosti Výsledky ze SSOM mají pouze diskrétní charakter. Vrácená hodnota je buď 1 pro úspěšnou klasifikaci nebo 0 pro špatně klasifikovaný vstupní vektor. Úspěšnost resp. neúspěšnost je založena porovnávání návěstí („labels“) vstupního vektoru a pro něj vítězného neuronu. Bodový odhad ^p binomického rozdělení se zdá být nejlepším odhadem úspěšné klasifikace. Kromě toho, existuje i odhad intervalu spolehlivosti (IS) pro binomické rozdělení. Metoda nazývající se Clopper-Pearson nebo „Exact“ poskytuje spolehlivý odhad intervalu i pro malý počet vstupních dat. Za předpokladu, že n je počet testovaných vstupních vektorů a x je jejich počet úspěchů, bodový odhad úspěšné klasifikace je pˆ = x ⋅ 100 [%] . n (2) 100(1-α) % interval spolehlivosti na intervalu p ∈ ( p L , pU ) ,je počítán následovně (pro x = 0 je pL = 0 ) pL = x ⋅ 100 [%] , x + (n − x + 1) ⋅ F2(n − x +1), 2 x ,1−α 2 (3) kde F2(n − x +1), 2 x ,1−α 2 je 100(1-α/2) kvantit z Fisher-Snedecorova rozdělení se stupni volnosti 2(n-x+1) a 2x. α ve vzorci znamená hladinu významnosti. Podobně pro x = n je pU = 100 pU = (x + 1) ⋅ F2( x +1), 2(n − x ),1−α 2 ⋅ 100 n − x + ( x + 1) ⋅ F2 ( x +1), 2 (n − x ),1−α 2 [%] . (4) 80 4. Petr Zetocha Experimentální část 4.1 SOM software Všechny analýzy a experimenty byly provedeny v programovém prostředí MATLAB 7, Release 14. V experimentech byl použit software nazývaný SOM Toolbox. SOM Toolbox byl vyvinut na Helsinské univerzitě v laboratoři CIS a je napsán v MATLAB skriptu. Obsahuje algoritmy pro komplexní práci se SOM a je volně dostupná na [6]. Pro vlastní projekt byly navrženy speciální m-files, které se mohou stát součástí podpůrného softwaru. 4.2 Vstupní data Využili jsme databázi dětských promluv. Korpus vytvořený z promluv 44 zdravých dívek a 28 zdravých chlapců ve věku 6 až 10 let a 11 dětských pacientů ve věku 4 až 10 let, kteří trpí neurologickou poruchou nazývanou vývojová dysfázie - neschopnost porozumění nebo vyjádření mluveného projevu. Touto poruchou trpí nejčastěji děti od 3 do 10 let a je obtížně diagnostikovatelná. V současné době máme dvě nebo více porovnatelných nahrávek od 11 pacientů. Druhá a další nahrávka vznikala po asi tříměsíčním intervalu lékařské terapie. Databáze byla nahrávána v reálném prostředí školních tříd a kliniky. Pro experimenty byly použity pouze samohlásky /a/, /e/, /i/, /o/ a /u/. Hranice samohlásek byly hledány manuálně. Tabulka 1 ukazuje počet dětí a samohlásek rozdělených podle věku a pohlaví. V experimentech bylo pro porovnání použito promluv od muže a ženy. Nahrávky těchto mluvčích byly pořízeny z vysílání zpráv o počasí. Nahrávky zdravých dětí byly pořízeny na základní škole ZŠ Vratislavova a ZŠ Štěpánská. Nahrávky dětských pacientů jsou z oddělení Dětské neurologie druhé lékařské fakultní nemocnice v Motole. Vstupní množiny zdravé dívky 6-10 let zdravý chlapci 6-10 let pacienti s vývojovou dysfázií žena muž Celkový počet samohlásek mluvčích 1498 44 863 28 485 11 2106 1 132 1 Tabulka 1: Počet mluvčích a samohlásek. Pro všechny signály platí následující předzpracování: vzorkovací frekvence 16 kHz, kvantizace 16 b/vzorek, délka segmentu 20 ms (320 vzorků), překryv 50%, Hammingovo okno. Vymezení jednotlivých pojmů viz. [2], [3]. Každý segment byl pro porovnání reprezentován 16 melovskými kepstrálními koeficienty. Ke každému vstupnímu vektoru je také připojeno návěští ( „label“ ) s informací o typu samohlásky, kterou vektor zastupuje. Vstupní data byla také normována lineární transformací, která upravuje hodnoty do intervalu <0,1>. 4.3 Výsledky experimentů V první části experimentů byly použity dva typy SSOM. Oba typy byly trénovány za stejných podmínek. Liší se pouze vstupní trénovacími množinami, které byly: samohlásky zdravých dětí ve věku 6 let a samohlásky zdravých dětí ve věku 7-10 let. Petr Zetocha 81 Tabulka 1 a 2 ukazují výsledky úspěšné klasifikace dvou SSOM. Trénovacími množinami byly normovaná vstupní data od 6letých a 7-10letých dětí. V testovacích množinách byly použity data od zdravých a nemocných dětí, od muže a ženy. Horní Spodní ^p Počet hranice IS hranice IS [%] vektorů [%] [%] dívky & chlapci 7-10 let 26752 78 78 79 dívky & chlapci 7-10 let 13733 69 70 71 nemocné děti 11179 63 64 65 žena 12063 61 62 63 muž 639 34 37 41 Typy vstupních množin Trénovací Testovací Table 1: Výsledky SSOM trénované normovanými vstupními daty od zdravých dětí ve věku 7-10 let. Zkratka IS představuje 95% Interval Spolehlivosti. Typy vstupních množin Trénovací dívky & chlapci 6 let dívky & chlapci 6 let nemocné děti žena muž Testovací Spodní Počet hranice IS vektorů [%] 2687 94 928 76 11179 67 12063 39 639 19 Horní ^p hranice IS [%] [%] 95 95 79 82 68 69 39 40 22 25 Table 2: Výsledky SSOM trénované normovanými vstupními daty od zdravých dětí ve věku 6 let. Zkratka IS představuje 95% Interval Spolehlivosti. SOM trénovaná dětmi ve věku 6 let SOM trénovaná dětmi ve věku 7-10 let 10 8 6 4 2 0 zdravé děti nemocné děti žena muž Obrázek 1: Výsledky z Tabulky 1 (tmavě šedá) a 2 (světle šedá). 82 Petr Zetocha Obrázek 1 porovnává výsledky z Tabulky 1 a 2. Temně šedé body resp. Světle šedé body patří datům z Tabulky 1 resp. Tabulky 2. Mapa trénovaná širší věkovou skupinou potlačuje vliv věku na klasifikaci více než mapa trénovaná věkovou skupinou užší. Tento experiment byl užitečný pro potvrzení vlivu věku a pohlaví na úspěšnou klasifikaci. V druhé části experimentů byla použita pouze mapa trénovaná daty od 7-10letých zdravých dětí. Testovanými daty jsou samohlásky od 11 dětí s vývojovou dysfázií. Pořadí nahrávky určuje dobu, kdy byla nahrávka pořízena. První nahrávka byla zaznamenána před medicínskou terapií každá další nahrávka byla nahrána zhruba po třech měsících. Grafický symbol nad Obrázkem 2 představuje 95% interval spolehlivosti a bodový odhad úspěšné klasifikace. Na Obrázku 2 můžeme vizuálně porovnat zlepšení případně zhoršení v nemoci u každého z jedenácti pacientů. V současné době máme od doktorů potvrzeno zlepšení pouze u pacienta „I“. Tento pacient má také v našich výsledcích významné zlepšení v klasifikaci samohlásek mezi prvním a posledním nahráváním. Také další pacienti mají významné zlepšení a záleží pouze na konzultaci s doktory, aby se prokázalo, jestli je naše hypotéza správná. Naneštěstí, ne všichni pacienti mají zlepšení v klasifikaci. To by totiž mohlo vést k domněnce, že zlepšení je silně závislé na věku. bodový odhad ^p úspěšné klasifikace 95% interval spolehlivosti úspěšné klasifikace 100 90 80 70 60 50 40 30 20 1 2 3 1 2 1 2 1 2 1 2 1 2 3 1 2 3 1 2 3 1 2 34 1 2 3 1 2 3 4 5 A B C D E F G H I J K Obrázek 2: Testování nahrávek dětských pacientů v SSOM trénované na datech zdravých dětí ve věku 7-10 let. Písmena na ose x reprezentují data pacientů a čísla pořadí nahrávek. 5. Závěr Článek se zabývá jednou z možných aplikací Kohonenových map v oblasti lékařského výzkumu. Úvodní experiment si kladl za cíl ověření hypotézy o vlivu věku na úspěšnost klasifikace v mapách. Výsledky zaznamenané na Obrázku 1 demonstrují tento vliv. Závěrem je, že mapa trénovaná na datech od rozsáhlejší skupiny dětí potlačuje vliv věku při klasifikaci více než mapa trénovaná na datech od užší skupiny dětí. V druhé části experimentů byly porovnávány nahrávky od dětských pacientů s vývojovou dysfázií. Na hladině významnosti 5% můžeme tvrdit, že mezi první a poslední nahrávkou pacienta „C“, „D“, „I“ došlo ke zlepšení v klasifikaci samohlásek v SSOM. Doktoři v současnosti potvrzují pouze jeden případ úspěšné lékařská terapie, a to u pacienta „I“. To Petr Zetocha 83 podporuje naši hypotézu, která říká, že zlepšení úspěšné klasifikace znamená zlepšení zdravý pacienta (snížení vlivu vývojové dysfázie). Jeden případ shody mezi lékaři a naší metodou nás zatím spíše motivuje k další práci. U pacientů „A“, „G“, „H“ jsou velmi velké rozdíly v klasifikaci u každé nahrávky. Tyto pacienty je potřeba ještě jednou nahrát a udělat podrobnou analýzu vstupních dat pro zjištění příčiny tak velkých rozdílů. O pacientech, kteří mají zatím jen dvě nahrávky, nemůžeme mnoho soudit. V jejich případě počkáme na třetí nahrávku, která by měla zařadit tyto pacienty buď do kategorie „vliv vývojové dysfázie sílí“ (úspěšná klasifikace se snižuje) nebo „vliv vývojové dysfázie ustupuje“ (úspěšná klasifikace se zvyšuje) nebo „je potřeba provést další analýzu vstupních dat“ (úspěšná klasifikace má proměnnou tendenci). Poděkování Tento výzkum byl podporován z grantu GAČR 102/03/H085 “Modelování biologických a řečových signálu”, IGA MZ CR NR 8287-3/2005, “Počítačová analýza řečového projevu a celonočních EEG záznamů u dětí” resp. výzkumného záměru MŠMT MSM6840770012 “Transdisciplinární výzkum v biomedicínckém inženýrství 2”. Reference [1] Kohonen, T.: Self-Organizing Maps. 3-rd edition, Berlin Heidelberg, Springer Series in Information Sciences, Springer-Verlag, 2001, ISBN 3-540-67921-9. [2] Psutka, J.: Komunikace s počítačem mluvenou řečí. Academia Praha, 1995, ISBN 80-200-0203-0. [3] Rabiner L.R., Schafer L.W.: Digital processing of speech signals. Prentice Hall Inc., Englewood Cliffs, NJ, USA, 1978, ISBN 0-13-213603-1. [4] Vesanto J., Sulkava M., Hollmér, J.: On the Decomposition of the Self-Organizing Map Distortion Measure. In Proc. of the Workshop on Self-Organizing Maps (WSOM'03), Hibikino, Kitakyushu, Japan, September 2003, pp. 11–16. [5] Zetocha P., Tučková J.: Children Speech Analysis by Supervised SOM. In Proceedings of the 16th Conference Joined with the 15th Czech-German Workshop "Speech Processing". Dresden: Technical University, September 2005, vol. 1, pp 323-328, ISBN 3-938863-17-X. [6] Vesanto J., Himberg J., Alhoniemi E., Parhankangas J.: SOM Toolbox for Matlab 5, SOM Toolbox Team, Helsinki Univesity of Technology, Finland, Homepage of SOM Toolbox: www.cis.hut.fi/projects/somtoolbox 84 Petr Zlatník Vyhodnocovánı́ vad řeči dětı́ s využitı́m algoritmu DTW Petr Zlatnı́k, Roman Čmejla České vysoké učenı́ technické v Praze, Fakulta elektrotechnická [email protected], [email protected] Abstrakt: Přı́spěvek popisuje metodu, která byla vyvinuta pro vyhodnocenı́ vad řeči dětı́. Princip metody je založen na algoritmu borcenı́ časové osy, pro zvýšenı́ robustnosti je využito vı́ce vstupnı́ch charakteristik řeči a výsledky jsou průměrovány. V článku jsou uvedeny dı́lčı́ výsledky rozboru vlivu jednotlivých řečových parametrizacı́ s vyhodnocenı́m modifikovaných přı́stupů, kdy je použito méně parametrizacı́. Dále je uvedeno vyhodnocenı́ vlivu funkce průchodu maticı́ vzdálenostı́ DTW na přesnost klasifikace a je zmı́něno hodnocenı́ vlivu změn fonetické struktury jako je vynechánı́ hlásky nebo slabiky v testovaných slovech. 1. Úvod Uvedená metoda sloužı́ ke klasifikaci vad řeči dětı́ postižených vývojovou dysfáziı́ (vývojová nemluvnost dı́těte, dı́tě má problém s řečı́ již od doby, kdy začı́ná mluvit) popřı́padě afáziı́ (porucha mozkových center, která odpovı́dajı́ za tvorbu řeči za stavu, když již dı́tě umělo mluvit, pokud se přidajı́ epileptické výboje v mozku, jedná se o tzv.: Landau-Kleffnerův syndrom). Děti majı́ problémy s vyslovovánı́m slov (některé hlásky jsou prodlouženy, zaměněny nebo vynechány), nejsou schopny vyslovit souvislejšı́ větu. Projekt je řešen ve spolupráci s Fakultnı́ nemocnicı́ v Motole, kde jsou nahrávány promluvy postižených dětı́ včetně léčby. Metoda byla navržena s cı́lem oddělit promluvy nemocných dětı́ od zdravých a hlavně by měla být schopna vyhodnotit, zda se stav dı́těte v průběhu léčby lepšı́ nebo ne. 2. Algoritmus DTW a realizace klasifikátoru Algoritmus DTW [9] byl původně určen pro realizaci rozpoznávače izolovaných slov. Byla provedena jeho modifikace [1, 2, 10] tak, aby ho bylo možno využı́t pro klasifikaci nesrozumitelnosti dětských promluv. Jednotlivé promluvy jsou segmentovány s překryvem 50 %, segmenty jsou váhovány Hammingovým oknem a parametrizovány. Popis parametrizacı́ je v následujı́cı́m odstavci. Následně je vypočı́tána z porovnávaných dvou promluv matice euklidovských vzdálenostı́ [9]. Ta je procházena z jednoho rohu do protilehlého a je vypočı́tán celkový součet akumulovaných vzdálenostı́, který charakterizuje mı́ru odlišnosti obou slov. Toto je základnı́ princip popisované metody klasifikace slov, kdy se porovnávaly Petr Zlatník 85 promluvy jednoho slova od zdravých a nemocných dětı́ a pro promluvu nemocného dı́těte se předpokládala většı́ akumulovaná vzdálenost. Protože při využitı́ jedné parametrizace (prvnı́ pokusy byly prováděny pro kepstrálnı́ koeficienty) docházelo občas ke vzniku chyb a špatné klasifikaci slov, byl navržen systém [1, 2, 10], kdy se využı́vá vı́ce různých vstupnı́ch charakteristik řeči. Tı́m jsou promluvy hodnoceny z vı́ce fonologických aspektů a dojde k eliminaci chyb. Nejprve jsou všechny promluvy (pro konkrétnı́ testované slovo, např.: mateřı́douška) od zdravých dětı́ porovnány pomocı́ algoritmu DTW navzájem a je vypočı́tána průměrná akumulovaná vzdálenost každého slova zdravého dı́těte ode všech ostatnı́ch. Následně jsou porovnány promluvy nemocných dětı́ (nebo obecněji nové testované promluvy) s promluvami zdravých (již dřı́ve zpracovaných a uložených v referenčnı́ databázi) a opět je vypočı́tána průměrná vzdálenost promluv nemocných dětı́ ode všech zdravých. Tyto výpočty jsou provedeny pro všechny využité parametrizace. Aby bylo možné výsledky spojit dohromady, je nutné provést pro každou parametrizaci normovánı́ vzdálenostı́ (maximálnı́ hodnota pro zdravé děti je rovna jedné) a výsledky je možné sečı́st přes všechny parametrizace, tı́m dojde při správné funkci algoritmu ke spolehlivějšı́mu a výraznějšı́mu oddělenı́ promluv nemocných dětı́. 2.1. Vybrané řečové charakteristiky - počet průchodů nulou - logaritmus energie - logaritmus energie chyby predikce - prvnı́ koeficient lineárnı́ predikce - prvnı́ kepstrálnı́ koeficient - druhý kepstrálnı́ koeficient - jedenáct kepstrálnı́ch koeficientů - koeficienty odrazu - dvanáct koeficientů lineárnı́ predikce - melovské spektrálnı́ koeficienty - logaritmované melovské spektrálnı́ koeficienty - melovské kepstrálnı́ koeficienty - spektrálnı́ PLP koeficienty - (kepstrálnı́) PLP koeficienty - spektrálnı́ PLP-RASTA koeficienty - (kepstrálnı́) PLP-RASTA koeficienty 86 2.2. Petr Zlatník Optimalizace DTW algoritmu Aby DTW algoritmus co nejlépe odděloval promluvy nemocných dětı́ od zdravých, byly provedeny pokusy o jeho optimalizaci. Jedny z prvnı́ch pokusů, které byly prováděny, bylo normovánı́ všech promluv jak od zdravých, tak i od nemocných dětı́ na stejný počet segmentů pomocı́ vztahů v [9], (7.267.29). Dále bylo zkoušeno vyhlazovánı́ a určité typy normalizace parametrizovaných hodnot signálu [9] (7.62-7.67). Ukázalo se, že tyto kroky jsou pro naše účely nevhodné, nebot’ byly určeny pro zlepšenı́ vlastnostı́ algoritmu pro účely rozpoznávánı́ slov, ale v našı́ aplikaci smazávajı́ rozdı́ly mezi promluvami od zdravých a nemocných dětı́, čı́mž se výsledky zhoršujı́. Při realizaci DTW algoritmu je možno volit různé funkce průchodu maticı́ vzdálenostı́ [9]. Experimentálně bylo ověřeno, že nejlepšı́ch výsledků bylo dosaženo pro směr průchodu definovaný následujı́cı́ rovnicı́. g(i − 1, j) + d(i, j) g(i, j − 1) + d(i, j) g(i, j) = g(i − 1, j − 1) + d(i, j) (1) Kde i = 1, 2, ..., I, j = 1, 2, ..., J, I a J jsou počty segmentů prvnı́ a druhé promluvy, které se porovnávajı́, d(i, j) je lokálnı́ hodnota euklidovské vzdálenosti pro aktuálnı́ indexy i a j. Celkovou vzdálenost obou slov udává pak hodnota g(I, J), která bývá dělena hodnotou (I + J) [9], při využitı́ DTW jako rozpoznávače slov. Protože v naprosté většině promluv nemocných dětı́ docházı́ jednak k záměně, ale hlavně k prodlužovánı́ hlásek i promluv, je vhodné vynechat dělenı́ g(I, J) hodnotou (I +J), čı́mž se zlepšı́ odstup promluv nemocných dětı́ od zdravých, což je dalšı́ krok při optimalizaci DTW. Problém může nastat tehdy, když nemocné dı́tě promluvu výrazně zkrátı́ oproti zdravým (např.: mı́sto slova ”mateřı́douška” je řečeno slovo ”matouška” a podobně). Zde se potom akumulovaná vzdálenost snı́žı́ až k nejvyššı́m hodnotám zdravých dětı́ a slovo je obtı́žně klasifikováno. Daná situace bude dále testována, budou se hledat parametrizace, které jsou na zkrácenı́ slova méně citlivé. Je vhodné počı́tat celkové akumulované vzdálenosti součtem hodnot z několika různých vyslovených slov dětı́, čı́mž se zvýraznı́ odstup nemocných od zdravých a tento problém se potlačı́. Dále je vhodné testy provádět pro vı́ce slabičná slova, protože některé nemocné děti vyslovujı́ jedno a dvouslabičná slova téměř jako zdravé. 3. 3.1. Experimentálnı́ výsledky Vliv parametrizacı́ na úspěšnost klasifikace DTW algoritmus byl nastaven podle popisu v předchozı́m odstavci. Jednotlivé parametrizace byly vyhodnocovány pro různá slova a byly prováděny testy, jak dobře oddělujı́ promluvy nemocných dětı́ od zdravých. Lze řı́ci, že jako nejpřesnějšı́ se jevı́ kepstrálnı́ PLP a PLP-RASTA koeficienty, popřı́padě velmi dobře pracujı́ koeficienty FBANK. Tento závěr vyplývá i z pokusů, které naznačujı́, že ostatnı́ parametrizace řadı́ promluvy od zdravých dětı́ k hranici nemocných, pokud některé zdravé dı́tě má chraptivý a zastřený hlas. Tento závěr odpovı́dá teoretickým předpokladům, protože PLP a PLP-RASTA koeficienty byly navrženy s ohledem na potlačenı́ rozdı́lů mezi mluvčı́mi pro zvýšenı́ úspěšnosti rozpoznánı́ řeči. Petr Zlatník 87 Ukázka výsledků pro slovo ”mateřı́douška” je na obrázku 1, kde jsou vyneseny vzdálenosti pro 18 nemocných dětı́ (bı́lý průběh) a pro 6 nemocných (černý průběh), hornı́ část obrázku je pro normovaný součet přes všech 16 parametrizacı́, dolnı́ část je jen pro 3 parametrizace FBANK, PLP a PLP-RASTA koeficienty. Z obrázku je vidět, že docházı́ skutečně ke smazávánı́ rozdı́lů mezi zdravými dětmi, algoritmus je méně citlivý na mluvčı́ho. Obrázek 1: Výsledek klasifikace slova ”mateřı́douška” pro všech 16 parametrizacı́ (hornı́ část) a pro 3 parametrizace FBANK, PLP a PLP-RASTA (dolnı́ část), černé průběhy reprezentujı́ nemocné děti 3.2. Vliv počtu slabik slov na klasifikaci Protože jsou jednotlivé nemocné děti různě postižené, docházı́ k tomu, že některé z nich napřı́klad třı́slabičná slova vyslovujı́ správně a až od čtyř nebo pěti slabičných slov začı́najı́ mı́t problémy, popřı́padě nevyslovı́ až delšı́ věty. Naopak, některé děti nevyslovı́ již třı́slabičná slova. Proto bylo provedeno porovnánı́ promluv od jednotlivých samohlásek, souhlásek, přes dvou, třı́, čtyř a pěti-slabičná slova. Výsledek je na obrázku 2 a byl vygenerován následujı́cı́m způsobem. Bylo klasifikováno šest různých nemocných dětı́ a porovnánı́ bylo provedeno s osmnácti zdravými přes všechny parametrizace. Nejprve se klasifikovaly samohlásky a, e, i, o, u, a došlo se k sumám průměrných normovaných akumulovaných vzdálenostı́, ty byly následně sečteny. Postup je proveden dále pro souhlásky, jedno, dvou, třı́, čtyř a pěti-slabičná slova a je provedeno dalšı́ normovánı́ všech průběhů na hodnotu 1 k maximálnı́ hodnotě zdravých dětı́ pro všech sedm průběhů. Z obrázku je vidět, že od třı́slabičných slov docházı́ k výraznějšı́mu odstupu většiny nemocných dětı́ od zdravých. K malému odstupu docházı́ u některých nemocných dětı́ již u samohlásek. Je to dáno tı́m, že je občas nezřetelně vyslovujı́ nebo prodlužujı́. Hodnoty vzdálenostı́ z obrázku 2 jsou dále uvedeny v tabulce 1, kde jsou uvedeny jak pro zdravé tak i pro nemocné děti střednı́ hodnoty (mean), směrodatné odchylky (std), minimálnı́ hodnoty (min) a maximálnı́ hodnoty (max) normovaných průměrných hodnot celkových akumulovaných vzdálenostı́. Z tabulky je vidět, že všechny nemocné děti jsou spolehlivě klasifikovány od třı́slabičných slov, hodnota min je vždy většı́ než jedna. 88 Petr Zlatník Obrázek 2: Normované výsledky porovnánı́ pro samohlásky, souhlásky, jedno, dvou, třı́, čtyř a pěti-slabičná slova, černé průběhy reprezentujı́ nemocné děti samohlásky souhlásky jednoslabičná dvouslabičná třı́slabičná čtyřslabičná pěti-slabičná ZDRAVÉ mean std min max 0,82 0,07 0,74 1,00 0,70 0,10 0,58 1,00 0,75 0,09 0,66 1,00 0,85 0,07 0,74 1,00 0,84 0,08 0,75 1,00 0,92 0,05 0,84 1,00 0,94 0,04 0,88 1,00 NEMOCNÉ mean std min 1,02 0,07 0,91 1,00 0,11 0,85 1,04 0,14 0,80 1,12 0,17 0,90 1,34 0,23 1,07 1,54 0,36 1,11 1,72 0,31 1,22 max 1,09 1,18 1,17 1,32 1,67 2,00 1,96 Tabulka 1: Tabulka střednı́ch hodnot (mean), směrodatných odchylek (std), minimálnı́ch (min) a maximálnı́ch (max) hodnot normovaných celkových akumulovaných vzdálenostı́. 3.3. Posouzenı́ vývoje léčby nemocného dı́těte Na obrázku 3 je posouzenı́ vývoje léčby jednoho dı́těte po čtyřech měsı́cı́ch léčby, výsledek byl dosažen součtem a normovánı́m výsledků klasifikace z pěti obtı́žných slov na výslovnost: motovidlo, popelnice, televize, různobarevný a mateřı́douška. Je vidět, že stav dı́těte se zlepšil. Výsledek klasifikace odpovı́dá hodnocenı́m lékařů a psychologů. Obrázek 3: Pokles vzdálenostı́ při úspěšné léčbě dı́těte Petr Zlatník 4. 89 Závěr V práci je popsán algoritmus pro vyhodnocovánı́ promluv dětı́ s vývojovou dysfáziı́, popřı́padě afáziı́ s popisem vhodných parametrizacı́ a modifikace DTW algoritmu pro tyto účely. Dosavadnı́ experimenty naznačujı́ možnost využitı́ metody pro objektivnı́ posouzenı́ nemoci a hodnocenı́ jejı́ho vývoje. Dalšı́ práce budou zaměřeny na testovánı́ algoritmu a vlivu jednotlivých parametrizacı́ na rozšı́řenějšı́ch databázı́ch promluv, bude vyhodnocen vliv šumu na úspěšnost klasifikace. 5. Poděkovánı́ Práce je podporována granty GA ČR - 102/03/H085 ”Modelovánı́ biologických a řečových signálu”, IGA MZ ČR - NR 8287-3/2005 ”Počı́tačová analýza řečového projevu a celonočnı́ch EEG záznamu u dětı́” a MŠM6840770012 ”Transdisciplinárnı́ výzkum v biomedicı́nském inženýrstvı́ 2”. Reference [1] Čmejla R.: Vyhodnocovánı́ výslovnosti s využitı́m DTW algoritmu. Výzkumná zpráva LK01/2005, K13131, FEL ČVUT, Praha, srpen, 2005. [2] Zlatnı́k P., Čmejla R.: Application of the DTW algorithm for disordered speech evaluation. Digital Technologies ’05. University of Žilina, 2005, Slovak Republic. [3] Rabiner L., Juang P.: Fundamental of speech recognition. Prentice Hall, U.S.A., 1984. [4] Young S., et al.: The HTK Book. Version 3.2.1, Cambridge 2002, England. [5] ETSI.: European Telecommunications Standards Institute Nov. 2003, ETSI Standard, ETSI ES 202212, Version 1.1.1 France. [6] Harrington J., Cassidy S.: Techniques in speech acoustics. Kluwer Academic Publishers 1999, Netherlands. [7] Deller J. R., Hansen J. H. L., Proakis J. G.: Discrete-time processing of speech signals. IEEE Press 2000, U.S.A.. [8] Hermansky H., Morgan N.: Rasta processing of speech. IEEE Transaction on Speech and Audio Processing, Vol. 2, No. 4, pp. 587-589, October 1994, U.S.A. [9] Psutka J.: Komunikace s počı́tačem mluvenou řečı́. Academia Praha, 1995, printed by CENTA, spol. s. r. o., Veveřı́ 39, Brno. [10] Zlatnı́k P., Čmejla R.: Disordered Speech Evaluation Using the DTW Algorithm. Analysis of biomedical signals and images, ISSN 1211-412X, Biosignal 2006, Brno.