analýza a zpracování řečových a biologických
Transkript
analýza a zpracování řečových a biologických
Č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Í 2009 Editoři sborníku Doc. Ing. Petr Pollák, CSc. Doc. Ing. Roman Čmejla, CSc. Prosinec 2009 ANALÝZA A ZPRACOVÁNÍ ŘEČOVÝCH A BIOLOGICKÝCH SIGNÁLŮ SBORNÍK PRACÍ 2009 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. Pavel Sovka, CSc. http://noel.feld.cvut.cz/speechlab - Laboratoř zpracování řeči http://amber.feld.cvut.cz/bio - LaBiS - Laboratoř biologických signálů Foniatrická klinika 1.LF UK a VFN http://fonja.lf1.cuni.cz vedoucí: Doc. MUDr. Olga Dlouhá, CSc. Poděkování: Tato publikace vznikla za podpory grantu GAČR 102/08/0707 „Rozpoznávání mluvené řeči v reálných podmínkáchÿ, GAČR 102/08/H008 „Analýza a modelování biomedicínský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 2009. ISBN: 978-80-01-04474-2 Ediční poznámka Předložený sborník je souhrnem prací realizovaných doktorandy katedry teorie obvodů v oblasti číslicového zpracování signálů a aplikačním zaměřením na zpracování biomedicínských a řečových signálů a navazuje na sborníky vydávané od roku 2005. 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. V Praze 23. listopadu 2009 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 pokračuje v tradici katedry teorie obvodů, kdy 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, obsahuje vybrané prezentace roku 2009 zaměrené 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 a často kritické diskuse slouží dokorandům i jejich školitelům ke tříbení myšlenek a nápadů. 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 http://amber.feld.cvut.cz/bio/ V Praze dne 25.11.2009 Prof. Ing. Pavel Sovka, CSc. vedoucí katedry Obsah Jan Bartošek: Prozodie, zjištění a využití základního tónu v rozpoznávání řeči 1 Marek Bártů: Možnosti využití algoritmů nelineární aproximace pro parametrizaci řečových signálů 9 Petr Bergl: Parametry zkoumající pravidelnost energie a znělosti řečového signálu neplynulých promluv 16 Václav Bolom: Zvýrazňování řeči v osobním automobilu 22 Tomáš Bořil: Grangerova kauzalita a EEG 30 Jaromír Doležal: BCI založený na manifestaci pohybové aktivity v EEG II 38 Jan Janda: Studie věkově závislých akustických parametrů v dětské řeči 44 Robert Krejčí: Optimalizace výpočetně náročné části rozpoznávače řeči se zaměřením na hardwarovou platformu OMAP 50 Ondřej Kučera: Mechanické oscilace buněk 58 Martina Nejepsova: Multimediální slabikář 62 Josef Rajnoha: Robustní rozpoznávání spojitých promluv kombinující metody potlačování šumu a průběžnou adaptaci akustických modelů na prostředí 70 Jan Rusz: Hodnocení rytmu v raném neléčeném stádiu Parkinsonovy nemoci 77 Adam Stráník: Návrh frameworku pro zpracování signálů v reálném čase v prostředí .NET 82 Barbora Vokáčová: Stimulace zpracování řečových signálů u dětí s vývojovou dysfázií pomocí arteterapeutických technik a strategií 90 Petr Zetocha: Zpřístupnění strukturované databáze dětských promluv 95 Jan Bartošek 1 Prozodie, zjištěnı́ a využitı́ základnı́ho tónu v rozpoznávánı́ řeči Jan Bartošek České vysoké učenı́ technické v Praze, Fakulta elektrotechnická [email protected] Abstrakt: Přı́spěvek přinášı́ prvotnı́ přiblı́ženı́ práce na rámcovém disertačnı́m tématu ”Využitı́ prozodie v rozpoznávánı́ souvislé řeči”. Nejprve je definována prozodie jako informačnı́ doplněk každého typu řeči a dále jsou představeny hlavnı́ prozodické rysy a funkce ve smyslu lingvistiky (a zejména češtiny). Následně je diskutováno možné využitı́ prozodie ve strojovém rozpoznávánı́ souvislé řeči. Dalšı́ kapitola se zabývá metodami pro detekci základnı́ frekvence (f0) řečového signálu, která je hlavnı́m nositelem intonačnı́ informace promluvy. Nakonec jsou zmı́něny cı́le práce jak krátkodobého, tak dlouhodobého charakteru. 1. Úvod Rozpoznávače souvislé řeči s neomezenou doménou (uživatelova promluva může sestávat ze všech slov daného jazyka) založené na klasických přı́stupech (skryté Markovovy modely pro vyhodnocenı́ akustické podobnosti s promluvou) dosahujı́ v dnešnı́ době pomyslného stropu v úspěšnosti rozpoznánı́. Tohoto stropu nemusı́ však být vůbec dosaženo, pokud vstupnı́ signál nedosahuje odpovı́dajı́cı́ch parametrů - např. co do poměru úrovnı́ signálu a šumu. Jednou z možnostı́, jak ale takový pomyslný strop zvýšit, může být využitı́ přı́davných informacı́ v promluvě, se kterými současné “standardnı́“ rozpoznávače nepracujı́. Takovými přı́davnými informacemi mohou být napřı́klad intonace (časový průběh f0) promluvy či přı́zvuk. Obecně se tyto (a některé dalšı́, jak uvidı́me posléze) jevy označujı́ jako prozodie. Cı́lem tohoto přı́spěvku je představit čtenáři prozodické rysy a funkce, které by mohly najı́t uplatněnı́ v reálných rozpoznávačı́ch souvislé řeči. To by mohlo vést napřı́klad k inteligenci diktovacı́ho stroje, který by kromě přepisu řečnı́kovy promluvy na text správně doplňoval i interpunkčnı́ značky, ke kterým by dospěl z průběhu jeho intonace. Zároveň si také dokážeme představit ”rádce” rozpoznávače, který by pro akusticky velmi podobně znějı́cı́ hypotézy dokázal přiřadit každé z nich pravděpodobnost existence na základě prozodické informace, a tak navedl rozpoznávač ke správnému výsledku. 2. Prozodie Tato kapitola přinášı́ v prvnı́ části definici slova spolu s vytyčenı́m názvoslovı́ prozodických rysů a funkcı́. Hlavnı́mi prozodickými funkcemi se zabývá druhá část a možné využitı́ prozodie v reálných řečových technologiı́ch je diskutováno v části třetı́. 2 Jan Bartošek 2.1. Co je to prozodie Slovo prozodie nese v současné době dva různé, avšak ne až tak nesouvislé významy. Prvnı́m významem je prozodie jako nauka o rytmičnosti řeči a skládánı́ veršů. Touto uměleckou oblastı́ se již dále zabývat nebudeme, za to se o to vı́ce pozastavı́me u prozodie jako obecného výrazu pro informačnı́ doplněk každého typu řeči. Svou prozodickou informaci opravdu nese každá řeč, tedy napřı́klad i řeč znaková, kdy je prozodie vyjádřena mohutnostı́ gestikulace (vlastnı́ definovaná gesta jsou jen jazykem, kterému každý z gestikulujı́cı́ch dodá pomocı́ prosodie svůj osobitý charakter). Nás ovšem bude zajı́mat oblast lingvistiky, kde prozodie popisuje fonologické přı́znaky jazyka, které se uplatňujı́ úrovni vyššı́ než jednotlivý foném (hláska, segment) a souhrnně se hovořı́ o tzv. ”suprasegmentálnı́ch jevech” (rysech prozodie). Zároveň je třeba rozlišovat mezi funkcemi prozodie (co způsobuje, k čemu je dobrá) a prozodickými formami (rysy - co ji tvořı́). Funkcı́ prozodie je tedy dávat posluchači informace, které nejsou obsaženy v pouhé kombinaci jazykových segmentů. Prozodie tak může může sloužit k: • vyjádřenı́ postoje a momentálnı́ho emotivnı́ho rozpoloženı́ mluvčı́ho • určenı́, jestli je promluva oznámenı́, otázka či přı́kaz • zdůrazněnı́ části promluvy nebo významový kontrast • určenı́, zda-li je mluvčı́ ironický či sarkastický Dvě obecně definované funkce prozodie jsou ”chunking” (nepřekládáno) a přı́zvuk (focus). Obě tyto prozodické funkce budou podrobněji rozvedeny dále. Prozodické formy (rysy, elementy) jsou naopak stavebnı́mi kameny prozodie a jak již bylo uvedeno výše, souhrnně se hovořı́ o tzv. ”suprasegmentálnı́ch jevech” odvozených z akustických charakteristik promluvy. Jedná se o tyto prvky: • intonace (melodie) - výška základnı́ho tónu (f0, pitch) • frázovánı́, rytmus, mluvnı́ tempo • intenzita, hlasitost (řev vs. šepot, zvyšujı́cı́ se hlasitost, ...) • důraz, přı́zvuk (z anglického stress) Terminologie je v tomto přı́padě poměrně nejednotná a to i v anglickém jazyce. Slova důraz a přı́zvuk v češtině významově splývajı́, avšak v anglicky psané literatuře jsou často odlišovány “stress” a “focus”. Přı́zvuk jako prozodický rys zde splývá s funkcı́ zdůrazněnı́ části promluvy, je totiž budován na komplexu prozodických vlastnostı́ řeči a realizován současně jak pomocı́ změn dynamiky (tento jev označme jako důrazový přı́zvuk), tak výšky hlasu (intonačnı́ přı́zvuk). Četnost použı́vánı́ obou typů přı́zvuků se v různých jazycı́ch lišı́. Ani jeden z nich nemá např. Kambodžština, u většiny jazyků převládá přı́zvuk důrazový (platı́ i pro češtinu). Kromě hlavnı́ho přı́zvuku obvykle existuje v promluvě i přı́zvuk vedlejšı́ (na předposlednı́ slabice je běžný např. v nářečı́ch severu Moravy). 2.2. Funkce prozodie Kombinacı́ prozodických rysů vznikajı́ dvě poměrně přesně definované prozodické funkce - chunking a přı́zvuk. Jan Bartošek 2.2.1. 3 Chunking Chunking je termı́n pro rozdělenı́ řeči na úseky (chunks) tak, že každý takový úsek znı́ celistvě. Pro rozdělenı́ se využı́vá krátkých pauz mezi slovy a vzniklé prozodické úseky jsou také známy jako informačnı́ jednotky, tónové jednotky či intonačnı́ fráze. Lepšı́ představu lze navodit dvěma přı́klady: 1. Přı́klad - délka pauzy má vliv na zápis promluvy • ”byla tažena čı́sla: 20, 8 a 5” x ”byla tažena čı́sla: 28 a 5” • stěžejnı́ např. pro souslovı́ v AJ - ”cofee-cake” x ”cofee, cake” • v češtině typicky problém telefonnı́ch čı́sel: tel. čı́slo ”200 30 5” x ”235” 2. Přı́klad - může indikovat také rozsah působnosti adjektiva - jestli je aplikováno pouze na následné podstatné jméno nebo na vı́ce následujı́cı́ch: • ”Komornı́ sbor a orchestr” Pokud chceme přı́davné jméno vztáhnout pouze na slovo sbor, pak za tı́mto slovem děláme delšı́ pauzu spolu s rostoucı́ intonacı́. Pokud naopak chceme vyjádřit působnost přı́davného jména jak na sbor, tak na orchestr, pak pauza mezi oběma podstatnými jmény bude mnohem menšı́ a intonačně nebude slovo sbor nikterak z promluvy vyčnı́vat. 2.2.2. Hledánı́ přı́zvuků (focus) Přı́zvukem jsou obvykle odlišeny ty části promluvy, které jsou pro sdělenı́ významově nejdůležitějšı́. Nejednotnost názvoslovı́ již byla zmı́něna výše, v anglické literatuře lze přı́zvuk najı́t napřı́klad pod hesly focus, accent, nucleus, stress, emphasis... Přı́zvuk je v promluvě význačný, což znamená, že akusticky vyčnı́vá ze zbytku promluvy (energie pro důrazový přı́zvuk, pitch pro přı́zvuk intonačnı́). Důležitost přı́zvuku pro změnu smyslu promluvy si opět ukážeme na přı́kladech: 1. Přı́klad: • ”Chci sušenku a čokoládu.” Zdůrazněnı́m vždy jednoho ze slov (kromě prvnı́ho) oproti zbytku promluvy vede ke větám se zcela odlišným významem, kdy jednou chceme hlavně sušenku, podruhé obě dvě věci najednou a naposledy žádáme čokoládu a nikoliv něco jiného. 2. Přı́klad - odlišné umı́stěnı́ hranice mezi ”přı́zvukovými takty” • ”světlo vnı́majı́” x ”světlo v nı́ majı́” • ”proti vnějšı́m” x ”protivnějšı́m” 4 Jan Bartošek 2.3. Využitı́ prozodie v řečových technologiı́ch Mnoho studiı́ publikovaných již v minulém stoletı́ poukázalo na to, že prozodická informace může hrát pro strojové zpracovánı́ souvislé řeči významnou roli. V rozpoznávánı́ souvislé řeči nám může prozodie pomoci při řešenı́ následujı́cı́ch úloh: • f0 tracking pro doplněnı́ interpunkce ( ? . , ! ) • hledánı́ samostatných ”funkčnı́ch bloku” ve větě (chunking) • hledánı́ přı́zvuků v promluvě • dı́ky rysům vyextrahovaným z promluvy lze napřı́klad přiřadit různé pravděpodobnosti jednotlivým hypotézám rozpoznávače Dále nám prozodie může pomoci při detekci emocı́ mluvčı́ho, které se z hlediska signálu projevujı́ převážně ve vyššı́ch formantových kmitočtech. Teoreticky je aplikace prozodie v této oblasti možná, jako přı́klad uved’me systém pro hodnocenı́ spokojenosti zákaznı́ků callcentra. Oblast rozpoznánı́ emocı́ však nenı́ předmětem práce a dále se jı́ zabývat nebudeme. Poslednı́ oblastı́, kde je prozodie již mnoho let využı́vána, jsou systémy Text To Speech (TTS), kde sloužı́ zejména k modelovánı́ přirozeného průběhu základnı́ frekvence. Existuje mnoho metod, jak tyto intonačnı́ modely tvořit a aplikovat, avšak ani touto oblastı́ se práce dále zabývat nebude. 3. Detekce f0 se zaměřenı́m na lidskou řeč Detekce základnı́ frekvence signálu je úloha, jejı́mž řešenı́m se vědci zabývajı́ zhruba již od poloviny 20. stoletı́. Za tuto dobu bylo nalezeno několik fungujı́cı́ch metod pro konkrétnı́ aplikačnı́ oblasti, stále se však nedařı́ najı́t takovou, která by byla dostatečně univerzálně použitelná. Při řešenı́ problému detekce f0 řečového signálu vystačı́me z fyzikálnı́ podstaty řeči s metodami spadajı́cı́mi do třı́dy SPE (Single Pitch Estimation), která je obecně mnohem jednoduššı́ než třı́da MPE (Multi Pitch Estimation). Proto všechny metody, kterými se budeme dále zabývat, spadajı́ do prvnı́ kategorie. Omezený přehled několika v praxi použitelných metod přinášı́ napřı́klad v monografii [6]. 3.1. Vlastnosti lidské řeči Lidská řeč má z hlediska zpracovánı́ signálů jisté obecně známé vlastnosti. Jejı́ frekvenčnı́ rozsah se pohybuje v rozmezı́ 60-600 Hz (na rozdı́l od zpěvového signálu, kde je hlavně hornı́ hranice u opernı́ch sopranistek posunuta až k 1kHz) [5]. Z hlediska prozodie je podstatné, že frekvenčnı́ rozsah jedné promluvy obvykle nepřesahuje interval kvinty (cca 6-7 půltónů, konkrétnı́ hodnota se samozřejmě lišı́ jak podle národnosti, tak podle konkrétnı́ho mluvčı́ho). Pro následnou práci s intonačnı́mi průběhy budeme vždy užı́vat logaritmický převod detekovaných frekvencı́ na půltóny (a centy), což způsobı́ linearizaci frekvenčnı́ osy. Jan Bartošek 3.2. 5 Prozatı́m implementovaná metoda - autokorelace ve frekvenčnı́ oblasti Metoda je založena na autokorelačnı́ funkci z frekvenčnı́ oblasti, která je dána WienerChinchinovým vztahem: ACF (n) = if f t{[abs(f f t(x(k)))]2 } 3.2.1. Aplikace na zpěvový signál Metoda byla implementována s těmito parametry - segmentace po 512 vzorcı́ch váhovaná Hammingovým oknem, 50% překryv oken, práh normalizované ACF empiricky stanoven na hodnotu 0.76 a vyhlazenı́ výsledků 5-bodovým median filtrem. Implementace v jazyce C byla užita v [2] pro online hodnocenı́ úspěšnosti zpěvu, kde podala velmi dobré výsledky. Frekvenčnı́ rozlišovacı́ schopnost algoritmu roste s rostoucı́ vzorkovacı́ frekvencı́ (FS), naopak rozlišenı́ klesá pro s rostoucı́mi detekovanými frekvencemi. Pro FS=11025Hz a oblast kolem 200Hz dosahuje metoda přesnosti přibližně třetiny půltónu. Frekvenčnı́ rozlišenı́ by se dalo samozřejmě měnit i pomocı́ velikosti okna, avšak na úkor rozlišenı́ časového. 3.2.2. Aplikace metody na řeč Frekvenčnı́ rozlišenı́ metody pro zpěv teoreticky dostačuje i pro řeč. Avšak jako bylo experimentálně zjištěno, metoda téměř nefunguje na testovacı́ podmnožině dat z databáze SPEECON (sada promluv Office Spontaneous). Drobného zlepšenı́ metody lze dosáhnout snı́ženı́m prahu normalizované ACF, ale i tak nedostačuje. Oproti zpěvu jsou v řeči mnohem kratšı́ úseky znělých hlásek, i nižšı́ energie signálu, což vede na obtı́žnějšı́ úlohu. Je proto třeba najı́t takové algoritmy, které dokážı́ najı́t f0 třeba jen ze dvou period signálu, což pravděpodobně povede na zkoumánı́ přı́mo průběh časový waveformu a metody pracujı́cı́ v časové oblasti. 3.3. 3.3.1. Dalšı́ metody řešı́cı́ detekci f0 AMDF - average magnitude difference function Metoda pracuje v časové oblasti, definována takto: ψ(τ ) = −1 1 NX |x(n) − x(n + τ )| N n=0 Na prvnı́ pohled je zřejmá nápadná podobnost s autokorelacı́ (ACF) v časové oblasti. Oproti nı́ je ale metoda méně výpočetně náročná, protože součet je výpočetně méně náročný než součin (u ACF). Na rozdı́l od nı́ se hledaná frekvence projevı́ jako minimum výsledné funkce. Metoda je náchylná na detekci násobků základnı́ frekvence (nejčastěji 2x, 1/2x), proto bývá ”vhodně” doplněna, napřı́klad kepstrálnı́ metodou. 3.3.2. Kepstrálnı́ metoda Tato metoda je pro detekci f0 poměrně rozšı́řená. Jednı́m z možných pohledů je analogie s autokorelacı́ z frekvenčnı́ oblasti, pouze kvadrát je zaměněn za logaritmus. Obě metody pro detekci f0 využı́vajı́ obsahu vyššı́ch harmonických složek (a tı́m jisté periodicity) ve spektru, viz obrázek 1. Výsledný vztah je tedy: c(n) = abs(if f t{log(abs(f f t{x(n)}))}) 6 Jan Bartošek Obrázek 1: Spectrum (a) vs. cepstrum (b), špička na hodnotě T sekund odpovı́dá F0 Obrázek 2: Blokové schéma kombinované metody AMDF a ACF, převzato z [1] 3.3.3. Kombinovaná metoda - AMDF a ACF Pokročilá metoda [1] využı́vajı́cı́ k detekci výsledné f0 jak časovou ACF, tak AMDF. Využı́vá se komplementarita obou funkcı́ a výsledná metoda je tak odolná proti šumu. Pro výstup každého ze vzájemně se překrývajı́cı́ch se pásmových propustı́ jsou spočteny obě funkce. Ty jsou poté pomocı́ operacı́ součtů a součinů zkombinovány tak,aby se zvýraznili vhodnı́ kandidáty f0 a naopak potlačili kandidáti nechtěnı́. Nakonec jsou sofistikovaným algoritmem přiřazeny kandidátům váhy a ten s největšı́ váhou je prohlášen za reprezentanta f0 pro daný úsek signálu. Celý blokový diagram je znázorněn na ilustraci 2. Robustnost metody byla podle [1] ověřena v různých prostředı́ch. 3.3.4. Real-time time domain pitch tracking using wavelets Jde o poměrně novou metodu pracujı́cı́ v časové oblasti zpracovánı́ signálu [4]. Metoda použı́vá Fast Lifting Wavelet Transform (FLWT). Vlnková transformace rozseká původnı́ signál na množinu různě škálovaných a posunutých mateřských vlnek, zde je jako mateřská použita Haarova vlnka, jejı́ž rovnice je: t−τ 1 ) ψs,τ (t) = q ψ( s |s| Metoda klade důraz na nı́zkou latenci (25 ms), odolnost vůči šumu (až do SNR 20–25 dB) a přesnost rozpoznánı́ - RMS chyba pod 2 centy (1/50 půltónu) na sinusovém signálu přes 4 oktávy. Dále je vhodná pro rozlišenı́ znělých a neznělých úseků. Metoda má poměrně složitý matematický popis, avšak existuje podpůrná matematická knihovna LIFTpack [3] implementujı́cı́ FLWT, přičemž udávaná časová složitost FLWT je N (lineárnı́) oproti FFT složitosti N(log(N)). Jan Bartošek 4. 7 Cı́le 4.1. Krátkodobé cı́le Prvnı́m cı́lem v časově krátkém horizontu je naimplementovat a otestovat předchozı́ metody a najı́t obecně použitelnou metodu i s ohledem na robustnost, přičemž se může stát, že finálnı́ f0 budeme počı́tat z kombinace výsledků vı́ce parciálně vhodných metod. Druhým krátkodobým cı́lem navazujı́cı́m na cı́l předchozı́ je implementovat ”modul” do experimentálnı́ho rozpoznávače souvislé češtiny (řešitel V.Hanžl). Modulem se v tomto přı́padě myslı́ konzolový program dostávajı́cı́ na standardnı́m vstupu vzorky signálu s dohodnutými parametry, na výstupu napřı́klad textový soubor s detekovanými frekvencemi. Pravděpodobně nebude potřeba navrhnout systém pro vyhodnocenı́ úspěšnosti metody detekce f0 na testovacı́ch datech, protože očekáváme, že vhodnou metodu se podařı́ implementovat poměrně brzy, přesto tato úloha nenı́ zcela zcestná. Obecně však nenı́ podle čeho rozhodnout skutečnou f0, metody lze jen porovnávat mezi sebou. Úloha by však mohla dostat nový rozměr, pokud by byla k dispozici referenčnı́ databáze promluv včetně jejich průběhů f0. 4.2. 4.2.1. Dlouhodobé cı́le Implementace interpunkčnı́ho detektoru pro diktovacı́ systém Pro problém indikace interpunkce diktovacı́ho systému existujı́ 2 přı́stupy diktovánı́ přirozené (uživatel nevı́, že se prozodická informace použı́vá pro detekci interpunkce, intonuje jako při běžné promluvě) a naučené (s online odezvou - uživatel je vystaven výsledku, změnı́ svou prozodii tak, aby měl systém většı́ úspěšnost detekce interpunkce). V tuto chvı́li nenı́ jasné, jaký aparát bude vhodné použit pro klasifikaci interpunkce z průběhu f0, to bude předmětem dalšı́ho výzkumu. Prozatı́m jsou teoreticky uvažovány následujı́cı́ možnosti: • hledat v čase v kombinaci s pauzami povědomé vzestupy či sestupy v průběhu f0 • použı́t klasifikátor na úseky, napřı́klad pomocı́ umělých neuronových sı́tı́ (ANN) natrénovat sı́t’ na úsecı́ch interpunkčně oanotovaných promluv • hledat v průběhu f0 známé nebo jim podobné tvary (vzı́t v potaz změnu měřı́tka v obou osách) 4.2.2. Implementace ”rádce pro výběr vhodné hypotézy” Úloha může být definována takto: Z rozpoznávače souvislé řeči obdržı́me mezivýsledek rozpoznánı́ - možné hypotézy odpovı́dajı́cı́ dané promluvě. Našı́m cı́lem je ohodnotit jejich pravděpodobnost existence z hlediska prosodie. Výstup rozpoznávače s hypotézami bude grafová (mřı́žková) struktura podobná či totožná s HTK Standard Lettice Format (SLF). Problém si pojd’me přiblı́žit na přı́kladu. Do rozpoznávače vstupujı́ promluvy ”A tak se na konec připravili dobře.“ a ”A tak se nakonec připravili dobře.“ Jejich časové průběhy signálů budou téměř identické a možná grafická reprezentace grafové struktury hypotéz rozpoznávače je uvedena na obrázku 3. Našı́m cı́lem bude tedy pro takovou z hlediska rozpoznávače nejendoznačnou promluvu stanovit pravděpodobnost, která bude charakterizovat existenci takové hypotézy podle vstupnı́ promluvy z hlediska prozodické informace. Úloha pravděpodobně povede na hledánı́ 8 Jan Bartošek Obrázek 3: Grafická reprezentace grafové struktury hypotéz rozpoznávače ”rytmických jednotek” spjatých s intonacı́. Na této dvojici parametrů se budeme snažit vystavět statistický model. Jsem obeznámen s možným problémem při detekci přı́zvuků, kdy podle [7] v jazycı́ch se slabým přı́zvukem, jako je např. čeština, je rozdı́l přı́zvučné a nepřı́zvučné slabiky při akustické analýze nevýznamný. Bude-li tedy vůbec úloha řešitelná, pak takový `rádce ı stejně nebude klı́čovým bodem rozpoznávače, ale mohl by vylepšit jeho úspěšnost v řádu jednotek procent. 5. Závěr Byla představena prozodie jako prostředek promluvy využitelný v rozpoznávačı́ch souvislé řeči, toto využitı́ bylo diskutováno. Dále byly přestaveny možné metody detekce f0 pro extrakci intonačnı́ho průběhu Poděkovánı́ Tento výzkum byl podporován z grantu GAČR 102/08/0707 “Rozpoznávánı́ mluvené řeči v reálných podmı́nkách”. Reference [1] Abdullah-Al-Mamun, K. A high resolution pitch detection algorithm based on amdf and acf. Journal of the Acoustical Society of America (2009), 111(4). [2] Bartošek, J. Karaoke pro set-top-box. Diplomová práce, FEL ČVUT Praha, 2009. [3] Fernández, G.; Periaswamy, S.; Sweldens, W. LIFTPACK: A software package for wavelet transforms using lifting. In Wavelet Applications in Signal and Image Processing IV 1996, M. Unser, A. Aldroubi, and A. F. Laine, Eds., Proc. SPIE 2825, pp. 396–408. [4] Larson, E. Real-time time domain pitch tracking using wavelets. Journal of the Acoustical Society of America (2005), 111(4). [5] Syrový, V. Hudebnı́ akustika, 2nd ed. HAMU Praha, 2008. [6] Uhlı́ř, J. Technologie hlasových komunikacı́. ČVUT Praha, 2007. [7] Z. Palková, J.Veroňková, V. J. Výzkum prozodických charakteristik češtiny relevantnı́ch pro systematickou materiálovou analýzu mluvené řeči. GAČR 102/02/0124, Hlasové technologie v podpoře informačnı́ společnosti, Souhrnný přehled aktivit řešitelských kolektivů (2004), 27–29. Marek Bártů 9 Moºnosti vyuºití algoritm· nelineární aproximace pro parametrizaci °e£ových signál· Marek Bárt· eské vysoké u£ení technické v Praze, Fakulta elektrotechnická Laborato° aplikací um¥lých neuronových sítí (LANNA) [email protected] Tento £lánek popisuje moºnosti vyuºití nelineární aproximace pro parametrizaci °e£ových signál·. Je zde uveden skromný teoretický rozbor jeº si klade za cíl popsat hlavní rozdíly mezi aproximací lineární (nap°. lineární multirezolu£ní analýza) a nelineární. Nelineární metody jsou zde p°edstavovány algoritmy adaptivního výb¥ru báze a algoritmem Matching Pursuit. Na záv¥r je uvedeno p°ehled moºností popsaných algoritm· vzhledem k parametrizaci °e£ových signál·. Abstrakt: 1. Úvod Pro zpracování °e£ových signál· pomocí um¥lých neuronových sítí je t°eba p°evést signál do vhodné reprezentace. Obvykle se signál reprezentuje pomocí vektor· koecient· PLP nebo MFCC. Pro n¥které úlohy zpracování °e£ového signálu pomocí um¥lé neuronové sít¥ je také vhodná reprezentace signál· pomocí LPC koecient· [1]. Tento £lánek se v¥nuje zevrubnému popisu dal²ích algoritm·, které jsou vhodné pro reprezentaci signálu pro dal²í zpracování um¥lými neuronovými sít¥mi. 2. Lineární aproximace Jinou moºností jak reprezentovat signál je popsat jej pomocí vektoru koecient· daných skalárním sou£inem signálu s N vektory p°edem vybrané báze B = {gm }m∈N (1) Obvykle se báze volí jako ortonormální, resp. ortogonální. Takto zvolená báze umoº¬uje efektivn¥ aproximovat n¥které typy signál·. Mezi výhody m·ºeme uvaºovat nap°. jednozna£nost nebo výhodu jednoduchého výpo£tu. Obvykle jsou také jednodu²e dostupné rutiny realizující vlastní výpo£et. Dal²í výhoduo je konstantní sloºitost (£asová náro£nost) výpo£tu. Signál f je aproximován sou£tem skalárními sou£t· signálu s jednotlivými vektory báze fM = X m∈N hf, gm igm (2) 10 Marek Bártů kde fM aproximuje signál f s chybou : f = fM + (3) P°íkladem vyjád°ení k takovéto bázi m·ºe být Fourierova transformace. Báze je v tomto p°ípad¥ tvo°ena signály sinusového pr·b¥hu. Za podmínky f ∈ L2 [0, 1] lze pak ve smyslu rovnice (2) p°epsat aproximaci Fourierovu transformací jako fM (t) = kde X hf (u), ei2πmu iei2πmt (4) |m|≤M/2 Z hf (u), ei2πmu i = f (u)e−i2πmu du (5) Jinou moºností jak aproximovat signál nabízí multirezolu£ní analýza. Signál f je moºné aproximovat s vyuºitím M prvních wavelet· (vlnek): fM = 2−l −1 X n=0 hf, φl,n iφl,n (6) Výhody této aproximace se uplatní hlavn¥ pro signály s izolovanými singularitami. Existují i dal²í moºnosti výb¥ru báze vhodné pro aproximaci signálu, nap°. Karhunen-Loèvova báze. Shodnou vlastností lineárních aproximací je ºe vyjad°ují signál k p°edem zvolené ortonormální bázi. Vhodnou volbou báze lze sníºit chybu aproximace (3) a zlep²it tím aproximaci signálu. Ideální je vybrat pro kaºdou t°ídu signál· vhodnou bázi a vzhledem k té pak signál aproximovat. P°i hledání takové báze se ov²em ukazuje ºe by bylo volit vektory báze tak, aby tyto vektory byly co nejvíce podobné vlastnímu signálu, resp. jeho sloºkám a efektivn¥ tak signál aproximovaly 3. Nelineární aproximace Nelineární aproximace signálu pracuje s rozsáhlej²ím slovníkem vektor·, kterými aproximuje daný signál. Ideáln¥ jde o nekone£ný slovník, v praxi se ale setkáme spí²e s kone£nými slovníky. Na základ¥ vhodn¥ zvolené pokutové funkce jsou ze slovníku vybírány vhodné aproxima£ní vektory. Mnoºina t¥chto vektor· je také nazývána báze, a£koliv zde obvykle nejsou dal²í podmínky na ortogonalitu vektor·. Celou situaci lze popsat jako fM = +∞ X m=1 ΘT (hf, gm i)gm (7) kde ΘT p°edstavuje funkci jejíº prost°ednictvím jsou ze slovníku vybírány vhodné vektory ze slovníku D. D= [ λ {gm }1≤m≤N (8) λ Jednotlivé báze gm obsaºené ve slovníku jsou obvykle ortonormální. Pro sjednocení t¥chto bází není vhodné tuto podmínku poºadovat. Pokud se ale poda°í zkonstruovat takový slovník, pak to m·ºe mít zásadní vliv na rychlost vyhledávání ve slovníku. Marek Bártů 11 asto se v souvislosti s uspo°ádáním slovníku mluví o tzv. slabá ortogonalit¥. Slabá ortogonalita popisuje situaci kdy pro v²echny moºné dvojice vektor· ze slovníku je sou£in hgm , gn i nulový nebo je jeho hodnota malá. Slabá ortogonalita m·ºe mít také významný vliv na rychlost algoritmu aproximace. 4. Adaptivní výb¥r báze Rovnice (7) lze brát jako výchozí bod pro odvození algoritmu výb¥ru aproximující báze. Je t°eba najít vhodnou funkci ΘT která vybírá ze slovníku D vhodné (ve smyslu dobré aproximace) báze. V [3] lze najít odvození tzv. Shurova konkávního kriteria C (9). Sou£ástí tohoto kritéria je pokutová funkce φ. Tato funkce musí být konkávní. Obvykle je za funkci φ dosazována entropie −u ln u. N X λ 2 |hf, gm i| C(f, B) = φ 2 kf k m=1 ! (9) Pomocí Shurovy konkávní funkce lze porovnat dv¥ r·zné báze ze slovníku, a ur£it, která z nich lépe aproximuje daný signál. S vyuºitím Shurovy konkávní funkce C a s pouºitím princip· dynamického programování lze odvodit algoritmy rychlého prohledávání strom· bází pro multirezolu£ní analýzu. V [3] jsou uvedeny p°íklady algoritm· Wavelet Packet Basis a Local Cosine Basis. Algoritmus Wavelet Packet Basis d¥lí frekven£ní osu na intervaly s r·znou délkou. D¥lení probíhá s ohledem na dosaºení nejlep²í aproximace. Algoritmus je optimální pro signály, které se skládají ze struktur s podobnou distribucí ve frekvenci. Algoritmus Local Cosine Basis funguje obdobn¥ pouze s tím rozdílem, ºe d¥lí £asovou osu. Obdobn¥, tento algoritmus je optimální pro signály sloºené ze struktur s podobnou distribucí v £ase. Oba tyto algoritmy nejsou invariantní v·£i posunutí. Tato skute£nost m·ºe p°ivodit jisté komplice p°i pouºití t¥chto algoritm· pro hledání p°íznak· v signálu. Vzhledem k specické funkci, která umoº¬uje nalezení vhodné báze pro signál obsahující obdobné struktury není ani jeden z algoritm· vhodný pro zpracování °e£ových signál·. 5. Algoritmus Matching Pursuit Tento algoritmus je reprezentantem rodiny Pursuit algoritm·. Tyto algoritmu jsou ur£eny k nalezení dobré aproximace signálu, tak jako algoritmy popsané v p°edchozím odstavci. Oproti t¥mto algoritm·m ale Pursuit algoritmy hledají optimální d¥lení frekven£ní i £asové osy. Algoritmy pracují s redundantním slovníkem a provádí neortogonální rozklad signálu. Algoritmus aproximace neprochází celý strom °e²ení ale provádí pouze omezený pr·chod. Nalezené °e²ení je tedy suboptimální (problém aproximace signálu je NP-t¥ºký). Typický p°edstavitel této rodiny, algoritmus Basic Pursuit provádí aproximaci signálu minimalizací pokutové funkce pro celý slovník. Tento algoritmus je díky tomuto specickému postupu náro£ný na výpo£etní výkon. Pro ú£ely aproximace °e£ového signálu je vhodn¥j²í jiný algoritmus z této rodiny - algoritmus Matching Pursuit [4]. Algoritmus Matching Pursuit provádí iterativní rozklad signálu. V kaºdém kroku je nalezen vektor ze slovníku, který nabývá v sou£inu se signálem maximálních hodnot (10). Signál 12 Marek Bártů je tedy rozloºen na sloºku reprezentovanou vektorem gγ a reziduum Rf . Reziduum se potom pouºije p°i dal²í iteraci pro hledání dal²ího vektoru ze slovníku. f = |hf, gγ i|gγ + Rf (10) |hf, gγ0 i| ≥ α sup |hf, gγ i| (11) U nalezeného maxima není garantováno ºe jde o maximum globální - algoritmus je pouze suboptimální. Jako maximální je brán vektor který spl¬uje podmínku (11), kde α je konstanta jejíº volba je libovolná s podmínkou α ≥ 1. Toto zjednodu²ení má zásadní vliv na rychlost výpo£tu. γ∈Γ Vlastní iterativní výpo£et probíhá ve dvou krocích. Prvním krokem je nalezení vít¥zného vektoru gγ0 ze slovníku. Vít¥zný vektor je nalezen podle kritéria (11). V tomto tvaru je kritérium platí pouze pro první pr·chod, pro dal²í iterace má kritérium následující tvar: |hRm f, gγm i| ≥ α sup |hRm f, gγ i| γ∈Γ (12) V druhém kroku je proveden výpo£et rezidua Rf (13). Reziduum Rm+1 f se pouºije op¥tovn¥ p°i dal²í iteraci. hRm+1 f, gγ i = hRm f, gγ i − hRm f, gγ ihgγm , gγ i (13) kRm+1 f k2 ≤ 2 kf k2 (14) Pro algoritmus je je²t¥ t°eba denovat ukon£ující podmínku. Iterace je moºné ukon£it po provedení ur£itého po£tu krok·. Dal²ím pouºívanou podmínkou ukon£ení výpo£tu je také dosaºení ur£itého prahu chybovosti aproximace. Tuto situaci popisuje rovnice (14); práh chybovosti aproximace zde reprezentuje symbol . Implementace algoritmu je náro£ná, nicmén¥ je moºné vyuºít n¥které z jiº existujících implementací. Vyzdvihnul bych zejména balík MPtoolbox [2]. Tento software je implementovaný v jazyce C++ a optimalizovaný pro rychlé výpo£ty. Obsahuje také podporu pro integraci s Matlabem. Balík je dostupný v£etn¥ zdrojových kód· na adrese [5]. 6. Gaborovy atomy Prozatím nebylo nic °e£eno o struktu°e slovníku a moºnostech vyuºití r·zných bází. V terminologii pouºívané komunitou jsou tyto vektory ozna£ovány jako atomy. Vlastní rozklad signálu pomocí slovníku D je nazýváno rozkladem signálu na atomy. Atomy musí spl¬ovat Heisenberg·v princip neur£itosti, musí tedy spl¬ovat relaci wt wf ≥ 1 2 (15) Symbol wt p°edstavuje délku (trvání) atomu, symbol wt pak ²í°ku pásma atomu. Jinými slovy jejich rozli²ení v £ase a frekvenci je limitováno. Jako základní atomy se obvykle pouºívají tzv. Gaborovy atomy, které spl¬ují relaci (15) a to se znaménkem rovnosti místo nerovnosti. Jde o Gaussovo okno g(t) = 21/4 exp(−πt2 ) (16) Marek Bártů 13 které je nasamplováno a diskretizováno +∞ X n − pN gj [n] = Kj g 2j p=−∞ (17) a posunuto ve frekvenci a £ase i2πkn gγ [n] = gj [n − p] exp N 7. ! (18) P°íklad V následujícím textu je uveden p°íklad rozkladu °e£ového signálu. Jedná se o d¥tskou promluvu "papír". V²echny výpo£ty jsou provedeny v MP Tootboxu [5]. Na obrázku 1 je uveden rozklad signálu na atomy. Na vodorovné ose je vynesen £as v sekundách, na svislé ose je potom frekvence v Hertzích. Pro porovnání je v obrázku také vizualizace koecient· PLP a MFCC. Na za£átku promluvy je vid¥t struktura krátkých atom· pokrývajících spektrum do 2kHz. Tato struktura odpovídá hlásce "p". Po ní v £ase 0.1 sec následuje struktura odpovídající hlásce "a". Na obrázku jsou vid¥t Gaborovy atomy s malým spektrálním rozsahem a del²ím £asovým trváním oproti atom·m reprezentující hlásku "p". V £ase 0.3 sec je vid¥t struktura odpovídající druhé hlásce "p". Op¥t se jedná o strukturu sloºenou z krátkých atom·, které jsou rozprost°eny v celém spektru. Figure 1: Rozklad promluvy "papír" pro 200 atom· 14 Marek Bártů V £ase 0.3 aº 0.4 sec je vid¥t struktura odpovídající hlásce "í". Jednotlivé atomy kopírují formantovou strukturu této samohlásky. Je také dob°e patrné jak se tato struktura m¥ní v rámci p°echodu od hlásky "p" a také p°i p°echodu k hlásce "r". struktura hlásky "r" je patrná v £ase 0.5 sec. Rozloºení na obrázku 1 bylo spo£ítáno s tím, ºe výpo£et byl ukon£en po nalezení 200 atom·. Na obrázku 2 je výpo£et rozloºení pro stejnou promluvu, s tím ºe jsou zde uvedena rozloºení pro r·zné po£ty atom· Figure 2: Rozklad promluvy "papír" pro r·zný po£et atom· 8. Záv¥r Pro vyuºití popsaného rozkladu pro neuronové sít¥ je t°eba najít postup jak p°evést analytický popis signálu pomocí atom· na vektor vhodný pro zpracování neuronovými sít¥mi. Výhodou je p°esnost popisu která umoº¬uje pouºít tuto parametrizaci pro zpracování náro£n¥j²ích úloh. Dal²í výhodou pouºitého algoritmu je, ºe je velmi snadné provést z popisu signálu atomy zp¥tn¥ syntézu signálu. Pouºitím popsaného algoritmu odpadají problémy s pouºitím um¥lé neuronové sít¥ typu ASSOM (Adaptive Subspace Self-Organizing Maps). Je t°eba poznamenat ºe iterativní algoritmus rozkladu rezidua je velmi podobný algoritmu KSOM (Kohonen Self-Organizing Maps). Marek Bártů 15 Pod¥kování Tento výzkum byl podporován grantem GAR £. 102/08/H008 "Analýza a modelování biologických a °e£ových signál·". Reference [1] Bárt·, M.; Tu£ková, J. A classication method of children with developmental dysphasia based on disorder speech analysis. In Proceedings of the International Conference on Articial Neural Networks (ICANN'08) September 2008. [2] Krstulovic, S.; Gribonval, R. MPTK: Matching Pursuit made tractable. In Proc. Int. Conf. Acoust. Speech Signal Process. (ICASSP'06) Toulouse, France, May 2006, vol. 3, pp. III496 III499. [3] Mallat, S. A Wavelet Tour of Signal Processing, 2nd ed. Elsevier, 1999. [4] Mallat, S.; Zhang, Z. Matching pursuit with time-frequency dictionaries. IEEE Transactions on Signal Processing 41, 12 (December 1993), 33973415. [5] MPTK - matching pursuit toolkit. http://mptk.irisa.fr. [6] Psutka, J.; Müller, L.; Matou²ek, J.; Radová, V. Mluvíme s po£íta£em £esky. Academia, 2006. 16 Petr Bergl Parametry zkoumající pravidelnost energie a znělosti řečového signálu neplynulých promluv Petr Bergl, Roman Čmejla České vysoké učení technické v Praze, Fakulta elektrotechnická [email protected], [email protected] 22. listopadu 2009 Abstrakt: V příspěvku budou představeny dva parametry pro zkoumání neplynulých promluv. První se zabývá pravidelností výdeje energie řečového signálu, druhý parametr zkoumá pravidelnost znělosti promluv. Jejich výsledky jsou analyzovány na databázi 121 mluvčích, pro každého z nich je k dispozici známka od dvou lékařů hodnotící tíži neplynulosti. Parametr zkoumající energii s hodnocením prvního lékaře koreloval s koeficientem 0, 767, s hodnocením druhého pak s koeficientem 0, 73. Druhý parametr zkoumající pravidelnost znělosti koreluje s hodnocením prvního lékaře s koeficientem 0, 711, s hodnocením druhého pak s koeficientem 0, 656. 1. Úvod Poruchy plynulosti řeči mohou mít mnoho příčin. Může se jednat o menší dispozice k rozmanitému mluvenému projevu, charakterové vlastnosti či výsledek emocionální rozladěnosti jedince. Kromě toho mohou být jejich důvodem různá onemocnění, např. koktavost. Koktavost (balbuties) se projevuje opakováním určitých hlásek či slabik (repetice), prodlužováním hlásek (prolongace), četnými pauzami apod. Koktaví si jsou své poruchy dobře vědomi, s tím spojený stres pak může vést až ke strachu z mluvení. Teorií o vzniku koktavosti je nespočet, s tím je spojeno i značné množství používaných terapeutických přístupů (až 250). Volba léčebného postupu tak není nikterak jednoduchou otázkou, správné posouzení tíže poruchy a výskytu příznaků je velmi důležité. Metoda, která by objektivně určila vážnost poruchy řeči, by byla velkým přínosem. Umožnila by zejména ([1, 2]): 1) Určení tíže poruchy. 2) Hodnocení výsledků léčby. 3) Porovnání efektivnosti a účinnosti léčebného postupu s jiným léčebným postupem. Pro posouzení vážnosti se dají použít různé škály, které ale mají základ v subjektivním posouzení výskytu repetic a prolongací. Tento příspěvek popisuje dva parametry zkoumající pravidelnost promluv na základě analýzy audio nahrávek balbutiků. Tyto parametry se spolu s dalšími stanou základem systému, který odhaduje tíži poruchy plynulosti řeči. Petr Bergl 2. 17 Databáze promluv Základem výzkumu je databáze obsahující audio nahrávky od 154 mluvčích, z tohoto počtu je 12 kontrolních zdravých jedinců, zbytek je tvořen pacienty různého věku, s různou vážností poruchy plynulosti řeči. Databáze vznikla na Foniatrické klinice 1.LF UK a VFN. U většiny mluvčích byly zaznamenány jak čtené, tak volně formulované promluvy. Experimenty popsané v tomto článku se zaměřují na čtený text, konkrétně úryvek (cca 75 slov) z Babičky od Boženy Němcové. Důležitým faktem je, že během roku 2008 byly všechny čtené promluvy posouzeny dvěma foniatry, kteří tíži poruchy plynulosti řeči popsali pomocí 5-ti stupňové klasifikace (známkou v rozmezí 0 až 4) na základě relativní četnosti neplynulých slov cnepl , konkrétně: • 0 - žádné příznaky koktavosti, cnepl = 0% • 1 - balbuties levis, 0% < cnepl ≤ 5% • 2 – balbuties gradus medius, 5% < cnepl ≤ 20% • 3 - balbuties gravis, 20% < cnepl ≤ 60% • 4 - balbuties gravis inaptus, cnepl > 60% nebo promluva obsahuje dlouhé prefonační spazmy (bloky) v délce trvání 2 s a více. Poznamenejme, že hodnocení zahrnuje jak neplynulosti způsobené koktavostí (tony, klony, tonoklony či prefonační spazmy), tak neplynulosti vyplývající z technických obtíží při čtení, prostého přeřeknutí či projevů specifické poruchy čtení - dyslexie. Pro každého mluvčího jsou tedy k dispozici dvě známky (jedna od každého lékaře), sloužící jako kontrolní pro navržené parametry. Použity jsou signály se vzorkovací frekvencí 16 kHz, v 16 bitovém formátu. Technická kvalita části databáze je bohužel nízká (brum, kolísání zesílení během nahrávky), celkem 33 mluvčích muselo být z experimentů vyřazeno. Zbylo tak 121 mluvčích, nejmladšímu bylo v době nahrávání 7 let a 5 měsíců, nejstaršímu pak 49 let a 5 měsíců. Ženy a dívky představují 23% (28 ze 121). Počet jedinců se známkami 0 až 4 ukazuje tabulka 1. Známka „0ÿ 15 Počet „1ÿ 27 „2ÿ „3ÿ 43 26 „4ÿ 10 Celkem 121 Tabulka 1: Počet mluvčích s danou známkou. 3. 3.1. Parametry zkoumající pravidelnost promluvy Pravidelnost energie promluvy Pro neplynulé promluvy jsou typické změny tempa řeči, intervaly s běžnou rychlostí řeči se střídají s intervaly s velmi nízkou rychlostí, s bloky apod. Tuto nepravidelnost můžeme pozorovat na „nepravidelném výdejiÿ energie promluvy. Použijeme následující postup: 1) Vzorky signálu umocníme na druhou. 2) Tyto hodnoty postupně přidáváme do akumulátoru. 3) Pokud je hodnota akumulátoru menší než práh h, pak opakujeme krok 2, v opačném případě (práh byl překročen) akumulátor vynulujeme a uložíme okamžik i (číslo vzorku), kdy došlo k překročení prahu. 18 Petr Bergl Obrázek 1: Ukázka signálu. Nahoře: Energetická obálka a její lokální maxima užitá pro definici prahu h. Dole: Průběh akumulátoru s vyznačenými místy, kde byl překročen práh h. Výsledkem je sada indexů i, udávající místa překročení prahu. Pro každého mluvčího je možné zkoumat jejich průměrný počet, střední vzdálenost, rozptyl této vzdálenosti apod. Pro obdržení dobrých výsledků je nutné správné nastavení prahu h. Pokud byl zvolen pevně, tj. jako konstantní číslo pro celou databázi, nebyly výsledky příliš nadějné. Proto se práh pro každého jedince určuje adaptivně na základě maxim energetické obálky signálu. Na obr. 1 nahoře je ukázka signálu a jeho energetické obálky spolu s lokálními maximy. Všimněme si, že největší maximum výrazně převyšuje všechna ostatní maxima, odvozovat práh z této extrémní hodnoty se proto příliš nehodí. Raději tak práh odvodíme z maxim dalších. Na obr. 1 dole je pak ukázka průběhu akumulátoru s vyznačenými místy, kde byl překročen práh h, odvozený ze šestého největšího maxima energetické obálky. Otázkou zůstává, kolikáté maximum a jakou část z něj použít pro definici prahu. Zaměříme se na parametr daný rozptylem vzdálenosti míst, kde byl překročen práh h. Dá se očekávat, že rozptyl s nepravidelností (neplynulostí) promluvy poroste. Tabulka 2 uvádí korelační koeficienty mezi logaritmem tohoto parametru a neplynulostí hodnocenou prv75 z patnáctého ním lékařem. Nejvyšší hodnotu 0, 767 nacházíme pro práh daný jako 100 největšího maxima. Detailní výsledky nalezneme na obr. 2, kde je reprezentace rozdělena na dvě části: 1) neplynulost hodnocená prvním lékařem (vlevo), 2) neplynulost hodnocená druhým lékařem (vpravo). Rozložení hodnot parametru je vykresleno pomocí funkce Matlabu boxplot. Tato funkce pro každou známku 0 až 4 vykreslí „boxÿ, v jehož středu je vodorovná čára pro medián, „dnoÿ a „stropÿ boxu odpovídají kvartilům. Kromě toho jsou křížky zdůrazněny odlehlé hodnoty. Pokud má zkoumaný parametr vypovídat o vážnosti poruchy, pak by boxy měly být v různé výšce (tj. měly by mít různé mediány), a jejich rozměr by měl být co nejmenší (minimální rozdíl mezi mediánem a kvartily). V nadpisu grafů je dále uveden korelační koeficient a výsledky Wilcoxonova znaménkového testu pro Petr Bergl 19 c 0, 25 0, 50 0, 75 1, 00 1, 25 1, 50 2, 00 1 0, 696 0, 695 0, 692 0, 681 0, 677 0, 678 0, 668 5 0, 727 0, 729 0, 734 0, 726 0, 722 0, 72 0, 712 Práh h = c · Mk k 10 13 0, 75 0, 755 0, 755 0, 76 0, 747 0, 764 0, 75 0, 759 0, 748 0, 756 0, 747 0, 754 0, 742 0, 754 15 0, 749 0, 765 0, 767 0, 762 0, 763 0, 758 0, 752 17 0, 751 0, 76 0, 764 0, 764 0, 761 0, 762 0, 756 Tabulka 2: Korelační koeficient mezi logaritmem rozptylu vzdálenosti míst, kde byl překročen práh h, a neplynulostí hodnocenou prvním lékařem. Práh h = c · Mk , k určuje kolikáté největší maximum se uvažuje, Mk je hodnota maxima. Obrázek 2: Pravidelnost energie - logaritmus rozptylu vzdálenosti míst, kde byl překro75 z patnáctého největšího maxima energetické obálky. Boxplot, čen práh h daný jako 100 korelační koeficient a výsledky Wilcoxonova testu. dvě hladiny významnosti (α = 0, 01 a α = 0, 05), který testuje hypotézu, že mediány mezi jednotlivými skupinami jsou stejné. Např. zápis „0 1 1 0ÿ značí, že hypotézu o shodných mediánech zamítáme mezi daty pro skupiny 1 a 2 (první jednička) a skupinami 2 a 3 (druhá jednička). Volně přeloženo, zkoumaný parametr by mohl být užitečný pro rozeznávání, zda mluvčí patří do skupiny 1, 2, nebo 3. Pro ideální parametr bychom tedy měli vidět osm jedniček. Na závěr dodejme, že pro další parametry postavené na tomto základě nebylo dosaženo lepších výsledků. Průměrný počet překročení prahu měl korelační koeficient pod 0, 5 a jejich průměrná vzdálenost kolem 0, 7. 3.2. Pravidelnost znělosti promluvy Obdobně můžeme zkoumat pravidelnost znělosti promluvy. Základem je detekce znělých úseků řeči a určení hodnoty základního hlasivkového tónu F0 pro každý takový úsek. Oba tyto úkoly můžeme provést např. v systému Praat. Ukázku signálu s odhadnutou hodnotou F0 najdeme na obr. 3 nahoře. Akumulátor tentokráte inkrementujeme za každou pitch periodu signálu (viz obr. 3 dole), práh pro každého mluvčího odvodíme z mediánu 20 Petr Bergl Obrázek 3: Nahoře: Signál a hodnota F0 dle Praatu. Dole: Průběh akumulátoru s vyznačeným místem překročení prahu h. c r 0, 01 0, 694 0, 05 0, 711 0, 10 0, 708 0, 20 0, 695 0, 30 0, 691 0, 40 0, 684 Tabulka 3: Korelační koeficient r mezi logaritmem rozptylu vzdálenosti míst, kde byl překročen práh h, a neplynulostí hodnocenou prvním lékařem. Práh h = c · med(F0 ), kde med(F0 ) značí medián hodnot F0 každého mluvčího. hodnot F0 . Zajímavě se opět jeví rozptyl z délek intervalů vymezených okamžiky překročení prahu. Výsledky jsou uvedeny v tabulce 3, nejvyšší korelační koeficient najdeme pro práh daný 5 mediánu F0 . Detailní výsledky pro toto nastavení najdeme na obr. 4. jako 100 Znalost F0 umožňuje výpočet dalších charakteristik jako je jitter a shimmer, bohužel se však nepodařilo prokázat souvislost mezi nimi a mírou neplynulosti. 4. Závěr V příspěvku byly představeny dva parametry pro zkoumání neplynulých promluv. První se zabýval pravidelností výdeje energie řečového signálu. S hodnocením prvního lékaře koreloval s koeficientem 0, 767, s hodnocením druhého pak s koeficientem 0, 73. Wilcoxonův test nasvědčuje, že nejlépe by mohl zachycovat rozdíly neplynulosti mezi skupinami 1, 2, a 3. Druhý parametr zkoumá pravidelnost znělosti promluv. S hodnocením prvního lékaře koreluje s koeficientem 0, 711, s hodnocením druhého pak s koeficientem 0, 656. Wilcoxonův test podobně jako pro první parametr nasvědčuje, že nejlépe by mohl rozlišovat mezi skupinami 1, 2, a 3. Celkově můžeme říci, že parametr zkoumající pravidelnost energie dosáhl lepších výsledků, dosáhl vyšších korelačních koeficientů pro oba lékaře a ve Wilcoxonových testech má více pozitivních výsledků. Oba parametry se spolu s dalšími (zkoumajícími rozložení ticha a řeči, analyzujícími spektrum promluv, viz [3, 4]) stanou základem systému pro objektivní hodnocení neplynulosti řeči. Jeho principem je spojení několika parametrů, které zkoumají Petr Bergl 21 Obrázek 4: Pravidelnost znělosti - logaritmus rozptylu vzdálenosti míst, kde byl překročen 5 z mediánu F0 . Boxplot, korelační koeficient a výsledky Wilcoxonova práh h daný jako 100 testu. řeč z různých hledisek, přičemž výstupem bude hodnocení na škále 0 až 4, tedy stejné škále, která byla užita lékaři při anotaci databáze. Poděkování Děkuji MUDr. M. Hrbkové a Dr.Ing. J. Vokřálovi z Foniatrické kliniky 1.LF UK a VFN za poskytnutí signálů. 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’. Reference [1] M. Lašťovka, J. Vokřál, L. Černý, K. Radilová, M. Hrdličková, Hodnocení tíže poruchy plynulosti řeči pomocí neuronových sítí, Závěrečná zpráva grantu 237/1998/C/1.LF [2] P. Howell, A. Hamilton, A. Kyriacopoulos, Automatic detection of repetitions and prolongations in stutterred speech, Speech Input/Output: Techniques and Applications, IEE Publications, 252–256, 1986. [3] P. Bergl, R. Čmejla, L. Černý, M. Hrbková, Objective and Subjective Evaulation of Dysfluent Speech. In Digital Technologies 2008 [CD-ROM]. Žilina: University of Žilina, Fakulty of electrical engineering, 2008, vol. 1, ISBN 978-80-8070-953-2. [4] P. Bergl, Akusticko - fonetické charakteristiky neplynulých promluv. In Analýza a zpracování řečových a biologických signálů - Sborník prací 2007. Praha: ČVUT, 2007, díl 1, s. 7-12. ISBN 80-01-03940-3. 22 Václav Bolom Zvýrazňování řeči v osobním automobilu Václav Bolom České vysoké učení technické v Praze, Fakulta elektrotechnická [email protected] Abstrakt: Tento příspěvek se zabývá možnostmi zvýrazňování řeči v osobním automobilu. Je zde představena metoda RGSC, která slibuje využitelnost vícekanálových metod v reálném prostředí. Tato metoda je porovnána s metodou GSC. Obě metody jsou porovnány jednak na modelu vícekanálového signálu, a dále na signálu nahraném v osobním automobilu. Dosažené výsledky jsou porovnávány na základě tří kritérií respektující nejen míru zvýraznění řeči, ale také její zkreslení během zpracování. 1. Úvod Tento příspěvek se zabývá zvýrazňováním řeči v osobním automobilu. Tato úloha má velký význam pro mobilní komunikace, případně pro rozpoznávání jednoduchých povelů. Její význam spočívá hlavně ve zvýšení bezpečnosti silničního provozu. V tomto příspěvku je diskutováno použití vícekanálových metod v reálném prostředí. Vícekanálové metody provádějí vzorkování signálu nejen v čase, ale i v prostoru. Tím je dosaženo směrového příjmu. Signál je prostorově vzorkován pomocí mikrofonního pole. V našem případě je pole tvořeno čtyřmi mikrofony uspořádanými do lineární řady s roztečí mikrofonů 4 cm. V příspěvku jsou nejprve v části 2. definovány typy rušení ve vícekanálových systémech. Dále jsou v části 3. popsány porovnávané metody zpracování signálů. Zejména je uvedena metoda RGSC. Následující části 4. a 5. pojednávají o způsobu vyhodnocování porovnávaných metod. Je zde popsána metodika vytváření vstupních signálů a kritéria pro vyhodnocování výsledků. Pak následuje experimentální část a závěr. 2. Rušení ve vícekanálových systémech Ve vícekanálových systémech se většinou uvažují tři typy rušení. Kritériem pro jejich rozdělení je koherence Γ(ejωT ) [17] definována jako φij (ejωT ) Γij (ejωT ) = q φii (ejωT )φjj (ejωT ) , (1) kde φii (ejωT ) značí spektrální výkonovou hustotu (PSD) signálu v j-tém kanálu a φij (ejωT ) vzájemnou PSD signálů v i-tém a j-tém kanálu. V literatuře se často používá absolutní Václav Bolom 23 1 1 Theory Γ12 (1 − 2) 0.8 1 Theory Γ13 (1 − 3) 0.8 MSC 0.6 MSC 0.6 MSC 0.6 0.4 0.4 0.4 0.2 0.2 0.2 0 0 1000 2000 freguency [Hz] 3000 4000 Theory Γ14 (1 − 4) 0.8 0 0 1000 2000 freguency [Hz] 3000 4000 0 0 1000 2000 freguency [Hz] 3000 4000 Obrázek 1: Porovnání koherence rušení v automobilu s teoretickým průběhem. hodnota koherence umocněná na druhou, označovaná jako M SC (Magnitude squared coherence). M SC nabývá hodnoty od 0 do 1. Podle průběhu M SC lze klasifikovat rušení do třech kategorií. Je-li rušení reprezentováno rovinnou akustickou vlnou, hovoří se o prostorově koherentním rušení. M SC se blíží jedné v celém frekvenčním rozsahu. Koherentní rušení je v kabině automobilu reprezentováno např. hlukem ventilátoru. Pokud se M SC blíží v celém frekvenčním rozsahu nule, hovoří se o prostorově nekoherentním rušení. Prostorově nekoherentním rušením je např. elektrický šum mikrofonů. Speciálním případem je difusní rušení. To vzniká v uzavřených prostorách díky odrazům zvuku od stěn. Koherence difusního rušení má tvar [3] jωT Γ12 (e )= ) sin( ωD c ωD c , (2) kde ω značí úhlovou frekvenci, D vzdálenost mikrofonů a c rychlost šíření zvuku. Rušení v kabině automobilu má difusní charakter. Na obrázku 1 je možné porovnat průběhy koherence nahraného šumu a teoretického průběhu podle vztahu 2. Koherence je zobrazena pro tři dvojice kanálů ze čtyřkanálového záznamu. 3. Zpracování vícekanálových signálů Zpracování vícekanálových signálů může být prováděno jak v časové, tak ve frekvenční oblasti. V současné době se často používá zpracování ve frekvenční oblasti. Důvodem je jednak fakt, že některé metody vyžadují ze své podstaty zpracování ve frekvenční oblasti [18, 2, 13]. Dalšími důvody je možnost blokového zpracování metodou sčítání přesahů (OLA) a rychlejší konvergence adaptivních algoritmů. To je dáno faktem, že se každá spektrální čára adaptuje samostatně. Tento příspěvek se zaměřuje na rozdíl mezi zpracováním signálů naměřených v osobním automobilu a zpracováním modelových signálů. Pro příklad bude použita metoda GSC [5] a RGSC (Robust GSC) [8, 9, 10]. Obě metody jsou implementovány ve frekvenční oblasti. Algoritmus GSC výborně potlačuje koherentní rušení [11]. Vynikajících vlastností však dosahuje pouze pro modelové signály, kdy je užitečný signál reprezentován rovinnou vlnou dopadající kolmo na mikrofonní pole a rušení je též reprezentováno rovinnou vlnou dopadající na mikrofonní pole pod jiným úhlem. V práci [1] bylo ukázáno, že při nedodržení předpokladu na kolmý dopad užitečného signálu na mikrofonní pole metoda selhává. V osobním automobilu nejsou předpoklady pro GSC dodrženy. Jedná se zejména o porušení předpokladu na vzájemnou polohu zdroje signálu a mikrofonního pole, nepřesnosti v nastavení polohy mikrofonů a nerovinnosti akustických vln. 24 Václav Bolom Obrázek 2: Blokové schéma RGSC. 3.1. RGSC Metoda RGSC byly postupně prezentována v pracech [8, 9, 10]. Její implementace ve frekvenční oblasti je popsána např. v [7]. Jedná se, v podstatě, o zdokonalení metody GSC, aby byla použitelná pro zpracování reálných signálů. Blokové schéma je zobrazeno na obrázku 2. Zásadním rozdílem oproti GSC je adaptivní blokovací matice (ABM). ABM je sadou adaptivních filtrů. Ty upravují signál Yb (ejωT ) tak, aby byl minimální rozptyl Yl (ejωT ). Rovnici filtrace lze pro ABM napsat jako Yl (k) = X(k) − B(k)Yb (k)11×M . (3) Význam matic je zřejmý z obrázku 2, 11×M je řádkový vektor M jedniček a k je index frekvenčního pásma. ABM je aktualizována NLMS algoritmem [7] podle předpisu B(r + 1, k) = B(r, k) + (1 − λ)µ(speech(k)11×M (Yb ∗ (k)11×M )Yl (k) , φYb Yb (k) (4) kde λ konstanta blízká jedné, µ konvergenční konstanta, speech(k) značí detektor řečové aktivity (VAD), φYb Yb (k) PSD Yb a r je index bloku. Váhy ANC filtrů H jsou aktualizovány obdobně jako u GSC. Za zmínku stojí VAD, který je rozdělen do frekvenčních pásem. Hodnota 1 znamená, že je v daném frekvenčním pásmu přítomna řeč, 0 znamená řečovou pauzu. Použitý VAD je založen na prostorových vlastnostech signálu. Kritériem pro posuzování přítomnosti řeči je koherence. Tato myšlenka byla převzata z [12]. Předpokládá se, že řečový signál je koherentní a M SC by se při jeho přítomnosti měla blížit jedné. V praxi je stanoven práh, při jehož překročení je dané frekvenční pásmo považováno v daném bloku za řeč. Práh je typicky 0, 7. Příklad rozložení řečových úseků a pauz ve frekvenčních pásmech je uveden na obrázku 3. Autor [7] navrhuje zcela potlačit frekvenční pásma do 200 Hz. To je v případě uváděných experimentů realizováno tak, že jsou tato frekvenční pásma označena za pauzu vždy, bez ohledu na hodnotu M SC. Václav Bolom 25 frequency [Hz] VAD (0−pause, 1−dont know, 2−speech 4000 2 3000 1.5 2000 1 1000 0.5 0 2 4 6 time [s] 8 10 12 0 Obrázek 3: Příklad rozložení řeči a pauz ve frekvenčních pásmech. Obrázek 4: Blokové schéma metodiky testování. 4. Metodika testování Při hodnocení úspěšnosti zvýraznění řeči je obtížné oddělit užitečný signál a rušení a stanovovat např. SN R na vstupu a výstupu systému. Toto oddělení je však klíčové pro posouzení vlastností dané metody. Pro testování použitých metod byl zvolen následující přístup. Užitečný signál a rušená byly zaznamenány odděleně. Před samotnou analýzou jsou tyto signály smíchány v požadovaném SN R. Za užitečný signál jsou považovány nahrávky promluv ve stojícím automobilu s vypnutým motorem a s minimálním rušením z vnějšího prostředí. Rušení je pak reprezentováno nahrávkami v jedoucím voze bez přítomnosti řeči. Blokové schéma znázorňující testovací metodiku je zobrazeno na obrázku 4. Užitečný signál s[n] a rušení u[n] vytvoří směs x[n] s definovaným SN R. Zpracováním směsi je získán výstupní signál y[n]. Pomocí filtrů nastavených při filtraci signálu x[n] jsou také zpracovány signály s[n] a u[n]. Výsledné signály ys [n] a yu [n] nesou informaci o vlivu systému na užitečný signál a rušení. 5. Kritéria pro hodnocení systémů Kritéria pro hodnocení míry zvýraznění lze rozdělit na objektivní a subjektivní. K subjektivním metodám patří poslechové testy. Pro jejich provedení je třeba mít k dispozici několik školených posluchačů a dostatek času. Jejich nespornou výhodou je posouzení vlivu dané metody na zkreslení řeči lidským smyslem. K objektivním kritériím, která jsou 26 Václav Bolom použita pro hodnocení výsledků jsou potlačení rušení (Noise reduction, N R), logaritmus průřezových koeficientů (Log area ratio, LAR), vylepšení poměru energií signálu a rušení (Signal to noise ratio enhancement, SN RE) a spektrogramy. Všechna z těchto kritérií jsou počítána z kvazistacionárních úseků signálu. Často je výhodné ohodnotit výsledek jednoho experimentu jedním číslem. V takovém případě se použije průměrná hodnota daného kritéria. V případě kritéria LAR se průměrování provádí pouze přes bloky s řečí. 5.1. NR N R ukazuje, do jaké míry lze je s pomocí zvolené metody potlačen šum. Je definována jako [14] ¯ φuu (ejωT ) ¯¯ jωT N R(e ) = 10 log ¯ (5) φyu yu (ejωT ) ¯φss =0 kde Φuu (ejωT ) značí spektrální výkonovou hustotu (PSD) rušení na vstupu systému a Φyu yu (ejωT ) PSD rušení po zpracování daným systémem. Předpokladem je, že na vstupu systému není přítomen užitečný signál. Kritérium N R bere v úvahu pouze potlačení rušení. Nevypovídá vůbec nic o vlivu systému na užitečný signál. Pro hodnocení kvality daného systému musí být kombinováno s dalšími kritérii. 5.2. LAR Logaritmus průřezových koeficientů [16] zohledňuje vliv systému na srozumitelnost řeči. Jeho velkou výhodou je korelace s poslechovými testy [4]. Předpokladem použití LAR je, že zpracovávaným signálem je řeč. Výpočet je založena na nalezení parciálních korelačních koeficientů (PARCOR) AR modelu signálu. Pro výpočet LAR je třeba znát čistý užitečný signál s[n] a výstupní signál ys [n]. Výpočet LAR probíhá v následujících krocích: 1. Odhad PARCOR koeficientů k(p, l) bloku vzorků signálu s[n]. Index p značí ptý PARCOR koeficient l-tého bloku vzorků. Řád modelu se volí typicky P = 12. K odhadu koeficientů lze použít Burgova algoritmu [6]. 2. Výpočet průřezových koeficientů g(p, l) = 1 + k(p, l) , p = 1, . . . , 12, 1 − k(p, l) kde k(p, l) je p-tý PARCOR koeficient 1 (6) l-tého bloku. 3. Výpočet LAR l-tého bloku ¯ ¯ ¯ gs (p, l) ¯¯ ¯ LAR(l) = 20 ¯¯log10 ¯. gy (p, l) ¯ p=1 12 X (7) LAR vyjadřuje „vzdálenost“ modelu signálu s[n] od modelu signálu ys [n]. Čím je LAR menší, tím je užitečný signál méně zkreslený. 5.3. SN RE SN RE je často užívaným kritériem. Vyjadřuje, jak se zvýší poměr energií signálu a rušení po zpracování daným systémem. SN RE se vypočítá jako rozdíl SN Rin −SN Rout . Signály s[n] a u[n] jsou použity pro výpočet SN Rin a ys [n] a yu [n] pro SN Rout 1 PARCOR koeficienty k(p, l) jsou v některých pramenech [15] označovány jako záporná hodnota koeficientů odrazu Václav Bolom 27 LAR LAR [dB] 15 GSC RGSC 10 5 0 −10 −5 0 SNRE 5 10 SNR [dB] in SNRE [dB] 15 GSC RGSC 10 5 0 −10 −5 0 NR 5 10 SNR [dB] in NR [dB] 15 GSC RGSC 10 5 0 −10 −5 0 5 10 SNRin [dB] (a) Model signálu. LAR LAR [dB] 6 GSC RGSC 4 2 0 −10 −5 0 SNRE 5 10 SNRin [dB] SNRE [dB] 20 GSC RGSC 10 0 −10 SNRin [dB] −10 −5 0 NR 5 10 NR [dB] 15 GSC RGSC 10 5 0 −10 −5 0 5 10 SNRin [dB] (b) Nahraný signál. Obrázek 5: Výsledky experimentů. 6. Experimenty Metody GSC a RGSC byly porovnány pomocí dvou experimentů. V prvním experimenty byla použita směs modelu užitečného signálu a rušení nahraného v osobním automobilu při jízdě mimo obec. Model signálu byl vytvořen zkopírováním užitečného signálu do všech kanálů. Pro druhý experiment byla použita směs reprodukované nahrávky a rušení. Obě byly pořízeny v automobilu. Nahrávka řeči byla pořízena při stání a vypnutém motoru a nahrávka rušení opět při jízdě mimo obec. Experimenty byly prováděny pro různá SN Rin v rozsahu od −10 do 10 dB. 28 Václav Bolom Délka použitých signálů byla přibližně 12 s. Před samotným zpracováním byly signály převzorkovány na 8 kHz. Délka okna pro OLA byla zvolena 128 vzorků s 50 % překryvem. Výsledky experimentů jsou zobrazeny ve formě sloupcových grafů na obrázku 5. Pro jednotlivá SN Rin jsou vyjádřena kritéria LAR, SN RE a N R. 7. Závěr Experiment s modelem signálu (obr. 5(a)) ukazuje vyšší schopnost zvýraznění pro RGSC. GSC naproti tomu vykazuje prakticky nulové zkreslení užitečného signálu. Při bližším zkoumání se však ukázalo, že zkreslení signálu u RGSC bylo velkou měrou způsobeno skutečností, že byl v pásmu od 0 do 200 Hz potlačen veškerý signál (viz kapitola 3.1.). Dále lze z prvního experimentu vypozorovat klesající výkon systému s rostoucím SN Rin . Pro směs reprodukované nahrávky a rušení je již výsledek odlišný (obr. 5(b)). RGSC dosahuje lepších výsledků podle všech tří kritérií. Velký přínos je zejména pokles zkreslení užitečného signálu. Vysoké hodnoty LAR u GSC jsou dány porušením předpokladů na parametry vstupních signálů. Nepřesnost polohy mluvčího a mikrofonů je v případě RGSC kompenzována ABM. I u tohoto experimentu lze vypozorovat trend klesajícího výkonu systémů s rostoucím SN Rin . Provedené experimenty ukázaly, že pro praktické nasazení vícekanálových systémů je klíčové brát v úvahu reálné parametry vstupních signálů. Odchylky od modelových situací lze kompenzovat např. pomocí ABM. Experiment ukázal, že systémy s fixní blokovací maticí pro reálné situace selhávají. Jejich přínos je zejména ve stádiu teoretických analýz a vývoje systémů pro zvýrazňování řeči. Poděkování Tento výzkum byl podporován z grantů GAČR č. 102/08/H008 „Modelování biologických a řečových signálů“ , GAČR č. 102/08/0707 „Rozpoznávání mluvené řeči v reálných podmínkách“ . a výzkumného záměru MŠMT MSM6840770012 „Transdisciplinární výzkum v biomedicínském inženýrství 2“ . Reference [1] Bolom, V. Influence of Beamformer Parameters on Speech Enhancement. In POSTER 2007 Prague, 2007, CTU, Faculty of Electrical Engineering, p. 1. [2] Bouquin, R. L. Enhancement of noisy speech signals: application to mobile radio communications. Speech Commun. 18, 1 (1996), 3–19. [3] Cron, B. F.; Sherman, C. H. Spatial-correlation functions for various noise models. Journal of Acoustic Society of America 34, 11 (1962). [4] Fischer, S.; Kammeyer, K.-D.; Simmer, K. Adaptive microphone arrays for speech enhancement in coherent and incoherent noise fields. In Invited talk at the 3rd joint meeting of the Acoustical Society of America and the Acoustical Society of Japan Honolulu, Hawaii, Dec 1996. Václav Bolom 29 [5] Griffiths, L. J.; Jim, W. C. An alternative approach to linearly constrained adaptive beamforming. Antennas and Propagation, IEEE Transactions on 30, 1 (Jan 1982), 27–34. [6] Haykin, S. Adaptive filter theory (3rd ed.). Prentice-Hall, Inc., Upper Saddle River, NJ, USA, 1996. [7] Herbordt, W. Sound Capture for Human/Machine Interfaces. Practical Aspects of Microphone Array Signal Processing. Springer, 2005. [8] Hoshuyama, O.; Sugiyama, A. A robust adaptive beamformer for microphone arrays with a blocking matrix using constrained adaptive filters. In ICASSP ’96: Proceedings of the Acoustics, Speech, and Signal Processing, 1996. on Conference Proceedings., 1996 IEEE International Conference Washington, DC, USA, 1996, IEEE Computer Society, pp. 925–928. [9] Hoshuyama, O.; Sugiyama, A.; Hirano, A. A robust adaptive beamformer for microphone arrays with a blocking matrix using constrained adaptive filters. Signal Processing, IEEE Transactions on 47, 10 (Oct 1999), 2677–2684. [10] Hoshuyama, O.; Sugiyama, A.; Hirano, A. A robust adaptive beamformer with a blocking matrix using coefficient-constrained adaptive filters. IEICE Trans Fundam Electron Commun Comput Sci (Inst Electron Inf Commun Eng) E82-A, 4 (1999), 640–647. [11] Ingerle, J. Methods of speech signal enhancement combining beamforming and postfiltration. PhD thesis, FEL ČVUT, Prague, February 2003. [in Czech]. [12] Le Bouquin Jeannes, R.; Faucon, G. Proposal of a voice activity detector for noise reduction. Electronics Letters 30, 12 (Jun 1994), 930–932. [13] Mahmoudi, D.; Drygajlo, A. Combined wiener and coherence filtering in wavelet domain for microphone array speech enhancement. Acoustics, Speech and Signal Processing, 1998. Proceedings of the 1998 IEEE International Conference on 1 (1215 May 1998), 385–388 vol.1. [14] Marro, C.; Mahieux, Y.; Simmer, K. Analysis of noise reduction and dereverberation techniques based on microphone arrays with postfiltering. Speech and Audio Processing, IEEE Transactions on 6, 3 (May 1998), 240–259. [15] Psutka, J.; Müller, L.; Matoušek, J.; Radová, V. Mluvíme s počítačem česky. Academia, Prague, 2006. [16] Simmer, K.; Bitzer, J.; Marro, C. Microphone Arrays. Springer, Berlin, Heidelberg, New York, May 2001, ch. Post-filtering Techniques, pp. 39–57. [17] Uhlíř, J.; Sovka, P. Číslicové zpracování signálů. Vydavatelství ČVUT, Praha, 2002. [18] Zelinski, R. A microphone array with adaptive post-filtering for noise reduction in reverberant rooms. In International Conference on Acoustic Speech Signal Processing New York, 1988, pp. 2578–2581. 30 Tomáš Bořil Grangerova kauzalita a EEG Tomáš Bořil České vysoké učení technické v Praze, Fakulta elektrotechnická [email protected] Abstrakt: Lidský mozek je nejméně probádaným orgánem, mapování jednotlivých center při různých aktivitách je užitečné nejen pro samotné pochopení jeho činnosti, ale může také vést k novým postupům při léčení nejrůznějších nemocí. EEG (elektroencefalografie) je jednou ze základních zobrazovacích metod, vyhodnocující elektrickou aktivitu neuronů na povrchu hlavy. V posledních letech se začíná provádět tzv. tomografická analýza EEG, neboli promítnutí dat z povrchových elektrod do 3D prostoru. To umožňuje lokalizaci zdrojů umístěných hlouběji v mozku. Je dlouho známo, že interakce neuronů jsou směrové, Grangerova kauzalita je nástroj, který může takové vztahy v EEG pomoci nalézt. 1. Úvod Simultánní záznamy elektrod v elektroencefalografii (EEG) produkují velké množství dat. Identifikace statistických kauzálních vztahů je významným problémem v oblasti multidimensionální analýzy časových sérií. Grangerova kauzalita je jedním z nástrojů pro odhalování takových vazeb, umožňuje nejen měřit sílu kauzálních vazeb, ale i směr jejich působení. Úspěšná lokalizace aktivních center v EEG a jejich propojení by mohla hrát klíčovou roli v pochopení mozkové aktivity pacientů s psychiatrickými nemocemi, jako je schizofrenie, deprese, fóbie, ale i pacientů s chronickou bolestí. Jeden z možných přístupů pro vyhodnocení kauzálních vztahů mezi dvěma sériemi je sledování, zda predikce první časové série může být vylepšena na základě znalosti předchozích vzorků druhé časové série. Takto definoval kauzalitu Wiener (1956) a později ji formuloval Granger (1969) v kontextu lineárních regresních modelů stochastických procesů. Pokud rozptyl chyby predikce první časové série v aktuálním časovém okamžiku je redukován zahrnutím předchozích vzorků druhé časové série do autoregresního (AR) modelu, pak říkáme, že druhá časová série má kauzální vliv na sérii první. Je tedy zřejmé, že posloupnost jevů v čase je v Grangerově kauzalitě důležitým prvkem. Výzkum v posledních letech ukazuje, že AR modely slouží dobře pro popis EEG signálů a Grangerova kauzalita může být využívána pro analýzu EEG [1]. Měření a zpracování povrchového EEG patří k nejstarším zobrazovacím metodám pro mapování činnosti mozku. Jedná se o neinvazivní měření, narozdíl od funkční magnetické rezonance (fMR) nezpůsobuje problémy pacientům s klaustrofobií. Nicméně největší výhodou je vysoké časové rozlišení pořízených záznamů a přímý vztah k elektrické aktivitě neuronů. Povrchová data naměřená malým počtem elektrod poskytují nízké prostorové rozlišení zdrojů takové aktivity. Potenciál elektrického napětí na jedné elektrodě představuje výsledek sumace elektrické aktivity velkého množství neuronů. V posledních letech se objevila možnost tomografického (3D) zpracování takových dat (tzv. řešení inverzní úlohy), umožňující rekonstrukci zdrojů elektrické aktivity, což podstatně rozšiřuje možnosti využití EEG pro mapování mozkové činnosti. Přestože takto vypočtená data nedosahují přesnosti prostorového rozlišení u fMR, zvyšování počtu elektrod detailněji pokrývajících povrch hlavy vede k neustálému vylepšování prostorového rozlišení tomografického EEG. Tomáš Bořil 31 Během naší nedávné práce byl vytvořen kompletní soubor nástrojů propojující již existující softwareové celky, umožňující zpracování EEG v řetězci od pořízení dat až po jejich tomografickou analýzu [5]. V současné době zkoumáme možnosti použití Grangerovy kauzality pro další získání informací z EEG dat, čímž se zabývá tento příspěvek. Před analýzou reálných dat je nutné provést řadu experimentů na známých matematických modelech, abychom ověřili chování metody a mohli vytvořit vhodnou metodiku práce tak, abychom měli jistotu správných výsledků a ty uměli intepretovat. 2. Inverzní úloha EEG Výpočet projekce dat povrchového EEG do 3D prostoru se nazývá inverzní úlohou, neboť hledá zdroje elektrické aktivity, které tato povrchová data generují (tzv. přímá úloha). Na obr. 1 je schematické znázornění přímé úlohy (tzv. leadfield matice popisuje zobrazení zdrojů na povrchová data) a inverzní úlohy (povrchová data jsou pomocí tzv. transformační matice přepočítána na zdroje). Jedním z nástrojů pro tuto tomografickou analýzu je program sLoreta [6, 7], distribuovaný jako freeware pro vědecké použití. Vypočítává transformační matici z 3D pozic elektrod, a pak mapuje záznamy z těchto elektrod do prostoru mozku (pokrývající šedou kůru, hippocampus a amygdalu), který je rozdělen na 6239 krychlí s rozměry 5 × 5 × 5 mm, tzv. voxelů (obr. 2). Nevýhodou je, že operuje s průměrným anatomickým obrazem mozku vypočteného z velkého množství osob. Výhodou inverzního řešení sLorety je linearita této transformace. Data nejsou poškozena ve smyslu nelinearity, což je důležité pro následné další analýzy (např. Grangerovu kauzalitu). ? ? V ? ? ? V ? leadfield matice (a) ? ? ? I ? ? transformační matice (b) Obrázek 1: Přímá (a) a inverzní (b) úloha Obrázek 2: Výstup sLoreta – 6239 voxelů 32 Tomáš Bořil 3. Multidimensionální AR modely a Grangerova kauzalita Uvažujme gaussovský bílý šum s nulovou střední hodnotou a definovaným rozptylem (výkonem): v(t ) = ε (t ), var(ε ) = 1, (1) kde t značí index v diskrétním čase. Jedná se o náhodný signál, jednotlivé vzorky nejsou nijak provázány (nejsou korelovány), znalost předchozích vzorků neumožňuje predikovat vzorky nové. Zaveďme vazbu aktuálního vzorku na předcházející vzorky: v1 (t ) = ε (t ) + 0.9v1 ( t − 1) − 0.3v1 ( t − 4 ) , var(ε ) = 1, (2) přestože se jedná stále o náhodný signál, zavedli jsme tu jistou logiku, vzorky jsou provázané, předchozí vzorky mají vliv na vzorky nové. Takovémuto signálu říkáme autoregresní (AR) signál, vzorky jsou navzájem korelované. Uvažujme nyní ještě jeden signál: v2 (t ) = η (t ) + 0.8v2 ( t − 1) − 0.5v2 ( t − 2 ) + 0.16v1 ( t − 1) − 0.2v1 ( t − 2 ) + 0.2v1 ( t − 5 ) , var(η) = 1, (3) kde η je opět gaussovský bílý šum s nulovou střední hodnotou a daným rozptylem. Je zřejmé, že kromě vazby na předchozí vzorky sebe sama je zde ještě navíc přítomna vazba na předchozí vzorky proměnné v1. Takové signály označujeme jako vícerozměrné (multidimensionální) autoregresní, označujeme zkratkou MVAR. Přestože v2 je náhodný signál, předchozí vzorky v1 mají vliv na jeho aktuální vzorky a mluvíme tak o kauzalitě ve směru v1 → v2. Grangerova kauzalita pak sílu této vazby kvantifikuje jedním konkrétním číslem. 3.1 Párová Grangerova kauzalita Mějme dva stacionární stochastické AR signály x a y, zapsány jako AR model řádu m: m x(t ) = ∑ α j x(t − j ) + ε1 (t ), var(ε1 ) = Σ1 , j =1 m y (t ) = ∑ β j y (t − j ) + η1 (t ), var(η1 ) = Γ1. (4) j =1 Oba procesy mohou být zapsány jako MVAR modely pro zachycení jejich vzájemných vztahů: m m j =1 j =1 m m j =1 j =1 x(t ) = ∑ a j x(t − j ) + ∑ b j y (t − j ) + ε 2 (t ), y (t ) = ∑ c j x(t − j ) + ∑ d j y (t − j ) + η 2 (t ), (5) var(ε2 ) = Σ 2 , var(η2 ) = Γ 2 . Σ1 měří přesnost autoregresní predikce x(t) na základě předchozích m hodnot x, zatímco Σ2 představuje přesnost predikce x(t) na základě předchozích m hodnot jak x, tak zároveň y. Jestliže je Σ2 menší než Σ1 ve statistickém smyslu, říkáme, že y má kauzální vliv na x. Můžeme potom definovat Grangerovu kauzalitu [2]: Σ1 . Σ2 Pokud není žádný kauzální vliv z y do x, pak Fy՜x = 0, jinak Fy՜x > 0. Fy → x = ln (6) Tomáš Bořil 33 Pro výpočet Grangerovy kauzality na reálných naměřených datech musíme nejdříve nalézt koeficienty MVAR modelu. Odhad vhodného řádu modelu je diskutován dále v tomto příspěvku. Základní metodou pro nalezení koeficientů MVAR modelu je řešení tzv. YuleWalkerových rovnic, obdržených jako výsledek podmínky minimálního rozptylu chyb predikcí. Alternativním přístupem je použití Levinson, Wiggins, Robinson (LWR) algoritmu [3, 4], který je více robustní procedurou postavenou na základě maximální entropie. 3.2 Podmíněná Grangerova kauzalita Párová Grangerova kauzalita je nedostačující pro analýzu kauzálních vztahů mezi třemi a více proměnnými, protože nedokáže rozlišit mezi přímou vazbou a vazbou nepřímou, zprostředkovanou skrz třetí proměnnou. 3.2.1 Problém sekvenčního buzení Mějme následující MVAR model tří proměnných v1, v2 a v3: v1 ( t ) = ε ( t ) , v2 ( t ) = ξ ( t ) + v1 ( t − 1) , (7) v3 ( t ) = η ( t ) + v2 ( t − 1) , schéma takového procesu je na obr. 3a, šipkami je naznačen směr kauzalit a opačná hodnota horního indexu z symbolizuje velikost zpoždění ve vzorcích. Párová Grangerova kauzalita správně detekuje obě přímé kauzality v1 → v2 a v2 → v3, ale bude navíc detekovat i kauzalitu v1 → v3. Není schopna rozpoznat, že se jedná o nepřímou kauzalitu zprostředkovanou proměnnou v3. 3.2.2 Problém buzení s rozdílným zpožděním Mějme následující MVAR model tří proměnných v1, v2 a v3: v1 ( t ) = ε ( t ) , v2 ( t ) = ξ ( t ) + v1 ( t − 1) , (8) v3 ( t ) = η ( t ) + v1 ( t − 2 ) , schéma takového procesu je na obr. 3b. Párová Grangerova kauzalita správně detekuje obě přímé kauzality v1 → v2 a v1 → v3, ale bude detekovat navíc i kauzalitu v2 → v3, neboť v2 i v3 v sobě obsahují složku v1, v proměnné v3 je však o jeden vzorek zpožděna oproti proměnné v2, tudíž v2 pomáhá predikovat v3. v1 v3 z −1 z −1 v1 z −2 v3 z −1 v2 v2 (a) (b) Obrázek 3: Problémy párové Grangerovy kauzality, (a) sekvenční buzení, (b) buzení s rozdílným zpožděním 34 Tomáš Bořil Z důvodu těchto problémů byla zavedena tzv. podmíněná Grangerova kauzalita. Mějme tři stacionární stochastické AR procesy x, y a z. Pro vyjádření kauzálního vlivu z y do x vyjádříme x jako MVAR model proměnných x a z (tedy všech proměnných kromě y): m m j =1 j =1 x(t ) = ∑ α1 j x(t − j ) + ∑ β1 j z (t − j ) + ε xz (t ), (9) var(ε xz ) = Σ xz . Pak vyjádříme x jako MVAR model proměnných x, y a z (oproti (9) přidáme y): m m m j =1 j =1 j =1 x(t ) = ∑ a1 j x(t − j ) + ∑ b1 j y (t − j ) + ∑ c1 j z (t − j ) + ε xyz (t ), (10) var(ε xyz ) = Σ xyz . Grangerova kauzalita z y do x za podmínky z je podle [2]: Σ xz . (11) Σ xyz Pokud je kauzální vliv z y do x celkově zprostředkovaný z, členy b1j jsou všechny nulové, Σxz = Σxyz a Fy→x|z = 0. Proces výpočtu je schematicky znározněn na obr. 4, je možné jej zobecnit na libovolný počet proměnných. V prvním kroku je vypočtena chyba predikce MVAR modelu bez proměnné, jejíž kauzální vliv je vyhodnocován, v druhém kroku je pak přidána. Pokud se projeví snížením chyby predikce, mluvíme o kauzálním vlivu. Fy → x|z = ln 3.3 Experimenty na známých matematických modelech Vygenerovali jsme 2000 vzorků tří MVAR signálů s kauzalitami v1 → v2 → v3 (obr. 3a): v1 (t ) = 0.9v1 (t − 1) − 0.3v1 (t − 4) + ε (t ), v2 (t ) = 0.8v2 (t − 1) − 0.5v2 (t − 2) + + 0.16v1 (t − 1) − 0.2v1 (t − 2) + 0.2v1 (t − 5) + η (t ), (12) v3 (t ) = −0.2v3 (t − 2) − 0.4v3 (t − 5) − − 0.27v2 (t − 1) + 0.1v2 (t − 3) + γ (t ), kde ε, η a γ jsou gaussovské bílé šumy s nulovou střední hodnotou a rozptyly var(ε) = 1, var(η) = 0.7 a var(γ) = 0.4. 3.3.1 Odhad řádu modelu Prvním krokem při výpočtu podmíněné Grangerovy kauzality je odhad řádu MVAR modelu. Jednou možností je experimentální změna hodnot řádu a analýza vývoje koeficientů podmíněné Grangerovy kauzality. Vypočtené hodnoty kauzalit ve všech směrech pro řády od 1 do 10 jsou zobrazeny na obr. 5a. V rozsahu od 1 do 5 dochází k významným změnám kauzalit, zatímco pro řády 5 a výše jsou hodnoty prakticky konstantní. Z toho důvodu volíme řád 5 jako nejvhodnější, což koresponduje s generujícími vztahy (12), kde maximální zpoždění je právě 5. Tento způsob navrhujeme pro použití v reálných datech, kde generující vztahy nejsou známé, avšak je možné nalézt hranici, kde kauzality začínají být ustálené. 3.3.2 Šumová imunita K testovacím signálům byl přičten gaussovský bílý šum s nulovou střední hodnotou. Na obr. 5b je znázorněno rozpoznání kauzalit pro různé úrovně SNR, až do 20 dB je rozlišení velmi Tomáš Bořil 35 dobré, s nižším SNR pak rapidně klesá. V dalším kroku byla provedena analýza pro zkrácené signály s délkou 1000 resp. 300 vzorků (obr.5c a 5d). Je zřejmé, že s kratšími signály šumová imunita podmíněné Grangerovy kauzality klesá, a doporučená délka signálů je tedy minimálně 1000 vzorků. 0.25 0.25 0.2 0.2 0.15 0.15 Fv1->v2|v3 Fv2->v3|v1 Fv1->v3|v2 Fv2->v1|v3 Fv3->v1|v2 Fv3->v2|v1 0.1 0.05 0 CGC index CGC index Obrázek 4: Schéma výpočtu podmíněné Grangerovy kauzality 1 2 3 4 5 6 MVAR model order 7 8 Fv1->v2|v3 Fv2->v3|v1 Fv1->v3|v2 Fv2->v1|v3 Fv3->v1|v2 Fv3->v2|v1 0.1 0.05 9 0 -20 10 0 20 0.25 0.25 0.2 0.2 0.15 Fv1->v2|v3 Fv2->v3|v1 Fv1->v3|v2 Fv2->v1|v3 Fv3->v1|v2 Fv3->v2|v1 0.1 0.05 0 -20 60 80 100 (b) CGC index CGC index (a) 40 SNR [dB] 0.15 Fv1->v2|v3 Fv2->v3|v1 Fv1->v3|v2 Fv2->v1|v3 Fv3->v1|v2 Fv3->v2|v1 0.1 0.05 0 20 40 SNR [dB] (c) 60 80 100 0 -20 0 20 40 SNR [dB] 60 (d) Obrázek 5: Experimenty na známých modelech, (a) odhad řádu modelu, (b) šumová imunita 2000 vzorků, (c) 1000 vzorků, (d) 300 vzorků 80 100 36 3.4 Tomáš Bořil Použití na reálných datech V případě reálných dat je možné volit různé postupy zpracování dat a měnit velké množství parametrů (segmentace apod.). Je tak nutné najít kritérium pro vyhodnocení úspěšnosti postupu. Nejraději bychom nalezli jasné odpovědi typu zde je několik silných vazeb a zbytek není kauzálně provázán vůbec. Je však jasné, že se setkáme s celou řadou hodnot mezi a nebude snadné oddělit kauzální vazby od šumu, který pro různé parametry (délka signálů, počet proměnných, SNR) může mít různou hladinu. Jako vhodný ukazatel navrhujeme použít distribuční funkci všech vyhodnocených kauzalit, na kterých by opticky mělo být vidět ostré oddělení několika silných vazeb a velký počet zbylých vazeb, které můžeme považovat za šum, viz obr. 6a (nevhodná metoda, nejasná hranice oddělení silných a slabých vazeb) a obr. 6b (velmi ostré oddělení). Number of CGC indexes with the same value or higher [%] Distribution function of CGC values 100 90 80 70 60 (a) 50 40 30 20 10 0 8 7 6 5 4 CGC value 3 2 1 0 -3 x 10 Number of CGC indexes with the same value or higher [%] Distribution function of CGC values 100 90 80 70 60 (b) 50 40 30 20 10 0 0.025 0.02 0.015 0.01 CGC value 0.005 0 Obrázek 6: Distribuční funkce vazeb, (a) špatné oddělení, (b) dobré oddělení silných a slabých vazeb Tomáš Bořil 4. 37 Závěry Podmíněná Grangerova kauzalita se jeví jako velmi užitečný nástroj pro vyhodnocování vazeb a směru jejich působení mezi aktivními centry mozku. Bylo provedeno otestování metody na umělých matematických modelech z důvodu získání zkušeností, které jsou nutné pro vyhodnocování reálných dat, u kterých nejsou generující vztahy dopředu známé. Byla vytvořena metodika volby parametrů a interpretace získaných výsledků tak, aby bylo možné vyhodnocovat úspěšnost způsobu zpracování a případně porovnávat s jinými možnostmi postupu. Byla vytvořena celá řada programových souborů, usnadňujících jednotlivé činnosti v řetězci zpracování EEG od jeho pořízení přes tomografickou analýzu až po vyhodnocení kauzálních vazeb mezi aktivními centry. 5. Poděkování Tento výzkum byl podporován z grantu GAČR 102/08/H008 “Analýza a modelování biomedicínských a řečových signálu” a výzkumného záměru MŠMT MSM6840770012 “Transdisciplinární výzkum v oblasti biomedicínském inženýrství 2”. Reference [1] Brovelli A., Ding, M., Ledberg, A., Chen, Y., Nakamura, R., Bressler, S. Beta oscillations in a large-scale sensorimotor cortical network: Directional influences revealed by Granger causality. Proc. Natl. Acad. Sci. USA, 2004, vol. 101, no. 26, p. 9849 – 9854. [2] Ding, M., Chen, Y., Bressler, S. L. Granger Causality: Basic theory and application to neurosience. In Winterhalder, M., Schelter, B., Timmer, J. (eds.) Handbook of Time Series Analysis, Wiley, Chichester, 2006. [3] Morf, M., et al. Recursive multichannel maximum entropy spectral estimation. IEEE trans. GeoSci. Elec., 1978, vol. GE-16, no. 2, p. 85 – 97. [4] Haykin, S. Nonlinear Methods of Spectral Analysis. 2nd ed. Springer-Verlag, chapter 2, 1983. [5] Bořil, T. Toolkit for EASYS2 EEG data format processing in Matlab, EEGLAB and sLoreta environment. In Proceedings of the 8th Czech-Slovak Conference Trends in Biomedical Engineering [CD-ROM] 2009, Bratislava: Slovak University of Technology in Bratislava. [6] Pascual-Marqui, R. D., Michel, C. M., Lehmann., D. Low Resolution Electromagnetic Tomography: A New Method for Localizing Electrical Activity in the Brain. International Journal of Psychophysiology, vol. 18, 1994, no. 1, 49–65. [7] Frei, E., Gamma, A., Pascual-Marqui, R. D., Lehmann, D., Hell, D., Vollenweider, F. X. Localization of MDMA-induced Brain Activity in Healthy Volunteers Using Low Resolution Brain Electromagnetic Tomography (Loreta). Hum. Brain Mapp., 2001, vol. 14, 152–165. 38 Jaromír Doležal BCI založený na manifestaci pohybové aktivity v EEG II Jaromír Doležal České vysoké učení v Praze, Fakulta elektrotechnická [email protected] Abstrakt: Práce navazuje na předchozí příspěvek [1] uvádějící do problematiky návrhu experimentu a zpracování dat. Náš vyvíjený BCI systém pracuje s extenzními a flexními pohyby ukazováčku a je založen na skrytých markovských modelech (HMM). Jelikož HMM jsou pro BCI jen zřídkakdy používány, porovnáváme je vždy i s dalšími méně komplexními systémy. HMM jsou schopny klasifikovat mezi pohyby na základě využití časové dynamiky, u dalších systémů se podařilo pohyby rozlišit až po zavedení rozšíření o časový vývoj a vhodném nastavení parametrizačních technik. Práce také popisuje pokračující nahrávání vlastních dat, především jejich normalizaci, dlouhodobou stabilitu a experimentální výsledky klasifikace. 1. Úvod Koncept rozhraní člověk-stroj (Brain Computer Interface, BCI) usnadňuje interakci těžce pohybově postižených pacientů s okolním světem. Potenciál využití je však širší, krom medicínských diagnostických aplikací také v oblasti zábavy. V našich pracích se zabýváme pohybovou aktivitou, konkrétně drobnými extenzními a flexními pohyby jednoho prstu na rozdíl od většiny ostatních prací, které se zabývají pohyby různých částí těla. Mezi výhody pohybové aktivity v obecné rovině patří především přirozené ovládání systému, jelikož touto cestou obvykle ovládáme naše okolí. Rozpoznávané stavy mozku související s pohybovou aktivitou lze přepínat rychleji než většinu ostatních aktivit používaných pro BCI a dále není nutné trénovat pokusnou osobu ani není nutno koncentrovat se, případně zaměřovat pozornost na různé stimuly. Díky těmto vlastnostem není ovládání systému vyčerpávající a má předpoklady pro dlouhodobé užívání. V této práce jsou prezentovány výsledky práce se starou databázi pohybů, jejíž popis lze nalézt v [2] i předběžné výsledky na nově nahrávané databázi, jejíž detailní popis lze nalézt v [1]. Na nové databázi je analyzována dlouhodobá stabilita EEG a jsou naznačeny metody, jak normalizovat data získaná v delších časových rozestupech nahrávání. 2. Metody Detailnější popis použitých klasifikačních systému a parametrizací lze nalézt například v [1] nebo [3]. Zde jsou uvedeny pouze jejich základní charakteristiky, především pak nové poznatky a metody které umožnily zvýšení klasifikačního skóre. Systém HMM se čtyřstavovým jednoprůchodovým modelem dělí nahrané 10 sekundovém úseky na před-pohybovou klidovou aktivitu, pohyb doprovázející desynchronizaci a synchronizaci, a po-pohybovou klidovou aktivitu, více kapitola 4.2, obrázek 5. Klasifikace je v tomto případě založená nejenom na rozdílech v absolutních hodnotách parametrů mezi pohyby ale také na rozdílech v časovém vývoji, tedy délky a časové hranice fází odhadnutých z naměřených dat. Zde je prezentován vliv použitých parametrů na úspěšnost klasifikace pomocí HMM. Méně komplexní klasifikační systémy používané ke srovnání Perceptron (PCT), Support Vector Machine (SVM) a Learning Vector Quantization (LVQ) z principu pracují s jedním vektorem parametrů, tedy s jedním stavem. Při základním nastavení Jaromír Doležal 39 parametrizace to odpovídá úseku o délce 1 sekundy. Aby bylo možno zachytit časovou dynamiku bylo provedeno rozšíření v duchu Time Delay Neural Net (TDNN) a to zařazením parametrů vypočtených z po sobě jdoucích časových rámců do jednoho vektoru parametrů ke klasifikaci. Při tomto rozšíření je možné sledovat vliv počtu časových rámců a jejich překryvu. Jelikož se snažíme hlavně detekovat změny související s pohybem, k vektorům parametrů byly dále přidány delta parametry vypočtené dle [4]. Výpočet polynomiální aproximací byl proveden protože jednoduchá diference byla příliš zatížena šumem. 3. Experimentální výsledky 3.1 Stará databáze Jako stará databáze je označována databáze popsaná v [2]. Experimenty na této databázi jsou již uzavřeny. Podrobné výsledky budou publikovány v časopisu. Shrnující výsledky jsou uvedeny v tabulce 1. Detailnější výsledky lze nalézt například v [5]. Nejlepších výsledků bylo dosaženo se skrytými markovskými modely a to především díky využití delšího časového úseku a dynamičtějšímu přístupu. HMM PCT SVM LVQ Extenze/Flexe/Klid 89,5 ± 05,4 % Není možné Nefunguje Nefunguje Extenze/Flexe 84,1 ± 07,9 % 71,2 ± 11,6 % 74,3 ± 08,9 % 71,3 ± 08,8 % Exteze/Klid 99,9 ± 0,07 % 93,6 ± 05,3 % 95,4 ± 03,4 % 90,3 ± 03,7 % Tabulka 1: Srovnání dosažených výsledků, průměrováno přes všechny osoby, nejlepší parametrizaci, rozšíření o delší časový úsek a elektrody. 3.1.1 Skryté markovské modely Jako jedinému systému se podařilo klasifikovat všechny tři třídy (extenzní pohyb, flexní pohyb a klidovou aktivitu), pro srovnání byly provedeny i dílčí binární klasifikace, tedy klasifikace extenzního pohybu proti flexnímu pohybu a extenznímu pohybu proti klidové aktivitě. Jako nejvhodnější parametrizace se ukázala FFT s 80 % překryvem. Díky přidaným delta parametrům se podařilo zlepšit průměrné klasifikační skóre FFT o dalších 6 %. 3.1.2 Srovnávací klasifikační systémy Klasifikace všech tříd u perceptronu není z principu možná, u LVQ a SVM se nepodařilo získat věrohodné výsledky, zde prezentované výsledky jsou tedy vždy výstupem binárních klasifikací. Klíčový vliv mělo nastavení parametrizací, především velikost překryvu časových rámců používaných pro rozšíření o časovou dynamiku. Jako optimální se ukázal překryv 40 % oproti 80 % u HMM. Samotné rozšíření o časovou dynamiku se ukázalo velmi užitečným, nejlepších výsledků bylo dosaženo jen 2krát bez použití rozšíření, 8krát při rozšíření na 3 rámce a 50krát při rozšíření na 5 rámců z celkového počtu 60 experimentů. Odpovídající délka efektivního časového úseku pak je 1, 1,74 a 2,47 sekund. Trénování klasifikačních systémů bylo prováděno na úseku centrovaného podle rozhraní ERD/ERS, konkrétně tedy <+0,14;+1,14 s>, <-0,22;+1,51 s> a <-0,59;+1,87 s> vzhledem k okamžiku pohybu pro 1, 3 a 5 časových rámců. Tímto optimálním nastavením se podařilo získat věrohodnou klasifikaci i mezi pohyby což v předchozích pracích nebylo možné. Příklad věrohodné klasifikace mezi pohyby je na obrázku 1. Dosažené výsledky těchto méně komplexních klasifikačních systémů 40 Jaromír Doležal 100 100 90 90 80 80 skore [%] skore [%] jsou srovnatelné. SVM je nejméně časově náročné na trénování i testování a dosahuje o trochu lepších výsledků než oba zbývající systémy. Výsledky perceptronu jsou nejméně stabilní mezi jednotlivými běhy crossvalidace s náhodným dělením dat to trénovací a testovací množiny. AR parametry se pro klasifikaci neosvědčily, parametry v jejichž prostoru lze zkonstruovat metriku dosahují lepších výsledků u všech testovaných klasifikačních systémů. U klasifikačního systému LVQ je možnost konstruovat metriku klíčová, viz srovnání parametrů AR a parametrů kepstra z AR [3] vypočtených na obrázku 2. Perceptron a SVM jsou ovlivněny méně, nicméně použití AR parametrů v základní formě stále dává nejhorší výsledky. 70 70 60 60 50 50 40 0 1 2 3 4 5 cas [s] 6 7 8 9 10 Obrázek 1: Perceptron, úspěšnost klasifikace E/F, osoba 4, elektroda 12, FFT parametry. 40 0 1 2 3 4 5 cas [s] 6 7 8 9 10 Obrázek 2: LVQ, úspěšnost klasifikace E/T, osoba 6, elektroda 6, parametry kepstra (plnou čarou), AR parametry (přerušovanou čarou). 3.2 Nová databáze Jako nová databáze jsou označena data nahrávaná v Hradci Králové podle protokolu uvedeného v [1]. Zde prezentované výsledky byly dosaženy na první fázi nahrávání, pouze na pravé ruce. Během první fáze se podařilo získat přibližně 25 realizací na třídu. To je přibližně 1/3 počtu realizací ve staré databázi, počty realizací pro všechny třídy a osoby lze nalézt v [5]. Nahrávání databáze dále pokračuje druhou fází, analýza dat a možné další kroky jsou naznačeny v následující kapitole. 3.2.1 Skryté markovské modely Klidovou aktivitu lze rozlišit s průměrným klasifikačním skóre 89,6 ± 6,17 %, zatímco mezi pohyby nelze rozhodnout. Dosažená klasifikační skóre pohybů jsou příliš nízká, pohyby jsou často klasifikovány jako opačné. Modely klidové a pohybové aktivity se liší významně, ale modely pohybové aktivity se mezi sebou významně neliší. Předpokládáme, že je to způsobeno nedostatečným počtem realizací pro trénování modelů. Tento předpoklad můžeme ověřit použitím všech realizací (uzavřený test), tedy bez dělení do testovací a trénovací množiny ve standardním poměru 50:50, které bylo použito pro všechny ostatní zde prezentované výsledky. Touto metodou bylo dosaženo následujících výsledků: extenzí pohyb: 84,6 %; flexní pohyb: 87,6 %; klidová aktivita: 93,9 % (E/F/T, klasifikace do tří tříd). Tyto výsledky potvrzují, že model je schopen pohyby rozlišit, tedy že existují významné rozdíly v datech, které je model schopen zachytit. Aby však klasifikace fungovala je třeba odhadnout modely přesněji, čehož lze dosáhnout trénováním na větším množství dat. Jaromír Doležal 41 3.2.1 Srovnávací klasifikační systémy 100 100 90 90 80 80 skore [%] skore [%] Klasifikace dalšími systémy obecně selhává, nepodařilo se získat věrohodné výsledky pro všechny experimentální osoby. Dílčí výsledky byly dosaženy u experimentální osoby 1 a klasifikátoru LVQ, kde se podařilo jak rozlišit extenzní a klidovou aktivitu, obrázek 4, tak i extenzní a flexní aktivitu, obrázek 3. Výsledky jsou dokonce lepší než u HMM. Opět do hry vstupuje faktor malého počtu dat, u LVQ které využívá princip nejbližšího souseda a neodhaduje parametry modelu tento vliv není tak výrazný. 70 70 60 60 50 50 40 0 1 2 3 4 5 cas [s] 6 7 8 9 10 Obrázek 3: LVQ, úspěšnost klasifikace E/F, osoba 1, elektroda 37 (Cz), FFT parametry. 40 0 1 2 3 4 5 cas [s] 6 7 8 9 10 Obrázek 4: LVQ, úspěšnost klasifikace E/T, osoba 1, elektroda 37 (Cz), FFT parametry. 4. Další kroky Množství dat se ukázalo jako stěží postačující, proto je třeba pokračovat v nahrávání. Jelikož projevy pohybové aktivity v EEG jsou velice individuální je třeba nahrát stejné osoby jako v první fázi nahrávání. Klasifikaci nezávislá na mluvčím není v případě takto drobných pohybů možná. 4.1 Normalizace dat Aby bylo možno nově nahraná data zařadit do databáze používané ke klasifikačním experimentům je třeba vyloučit rozdíly způsobené nahráváním. Jedná se například o různé pozice elektrod snímané 3D trackerem při konkrétní montáži, respektive jejich vzdálenosti používané při prostorové filtraci. Je vhodné připomenout, že ve staré databázi [2] bylo použito nestandardní montáže, kde byly elektrody o 1/3 blíže než v námi používaném standardním systému 10-10. Větší vliv má ovšem různá impedance elektrod, která způsobí i rozdílný výkon signálů. To je problém pro parametrizace které v sobě nemají zahrnutu normalizaci, jako například FFT. Pro první experimenty byla použita normalizace výkonu druhé fáze nahrávání po jednotlivých EEG kanálů nezávisle na výkon první fáze nahrávání. Výkon byl vypočten v pásmu 5 - 40 Hz, které používáme ke klasifikaci. Tato normalizace byla použita pro výpočet časového vývoje krátkodobého spektra na obrázku 5. V tomto případě trend výkonu ukazuje pokles výkonu mezi pravou a levou hemisférou. To by mohlo být způsobeno tím, že byla čepice na jedné straně více přitisknutá k hlavě. Pro vyvození dalších závěrů bude třeba zpracovat nově nahrané EEG všech experimentálních osob. 42 Jaromír Doležal 4.2 Dlouhodobá stabilita EEG Analýza nahraných dat z obou fází nahrávání je na obrázku 5. V časovém vývoji krátkodobého spektra lze pozorovat projevy související s pohybovou aktivitou, pohyb byl provede páté sekundě, uprostřed obrázku. Dobře viditelná je synchronizace (ERS, event related synchronization, [2]) následující provedený pohyb, méně pak desynchronizace (ERD, event related desynchronization [6]) předcházející pohyb. Analýza ukazuje že experiment je opakovatelný, je možné pozorovat charakteristické fáze pohybové aktivity, dokonce velice podobné analýze dat staré databáze [3]. Pro klasifikaci pomocí markovských modelů je důležitější aby byl mezi extenzním a flexním pohybem rozdíl ve spektrálních charakteristikách a časovém vývoji. Aby bylo možné použít ke klasifikaci stará i nová data, je naopak nutné aby souhlasily charakteristiky pro odpovídající pohyby z obou fází nahrávání, které od sebe v případě této experimentální osoby dělilo 9 měsíců. Časová souslednost je naznačena černými svislými čarami na obrázku 5. Je vidět, že v obou případech má flexního pohyb slabší a více zpožděnou odezvu. To naznačuje, že projevy pohybové aktivity jsou dlouhodobě stabilní. Extenzní pohyb I. Flexní pohyb I. Extenzní pohyb II. Flexní pohyb II. f [Hz] t [s] Obrázek 5: Časový vývoj krátkodobého spektra pro oba pohyby, I. - první fáze nahrávání II. druhá fáze nahrávání. Časová souslednost stavů je schematicky naznačena svislými čarami. 4. Závěry Díky optimalizaci parametrizací se podařilo rozlišit pohyby na staré databázi nejenom pomocí HMM ale i srovnávacích klasifikačních systémů perceptron, LVQ a SVM. Toho bylo dosaženo především použitím delšího efektivního časového úseku a vhodným překryvem časových rámců. Dosažené výsledky jsou ale stále horší než s HMM, které jsou navíc jediné schopny klasifikovat do všech tříd. Detailní výsledky budou publikovány v časopisu. Analýza vlastních nahraných dat ukazuje, že experimenty jsou opakovatelné a naznačuje, že projevy pohybové aktivity jsou dlouhodobě stabilní. Další práce bude spočívat v dokončení zpracování druhé fáze nahrávání, vhodné normalizaci dat a konečně zařazení nových dat do databáze pohybového EEG používané pro klasifikační experimenty. Poté budou experimenty zopakovány na této rozšířené databázi. Jaromír Doležal 43 5. Poděkování Tento výzkum byl podporován z grantu GAČR č. 102/08/H008 "Analýza a 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 oblasti biomedicínského inženýrství 2". Poděkování pak patří p. doc. Janu Kremláčkovi za pomoc při realizaci nahrávání vlastní databáze. Reference [1] J. Doležal, BCI založený na manifestaci pohybové aktivity v EEG, semináře katedry teorie obvodů, analýza a zpracování řečových a biologických signálů - sborník prací 2008, str. 25-33, 2008. [2] A. Stančák Jr., The electroencephalographic β synchronization following extension and flexion finger movements in humans, Neuroscience Letters, vol. 284, str. 41-44, 2000. [3] J. Doležal, Optimalizace klasifikace pohybů z EEG. (Diplomová práce). České vysoké učení technické v Praze, fakulta elektrotechnická, katedra teorie obvodů, 2008. [4] J. Šťastný, P. Sovka, High-resolution Movement EEG Classification. Computational Intelligence and Neuroscience, str 1-12, 2007. [5] J. Doležal, J. Šťastný, P. Sovka, Recording and recognition of movement related EEG signal. In Applied Electronics, Applied Electronics, str. 95-98, 2009. [6] A. Stančák Jr., Event-related desynchronization of the µ rhythm in E/F finger movements, Clinical Neurophysiology at the Beginning of the 21st Century, Supplements to Clinical Neurophysiology, vol. 53, str. 210-214, 2000. 44 Jan Janda Studie věkově závislých akustických parametrů v dětské řeči Jan Janda České vysoké učení technické v Praze, Fakulta elektrotechnická [email protected] Abstrakt: Tento příspěvek se zabývá hledáním věkově závislých akustických parametrů v dětské řeči. Tyto parametry jsou zde porovnávány podle míry jejich věkové závislosti a je posuzována jejich dostatečnost pro odhad věku dítěte. 1. Úvod Analýza souvislostí mezi akusticko-fonetickou stránkou promluvy a věkem mluvčího může nalézt uplatnění v řadě aplikací. Motivace této práce vychází z foniatrické a logopedické praxe. Při zkoumání dětských patologických promluv je často snaha odpovědět na otázku jakému věku daná promluva odpovídá a usoudit tak například na to, v jakém věku dítěte se vývoj řeči zastavil. Chronologický věk je určen jednoznačně datem narození. Logopedický věk je věk, na který usuzujeme z akusticko-fonetické stránky promluvy člověka. Tato práce je zaměřena na hledání věkově závislých parametrů v dětské řeči. Věková závislost těchto parametrů často pochází ze skutečnosti, že děti mají kratší vokální trakt a drobnější hlasivky. To se projevuje zejména vyšší základní frekvencí hlasivkového tónu a vyššími formanty. Dále pak větší spektrální a suprasegmentální změny jsou přičítány nepřesné dětské výslovnosti. Tyto parametry jsou v této práci z hlediska věkové závislosti porovnány a statisticky zhodnoceny. 2. Databáze Pro potřeby tohoto výzkumu byla nahrána databáze dětských promluv. Tvoří ji promluvy 195 dětí ve věku od tří do dvanácti let. Obsahuje 28 izolovaných slov (babička, časopis, čokoláda, dědeček, kalhoty, kniha, košile, květina, květiny, maluje,mateřídouška, motovidlo, peníze, pohádka,pokémon, popelnice, radost, rukavice, různobarevný, silnice, škola, špička, televize, ticho, trumpeta, vlak, zelenina, zmrzlina). Slova byla navržena ve spolupráci s Foniatrickou klinikou 1.LF UK a pochází od 104 chlapců a 91 dívek. Každý ročník je zastoupen přibližně 20 dětmi (tříletých se však podařilo nahrát pouze 5). Jan Janda 45 F0 − samohláska /a/ 19 18 ST100 17 16 15 14 13 12 2 4 6 8 vek 10 12 14 Obrázek 1: Věková závislost F0 pro hlásku /a/ 3. 3.1. Věkově závislé akustické charakteristiky Samohlásky 3.1.1. Základní frekvence hlasivkového tónu F0 závisí na velikosti hrtanu a délce hlasivek. Jedná se o nejčastěji uváděnou charakteristiku v souvislosti s věkem člověka. Nabývá hodnot od 500 Hz u nejvyšších dětských hlasů a s věkem může u mužů klesnout až na hodnoty kolem 80 Hz. Analýzu základního hlasivkového tónu můžeme provádět jak u izolovaných samohlásek vždy ze stejného místa promluvy, tak celých znělých úseků promluvy. Aby frekvenční intervaly lépe odpovídaly vnímání intonačních intervalů lidským sluchem, bývají hodnoty F0 převedeny do půltónové stupnice s počátkem v 100 Hz: F0 (ST ) = 12 ln(F0 (Hz)/100) . ln(2) (1) Analyzovány byly jednak izolované samohlásky slabik /la/, /le/, /li/, /lo/, /lu/ ze slov škola, košile, zmrzlina, letadlo a maluje, dále pak celé znělé úseky promluv. Analýza byla provedena autokorelační metodou v programu Praat v. 5.0.15 s parametry time step=0.0, pitch floor =100 Hz a pitch ceiling=600 Hz. Výsledné hodnoty byly ověřeny v programu Wavesurfer v. 1.8.5 a případně ručně modifikovány. Nejčastěji docházelo k chybné detekci o oktávu nižší F0 . Pro statistické potvrzení věkové závislosti F0 uvažujme nulovou hypotézu H0 , která tuto závislost popírá. H0 můžeme zamítnout na základě výsledku t-testu pro korelovaná měření. V našem případě lze H0 zamítnout na hladině p < 0, 001, n = 193. Sílu korelace můžeme vyjádřit Pearsonovým korelačním koeficientem r. Pro věkovou závislost F0 samohlásky /a/ dostaneme r = 0, 43, tedy středně silnou, uspokojivou korelaci. Na obrázku 1 můžeme vidět průměrné F0 jednotlivých věkových skupin. Pro veškeré znělé úseky promluvy dostaneme r = 0, 41 na p < 0, 001, n = 113. Trend F0 naznačuje obr. 2. 3.1.2. Rozptyl F0 Rozptyl základní frekvence hlasu souvisí s intonačním rozpětím promluvy. V tomto parametru se odráží celková melodičnost a zpěvnost hlasového projevu, typická pro děti předškolního věku. 46 Jan Janda F0 − celé promluvy 19 18 ST100 17 16 15 14 13 12 2 4 6 8 vek 10 12 14 Obrázek 2: Věková závislost F0 - celé promluvy Rozptyl F0 byl analyzován na všech znělých úsecích promluvy a vykazoval vzhledem k věku klesající trend. Koeficient korelace zde činil r = −0, 61, (p < 0, 001, n = 113) 3.1.3. Formanty F1, F2 Formantové frekvence odpovídají rezonančním frekvencím dutin hlasového ústrojí. Lze je odhadnout pro jednotlivé samohlásky z LPC (linear predictive coding) spektra pomocí Burgova algoritmu. Věková závislost je u formantů méně zřetelná než u F0. Pro F2 byl v rámci celé promluvy korelační koeficient r = −0, 34. 3.2. Souhlásky 3.2.1. Spektrální těžiště Mějme komplexní spektrum sykavky S(f ), kde f je frekvence. Spektrální těžiště můžeme definovat jako Z ∞ fc = f |S(f )|2 df (2) 0 děleno energií Z ∞ 0 |S(f )|2 df. (3) 3.2.2. Centrální spektrální moment řádu n je dán: µn = R∞ 0 (f − fc )n |S(f )|2 df R∞ 2 0 |S(f )| df (4) 3.2.3. Spektrální směrodatná odchylka Standardní směrodatná odchylka spektra je dána odmocninou z druhého centrálního momentu tohoto spektra. 3.2.4. Spektrální zešikmení Normované zešikmení spektra je dáno podílem třetího centrálního momentu a druhého centrálního momentu umocněného na 3/2. Spektrální zešikmení vyjadřuje jak moc se liší tvar spektra pod a nad spektrálním těžištěm. Například bílý šum má spektrální zešikmení rovné nule. Jan Janda 47 3.2.5. Spektrální špičatost Normovaná spektrální špičatost je čtvrtý centrální moment dělený druhou mocninou druhého centrálního momentu zmenšený o 3. Spektrální špičatost vyjadřuje míru podobnosti tvaru spektra s Gaussovou křivkou. Výše uvedené spektrální charakteristiky sykavek byly naměřeny pro souhlásky /s/, /ss/ a /cc/ ze slov silnice, košile a babička. Významné zde bylo zejména zvýšení polohy spektrálního těžiště (r = 0.45, p < 0.001, n = 193)(obr. 3) a pokles spektrálního zešikmení (r = −0.47, p < 0.001, n = 193)(obr. 4) u souhlásky /s/ s věkem dítěte. Spektralni teziste: /s/ 12000 10000 Hz 8000 6000 4000 2000 0 2 4 6 8 vek 10 12 14 Obrázek 3: Posun spektrálního těžiště. Spektralni zesikmeni 5 4 3 2 1 0 −1 −2 −3 2 4 6 8 vek 10 12 14 Obrázek 4: Pokles spektrálního zešikmení. 3.3. Kontext samohláska-souhláska 3.3.1. Voice onset time (VOT) Doba nástupu hlasivkového tónu (VOT) je doba od uvolnění artikulačního závěru do začátku kmitání hlasivek. Tento interval je měřen v milisekundách. Měření VOT probíhalo na slabice /ka/ ze slova ”babička”. Z naměřených hodnot však zatím nešlo ani na hladině p < 0.05 prokázat věkovou závislost tohoto parametru. 3.3.2. Souhláska–samohláska doba přechodu a kepstrální vzdálenost Jednou z nejdůležitějších příčin změn akustických parametrů v řeči je koartikulace, kdy je realizace jednotlivého fonému ovlivněna fonémy sousedními. M. Gerosa et al. [4] uvádí 48 Jan Janda příklad vlivu koartikulace na vlastnosti přechodu mezi souhláskou a samouhláskou (CV), konkrétně na délku jeho trvání a na mel-kepstrální vzdálenost mezi souhláskou a samohláskou daného CV páru. Má za to, že pokud se spektrální charakteristiky mění pozvolna v CV páru, pak je vyšší i význam koartikulace. Naopak při náhlých spektrálních změnách je vliv koartikulace malý. Celková spektrální změna mezi dvěma fonémy je pak dána jednak inherentní spektrální vzdáleností mezi těmito fonémy v izolaci a dále pak lokálně rychlostí pohybu artikulačního aparátu. Můžeme tedy usuzovat, že spektrální změny budou korelovány s mírou artikulační dovednosti a budou tedy věkově závislé. Práce [4] uvádí pro korelaci doby přechodu CV s věkem r = 0.87. 3.4. Analýza slov 3.4.1. Akumulovaná vzdálenost řečových parametrizací Při posuzovani srozumitelnosti (resp. patlavosti) dětske řeči použijeme vedle analyzované promluvy i promluvu referenční stejneho obsahu, precizně vyřčenou. V matici vzdáleností jednotlivých segmentů v prostoru dané řečové parametrizace nalezneme křivku DTW. Kumulativni vzdálenost podél křivky DTW bude značně korelovat s nesrozumitelnosti zkoumané promluvy. Z provedených experimentů bylo ověřeno, že tato kumulativní vzdálenost s věkem klesá a promluvy starších dětí jsou tedy srozumitelnější. Největší věkovou závislost vykazovala kumulovaná vzdálenost v prostoru kepstrálních koeficientů (obr. 5) a spektrálních koeficientů PLP. Kepstralni koeficienty 0.6 kumulovana vzdalenost 0.55 0.5 0.45 0.4 0.35 4 5 6 7 8 9 10 11 12 13 vek Obrázek 5: Věková závislost kumulované vzdálenosti DTW funkce slova motovidlo v prostoru kepstrálních koeficientů. 4. Hodnocení věkové závislosti akustických charakteristik Následující tabulka shrnuje zkoumané akustické charakteristiky. Jednotlivé příznaky jsou seřazeny podle míry korelace s věkem (sloupec r ). Sloupec Ho obsahuje hodnoty hladin významnosti, na který je teoreticky možné zamítnout nulovou hypotézu o věkové nezávislosti parametru. Parametry pod dvojitou čarou nelze na hladině p < 0.05 považovat za věkově závislé. Jan Janda 49 Charakteristika Rozptyl F0 Spektrální zešikmení /S/ Spektrální těžiště /S/ F0 – celá promluva F2 – celá promluva Sp. směrodatná odchylka /CC/ F1 – celá promluva Sp. směrodatná odchylka /S/ Sp. směrodatná odchylka /SS/ Spektrální špičatost /S/ Spektrální zešikmení /SS/ Spektrální těžiště /SS/ Spektrální těžiště /CC/ Spektrální špičatost /CC/ Spektrální zešikmení /CC/ Voice onset time /K-A/ Spektrální špičatost /SS/ r -0.61 -0.47 0.45 -0.42 -0.34 -0.30 -0.25 -0.21 -0.20 -0.17 -0.14 0.11 -0.12 0.11 0.10 -0.08 0.00 H0 9.3E-13 5.0E-12 8.7E-11 4.0E-06 1.9E-04 1.4E-03 2.0E-03 3.2E-03 4.6E-03 1.8E-02 4.9E-02 1.4E-01 1.9E-01 2.6E-01 2.8E-01 3.7E-01 9.6E-01 Tabulka 1: Přehled věkově závislých charakteristik. 5. Závěr Vybrané řečové charakteristiky vykazují různě velikou závislost na věku. Charakteristiky založené na základní hlasivkové frekvenci a některé spektrální vlastnosti konsonanty /s/ vykazují korelaci s věkem okolo 0.5. Řečové parametry se silnou věkovou závislostí budou v dalším výzkumu použity pro návrh věkového klasifikátoru. Poděkování Tento výzkum je podporován z grantu GD102/08/H008 - Analysis and modeling biomedical and speech signals. Reference [1] OHNESORG, K. Naše dítě se učí mluvit. Praha : SPN, 1976. ISBN 80-04-25233-8. [2] SCHÖTZ, S. Acoustic Analysis of Adult Speaker Age. In Speaker Classification I. Heidelberg : Springer-Verlag, 2007 [3] S. P. WHITESIDE & J. MARSHALL: Developmental trends in voice onset time: some evidence for sex differences. Phonetica, 58 (3). pp. 196-210. [4] M. GEROSA, S. LEE et al.: Analyzing Children’S Speech: an Acoustic Study of Consonants and Consonant-Vowel Transition. Acoustics, Speech and Signal Processing, 2006. ICASSP 2006 Proceedings. 2006 IEEE International Conference on Volume 1, Issue , 14-19 May 2006 50 Robert Krejčí Optimalizace výpočetně náročné části rozpoznávače řeči se zaměřením na hardwarovou platformu OMAP Robert Krejčí České vysoké učení v Praze, Fakulta elektrotechnická [email protected] Abstrakt: Tento článek popisuje některé metody zrychlení výpočtů výpočetně náročné pravděpodobnostní funkce b(o), která je součástí počítačového rozpoznávače řeči. Optimalizace byly zaměřeny především na hardwarovou platformu OMAP, která je v současné době jedním z průmyslových standardů. Výsledkem je mnohonásobné zkrácení doby výpočtu této funkce oproti původní funkci vytvořené pro platformu PC. Popsané optimalizační metody lze aplikovat i na jiné hardwarové platformy. 1. Úvod Počítačové rozpoznávání řeči je výpočetně velmi náročná úloha. Naštěstí v současné době máme k dispozici výkonné počítače, které jsou schopny takové úlohy zvládnout. Pro rozpoznávání řeči v reálném čase je výkon moderního kancelářského PC vcelku dostatečný, ale jsou typy úloh, kdy není možné použít „běžnou“ platformu PC s procesorem řady x86, např. z důvodů požadavků na malý příkon, malé rozměry, přenositelnost zařízení nebo minimalizaci ceny. Proto je potřeba hledat jinou hardwarovou platformu, která by těmto požadavkům vyhovovala více i přes omezené systémové prostředky, jako je např. menší taktovací frekvence procesoru, méně operační paměti atd. Relativně menší výkon platformy je nutné nahradit efektivnějším prováděním algoritmů, mnohdy však je nutné volit kompromis mezi rychlostí a přesností výpočtů. 2. Hardwarová platforma OMAP-L137 Jako jednu z vhodných platforem pro rozpoznávání řeči na přenosných zařízeních jsme zvolili dvoujádrový procesor od firmy Texas Instruments s označením OMAP-L137 a provedli jsme mnoho experimentů s testováním některých algoritmů, které jsou součástí rozpoznávače řeči. OMAP-L137 je nízkopříkonový hybridní procesor třídy SoC (System on Chip), který je složen z jednoho jádra 32-bitového signálového procesoru TMS320C674x a jednoho jádra 32-bitového procesoru pro všeobecné použití ARM926EJ-S. Obě jádra jsou v současné době dobře známým průmyslovým standardem, takže k nim je k dispozici značné množství dokumentace a programového vybavení. 2.1 Jádro signálového procesoru Jádro TMS320C674x, jak známo, pracuje s formátem čísel v pevné i plovoucí řádové čárce a jeho architektura VLIW (Very Long Instruction Word) umožňuje současně provádět operace v osmi paralelních jednotkách, avšak např. pouze 2 operace typu násobení s akumulací současně. Při taktovací frekvenci 300 MHz může dosáhnout maximálního výkonu 2400 MIPS / 1800 MFLOPS. S využitím principu SIMD (Single Instruction, Multiple Data) mohou být operace s pevnou řádovou čárkou prováděny velmi efektivně. 2.2 Jádro procesoru pro všeobecné použití Robert Krejčí 51 Jádro procesoru pro všeobecné použití ARM926EJ-S je členem rodiny RISCových procesorů ARM9 s jednotkou pro správu paměti (MMU – Memory Management Unit). Obsahuje rovněž rozšířenou sadu instrukcí pro číslicové zpracování signálů. 2.2 Spolupráce mezi oběma jádry Kombinace signálového procesoru (DSP) a procesoru pro všeobecné použití (GPP) se ukazuje jako velmi vhodná pro tzv. „embedded“ (vestavěné) systémy rozpoznávání řeči. GPP, na němž funguje nějaký operační systém (např. Linux), zde zajišťuje celkovou funkci systému, komunikační rozhraní s uživatelem, vstupně-výstupní procesy, síťové spojení atd., zatímco DSP, na němž běží kernel (jádro operačního systému) „DSP/BIOS“, je opakovaně spouštěn pro výpočet časově náročných operací. Další výhoda spočívá ve skutečnosti, že jádro GPP obsluhuje události přerušení (např. odběr vzorků z A/D převodníku), takže jádro DSP se jimi nemusí zabývat a výpočetně náročné části programu tedy může provádět bez přerušování. 3. Rozpoznávání řeči 3.1 Parametrizace Parametrizace signálu je jedním z prvních funkčních bloků v procesu rozpoznávání řeči. Z každého segmentu vstupního řečového signálu se extrahují parametry signálu, které dostatečným způsobem vypovídají o jeho řečových vlastnostech. V případě našeho rozpoznávače jsou vstupní vzorky signálu snímány s frekvencí 16 kHz. Z každého segmentu signálu se následně vypočítá 16 mel-kepstrálních koeficientů a další koeficient nese informaci o logaritmu energie signálu. Z těchto sedmnácti koeficientů se spočtou diferenciální a akcelerační parametry, čímž získáme vektor o s délkou celkem 51 koeficientů. Oproti dalším blokům je tento proces poměrně méně výpočetně náročný, takže lze s výhodou použít hardwarové aritmetiky signálového procesoru pro výpočty v plovoucí řádové čárce. Snahy o další optimalizace se zde zúročí méně než v případě následujícího funkčního bloku. 3.2 Pravděpodobnostní funkce b(o) Jedna z dalších částí procesu rozpoznávání řeči je výpočet pravděpodobnostní funkce, která se v odborné literatuře běžně označuje jako b(o) [1]. Jedná se o výpočetně velmi náročnou operaci. Tato funkce vyhodnocuje podobnost parametrizovaného segmentu signálu s předem natrénovanými daty akustického modelu trifonů. Její tvar vhodný pro implementaci je následující [2]: M b o = ∐ i=1 M 51 X −∑ [o k −k ⋅y k ]2 k =1 (1) M ∐ a i = ln ∑ e a i =1 i (2) k=1 Výpočet jádra funkce proběhne celkem 51-krát (pro každý koeficient vstupního vektoru), následuje přičtení další konstanty X a aproximace logaritmu sumy exponenciálních funkcí. Tento blok se provádí 20 až 120-krát, průměrně 40-krát. Toto se počítá jednotlivě pro 435 stavů natrénovaných parametrů skrytých Markovových modelů (HMM) a aby rozpoznávač mohl pracovat v reálném čase, celý výpočet se musí stihnout provádět 100-krát za sekundu. 52 Robert Krejčí Jádro funkce se skládá z několika elementárních operací: rozdíl, násobení, druhá mocnina, akumulace. Pokud počítáme i s ochranou proti numerickému přetečení (škálování, scaling), můžeme v jádře funkce napočítat celkem 6 operací. Operace čtení a ukládání do paměti zde nejsou započítány. Obrázek 1: Původní funkce b(o) v pevné řádové čárce Výsledky našich experimentů ukazují, že největší přínos pro zrychlení výpočtů má optimalizace nejvnitřnějšího jádra funkce b(o). 4. Optimalizace Provedli jsme řadu optimalizací funkce b(o), jejichž výsledkem bylo mnohonásobné zvýšení rychlosti výpočtů na platformě OMAP oproti původní funkci převzaté ze zdrojových kódů pro platformu PC. V následujícím textu jsou popsány některé metody, které přispěly k rychlejšímu provedení výpočtu. 4.1 Automatické optimalizace Texas Instruments ke svým produktům poskytuje také vývojové prostředí Code Composer Studio (CCS) s kompilátorem jazyka C. Dobrých výsledků lze dosáhnout už jen zapnutím vhodné kombinace automatických optimalizací kompilátoru jazyka C [3]. Rychlost výpočtů v našem případě tak vzrostla asi trojnásobně. 4.2 Bitová přesnost vstupních a výstupních dat Na platformě TMS320C6000 lze dosáhnout optimálního poměru mezi rychlostí a přesností násobení, pokud jsou vstupní data vyjádřena v 16-bitovém formátu a výsledek je ve 32bitovém formátu v pevné řádové čárce [4]. Redukcí 32×32-bitového násobení na 16×16 bitů se dá dosáhnout znatelného zrychlení s přijatelným vlivem na snížení přesnosti výpočtů. 4.3 Umístění vybraných dat do paměti s rychlým přístupem Dalšího zrychlení výpočtů lze dosáhnout vhodným umístěním často používaných dat do paměti s rychlejším přístupem. Pokud to není výslovně definováno, kompilátor předpokládá obecné umístění dat v paměti typu far a čtení dat z paměti trvá tři instrukční cykly. Robert Krejčí 53 Klíčovým slovem near v deklaraci proměnné lze přikázat kompilátoru, aby proměnnou umístil do paměti s rychlým přístupem. V takovém případě čtení trvá pouze jeden instrukční cyklus [4]. 4.4 Plánování kódu Přeskupením zdrojového kódu (napsaného v programovacím jazyce C) se dá dosáhnout lepší návaznosti instrukcí bez čekání na přečtení dat z paměti (to je tzv. metoda „Code scheduling“). Nejprve se skupina dat nahraje z paměti do registrů procesoru a pak se s těmito daty provádí výpočty. Ukazuje se, že v takovém případě je kompilátor schopen přeložit zdrojový kód s výrazným paralelizmem instrukcí. 4.5 Intrinzické funkce Dalšího výrazného zkrácení doby výpočtu lze dosáhnout s využitím tzv. intrinzických funkcí, což je téměř přímý přístup ke speciálním instrukcím konkrétní architektury procesoru v programovacím prostředí jazyka C, které by jinak kompilátor nejspíše nevyužil. Jako příklad uveďme všeobecně známou funkci „saturovaný součet“, která zajistí saturaci výsledku na maximální (nebo minimální) hodnotu v případě, že by došlo k překročení dynamického rozsahu. V obecném programovacím jazyce C by se musela rozepsat do několika řádků kódu a její provedení by bylo pomalejší. Použití instrinzické funkce _sadd() však vede na provedení příslušné jediné instrukce v assembleru, a je tedy rychlejší [4]. Možnost použití intrinzických funkcí se vyskytuje i v jiných kompilátorech pro jiné architektury (např. kompilátor GCC pro platformy PC, ARM nebo MIPS) [5]. 4.6 Vektorizace a makro-operace Možností architektury TMS320C6000 lze plně využít v případě použití principů vektorizace a makro-operace [4]. Vektorizace je počítání s více operandy v jedné instrukci, např. c1=a1×b1, c2=a2×b2. Rozdíl oproti standardním operacím je v tom, že se neprovádí výpočet s jedním 32-bitovým číslem, ale s „balíčkem“ dvou 16-bitových nebo čtyř 8-bitových operandů. Makro-operace je výpočet více operací v jedné instrukci, přičemž může být využit i předchozí princip vektorizace. Jedinou instrukcí tak lze provádět např. výpočet typu c = a1×b1 + a2×b2. V tomto příkladu se současně provedou dvě násobení a zároveň se výsledky sečtou. 4.7 Výpočty s plovoucí řádovou čárkou Architektura TMS320C674x také poskytuje možnost výpočtů ve formátu čísel s plovoucí řádovou čárkou, i když možnosti optimalizací jsou poněkud omezené oproti výpočtům v pevné řádové čárce. Nevýhoda instrukční sady pro výpočty v plovoucí řádové čárce na této architektuře spočívá v tom, že neobsahuje instrukce s využitím principů vektorizace a makrooperací. Výsledky výpočtů jsou sice velmi přesné, ale pomalejší oproti výpočtům v pevné řádové čárce s plným využitím možností hardwarové architektury. 5. Modifikovaná funkce b(o) Pokud se s původní funkcí b(o) provede následující substituce, vidíme, že v hlavní sumě je eliminováno odečítání a druhá mocnina, přičemž nový tvar funkce vrací numericky stejné výsledky jako původní tvar funkce b(o). 54 Robert Krejčí 51 p k = o 2k , z k = y 2k , v k = −2 k y 2k , X 1 = X −∑ y 2k⋅2k (3) k =1 b o = M 51 i=1 k=1 ∐ X 1i −∑ z i , k⋅pk v i ,k⋅o k (4) Koeficienty zk, vk a X1 jsou přepočítané natrénované parametry a koeficienty p se počítají přímo ze vstupního parametrizovaného vektoru o, tj. jednou za segment. Zůstala nám pouze operace typu „násobení s akumulací“, což se dá pokládat za elementární operaci. Signálové procesory obvykle mohou takovou operaci provést během jednoho instrukčního cyklu. 5.1 Modifikovaná funkce b(o) v plovoucí řádové čárce Na následujícím obrázku je blokové schéma této modifikované funkce pro výpočet v plovoucí řádové čárce. Vidíme, že algoritmus je o něco jednodušší. Obrázek 2: Modifikovaná funkce b(o) v plovoucí řádové čárce Když sloučíme vektory o a p a matice přepočítaných natrénovaných parametrů v a z tak, aby byly v paměti umístěny vedle sebe, vznikne vektor či matice o šířce 102 prvků: op = [ o1 ⋯o51 p1 ⋯ p51 ] , vz k = M b o = ∐ i=1 [ v 1,1 v M ,1 ⋯ v 1,51 ⋮ ⋯ v M ,51 102 X 1−∑ vz i ,k⋅op k k =1 z 1,1 z M ,1 ⋯ z 1,51 ⋮ ⋯ z M ,51 ] (5) (6) Operaci „násobení s akumulací“ se 102 prvky lze provést velmi efektivně s minimální režií na uspořádání cyklu. 5.2 Modifikovaná funkce b(o) v pevné řádové čárce Nově přepočítané parametry zabírají podstatně větší dynamický rozsah než původní parametry. Konkrétně dynamický rozsah parametrů z je 19 bitů (s hodnotami od 11 do 29 bitů) a dynamický rozsah parametrů |v| je 18 bitů (s hodnotami od 17 do 34 bitů). Je tedy potřeba přepočítat parametry tak, aby se jejich dynamický rozsah vešel do 16 bitů, to znamená 15 bitů pro hodnotu a jeden znaménkový bit. Robert Krejčí 55 Větší přesnosti lze dosáhnout, pokud veškerá data rozdělíme do více pásem, která nemusí nutně odpovídat uspořádání statických, diferenciálních a akceleračních parametrů. V tomto případě jsme podle dynamického rozsahu zvolili tři pásma s 16, 16 a 19 koeficienty. M ∐ b o = i =1 M b o = ∐ i=1 ∑ 16 X 1− X1 − 2 31 16 k=1 z 32 51 k=17 k=33 z k⋅p k v k⋅o k ∑ z k⋅p k v k⋅ok ∑ z k⋅pk v k⋅o k 16 p 32 v ∑ 2k9⋅ 216k ∑ 214k⋅ok ∑ k=1 2 k=1 6 17 2 k =17 32 51 51 z k pk vk z k pk vk ⋅ ⋅o ⋅ ⋅o ∑ ∑ ∑ 13 16 16 k 15 16 18 k 2 2 2 k=17 2 k =33 2 k=33 2 22 2 15 20 2 13 (7) (8) Jádro funkce se skládá ze tří smyček typu „násobení s akumulací“ (tedy šesti sum). Každá suma se počítá v jiné (optimální) bitové přesnosti. Výsledky jsou pak srovnány na stejnou úroveň a další výpočet, který už je o něco méně časově kritický, probíhá stejně jako v předchozích případech. Obrázek 3: Blokové schéma algoritmu s 3-pásmovým škálováním Ještě je potřeba se zmínit o přepočítané konstantě X1. Její plný dynamický rozsah je sice 17 bitů, ale naprostá většina hodnot se vejde přibližně do rozsahu osmi bitů. Proto práce s touto konstantou není problematická. Průměrováním výsledků ze 100 realizací jsme zjistili, že algoritmus s globální redukcí přesnosti na 16 bitů vede k výsledkům, jejichž průměrná chyba je ve většině případů 2–3% vzhledem k výpočtu v plné přesnosti (rozlehlejší histogram). Naproti tomu v případě, že výpočet probíhá ve třech pásmech, přičemž každé pásmo má svou optimální bitovou přesnost, lze dosáhnout poměrně přesného výsledku vzhledem k původní funkci b(o). Ve většině případů byla průměrná chyba méně než 1% (užší histogram). Výhodou nové formy funkce b(o) je redukce počtu elementárních operací v jejím jádře. Upravená funkce je založena na operaci typu „násobení s akumulací“, což vede na možnost jejího rychlejšího provedení zvláště v architekturách signálových procesorů. Nové koeficienty lze získat přímo z původních jednoduchou transformací. Koeficienty jsou známy v čase kompilace programu, takže jejich výpočet neubírá výpočetní výkon během rozpoznávání. 56 Robert Krejčí Obrázek 4: Histogram relativní chyby výpočtu modifikované funkce b(o) vzhledem k původní funkci 5.3 Uspořádání dat v paměti Vhodným uspořádáním dat v paměti lze dosáhnout optimálního přístupu do paměti tak, aby operace čtení na sebe vzájemně navazovaly a nebylo nutné zbytečně čekat, až se data z hlavní paměti přesunou do paměti typu Cache. Nejlepších výsledků bylo dosaženo v případě uspořádání čtveřic dat podle následujícího obrázku. Obrázek 5: Optimalizovaná datová struktura nově přepočítaných koeficientů z a v 6. Výsledky V následujícím grafu jsou zobrazeny doby výpočtů pravděpodobnostní funkce b(o) v závislosti na použité optimalizační metodě. Optimalizace byla prováděla postupně, takže každá následující metoda zahrnuje použití všech předchozích metod. Výjimkou je výpočet ve formátu čísel s plovoucí řádovou čárkou, v grafu je zobrazen pouze nejkratší dosažený čas výpočtu. Jak je vidět, nejvýznamnější přínos má (vedle automatických optimalizací) využití vektorizace a makro-operací (přibližně dvojnásobné urychlení) a dále výpočet modifikovanou formou s optimalizovanými přístupy do paměti (asi 2,5-násobné snížení doby výpočtu). 7. Závěr V tomto článku byly uvedeny některé základní informace o rozpoznávání řeči se zaměřením na hardwarové architektury s omezenými systémovými prostředky. Popsali jsme některé optimalizační metody, které vedou k urychlení výpočtů, a uvedli jsme výsledky testů provedených na platformě OMAP-L137 se signálovým procesorem řady TMS320C674x. Robert Krejčí 57 Obrázek 6: Vliv optimalizačních metod na rychlost výpočtu Většina uvedených metod je použitelná i na jiných hardwarových architekturách včetně platformy PC [6], případně s drobnými úpravami. 8. Poděkování Tento výzkum byl podporován z grantu GAČR 102/08/H008 „Analýza a modelování biomedicínských a řečových signálu“, GAČR 102/08/0707 „Rozpoznávání mluvené řeči v reálných podmínkách“ a výzkumného záměru MŠMT MSM6840770014 „Výzkum perspektivních informačních a komunikačních technologií“. Reference [1] S. Young et al., htkbook.pdf.zip, 2009. The HTK Book. http://htk.eng.cam.ac.uk/ftp/software/ [2] J. Uhlíř a kol., Technologie hlasových komunikací, Nakladatelství ČVUT Praha, 2007. [3] TMS320C6000 Optimizing Compiler v 6.1 User's Guide. http://www.ti.com/litv/pdf/ spru187o, 2008. [4] TMS320C6000 Programmer's Guide. http://www.ti.com/litv/pdf/spru198i, 2006. [5] Built-in Functions Specific to Particular Target Machines. http://gcc.gnu.org/ onlinedocs/gcc-3.4.0/gcc/Target-Builtins.html. [6] Intel® 64 and IA-32 Architectures Optimization Reference Manual. http:// developer.intel.com/Assets/PDF/manual/248966.pdf, 2009. 58 Ondřej Kučera Mechanické oscilace buněk Ondřej Kučera České vysoké učení technické v Praze, Fakulta elektrotechnická Ústav fotoniky a elektroniky, Akademie věd ČR [email protected] Abstrakt: Cellular nanomechanical oscillations in kilohertz range were measured using Atomic Force Microscopy in recent years. This paper includes explanation of experimental technique and short review of considerable experiments. It is furthermore suggested that mechanical oscillations of cells must generate oscillating electric field in their vicinity, because many intracellular structures are electrically polar. 1. Úvod Vazba mezi buněčnou strukturou, mechanickými vlastnostmi a dynamikou buňky na jedné straně a biologickou funkcí a nemocí na straně druhé není doposud uspokojivě popsána a je v současné době předmětem intenzivního interdisciplinárního výzkumu. Poznatky z těchto oblastí postupně odkrývají nové aspekty buněčné fyziologie, jejichž přínos a význam pro medicínu nelze prozatím plně zhodnotit. Mezi tyto nové objevy patří i experimentální zjištění mechanických oscilací buněčných stěn. 2. Mikroskopie atomárních sil Mikroskopie atomárních sil [1] (dále AFM z anglického Atomic Force Microscopy) je hlavní větví mikroskopie skenujících sondou (SPM - Scanning Probe Microscopy). AFM nalézá široké uplatnění v nejrůznějších vědecko-technických oblastech zahrnujících jak základní, tak i aplikovaný výzkum. Používá se od materiálového inženýrství přes fyziku až k biologii a komunita jejích uživatelů se každoročně rozrůstá. Aplikace AFM není omezena jen na mapování topografie vzorků. Používá se též pro lokální silová měření a pro analýzu lokálních mechanických vlastností vzorků. AFM lze použít i jako mikromanipulátor pro práci s jednotlivými molekulami. Princip AFM (Obr. 1) spočívá ve sledování silové interakce mezi povrchem vzorku a velmi malým špičatým hrotem s poloměr křivosti v řádu desítek nanometrů. Původcem interakce jsou zejména přitažlivé síly van der Waalsovy a odpudivé síly krátkého dosahu, např. Pauliho repulze. Velikost i směr působící síly se mění v závislosti na vzdálenosti hrotu od povrchu vzorku. Aby bylo možné silové působení měřit, je hrot upevněn na konci mikroskopického nosníku délky několika stovek mikrometrů, který se vlivem výše popsaných sil ohýbá. Ohnutí nosníku je v aparatuře mikroskopu zpravidla snímáno pomocí laserového paprsku (viz Obr. 1). Pro získání topografie povrchu je třeba realizovat měření Ondřej Kučera 59 La se r d to e et or kt Fo Obvody zpětné vazby Nosník H z Vzorek y x H - Hrot Piezoelektrický Scanner Obrázek 1: Princip AFM [6]. v mnoha bodech daných měřící mřížkou, rastrem. Laterální pohyb vzorku pod měřícím hrotem je zajištěn pomocí piezoelektrického scanneru. Laterální rozlišení AFM je v subnanometrové oblasti a velikost působících sil v řádu 10−4 až 10−14 N, díky čemuž lze zobrazovat topografii vzorku až na atomární úrovni. Nespornou výhodou AFM je, že na rozdíl od elektronové mikroskopie není třeba provádět měření ve vakuu a vzorek nemusí být vodivý, jak je požadováno u tunelové mikroskopie. Měřený vzorek tak může být umístěn jak ve vakuu, tak v plynu nebo kapalině, což umožňuje např. měření na biologických strukturách v jejich chemicky přirozeném prostředí (viz např. Obr. 2). 3. Přehled experimentů Pelling et al. [10, 9] změřil pomocí mikroskopu atomárních sil (AFM) mechanické oscilace buněčných stěn kvasinek Saccharomyces cerevisiæ. Vibrační signál se střední hodnotou 3.0 ± 0.5 nm byl přítomen v 70 % provedených měření a byl reprodukovatelný v čase i na rozdílných kulturách. Spektru změřených oscilací dominoval teplotně závislý frekvenční vrchol od 0.9 kHz při 22◦ C do 1.6 kHz při 30◦ C. Oscilační charakter signálu vymizel po utlumení metabolické aktivity buňky podáním azidu sodného. Autoři vyloučili, že by změřený signál byl artefaktem. Naopak vzhledem k teplotní závislosti frekvence předložili hypotézu, že zdrojem oscilací je koordinovaný pohyb motorových proteinů pohybujících se podél cytoskeletárních struktur. Pellingův experiment částečně reprodukoval Pokorný et al. [11, 4]. Mosbacher et al. [8] experimentálně objevil elektrickým napětím řízený pohyb membrán buněk HEK293 pomocí AFM. Pohyb sledoval přiložené střídavé napětí na frekvencích větších než 1 kHz s fázovým předstihem 60–120◦ , jak odpovídá posuvnému proudu. Domke et al. [5] s využitím AFM změřil vlastní pulsy kardiomyocytů (buňky srdečního svalu) v rozsahu 0,05–0,4 Hz. Mechanické oscilace buněk rozličných kultur byly dále pozorovány pomocí různých technik v širokém frekvenčním pásmu (mHz–THz). 60 Ondřej Kučera Obrázek 2: Rekonstrukce topografie sedimentu buněk kvasinek. Měřeno pomocí AFM v kontaktním režimu. 4. Buněčná nanoelektromechanika Mnoho vnitrobuněčných struktur na úrovni organel i molekul je elektricky polárních. Např. heterodimer tubulinu (s rozměry 5 x 8 nm), který je základní stavební jednotkou mikrotubulů, je silný elektrický dipól s dipólovým momentem řádu 10−26 C·m. Jiným příkladem může být buněčná membrána, na jejíž tloušťce 10 nm je realizován membránový potenciál až –100 mV. Je evidentní, že mechanické oscilace těchto struktur vytvářejí v jejich blízkosti oscilující elektrické pole [3, 2, 7]. Na rozdíl od akčního potenciálu, který má silnou proudovou složku, by se v tomto případě jednalo o signál s výkonem natolik nízkým, že by nemusel výrazněji překročit úroveň tepelného šumu. Změření takového signálu je technologickou výzvou, která by mohla otevřít dveře novému aspektu buněčné fyziologie – celulární nanoelektromechanice. 5. Závěr Výše zmíněné mechanické a elektrické biosignály doposud čekají na svoji interpretaci. Jejich analýza pomocí standardních metod zpracování signálů k tomu může významně napomoci. Poděkování Autor děkuje spolupracovníkům z ÚFE AV ČR, jmenovitě zejména dr. Michalu Cifrovi a dr. Jiřímu Pokornému, kteří se podíleli na výzkumu. Ondřej Kučera 61 Práce byla částečně podpořena z grantu č. 102/08/H081 GA ČR. Náklady na prezentaci výsledků byly podpořeny ze zdroje č. 13131/10/222 ČVUT v Praze. Reference [1] Binnig, G.; Quate, C.; Gerber, C. Atomic force microscope. Phys. Rev. Lett. 3 (1986), 930–933. [2] Cifra, M.; Pokorný, J.; Havelka, D.; Kučera, O. Electric field generated by axial longitudinal vibration modes of microtubule. submitted (2009). [3] Cifra, M.; Pokorný, J.; Jelínek, F.; Kučera, O. Vibrations of electrically polar structures in biosystems give rise to electromagnetic field: theories and experiments. In Progress In Electromagnetic Research Symposium 2009, Moscow 2009, no. 1, pp. 215– 219. [4] Cifra, M.; Vaniš, J.; Kučera, O.; Hašek, J.; Frýdlová, I.; Jelínek, F.; Šaroch, J.; Pokorný, J. Electrical vibrations of yeast cell membrane. In Progress In Electromagnetic Research Symposium 2007, Prague 2007, no. 1, pp. 215–219. [5] Domke, J.; Parak, W.; George, M.; Gaub, H.; Radmacher, M. Mapping the mechanical pulse of single cardiomyocytes with the atomic force microscope. Eur. Biophys. J. 28, 3 (1999), 179–186. [6] Kučera, O. Mikroskopie atomárních sil. Automatizace 4 (2009), 220–222. [7] Kučera, O.; Pokorný, J.; Cifra, M. Cellular nanomechanical and electrical oscillations in kHz range: a path to biological nanoelectromechanics. In Proceedings of Trendy v Biomedicínskom Inžinierstve 2009, Bratislava 2009. [8] Mosbacher, J.; Langer, M.; Horber, J.; Sachs, F. Voltage-dependent membrane displacements measured by atomic force microscopy. Journal of General Physiology 111, 1 (1998), 65–74. [9] Pelling, A. E.; Sehati, S.; Gralla, E. B.; Gimzewski, J. K. Time dependence of the frequency and amplitude of the local nanomechanical motion of yeast. Nanomedicine: Nanotechnol. Biol. Med. 1 (2005), 178–183. [10] Pelling, A. E.; Sehati, S.; Gralla, E. B.; Valentine, J. S.; Gimzewski, J. K. Local nanomechanical motion of the cell wall of saccharomyces cerevisiae. Science 305 (2004), 1147–1150. [11] Pokorný, J.; Hašek, J.; Vaniš, J.; Jelínek, F. Biophysical aspects of cancer – electromagnetic mechanism. Indian Journal of Experimental Biology 46 (May 2008), 310– 321. 62 Martina Nejepsova MULTIMEDIÁLNÍ SLABIKÁŘ Martina Nejepsová České vysoké učení technické v Praze, Fakulta elektrotechnická [email protected] Abstrakt: Multimediální slabikář (MS) je terapeutická pomůcka pro pacienty s postižením sluchového ústrojí – především pro pacienty s kochleárním implantátem. Tato pomůcka, ve formě výukového programu a několika dalších testovacích programů v různé náročnosti, by měla sloužit pro zdokonalování poslechu a porozumění mluveného slova. Měla by být přínosem pacientům především v době po aktivaci kochleárního implantátu. V závislosti na hodnocení programu pacienty vzniká zpětná vazba pro zvýšení kvality a účinnosti tohoto programu. 1. Úvod Program (MS) byl vytvořen jako terapeutická pomůcka pro pacienty se sluchovým postižením – především pro pacienty s kochleárním implantátem. Těmto pacientům se po určité pooperační době (4-6ti týdenní léčba po implantaci) aktivuje kochleární implantát a začíná poimplantační terapie. Doba adaptace pacienta a její výsledky jsou různé. Záleží na typu implantátu, na stavu vlastní kochlei a intenzitě následného cvičení sluchového aparátu. Rehabilitační cvičení postupují od detekce přes rozlišování a rozeznávání k porozumění jednotlivým zvukům a řeči. U pacientů, kteří ohluchli po osvojení řeči a jazyka (postlingválně), je tato rehabilitace kratší oproti pacientům, kteří ohluchli brzy po narození (prelingválně) nebo se již narodili neslyšící. Proto cílem mé práce bylo vytvořit program, který by pomohl zlepšit poslechovou schopnost pacientů. Program obsahuje nejen výukovou část, ale je doplněn i o testovací část, kde si pacienti mohou sami vyzkoušet, zda-li jsou schopni porozumět mluvenému slovu. 2. Koncepce programu Již dříve byla vytvořena verze programu MS, jejímž autorem je Ing. Stanislav Brožek. Pro hodnocení této verze vyplnili pacienti „Dotazník pro uživatele programu MS“, kde uvedli své postřehy a připomínky k programu. Vzhledem k mnoha připomínkám pacientů byl vytvořen nový program. Nejprve bylo nutné vytvořit nový seznam slov a frází, které by měl program obsahovat, dále tento seznam nechat namluvit vhodnými mluvčími a nakonec vytvořit snadno ovladatelné uživatelské prostředí a k němu ovládací skript. 2.1. Výběr témat Při výběru témat a obsahu zvukových záznamů byla základem témata uvedená v [1], konzultací s odborníky foniatrické kliniky, dále pak z požadavků a připomínek pacientů foniatrické kliniky a dalších návrhů. Témata jsou rozdělena do třech hlavních skupin – slabiky, slova a fráze. Některé z nich jsou dále členěny na kapitoly respektive podkapitoly – viz. Tab.1. Martina Nejepsova SLABIKY SLOVA FRÁZE 63 Čísla a číslovky Zájmena Barvy Dny a měsíce Jazyky Zvířata Rostliny Pozdrav Seznámení Dorozumívání Datum a čas Počasí Ovoce Zelenina Potraviny Jména Sport Povolání a zaměstnání Domácnost V bance V hotelu V obchodě V restauraci U lékaře Dopravní prostředky Hudební nástroje Lidské tělo Obuv a oblečení Psací a výtvarné potřeby Země Města Cestování Sport Zábava a volný čas Tab.1: Přehled kapitol a podkapitol 2.2. Výběr mluvčích, nahrávání a střih zvukových záznamů V programu MS si uživatel může zvolit při přehrávání zvukových záznamů jako mluvčího muže nebo ženu. Po předchozích připomínkách odborníků z Foniatrické kliniky a vyjádření pacientů k předchozí verzi programu bylo třeba najít vhodné mluvčí pro nahrání zvukových záznamů. Bylo osloveno několik dobrovolníků (z různých profesních oborů), kteří by byli ochotni zvukové záznamy namluvit. Ze záznamu četby stejného textu 11ti dobrovolníky, byli foniatrickou klinikou vybráni dva mluvčí – muž a žena, kteří poté namluvily 1375 zvukových nahrávek. Zvukové nahrávky byly nahrány jako pásma několika zvukových záznamů – většinou vždy jako část kapitoly či podkapitoly. Poté bylo nutné jednotlivá zvuková pásma sestřihat na jednotlivé zvukové nahrávky. To bylo provedeno v programu Adobe Audition 1.5. Zvukové nahrávky jsou ve formátu MP3. Důvodem komprese z formátu WAV do MP3 byla nejen úspora místa na disku, ale i snadnější komunikace vývojového programového prostředí Action Script 3.0 s externími zvukovými soubory. Komprese nezpůsobila slyšitelné zhoršení kvality nahrávky, což bylo i ověřeno pomocí programu Praat 4.5.18. Zvukové záznamy jsou rozděleny do adresářů podle jednotlivých kapitol a podkapitol v programu a jsou uloženy v adresáři Zvukové_nahrávky na CD společně s programem. Názvy souborů s promluvami jsou totožné s jejich zvukovým obsahem včetně háčků a čárek. Pouze místo mezery je vloženo podtržítko. U frází, jejichž název by tímto způsobem byl velmi dlouhý, je zvoleno číslování podle kapitoly do které spadají. 2.3. Tvorba uživatelského prostředí a ovládacích skriptů Při tvorbě programu MS byl kladen důraz na jednoduchost ovládání programu, snadnou instalaci a dostupnost přehrávače běžným uživatelům PC – v tomto případě Adobe Flash Player, který je nutný pro užívání programu. Proto byl tedy zvolen program Adobe Flash CS3 pro tvorbu uživatelského rozhraní. Pro tvorbu ovladacích skriptů byl užit Action Script 3.0, který je součástí Adobe Flash CS3. Program MS obsahuje čtyři částí – VÝUKA, TEST1, TEST2 a TEST3, které jsou uloženy jako samostatné soubory. Každá část programu byla tvořena jako jednotlivé snímky (jeden snímek = stránka části programu). Na jednotlivých snímcích jsou mimo autorem vytvořených prvků umístěny grafické objekty – obrázky a texty, tlačítka a několik objektů z knihovny programu AdobeFash CS3. Ty jsou v programu užívány dle předdefinovaného charakteru. 64 Martina Nejepsova Zvukové záznamy, jak již bylo zmíněno, jsou uloženy mimo program. Pomocí URL adresy jsou načítány do programu. Ve výukové části jsou jednotlivé zvukové záznamy přidány rovnou ke zvukovým tlačítkům s názvem jejich obsahu. V testovací části jsou zvukové nahrávky uloženy v jednorozměrném poli, odkud jsou náhodně vybírány. Pro odkazová tlačítka ve všech částech programu byl užit již předdefinovaný příkaz gotoAndPlay(X), který je určen k přechodu na snímek s číslem uvedeným v závorce příkazu. Pro každý aktivní prvek (tlačítka, objekty z knihovny, ...) byla vytvořena samostatná funkce pro jejich ovládání. Ve výukové části bylo třeba funkcí pro přehrání zvukových záznamů, přidání šumu či ruchu na pozadí a nastavení jejich intenzity. Pro zvuková tlačítka přehrávající zvukový záznam byla vytvořena funkce, reagující na kliknutí myší. Funkce nejprve zjistí nastavení pro přehrání zvukového záznamu s případným šumem a jeho zvolenou intenzitou a poté přehraje nastavenou kombinaci. V části programu MS – TEST1 slouží pro přehrání zvukových záznamů funkce přiřazená tlačítku PŘEHRAJ. Kromě náhodného výběru zvukového záznamu a jeho přehrání obsahuje tato funkce ještě počítadla stisknutí tlačítka PŘEHRAJ a nezodpovězených zvukových záznamů (tj. kdy uživatel přehrál další zvukový záznam aniž by odpověděl na záznam předchozí). Dále obsahuje příkazy pro zobrazení tlačítka PŘEHRAJ ZNOVU. Pro toto tlačítko je implementována další funkce, která dostane informaci o výběru zvuku a umožní jeho opětovné přehrání. Stiskem odpovídacích tlačítek se volá funkce pro porovnání odpovědi (obsahu zvukového tlačítka) a správné odpovědi uložené v poli odpovědí jako textový řetězec. Podle výsledku porovnávání zobrazí tato funkce hodnocení – zda bylo odpovězeno dobře nebo špatně a umožní pacientovi zvolit jinou odpověď v případě neshody odpovědí. V případě shody nastaví aktivní oblast stránky pro další zvukový záznam. Tato funkce má také zabudované počítadlo pro správné a špatné odpovědi. Dále je v této části programu ještě využívána funkce pro vytvoření a úpravu vzhledu textových polí, do kterých se zapisují hodnoty z počítadel. V části programu MS – TEST2 jsou opět funkce přehrávání a znovupřehrávání zvukových záznamů. Obě funkce jsou obdobné se stejnojmennými funkcemi v části TEST1, liší se jen v přidání ovládání zobrazování několika prvků v aktivní části programu – okénko pro zapsání odpovědi uživatelem, tlačítko POTVRDIT ODPOVĚĎ, tlačítko UKAŽ SPRÁVNOU ODPOVĚĎ, ... . Pro potvrzení odpovědi, jež uživatel zapíše do příslušného okénka, slouží tlačítko POTVRDIT ODPOVĚĎ a s ním i funkce zaznamenávající odpověď zadanou uživatelem. Tlačítko UKAŽ SPRÁVNOU ODPOVĚĎ aktivuje funkci pro zobrazení správné odpovědi. Kromě zobrazení očekávané odpovědi funkce ještě uzavírá přístup pro zapsání odpovědi uživatelem, neboť již není třeba nic určovat. Část programu MS – TEST3 je programově nejsložitější. Uživatel zde má možnost definovat si nastavení testu. To je prováděno pomocí CheckBoxů a Radiobutonů. Nastavení končí tlačítkem POKRAČOVAT a SPUSTIT TEST, které zkontroluje stav těchto prvků (jsou-li označeny nebo nikoliv). Nastavení a výběr uloží do pole. Přehrávání a znovupřehrávání je dáno opět stejnými funkcemi jako v předchozích částech programu, jenž jsou přiřazeny tlačítkům PŘEHRAJ a PŘEHRAJ ZNOVU. Zde je náhodný výběr zvukových nahrávek ovlivněn nastavením uživatele. Proto je nutné do náhodného výběru zařadit pouze ty zvukové nahrávky, které si uživatel vybere v nastavení testu. To je spolu s náhodným výběrem přiřazeno tlačítku PŘEHRAJ. Tento test je velmi podobný testu TEST2 a proto i funkce v něm použité jsou obdobné. Zde ještě přibývá zápis výsledků do tabulky – textového pole a zobrazování očekávané a uživatelem zadané odpovědi. To vše je ovládáno pomocí funkcí, které se spustí stisknutím tlačítka POTVRDIT ODPOVĚĎ. V testu TEST2 a TEST3 je možné potvrdit odpověď nejen stiskem tlačítka POTVRDIT ODPOVĚĎ, ale pomocí klávesy ENTER, což vede k urychlení potvrzení odpovědi. Martina Nejepsova 65 3. Popis programu Program MS, jak bylo výše uvedeno je rozdělen do čtyř částí – VÝUKA, TEST1, TEST2 a TEST3. Dále je program doplněn o nápovědu, která shrnuje informace o ovládání programu v jednotlivých částech. Vzhled uživatelského rozhraní je zaměřen na přehlednost, čitelnost a jednoduchost ovládání. Všechny části programu mají proto obdobný vzhled. Vždy po spuštění programu MS se objeví hlavní menu – titulní stránka konkrétní části programu, na které si uživatel vybírá směr, kterým se bude ubírat. Po volbě kapitoly přejde uživatel na stránku menu zvolené kapitoly či podkapitoly, která slouží pouze jako rozcestí – pro lepší orientaci uživatele. Jsou zde uvedeny další podkapitoly, do kterých se uživatel dostane kliknutím na zvolené odkazové tlačítko. Následně se uživatel ocitne na aktivní stránce s obsahem dané části programu, které jsou blíže popsány v jednotlivých bodech této kapitoly. V horní části každého snímku je uveden nadpis – název snímku, na kterém se uživatel nachází. Hned pod ním je umístěna nabídková lišta, jež je viditelná na každé stránce programu. Slouží nejen k pohybu po programu, ale odkazuje i na stručnou nápovědu, informace o programu a jeho autorech a také je zde umístěno tlačítko pro ukončení programu. 3.1. Výuková část Tato část programu je určena pro poslech a porozumění jednotlivých zvukových záznamů. Je rozdělena na tři hlavní části SLABIKY, SLOVA a FRÁZE, které jsou dále členěny na tematické sekce. Obr.1: Vzhled části VÝUKA Vzhled všech aktivních snímků části VÝUKA odpovídá Obr.1. V horní části je umístěn nadpis a nabídková lišta. Pod ní se nachází samotná aktivní oblast programu. V části VÝUKA 66 Martina Nejepsova jsou zde umístěna zvuková tlačítka. Po kliknutí na zvukové tlačítko se přehraje zvukový záznam uvedený v názvu tlačítka. Tlačítko lze spouštět opakovaně. V levé části stránky se nachází nastavení. Uživatel si zde může vybrat mluvčího – muže či ženu. Dále si zde může nastavit, zda chce poslouchat pouze čistý záznam, nebo si pro ztížení poslechu přidá určitý šum či ruch na pozadí zvukové nahrávky. Uživatel má na výběr z devíti šumů a ruchů – bílý šum, růžový šum, hnědý šum, bable šum, industriální šum, tikot hodin, ruch ulice, hudbu či déšť. K nastavení šumů patří i nastavení jejich intenzity. To lze provést pomocí posuvné lišty v dolní části nastavení. Můžete si vybrat ze sedmi intenzit šumů a ruchů na pozadí. V kapitole FRÁZE je rozšířené nastavení přehrávání, kde je možné zvolit zvolit rychlost promluv. Hodnoty jsou uvedeny v procentech, kde originálnímu záznamu odpovídá 100% a zpomaleným zvukovým záznamům 90% a 80%. Tato nastavení lze libovolně měnit a kombinovat pro každé zvukové tlačítko. Vždy je třeba nejprve provést změnu nastavení a poté stisknout zvukové tlačítko, které chce uživatel přehrát. 3.2. Testovací část Testovací část je rozdělena do třech částí – TEST1, TEST2 A TEST3. Slouží uživatelům k otestování jejich poslechové zdatnosti. TEST1 je nejlehčí variantou testování. Princip spočívá v tom, že pacient vyslechne zvukový záznam a poté vybere odpovídací tlačítko s odpovědí – se správným obsahem zvukového záznamu. Pokud neodpoví správně, může zkusit zvolit jinou odpověď – jiné odpovídací tlačítko či si zvukový záznam znovu přehrát. Počet přehrání či počet špatně zvolených odpovědí není nijak omezen. Pokud pacient není schopen správně odpovědět, může pomocí tlačítka PŘEHRAJ přejít na další zvukový záznam. Vzhled aktivních snímků v části TEST1 je téměř shodný se snímky v části VÝUKA. V horní části je umístěn nadpis s nabídkovou lištou. V levé části se nachází tlačítko PŘEHRAJ, které vždy přehraje nový zvukový záznam. Pokud pacient nestihne postřehnout zvukový záznam či si není jist správnou odpovědí, je možné zvukový záznam znovu přehrát pomocí tlačítka PŘEHRAJ ZNOVU. To se objeví až poté, co je stisknuto tlačítko PŘEHRAJ. Počet opakování přehrávání zvukového záznamu není omezen. Níže pod těmito tlačítky je uveden aktuální stav hodnocení – nebylo odpovězeno, odpovězeno špatně, nebo odpovězeno správně. V aktivní oblasti se nyní nachází odpovídací tlačítka. Ta slouží ke zvolení správné odpovědi – správnému výběru obsahu přehraného zvukového záznamu. V levém dolním rohu je vidět skóre pacienta – počet správně zvolených odpovědí, počet špatně zvolených odpovědí, počet zvukových záznamů, pro které pacient nevybral žádnou odpověď – nebyly odpovězeny a celkový počet přehrávání zvukových záznamů (součet stisků tlačítka PŘEHRAJ a PŘEHRAJ ZNOVU). Tyto údaje jsou pouze orientační a slouží pouze k informaci pro pacienta. Na každém snímku se počítá skóre zvlášť a začíná vždy od 0. Těžší variantou je TEST2. I zde jsou přehrávány zvukové záznamy, které po vyslechnutí musí pacient určit. Vzhled snímků v této části je téměř totožný se vzhledem snímků z části TEST1. Rozdíl mezi testy TEST1 a TEST2 spočívá v aktivní oblasti stránky. V části TEST1 byla do této oblasti umístněna odpovídací tlačítka. V části TEST2 je zde umístěno okénko pro vkládání odpovědi, kam uživatel zapisuje správnou odpověď (obsah zvukového záznamu, který byl přehrán) pomocí klávesnice. Zde je nutné odpovídat podle daných pravidel (rozlišovat velká a malá písmena, psát háčky a čárky, dodržovat interpunkci ve větě a na jejím konci). Po potvrzení správnosti zapsané odpovědi je pacientova odpověď porovnávána s položkami v databázi odpovědí. Všechna tato pravidla se nacházejí v externí nápovědě, nebo pod tlačítky NÁPOVĚDA v nabídkové liště programu. V případě nedodržení těchto pravidel bude odpověď vyhodnocena jako špatná. V případě že pacient není schopen určit správnou odpověď, je v aktivní části stránky ještě umístěno tlačítko UKAŽ SPRÁVNOU ODPOVĚĎ, Martina Nejepsova 67 po jehož stisku se zobrazí očekávaná odpověď. V tomto případě však už nelze na otázku odpovědět. Uživateli ale stále ještě zůstává možnost vyslechnout si opakovaně zvukový záznam, který neurčil správně či na něj neodpověděl. TEST3 je nejtěžší a zároveň nejflexibilnější varianta testu. Opět musí pacient vyslechnout zvukový záznam a poté určit jeho obsah. Po spuštění MS – TEST3 se uživateli zobrazí hlavní nabídka, kde se nachází pouze odkazové tlačítko NASTAVENÍ TESTU, jehož stisknutím přejde pacient na první stranu nastavení testu – VÝBĚR KAPITOL. Zde již záleží na uživateli, zda zvolí pouze jednu kapitolu či naopak všechny. Lze vytvořit libovolné kombinace uvedených kapitol. Vždy však musí být zvolena minimálně jedna kapitola, aby mohl být test spuštěn. V případě, že uživatel neoznačí žádnou z kapitol, nebude mu umožněno pokračovat v dalších nastaveních a spuštění testu. Uživatel bude vyzván k nápravě chyby. K označení a zrušení výběru kapitol slouží CheckBoxy zatrhávací políčka. Pro výběr či zrušení výběru všech kapitol v dané sekci (SLABIKY, SLOVA, FRÁZE) slouží tlačítka OZNAČ VŠE a ZRUŠ VŠE. Po výběru kapitol uživatel pokračuje v dalším nastavení testu. Volí si mluvčího pro testové zvukové záznamy. Na výběr má 3 varianty – muž, žena, muž i žena. Dále pak má uživatel má možnost volby, zda si chce test ztížit a přidat si na pozadí zvukových nahrávek šum či ruch. Výběr je opět z 10ti možností – bez šumu, bílý šum, růžový šum, hnědý šum, bable šum, industriální šum, tikot hodin, ruch ulice, hudba, déšť. Přednastaveno je přehrávání zvukových záznamů BEZ ŠUMU. Poslední volba pacienta se týká délky testu. Zde je možné zvolit počet zvukových záznamů, které budou při testu použity – 10, 20 a 30 zvukových záznamů. Po tomto nastavení si uživatel spustí test dle jeho vlastního výběru. Obr.2: Vzhled části TEST3 Vzhled testové stránky je na Obr.2. Oproti části TEST2 se v dolní části stránky nachází dvě tabulky. Výše středu položená tabulka zobrazuje správné a uživatelem zadané odpovědi. Vše se zobrazí až po potvrzení odpovědi. Zde si uživatel může zkontrolovat, zda odpověděl podle 68 Martina Nejepsova vzoru či případně kde udělal chybu. Ve spodní tabulce se zobrazuje stav odpovědí. K pozici označující číslo přehraného zvukového záznamu se přiřadí zelený nápis OK v případě správné odpovědi nebo červený X v případě odpovědi špatné. V tomto testu neexistuje možnost pokračovat na další zvukový záznam bez zvolení odpovědi. Obtížnost tohoto testu spočívá nejen v tom, jak si uživatel test nastaví. Hlavním rozdílem od předchozích testů je pouze jedna možnost zapsání odpovědi. V testu TEST2 měl uživatel možnost si zvukový záznam libovolně mnohokrát přehrát a libovolně mnohokrát napsat a potvrdit odpověď. V testu TEST3 je možné zvukový záznam libovolně mnohokrát přehrávat, ale pokud již uživatel potvrdí odpověď, provede se vyhodnocení a zobrazí se tlačítko PŘEHRAJ pro další zvukový záznam. Po skončení testu se uživateli zobrazí VYHODNOCENÍ – souhrn informací o úspěšnosti absolvovaného testu. Kromě počtu správných a špatných odpovědí, je zde vypočtena úspěšnost odpovědí v procentech, dále počet přehrání a opakování zvukových záznamů a vypočtený aritmetický průměr počtu poslechů zvukového záznamu. V dolní části zůstává tabulka se stavy odpovědí na jednotlivé zvukové záznamy. Pro nové spuštění testu si uživatel může vybrat, zda provede nové nastavení testu, či spustí znovu test s totožným nastavením. 3.3. Nápověda Program MS obsahuje dva typy nápověd – nápovědu umístěnou na každé stránce programu a externí nápovědu, která je uložena spolu s programem na CD jako textový soubor Nápověda.pdf. Obsah obou typů nápověd je přibližně shodný. Nápovědy umístěné na každé stránce programu zobrazují pouze informace související s obsahem stránky. Externí nápověda shrnuje veškerou problematiku ovládání programu MS – výuky i testovacích částí. 4. Testování Pro ověření správné funkce programu a odstranění případných chyb bylo třeba provést kontrolu programu a jeho testování. Při kontrole byla zjišťována správná funkčnost všech tlačítek, přiřazení zvukových záznamů a jednotnost vzhledu uživatelského rozhraní. První testování (white-box test), vycházelo ze znalosti vnitřní logiky programu. Bylo zaměřeno především na kontrolu správné funkčnosti rozhodovacích bodů. Snahou bylo vybrat co nejvíce vstupních nastavení tak, aby bylo dosaženo všech výstupních stavů, a to každý více než jednou u každého rozhodovacího bodu. Druhé testování (black-box test) bylo prováděno osobou – fiktivním uživatelem, jenž neměl informaci o skriptu programu. Cílem testera bylo užívat běžně program tak, jak ho následně budou užívat pacienti. Při nalezení nesrovnalosti oproti specifikaci použití dané autorem byla zapsána chyba. 5. Závěr Hlavním cílem bylo vytvořit terapeutickou pomůcku – programovou aplikaci s výukovou a testovací částí. Výsledná podoba aplikace byla ovlivněna požadavky odborníků z foniatrické kliniky 1. LF UK a také komentáři pacientů k předchozí verzi programu. Z důvodu zpětné vazby byl vytvořen dotazník spokojenosti pacientů s funkcí programu MS. Je rozdělen na několik částí. První část se týká pacienta – věku, pohlaví a jeho znalosti s ovládáním PC a tím i možnost vzniku problémů s instalací programu nebo jeho užívání. Další části se již týkají vzhledu programu, srozumitelnosti ovládání, kvality zvukových nahrávek a obtížnosti jednotlivých částí programu – výukové i testovací části. V poslední části pacient vyplní celkové hodnocení programu. Z doposud příchozích dotazníků byla zjištěna spokojenost pacientů s programem MS a to nejen po vzhledové stránce, ale i po stránce obsahové. Za problematickou část byla Martina Nejepsova 69 ohodnocena sekce SLABIKY, neboť zvukové záznamy jsou krátké a pro pacienty těžko postřehnutelné a následně rozpoznatelné. Trend hodnocení obtížnosti testovacích částí programu odpovídá jejich pořadí v programu a tedy i předpokladům autora. Poděkování Tento výzkum byl podporován z grantu GAČR č. 102/08/H008 "Analýza a modelování biologických a řečových signálů", z výzkumného záměru MŠMT MSM6840770012 "Transdisciplinární výzkum v oblasti biomedicínského inženýrství 2" a grantu GAČR č. 102/08/0707 "Rozpoznávání mluvené řeči v reálných podmínkách", Reference [1] [2] [3] [4] [5] [6] [7] [8] Brožek, Stanislav: Diplomová práce - Multimediální slabikář ČVUT, Praha 2008 Psutka, Josef; Müller, Luděk; Matoušek, Jindřich; Radová, Vlasta: Mluvíme s počítačem česky, ACADEMIA Praha 2006 Adobe Creative Team: Adobe Flash CS3 – oficiální výukový kurz, Computer Press a.s., Brno 2008 Shupe, Rich; Rosser, Zevan: Learning Action Script 3.0 – A Beginner’s Guide, O’Reilly Media Inc., Sebastopol 2007 Bureš, Zbyněk: Objektivní hodnocení kvality zvuku, ČVUT FEL, Praha, 2005 Pollák, Petr: Metody odhadu odstupu signálu od šumu v řečovém signálu, Akustické listy č. 7, 2001 Centrum kochleárních implantací u dětí: http://www.ckid.cz, 15.5.2009 Help programu PRAAT verze 4.5.18 70 Josef Rajnoha Robustní rozpoznávání spojitých promluv kombinující metody potlačování šumu a průběžnou adaptaci akustických modelů na prostředí Josef Rajnoha České vysoké učení technické v Praze, Fakulta elektrotechnická [email protected] Abstrakt: Při použití rozpoznávačů řeči v reálném prostředí je potřeba zajistit robustnost systému vůči šumovému pozadí, jehož přítomnost významně ovlivňuje úspěšnost rozpoznávání. Tento příspěvek prezentuje algoritmus pro zvýšení robustnosti rozpoznávače řeči založený na kombinaci modifikovaného spektrálního odčítání a adaptace modelů na provozní podmínky. Experimenty na signálech z automobilového prostředí ukazují významný přínos algoritmu pro snížení chybovosti rozpoznávače, ve velmi hlučných podmínkách je chyba snížena až o 87% na hodnotu 1,65%, což odpovídá hodnotám úspěšnosti standardních rozpoznávačů v čistých podmínkách. 1. Úvod Úloha automatického rozpoznávání řeči je vzhledem k roli, kterou řeč zaujímá v lidské komunikaci, významným oborem v oblasti zpracování signálů. Při použití rozpoznávače řeči v reálných podmínkách je ale signál ovlivněn rušením, což negativně působí na jeho výslednou přesnost. S ohledem na velkou proměnlivost, které je typická pro reálné prostředí, není možné získat dostatečně reprezentativní data, aby byl systém na takové podmínky předem natrénován. Je proto potřeba použít metody, které vliv těchto rušivých podmínek co nejlépe potlačují. Metody pro zvýšení robustnosti rozpoznávače řeči mohou být aplikovány v různých blocích systému. Při předzpracování signálu jsou používány metody potlačování šumu, zvýrazňování řeči a robustní parametrizace. V oblasti akustického modelování pak nalezneme metody robustního trénování akustických modelů, kombinace modelů řeči a šumu nebo adaptace akustických modelů na šumové prostředí. Vhodnou kombinací těchto algoritmů pak lze docílit vysoké úspěšnosti rozpoznávání řeči i v nepříznivých akustických podmínkách. Článek shrnuje návrh robustního algoritmu rozpoznávání řeči pro reálné prostředí automobilu. Systém využívá nástrojů HTK [6], které umožňují aplikovat algoritmy pro potlačování vlivu rušivých podmínek a realizovat úlohu rozpoznávání spojité řeči s velkým slovníkem (LVCSR). V této práci jsou provedeny experimenty se zaměřením na studium vlivu jednotlivých algoritmů pro zvýšení robustnosti rozpoznávače. Ty proto probíhají na jednodušších úlohách s ohledem na snadné pozdější rozšíření. Josef Rajnoha 2. 71 Robustnost v akustickém modelování Prezentovaný algoritmus pro zvýšení robustnosti rozpoznávače řeči kombinuje efektivní předzpracování řečového signálu pro použití v šumových podmínkách s adaptačními technikami pro přizpůsobení akustických modelů konkrétním provozním podmínkám. 2.1. Parametrizační techniky Současné rozpoznávače řeči nejčastěji využívají pro reprezentaci řečového signálu standardní parametrizace MFCC či PLP. Obě metody simulují zpracování signálu lidským uchem, ovšem v hlučném prostředí je tato reprezentace řečového signálu pro účely rozpoznávání stále nedostačující. Standardní příznaky proto bývají doplněny algoritmy pro potlačování šumu ve frekvenční oblasti, jako je spektrální odečítání. Tyto algoritmy odhadují šumové pozadí v pauze řeči, nejčastěji s využitím detektorů řečové aktivity (VAD), jejichž úspěšnost ale obvykle s vyšší mírou zašumění signálu výrazně klesá. V této práci je využit algoritmus rozšířeného spektrálního odčítání [4], který pracuje bez využití VAD. Algoritmus využívá rozdílné rychlosti změn spektrálních charakteristik řeči a šumu a výše zmíněnou nevýhodu VAD obchází kombinací Wienerovy filtrace se spektrálním odečtem. 2.2. Přizpůsobení akustických modelů Častým postupem při tvorbě rozpoznávače řeči pracujícího v hlučném prostředí je přizpůsobení akustických modelů čisté řeči provozním podmínkám. Toho lze dosáhnout přetrénováním modelů na vybrané sadě dat, která reprezentuje konečné provozní podmínky. Obdobným procesem k přetrénování akustických modelů je adaptace, která na základě adaptačních dat hledá transformaci (nejčastěji lineární), vedoucí na modely lépe vystihující předložená data. Přetrénování na šumových datech Je-li k dispozici sada dat, která reprezentují provozní prostředí rozpoznávače, lze provést standardní přetrénování (retraining) na bázi Baum-Welchova reestimačního algoritmu. Tento postup je shodný s běžným trénovacím procesem, proto je snadno realizovatelný. Nevýhodou ovšem je potřeba velkého počtu dat, aby snadno nedošlo k “nadtrénování” (overtraining) modelů a tím ztrátě schopnosti modelovat obecné podmínky na úkor modelování trénovacích dat. Navíc je pro kvalitní přetrénování všech modelů kladen důraz na použitá data, především dostatečná fonetická bohatost databáze. Proto je tento postup vhodný především v případě předem známého a víceméně neměnného prostředí, nebo pro případ přizpůsobení modelů základním parametrům systému – použitý mikrofon, typ prostředí. Přetrénování je vhodné provádět ve více cyklech. Adaptace modelů – MLLR Adaptační algoritmus MLLR [1] na základě předložených adaptačních dat transformuje původní akustické modely na nové tak, aby věrohodněji modelovaly data v adaptační sadě. S ohledem na možnost sdílení transformačních matic pro více modelů je typicky využíván v situaci, kdy je k dispozici méně dat pro adaptaci. To je i případ adaptace na průběžně se měnící prostředí v automobilu. Transformace mohou být sdíleny pro jednotlivé třídy modelů (regresní třídy), určené na základě analýzy adaptačních dat nebo podobnosti modelů. Toto seskupení modelů pak ovlivňuje i objem dat potřebný pro určení vhodné transformace, což je podstatné především v případě průběžné adaptace, kdy je k dispozici jen velmi omezené množství dat. 72 Josef Rajnoha Vzhledem k uvedeným vlastnostem adaptačního algoritmu lze, na rozdíl od procesu přetrénování, provádět přizpůsobení modelů průběžně během rozpoznávání a sledovat tak efektivně změny v pozadí signálu. 2.3. Kombinace metod potlačování šumu a adaptace akustických modelů Aplikací metod potlačování šumu v rámci parametrizace signálu dojde k potlačení šumového pozadí, ovšem dochází také k ovlivnění řečového signálu. Kombinací těchto metod s adaptačními technikami lze dosáhnout potlačení vlivu nepříznivých změn v signálu nejen v důsledku použitých algoritmů, ale také změn způsobených dalšími jevy (Lombardův efekt apod.) 3. Experimenty Obr. 1 zobrazuje blokové schema navrženého systému. Blok předzpracování signálu pro parametrizaci signálu s volbou algoritmu spektrálního odečtu je následován blokem přizpůsobení modelů zobrazujícím adaptační schema. Ve schematu jsou dále zobrazeny sady dat, potřebné pro jednotlivé fáze přizpůsobování modelů. vstupní signál adaptační sada parametrizace trénovací sada přetrénování bloková MLLR ESS inkrementální MLLR přizpůsobení modelů předzpracování signálu rozpoznání výsledek rozpoznávání rozpoznávání Obrázek 1: Blokové schema rozpoznávacího systému 3.1. Použitá databáze Pro experimenty s proměnným reálným prostředím byla použita databáze nahrávek z automobilu. Ta obsahuje nahrávky od 700 mluvčích zachycené ve dvou kanálech. V experimentech je použit kanál ze vzdáleného mikrofonu (far-talk - 700 mluvčích) a z blízkého mikrofonu (close-talk - 329 mluvčích). Nahrávky byly rozděleny na tři sady – trénovací (500 resp. 242 mluvčích), adaptační (100/42) a testovací (100/42), které určují, v jaké fázi přípravy modelů byly využity. Navíc byl každý mluvčí nahráván v rozdílných podmínkách, které jsou označeny podle stavu motoru automobilu jako “OFF” pro stojící automobil s vypnutým motorem, “ON” pro stojící automobil se zapnutým motorem a “DRV” pro jedoucí automobil. Tyto jednotlivé podskupiny byly poté využity pro popis podmínek, na něž byly modely přizpůsobeny. Josef Rajnoha 3.2. 73 Přetrénování modelů Schema na obr. 2 zobrazuje proces přizpůsobení modelů na jednotlivé šumové podmínky. Jako výchozí jsou použity modely řeči nahrávané v čistém prostředí kanceláře (OFFICE). Ty jsou následně přetrénovány na čistých datech z automobilu (OFF – fáze I), aby se přizpůsobily zvolenému mikrofonu a prostředí automobilu. Z hlediska provozu rozpoznávače řeči v reálných podmínkách to odpovídá stavu, kdy existují modely řeči z jiného prostředí a je známo, jakým mikrofonem a v jakém obecném prostředí bude rozpoznávač provozován (např. prostředí automobilu, bez bližší specifikace typu vozu). Přetrénování je provedeno ve třech cyklech. V návaznosti na [3], kde je podrobněji rozebrán vliv trénování modelů v obecných šumových podmínkách na rychlost a úspěšnost adaptace modelů na konkrétní šumové podmínky, byl také proveden experiment s natrénováním výchozích modelů na smíšené trénovací množině obsahující všechny tři podskupiny “OFF”,“ON” a “DRV” (fáze II). V důsledku toho obsahují takto přetrénované modely počáteční informaci o hluku v automobilu, což přispívá ke zvýšení efektivity následné adaptace. 3.3. Bloková adaptace Přizpůsobené modely jsou v dalším kroku (fáze III resp. IV) adaptovány na konkrétní podmínky v jednotlivých podskupinách “OFF”,“ON” a “DRV”. Tak je zjištěn vliv adaptace při různých stupních zašumění. Transformační matice, generovaná v průběhu adaptace, je v uvedených experimentech vytvořena pro dvě základní třídy modelů – modely řeči a modely pauzy. S ohledem na předchozí experimenty je v popsaných experimentech transformován pouze parametr střední hodnoty. OFFICE 3-pass I OFF+ON+DRV=MC OFF II MLLR III OFF ON DRV OFF ON DRV IV zpětná MLLR OFF Obrázek 2: Postup přizpůsobení akustických modelů Po adaptaci na hlučné podmínky v sadě “DRV” ve fázi III byla také provedena adaptace zpět na tiché prostředí automobilu “OFF”. Cílem této zpětné adaptace je zjistit míru ovlivnění modelů adaptačním procesem, kdy je systém střídavě adaptován na výrazně odlišné podmínky. 3.4. Průběžná adaptace Pro experimenty s průběžnou adaptací na prostředí byly použity modely z fáze I. Nahrávky z adaptační sady, obsahující sled číslovek, byly rozpoznávány a na základě výsledků docházelo k průběžné adaptaci modelů, viz obr. 1 – inkrementální adaptace. Nahrávky byly předkládány systému postupně tak, aby byla simulována situace, kdy se rozpoznává delší promluva, během níž se mění šumové pozadí. 74 3.5. Josef Rajnoha Testovací prostředí Pro testování vlivu blokové adaptace byla zvolena úloha rozpoznávání českých číslovek s použitím unigramového jazykového modelu. Tuto úlohu lze v další práci rozšířit i na úlohu rozpoznávání řeči s velkým slovníkem. Vzhledem k blokovému zpracování, kdy dochází k adaptaci modelů na datech od více mluvčích, realizuje experiment rozpoznávání nezávislého na mluvčím. Vliv průběžné adaptace je opět testován na úloze rozpoznávání číslovek, s ohledem na použití dekodéru podporujícího inkrementální adaptaci ale není použit unigramový model, ale gramatika se smyčkou stejně pravděpodobných slov. Výsledky jsou shrnuty ve formě chyby na úrovni slov WER = 100·(D +S +I)/N [%], která shrnuje počet smazaných (D), zaměněných (S) či chybně vložených (I) slov na celkový počet slov (N) v testovací promluvě. 4. Výsledky Tabulka 1 shrnuje výsledky rozpoznávače po blokové adaptaci na prostředí podle míry zašumění signálu a pro různá nastavení systému. Po přetrénování modelů na čisté trénovací databázi “OFF” (fáze I) dosahuje rozpoznávač chyby okolo 2% v prostředí stojícího automobilu i v případě zapnutého motoru (relativně stacionární šum). V prostředí jedoucího automobilu je ovšem chyba stále vysoká. Použití algoritmu potlačování šumu (ESS) tuto chybu významně snižuje, především v případě close-talk kanálu, kde je míra hluku nižší a to až o 61% pro parametrizaci PLP. Přetrénováním modelů na smíšené trénovací sadě (fáze II), která obsahuje i zašuměné položky, je dosaženo výrazně vyšších rozpoznávacích skóre, opět lépe patrných především ve velmi hlučném prostředí “DRV”. Tabulka také ukazuje, že i přes méně kvalitní data v této sadě nedochází k významnému snížení chyby rozpoznávání v čistém prostředí. Následná adaptace modelů na provozní podmínky přinesla další zlepšení, především v hlučném prostředí jedoucího automobilu. Dosažené výsledky přesahují i hodnoty získané po přetrénování základních modelů na smíšené trénovací sadě. V kanálu s větší mírou zašumění (far-talk) ale bylo dosaženo vlivem méně kvalitních modelů ve fázi IV vyšší chybovosti, než ve fázi III. Pozitivní vliv trénování na smíšené sadě na proces adaptace se tak ukazuje především pro close-talk mikrofon, kde rozpoznávač dosáhl chyby 1,65%. OFF MFCC PLP MFCC +ESS Far-talk I 2,56 2,3 2,14 II 2,69 2,14 2,24 III 3,17 4,03 2,3 IV 2,72 2,05 2,05 Close-talk I 2,09 1,3 1,39 II 1,57 1,3 1,22 III 2,09 1,57 1,39 IV 1,57 1,22 1,31 ON PLP MFCC PLP MFCC +ESS +ESS DRV PLP MFCC PLP MFCC +ESS +ESS PLP +ESS 2,24 2,59 2,34 2,46 2,28 2,9 1,75 2,68 2,15 3,24 1,56 3,21 2,68 1,71 2,34 1,93 1,9 2,34 2,06 2,46 16,9 12,46 7,36 10,43 17,08 8,91 6,25 7,42 14,58 9,96 6,48 8,17 15,39 7,73 6,82 6,7 0,96 0,96 0,87 0,96 1,43 1,15 1,29 1,09 2,04 3,67 1,97 3,26 0,95 1,02 0,95 0,95 1,09 0,68 0,88 0,61 27,57 4,75 2,77 2,92 12,6 2,8 6,22 1,87 11,65 5,62 2,14 1,93 4,91 2,45 2,26 1,65 Tabulka 1: WER pro blokovou adaptaci Josef Rajnoha 75 Experiment se zpětnou adaptací (obr. 3) ukazuje, že po adaptaci modelů, přizpůsobených tichému prostředí automobilu, na hlučné prostředí a zpět na tiché prostředí je dosaženo srovnatelných úspěšností před a po adaptaci a tím schopnost efektivního přizpůsobení proměnným podmínkám. Jen v případě parametrizace PLP, citlivější na přítomný šum, dochází k výraznému zhoršení, které je ovšem eliminováno použitím algoritmu potlačení šumu. MFCC PLP MFCC+ESS PLP+ESS Close-talk 8 7 6 5 4 3 2 1 0 WER [%] WER [%] Far-talk OFF DRV 8 7 6 5 4 3 2 1 0 OFF OFF DRV OFF Obrázek 3: WER pro zpětnou adaptaci Grafy na obr. 4 zobrazují průměrnou chybu dosaženou při inkrementální adaptaci, kdy není předem znám obsah promluvy a k adaptaci dochází na základě rozpoznaných výsledků. Výsledky pro far-talk mikrofon, zachycující více šumového pozadí, se příliš neliší od výsledků bez adaptace. To je způsobeno nižší úspěšností rozpoznání položek a tedy nižší přesností adaptace na tyto položky. Při použití close-talk mikrofonu je přínos adaptace již výrazný. MFCC PLP MFCC+ESS PLP+ESS Close-talk 25 25 20 20 WER [%] WER [%] Far-talk 15 10 5 15 10 5 0 0 3-pass MLLR 3-pass MLLR Obrázek 4: WER pro inkrementální adaptaci Použití spektrálního odečtu ovšem nepřispělo k zlepšení výsledků. Aplikací spektrálního odečtu dochází ke snížení šumového pozadí. Při adaptaci na těchto datech může proto docházet k chybnému rozpoznání nestacionárních ruchů, které algoritmus spektrálního odečítání neodstraní a tím k předložení chybných vstupů pro následnou adaptaci. Zvýšení chyby ovšem není výrazné a celý proces adaptace dává prostor pro nastavení systému, aby byl tento typ chyby potlačen. 5. Závěr Článek shrnuje výsledky rozpoznávání řeči v reálných podmínkách s vysokou mírou hlukového pozadí s použitím kombinace robustního předzpracování řeči a adaptace akustických modelů. Navrženým postupem bylo dosaženo výrazného snížení chybovosti rozpoznávače řeči v reálném prostředí automobilu. Závěry lze shrnout v následujících bodech: – Uvedený postup zpracování signálu využívá v rámci výpočtu parametrizace modifikovaný algoritmus spektrálního odčítání. V porovnání s čistou parametrizací MFCC či PLP 76 Josef Rajnoha bylo dosaženo výrazných zlepšení (až o 81% pro PLP). Výsledky srovnatelné se systémy používajícími VAD (např. [2]) ukazují jeho možné efektivní využití bez nutnosti detekce řečové aktivity. – I přes jednoduchou implementaci procesu adaptace na prostředí s dělením na dvě třídy modelů bylo dosaženo významných zlepšení. Výsledná chybovost 2,14% na nahrávkách pořízených v jedoucím automobilu ukazuje na vhodné vlastnosti algoritmu pro automobilové prostředí. Dalšího zlepšení výsledků lze dosáhnout inicializací modelů na datech z databáze obsahující i zašuměné signály (až 1,65% WER). – Experiment se zpětnou adaptací ukázal, že systém je možné přetrénovat na velmi rozdílné podmínky bez významné ztráty přesnosti. To ukazuje na vhodnost použití algoritmu pro úlohu průběžné adaptace na proměnné prostředí. – Při inkrementální adaptaci se projevila vyšší citlivost PLP parametrizace na přítomný šum oproti MFCC a náchylnost systému na chybovost rozpoznávače při adaptaci na neznámých promluvách. Vzhledem k počátečnímu jednoduššímu nastavení některých parametrů systému bude v další práci možné systém rozšířit pro zvýšení robustnosti systému. Především je možné zvýšit počet regresních tříd pro algoritmus MLLR, využít komplexnější jazykový model a výběrový algoritmus pro rozhodování o míře věrohodnosti rozpoznaných výsledků pro průběžnou adaptaci. Poděkování Tento výzkum byl podporován granty GAČR 102/08/0707 “Rozpoznávání mluvené řeči v reálných podmínkách”, GAČR 102/08/H008 “Analýza a modelování biologických a řečových signálů”, výzkumným záměrem MSM 6840770014 “Výzkum perspektivních informačních a komunikačních technologií”. Reference [1] Leggetter, C. J.; Woodland, P. C. Maximum likelihood linear regression for speaker adaptation of continuous density hidden markov models. Computer Speech & Language 9, 2 (April 1995), 171–185. [2] Matassoni, M.; Omologo, M.; Santarelli, A.; Svaizer, P. On the joint use of noise reduction and mllr adaptation for in-car hands-free speech recognition. In Proceedings of IEEE International Conference on Acoustics, Speech, and Signal Processing, 2002. (ICASSP ’02). 2002, vol. 1, pp. 289–292. [3] Rajnoha, J. Multi-condition training for unknown environment adaptation in robust asr under real conditions. Acta Polytechnica 49, 2-3/2009 (2009), 3–7. [4] Sovka, P.; Pollak, P.; Kybic, J. Extended spectral subtraction. In Proceedings of the 5th European Conference on Speech Communication and Technology Trieste, Italy, September 1995, pp. 963–966. [5] SPEECON project webpage. http://www.speechdat.org/speecon. [6] Young, S.; et al. The HTK Book (for HTK Version 3.2.1). Cambridge University Engineering Department, 2002. Jan Rusz 77 Rhythm evaluation in early untreated Parkinson’s disease Jan Rusz, and Roman Čmejla Czech Technical University, Faculty of Electrical Engineering [rusz;cmejla]@fel.cvut.cz Abstract: Parkinson’s disease (PD) is a neurological illness which impairs motor skills, speech, and other functions such as mood, behavior, thinking, and sensation. It causes vocal impairment for approximately 70-90% of the patients. The lower ability of rhythm perception may be one of the deficits in PD speech. Thus, we performed the vocal task of one rhythmically read text according performance of examinator for measuring of the ability to maintain appropriate rhythm. It is based on the modification of the dynamic time warping algorithm called derivative dynamic time warping. The automatical scripts for this measure were performed using Matlab environment. We collected speech data from 46 Czech native speakers, 23 with Parkinson’s disease. As an algorithm validation, speech performance of the each participant was evaluated by speech therapist. The voice of PD group demonstrated significant differences in maintaining the appropriate rhythm. 1. Introduction The term hypokinetic dysarthria (HD) is in use to describe characteristic disorder of speech corresponding to cardinal motor symptoms of Parkinson’s disease (PD) [1,2]. HD relates to restriction in range, speed and regularity of orofacial movements, and to deficits in respiration, phonation and phonetics. Speech can be defined as the ability to form reproducible sounds with certain semantic meanings. From a more operationalized point of view, the ability to speak can be subdivided into several dimensions, as speech respiration, phonation, articulation, and prosody [3]. Prosody again consists of distinct subdimensions, namely speech rhythm and velocity, articulation rate and speech pause ratio, speech intensity and pitch variation [3]. According to clinical experience, PD patients can show abnormalities related to all these speech dimensions, including monopitch, monoloudness, hypokinetic articulation,voice quality deficits, and a variable speech [3]. In this study, we focus on speech rhythm evaluation. 2. Methods 2.1. Subjects A grand total of 46 Czech native speakers were studied. Twenty-three individuals (19 men and 4 women) were diagnosed with an early stage of idiopathic PD ([mean age 61.74 (±SD 12.60), Hoehn and Yahr stage 1-2]). None of these PD subjects were not treated with symptomatic pharmacotherapy and did receive speech treatment. In addition, twenty-three neurologically healthy control (HC) speakers, including 16 men and 7 women ([mean age 58.08 (±SD 12.91)]). 78 Jan Rusz 2.2. Data The speech data was recorded in a sound-treated booth using an external microphone coupled to a Panasonic NV-GS 180 video camera. The voice signals were recorded directly to computer, sampled at 48 kHz, with 16-bit resolution. The vocal task consists of rhythmically read text of 8 rhymes following the example set by examinator. 2.3. Rhythm The purpose of the measure is to efficiently compare a similarity of the subject and reference speech records. However, one of the difficulties in speech recognition is that the precise timing and the duration of each subword within the word will not match. As a result, efforts to recognize words by matching them to templates will give inaccurate result if there is no temporal alignment. Solution suitable for use may be a dynamic programming technique called Dynamic Time Warping (DTW) [4]. It is used to accommodate differences in timing between sample words and templates. The basic principle is to allow a range of time frames in the space and to find the patch through that space that maximizes the local match between the aligned time frames. The total similarity cost found by this algorithm is a good candidate of how well the sample and template match. The patch which minimizes the warping cost is usually based on dynamic programming. To align two sequences algorithm construct matrix where the element of the matrix contains typically the Euclidean distance between two points: d = (x – y)2 . Although DTW has been successfully used in many domains, it can produce pathological results. The algorithm may try to explain variability in y-axis by warping the x-axis, and this can lead to unintuitive alignments where a simple point on one time series maps onto a large subsection of another time series. Another problem with DTW is that the algorithm may fail into find obvious, natural alignments in two sequences simply because a feature in one sequence is slightly higher or lower than its corresponding feature in the other sequence. See figure 1 for example performed on two synthetic signals. Both problems can be solved by introducing a modification of DTW called Derivative Dynamic Time Warping (DDTW) [5]. In the DDTW algorithms we calculate Euclidean distance as well, but from the derivations in the y-point, instead of the points themselves. This way we eliminate the issue with y-value differences, since we work directly with the waveform which is what really interests us. Figure 1: A) Two synthetic signals (with the same mean and variance). B) The natural “feature to feature” alignment. C) The alignment produced by dynamic time warping. Figure is obtained from [5]. This measure is computed using the following algorithm: a) Simply estimate derivative of xi Jan Rusz 79 D[ xi ] ( xi xi 1 ) (( xi 1 xi 1 ) / 2) . 2 (1) b) Calculate Short-Time Fourier Transform (STFT) for derivative sequence D for both records using 25% window overlap c) Construct the local match scores matrix as the Euclidian distance between the STFT magnitudes d) Use dynamic programming to find the lowest-cost path distance [ x, y ] between opposite corners of the matrix d ( [ x 1][ y 1]) (2) [ x, y ] d ( x, y ) min d ( [ x 1][ y ]) . d ( [ x], [ y 1]) e) Use the general cost of path distance as a classifier We measure rhythm similarity as lowest-cost path distance between opposite corners of the matrix. 2.4. Speech therapist validation In order to validate the algorithm results with speech therapist evaluation, all participants were examined with the 5 points rating scale. The rating scale values represent the speech performance of each subject. The value equal to 1 point signifies the progressing vocal impairment. The value equal to 5 represents the intact speech performance. 2.5. Statistics For obtaining statistically significant differences between the groups, we compare the measure of rhythm by using the non-parametric two-sided Wilcoxon rank sum test against the null hypothesis of equal medians, at a significance probability of 0.05. The Pearson product-moment correlation coefficient was done to ascertain the relationships between the score obtained from the speech therapist and the acoustic measure of rhythm. 3. Results Figure 2 shows an example of the optimal frame match path between the speech therapist sample and participant speech sample. There was significant differences between PD and HC groups (p = 0.069). The correlation between the speech therapist and the algorithm result was 56.05 % (r = 0.5605, p = 0.001) and thus complemented the correctness and validated algorithm performance. See table 1 and figure 3 for result details. 80 Jan Rusz 200 HC subject Therapist speech sample (N. of frames) Therapist speech sample (N. of frames) PD subject 400 600 800 1000 1200 1400 1600 200 400 600 800 1000 1200 1400 1600 2004006008001000 1200 500 100015002000 Speech sample (N. of frames) Speech sample (N. of frames) Figure 2: Details of measure used in testing of ability to maintain the appropriate rhythm. The figures represent the local match scores matrix as the Euclidean distance between the STFT magnitudes. The white lines show the lowest-cost path distance between opposite corners of the matrix obtained using the DDTW algorithm. The more linear line represents the greater regularity in maintaining the appropriate rhythm. Vertical axes represent the recording of the speech therapist; horizontal axes represent the testing subject. Parkinson's disease patients Healthy control subjects Subject code Algorithm result Speech therapist evaluation Subject code Algorithm result Speech therapist evaluation PD01 3.8494 2.1203 2.5025 HC02 2.1835 PD03 2.6646 HC03 2.1301 PD04 2.9067 HC04 2.3286 PD05 2.4391 HC05 2.0649 PD06 3.2977 HC06 2.3599 PD07 2.0246 HC07 2.3501 PD08 2.9789 HC08 2.0511 PD09 2.3886 HC09 2.3322 PD10 2.7233 HC10 2.5152 PD11 2.0640 HC11 2.8002 PD12 3.3589 HC12 2.3855 PD13 3.2443 HC13 2.8190 PD14 2.4221 HC14 2.3859 PD15 3.5301 HC15 2.1025 PD16 2.9036 HC16 2.0714 PD17 2.4868 HC17 2.2812 PD18 2.0101 HC18 1.8937 PD19 2.5075 HC19 2.8238 PD20 2.1102 HC20 2.0625 PD21 1.6337 HC21 1.9542 PD22 2.5960 HC22 2.3458 PD23 2.2658 3 4 4 5 4 2 5 3 4 3 5 4 4 5 2 3 3 2 3 4 4 3 4 HC01 PD02 HC23 1.7596 5 5 5 5 5 4 5 5 4 5 3 4 5 4 4 5 5 5 3 5 5 4 5 Table 1. Detailed results of rhythm and speech therapist evaluation. The lower algorithm value represents more rhythm accuracy. The speech therapist evaluation represent rating scores: 1 point=progressed speech impairment, 5 points=intact speech performance. Jan Rusz 81 Rhythm [−] 3.5 3 2.5 2 PD HC Figure 3: Differences between PD and HC groups in rhythm evaluation illustrated as the box plot. 4. Conclusions The significant differences in maintaining the appropriate rhythm was found in PD group. We believe the automatical measurement of rhythm will be useful in assessment of vocal impairment and will have a potential for positive feedback in speech treatment. Acknowledgement This study is supported by MSM6840770012 and GACR102/08/H008. We are obliged to doctors Hana Ruzickova, Evzen Ruzicka, Jan Roth, Jiri Klempir, Veronika Majerova, and Jana Picmausova for provision of clinical data. References [1] G. J. Canter, “Speech characteristic of patients with Parkinson’s disease. I. Intensity, pitch, and duration,” J. Speech Hear. Disord., 28, 221-229, (1963). [2] F. L. Darley, A. E. Aronson and J. R. Brown, “Differential diagnostic patterns of dysarthria,” J. Speech. Hear. Res., 12, 426-496, (1969). [3] F. L. Darley, A.E. Aronson, J. R. Brown, “Motor speech disorders,” Philadelphia: Saunders, (1975). [4] R. Turetsky, and D. Ellis, “Ground-Truth Transcriptions of Real Music from ForceAligned MIDI Syntheses,” In 4th International Symposium on Music Information Retrieval ISMIR-03, Baltimore, 135-141, (2003). [5] E. J. Keogh, and M. J. Pazzani, “Derivative Dynamic Time Warping,” In First SIAM International Conference on Data Mining, Chivaho, IL, (2001). 82 Adam Stráník Návrh frameworku pro zpracování signálů v reálném čase v prostředí .NET Adam Stráník České vysoké učení technické v Praze, Fakulta elektrotechnická [email protected] Abstrakt: V článku je popsána základní struktura frameworku pro zpracování dat z mikrofonního vstupu v reálném čase vyvíjeného v prostředí .NET, kde pro vstup je použitManaged DirectX. Jsou zde v krátkosti nastíněny možnosti zachytávání těchto dat a jejich zpracování. Aplikace realizovaná na základě postupů uvedených v tomto článku je schopna bez problémů zpracovávat a vykreslovat data získaná s vzorkovací frekvencí 44,1 kHz, 16 bity na vzorek. 1. Úvod Možnost záznamu a vizaulizace dějů v reálném čase má velmi praktické využití. Lze například snáze zkoumat a hodnotit různé děje, které jsou při offline analýze skryty, případně je obtížnější je přiřadit ke konkrétní příčině. Z tohoto důvodu začal vznikat framework, který je schopný v prostředí .NET načítat data ze zvukové karty a v reálném čase je parametrizovat a tyto parametry zobrazovat. V článku je nejprve proveden rozbor vybraných nástrojů, které lze použít pro zachytávání dat z mikrofonního vstupu, jsou představeny jejich možnosti, výhody a nevýhody. Dále bude popsána struktura dll knihovny, která samotné nahrávání obstarává a posílá data k dalšímu zpracování a nakonec budou vyjmenovány jednotlivé parametry, které lze pomocí vzniknuvšího frameworku v současné době počítat a zobrazovat. 2. Zachytávání zvuku Zachytávání signálu z mikrofonu je, s trochou nadsázky, nejobtížnější část celého procesu. Na první pohled se to nemusí zdát tak obtížné, ale v prostředí .NET neexistují knihovny, které by uměly přímo získávat data ze zvukové karty. Od verze .NET 2.0 existuje knihovna, která umí přehrávat wav soubory a systémové zvuky, nicméně programátor je od vlastního zařízení náležitě izolován - což je jeden z požadavků u interpretovaných jazyků. Programátor totiž nikdy neví, na jakém systému bude pracovat, proto jsou k dispozici pouze ty nástroje, které jsou dostatečně nezávislé na systému. K tomu bohužel přístup k hardware, jakým je zvuková karta, nepatří. Adam Stráník 2.1. 83 Přístup ke zvukové kartě V zásadě se nabízí několik možností, jak je možné se k datům ze zvukové karty dostat: • • • • winAPI - knihovna winmm.lib, DirectX, OpenAL, neoficiální nástroje Bohužel ne všechny výše zmíněné možnosti jsou plně funkční, jak bude popsáno na následujících stránkách. Jako nejpoužitelnější se prozatím ukázalo řešení pomocí DirectX, konkrétně s API1 DirectSound. Konkrétní řešení bude popsáno v části 2.2.. 2.1.1. Winmm.lib Jedná se o knihovnu, která je součástí Windows API. Tento fakt může být překážkou pro programátory, kteří nejsou sběhlí v programování ve winAPI. Jedná se o tzv. low-level přístup, to znamená o přístup k zařízení v té nejnižší programátorské vrstvě. Tento fakt zhruba říká, že knihovna obsahuje pouze nejzákladnější funkčnost, kterou je pro vážnější použití nutné obalit patřičnými obslužnými rutinami. Jedná se tedy o poměrně mocný nástroj, který ovšem není zcela snadné používat. Napsat efektivní aplikaci s tímto nástrojem vyžaduje mnoho zkušeností, což byl jeden z důvodů pro jeho zavrhnutí. Jako další důvod je ten, že aplikace je vyvíjena v prostřední .NET, které pracuje na vyšší vrstvě. Nebylo by tedy příliš elegantní snažit se programovat přes tuto vrstvu. 2.1.2. DirectX DirextX je dlouho a velmi dobře známou sadou API, kterou vyvíjí společnost Microsoft. Jedná se o sadu knihoven, které umožňují pracovat s periferiemi v systému Windows, ať už se jedná o grafiku, zvuk či vstup z klávesnice, myši či herní konzole. Současná verze, DirectX 10, která má podporu pouze na operačních systémech Windows Vista a novějších, například neobsahuje DirectSound a to z toho důvodu, že od této verze Windows je kompletně přepracován koncept zpracování zvuku. Při použití funkcí z DirectSound však dojde k emulaci, takže většina starších aplikací funguje. Nemají ovšem hardware akceleraci daného zařízení, protože k emulaci dochází pouze na úrovni operačního systému2 . K použití DirectX v .NET Framework je zapotřebí tzv. Managed DirectX (dále jen MDX). Jedná se o nadstavbu nad DirectX, která obsahuje zabalení většiny funkcí do takové podoby, aby vyhovovala filozofii tříd a jejich použití zavedené v .NET Framework. Byla vydána jediná oficiální verze, MDX 1.1, která dosahuje stejné funkčnosti jako DirectX 9. Další vývoj byl vzhledem k vydání Windows Vista zastaven. Verze MDX 2.0 je k dispozici pouze v beta verzi. K MDX bohužel neexistuje ucelená dokumentace, je proto nutné vycházet z dokumentace pro standardní DirectX, která je napsána v jazyce C++. API DirectSound naštěstí není natolik komplikované, proto není obtížné se zorientovat. MDX není standardní součástí DirectX, která je instalována v OS Windows automaticky a je nutné ji doinstalovat dodatečně. Ze strany Microsoftu není popsán jednotný postup, 1 Z anglického Application Programming Interface Akcelerací je zde myšleno například potlačení akustického echa, šumu pozadí apod., které v současné době zajišťují už DSP obvody na zvukových kartách. Nicméně tyto efekty jsou pro účely vlastního zpracování signálů nežádoucí. 2 84 Adam Stráník jak MDX doinstalovat, proto je toto téma poměrně často více či méně úspěšně řešeno na internetových fórech, např. [1] nebo [2]. Pro tuto aplikaci je zvolen postup, který kontroluje registry systému Windows a hledá, jestli je v nich obsažen určitý specifický klíč. Tento postup je zcela vyhovující. 2.1.3. OpenAL OpenAL, kde AL znamená Audio Library, je multiplatformní API, které zajišťuje přístup ke zvukové kartě. Původně byl tento nástroj vyvíjen jako prostředek pro převod her fungujících na systému Windows na Unixové systémy. Jedná se o velmi robustní API, které je zcela nezávislé na operačním systému a na platformě, na které funguje. Při jeho vývoji je dbáno na to, aby byl zcela zpětně kompatibilní a aby programátor, který ho používá, byl odstíněn od té nejnižší vrstvy. Syntaxe je pro programátora stejná na všech platformách, pouze se mění vlastní low-level rozhraní, čili ovladače zvukové karty. OpenAL tedy není možné provozovat na všech strojích ale pouze na strojích, které mají zvukovou kartu, pro kterou existují speciální ovladače. V současné době naštěstí existuje jen velmi málo výrobců zvukových karet, kteří by takové ovladače neposkytovali. Hlavní důvod, proč nebyl OpenAL vybrán je ten, že zatím neexistuje stabilní wrapper, který by zaobaloval vlastní API pro použití v .NET. Existuje však několik projektů, které se danou problematikou zabývají, např. [3] nebo [4]. Jedná se však o malé projekty, jejichž budoucnost je značně nejistá. Pokud by se však nějaký wrapper3 objevil, bylo by použití OpenAL velmi perspektivní. 2.1.4. Neoficiální nástroje Vzhledem k absenci nativních knihoven v .NET Framework, které by přímo přistupovaly ke zvukové kartě, se na internetu objevují více či méně úspěšné pokusy o vytvoření podobné knihovny. Většinou jsou však tyto projekty tvořeny jednotlivci nebo malými týmy. Jako méně úspěšný projekt bych uvedl projekt PortAudioSharp [5], který se snaží vytvořit obalovou vrstvu pro API PortAudio [6]. Je vyvíjen v operačním systému Linux, na platformě Mono. Poslední verze byla vydána v roce 2006 a sám autor píše, že se jedná o nestabilní a pomalý produkt. Navíc se nezdá, že by v jeho vývoji pokračoval. Jako poměrně ambiciózní se jeví projekt SlimDX [7]. Jeho vývojový tým si dává za cíl vytvoření podobného projektu jako byl MDX (viz část 2.1.2.). Z ohlasů v jejich diskuzních fórech lze usuzovat, že je jejich snaha úspěšná. Také lze jako pozitivní fakt brát, že tým vývojářů je poměrně široký a projekt tedy patrně neskončí při odstoupení některého z členů. 2.2. Implementace Při návrhu této části projektu byl kladen zvláštní důraz na to, aby bylo možné “kdykoliv” vyměnit nejspodnější vrstvu, to znamená samotný mechanismus nahrávání zvuku. Současné rozdělení objektů v projektu Recorder je znázorněno na obr. 1. Z návrhu by mělo být vidět, že byla vyvíjena snaha, aby programátor nepřistupoval přímo k třídě, která obstarává zachytávání zvuku, ale aby komunikoval, tzn. spouštěl a zastavoval nahrávání, přes připravený interface. K nastavování vlastností nahrávaného zvuku slouží statická třída Statics, která také obsahuje “instance” delegátů reprezentujících metody, jež mají být spouštěny před, během a po nahrávání. Rozdělení vrstev je na obr. 2. 3 Wrapper je jakýsi logický obal, typicky se používá v případě, kdy je volaný kód napsaný v jiném programovacím jazyce. Takový obal potom například zajišťuje jednotnou interpretaci volaného kódu. Adam Stráník 85 Obrázek 1: Rozvržení objektů v projektu Recorder 1 . v r s t v a 2 . v r s t v a 3 . v r s t v a Obrázek 2: Znázornění vrstev v projektu Recorder 2.2.1. Třída Statics Třída, která zvuk zachytává, si z informací ve Statics vybere ty potřebné a zpracuje je podle vlastních potřeb. 2.2.2. Třída DirectRecorder Třída DirectRecorder představuje vlastní nahrávací objekt. V něm se plní buffer, jehož data jsou následně pomocí delegátů předávána metodě, která provádí další zpracování zvukových dat. Metoda plnění bufferu je důležitou částí kódu, protože jakmile bude tato rutina pomalá čí špatně implementovaná, nebude možné ji v dalších částech procesu zpracování dat jakýmkoliv způsobem vylepšit. V MDX je možné k datům v bufferu přistupovat, i když je buffer neustále plněn novými daty, protože v něm existuje tzv. write cursor, který ukazuje na pozici, kam je právě zapsán 86 Adam Stráník nový vzorek ze zvukové karty. Dále lze do tohoto bufferu umístit značky (zarážky), které vyvolají událost, jakmile se na jejich pozici ocitne zapisovací kurzor. Tento mechanizmus lze vhodně využít v případě, kdy je pro nahrávání použito vlákno, které se uspí a je probuzeno pouze v okamžiku zápisu na pozici označenou výše zmíněnou zarážkou. Potom se z bufferu přečte určitý úsek dat, který je možné dále zpracovávat - k tomu slouží delegáty SoundProcessOperations 8bits, případně SoundProcessOperations 16bits. Tento děj ilustruje obr. 3. Obrázek 3: Rozdělení bufferu v DirectSound Pokud je délka bufferu dostatečná, alespoň 2 bloky, lépe však více, lze buffer plnit cyklicky. Je empiricky otestováno, že při daném způsobu implementace je vhodná délka bloku alespoň 64 ms. Kratší délka je možná, ovšem na pomalejších strojích může nastat situace, kdy se nějaký blok nezpracuje včas a následující blok bude přeskočen a tím pádem nezpracován. Je to způsobeno především tím, že pomalejší procesor nepřidělí procesu nahrávání dostatečnou prioritu. 3. Implementované metody DSP V současné době jsou implementovány následující DSP algoritmy, které jsou počítány v reálném čase: • • • • • • FFT, spektrální výkonová hustota, autokorelace, LPC koeficienty, energie, ZCR. Pro jednodušší použití je ve frameworku implementován SoundBuffer. Jedná se o kruhový buffer, ze kterého je možné jednoduše a efektivně vyčítat data na libovolné pozici v rámci tohoto bufferu, případně získat obsah bufferu ovážený některým implementovaných váhovacích oken. Mějme signál x[n] a buffer délky N. Pak je možné v jakémkoliv čase v rámci bufferu získat vzorek x[n − k], kde k < N . Adam Stráník 3.1. 87 FFT Není provedena vlastní implementace, pouze obálka nad funkcemi knihovny Exocortex.DSP. Tato obálka přizpůsobuje použití této knihovny vytvářenému frameworku. Byla testována i implementace v knihovně AForge.NET, ale tato knihovna neumí počítat FFT nad signály delšími než 215 vzorků, což může být v některých případech omezující. 3.2. Spektrální výkonová hustota Je použita Welchova metoda výpočtu spektrální výkonová hustoty, která průměruje L po sobě jdoucích krátkodobých výkonových spekter Si [k] délky M L−1 1 X |Si [k]|2 . Ŝx [k] = L i=0 M 3.3. (1) Autokorelace Autokorelační funkce je počítána jako inverzí Fourierova transformace spektrální výkonové hustoty signálu v daném bloku (podle Wiener - Chinčinovy věty). Sx (ejΘ ) = F F T {Rx [k]}. (2) Implementovaný vztah má potom tvar Rx [n] = <{IF F T {F F T {a[n]}F F T {a[n]}∗ }} , Rx [0] (3) kde a[n] je zpracovávaný úsek signálu doplněný nulami na dvojnásobnou délku a Rx [0] je nultá hodnota autokorelační funkce (čili energie signálu), která zbavuje měřítko výsledné autokorelační funkce závislosti na energii. Okno signálu je zvětšeno na dvojnásobnou délku kvůli vlastnostem Fourierovy transformace. Použitý způsob výpočtu má výpočetní složitost O(N log N ), zatímco klasický způsob v časové oblasti N −n−1 1 X x[k]x[k + n] (4) Rx [n] = N k=1 má výpočetní složitost O(N 2 ). 3.4. LPC koeficienty K výpočty LPC koeficientů je použit Levinson - Durbinův algoritmus. Tento algoritmus má výpočetní složitost O(N ) složitost, kde N je řád odhadovaného AR modelu. Je nutné si ovšem uvědomit, že k výpočtu je nutné znát prvních N členů autokorelační funkce, která je, jak je zmíněno výše, počítána se složitostí O(N log N ). Podrobnější popis algoritmu je např. v [9] nebo [10]. 3.5. Energie K výpočtu energie je použit standardní vztah N −1 1 X E[n] = x[n − k]2 , N k=0 který má lineární výpočetní složitost O(N ). (5) 88 Adam Stráník Při výpočtu v reálném čase může být využito klouzavého okna a aktualizace En = En−1 − x[n − N − 1]2 + x[n]2 , (6) kde En je hodnota energie v aktuálním okně délky N, En−1 je hodnota v předchozím okně délky N, x[n − N − 1] je hodnota vzorku, ze kterého se okno právě odsunulo a x[n] je hodnota aktuálního vzorku. Vychází se z předpokladu, že před počátkem nahrávání jsou v okně nulové hodnoty a že E−1 = 0. Tento výpočet sice probíhá v konstantním čase, ale jednak je prostorově (paměťově) více náročný a jednak je nutná aktualizace s každým novým vzorkem. 3.6. ZCR Počet průchodů nulou je dán vztahem N −1 fs X ZCR[n] = Π{x[n − k]x[n − k − 1] < 0}, 2N k=0 (7) kde f s je vzorkovací frekvence signálu, N je délka okna, ve kterém je funkce ZCR počítána, Π{A} je funkce, která vrací 1, pokud je argument A pravdivý, jinak vrací 0. Výsledná hodnota je potom přímo v Hz. I v případě výpočtu ZCR je možné použít metodu aktualizace podobně jako při výpočtu energie a to pouze s tím rozdílem, že v bufferu je místo vrozků uložen výstup z funkce Π. 4. Závěry V práci jsou popsány možnosti, jak lze zachytávat signál z mikrofonního vstupu zvukové karty v reálném čase v prostředí .NET. Jsou rozebrány různé nástroje, které je možné k tomuto účelu použít a je zhodnocena jejich použitelnost v praxi. Dále je zde popsána struktura dll knihovny, která za tímto účelem vznikla. Popsaná metoda je prakticky otestována na základních DSP algoritmech, které jsou rovněž implementovány v prostředí .NET. Všechny zmíněné algoritmy je možné zároveň bez problému počítat a zobrazovat v reálném čase při fs = 44,1 kHz a kvantování 16 bitů na vzorek. Reference [1] Installing managed directx [online]. [2006] [cit 2008-11-11]. Dostupný z WWW: <http://social.msdn.microsoft.com> [2] Install Managed DirectX9 over standard DirectX9 installation [online]. [2006] [cit 2008-11-11]. Dostupný z WWW: <http://www.tech-archive.net> [3] OpenAL .NET Framework [online]. [2007] [cit. 2009-02-08]. Dostupný z WWW: <http://sourceforge.net/projects/openal-net-sdk>. [4] OpenAl.NET [online]. [2007] [cit. 2009-02-08]. <http://sourceforge.net/projects/openaldotnet>. Dostupný z WWW: [5] GEROSA, Ricardo. PortAudioSharp [online]. 2006 [cit. 2009-02-06]. Dostupný z WWW: <http://www.postronic.org/h3/software/sw-portaudiosharp.html>. Adam Stráník [6] PortAudio [online]. [2001] [cit. <http://www.portaudio.com/>. [7] SlimDX [online]. [2008] [cit. <http://slimdx.mdxinfo.com/wiki> 89 2009-02-09]. 2009-02-08]. Dostupný z WWW: Dostupný z WWW: [8] MONO [online]. 2009 [cit. 2009-02-05]. Dostupný z WWW: <http://www.monoproject.com/>. [9] PSUTKA, Josef, et al. Mluvíme s počítačem česky. Praha: Academica, 2006. 752 s. [10] SOVKA, Pavel, POLLÁK, Petr. Vybrané metody číslicového zpracování signálů. Praha: Vydavatelství ČVUT, 2003. 258 s. 90 Barbora Vokáčová Stimulace zpracování řečových signálů u dětí s vývojovou dysfázií pomocí arteterapeutických technik a strategií Barbora Vokáčová Univerzita Karlova v Praze, 1. lékařská fakulta [email protected] Abstrakt: Cílem výzkumného projektu je potvrzení hypotézy, že arteterapeutické techniky a strategie zmírňují nebo eliminují symptomy vývojové dysfázie. Výzkumný projekt je na začátku, a proto tento rok budeme především vybírat arteterapeutické techniky a strategie, které jsou efektivní vzhledem k symptomatologii vývojové dysfázii. Zároveň se nyní pracuje na vytvoření výzkumných skupin dvou věkových kategorií, kdy dvě skupiny budou klienti s výše uvedenou komunikační obtíží a další dvě intaktní skupiny. Výsledky terapeutického působení budou vzájemně porovnány a vyhodnoceny. 1. ÚVOD Cílem výzkumného projektu je potvrzení hypotézy, že arteterapeutické techniky a strategie zmírňují nebo eliminují symptomy vývojové dysfázie, především obtíže v oblasti zpracování řečových signálů [9, 10]. Tato konkrétní vývojová porucha řeči je „charakterizována specifickým řečovým vývojem, který je především aberantní“ [3]. Široká symptomatologie zasahuje osobnost celostně a zároveň jedinečně, kdy u každého klienta se symtomatologie projevuje v různých oblastech a různé míře. „…arteterapie je teoreticky zakotvené působení na člověka jako celek v jeho tělesné, psychické a duševní realitě, v jeho vědomém i nevědomém snažení, sociálních a ekologických vazbách, plánované ovlivňování postojů a chování pomocí umění a technik z umění odvozených, s cílem léčby či zmírnění nemoci a integrace či obohacení osobnosti“ (Petzold, [4], [6]). Jedna z mnoha artetrapeutických definic plně vystihuje náš předpoklad, že vhodně zvolené arteterapeutické techniky a strategie působí nejen na konkrétní symptom, ale mají velký vliv na člověka celkově. K výše uvedenému výzkumu nás vede jednak skutečnost, že neustále roste počet klientů s diagnózou vývojová dysfázie. Terapie je velmi náročná a je otázkou, jestli terapeutické působení by nebylo vhodné rozšířit o prostředky uměleckých terapií, které působí na klienta celostně. Arteterapie je dalším možným nástrojem k rehabilitaci a celostnímu rozvoji osobnosti, kdy osobní prožitek a vlastní zkušenost výrazně determinují rozvoj kognitivních procesů, a právě tato oblast je pro klienty s vývojovou dysfázií zásadní vzhledem k jejich řečovému vývoji. 2. VÝVOJOVÁ DYSFÁZIE Vývojová dysfázie je centrální porucha komunikační schopnosti. Jedná se o specificky narušený řečový vývoj s dvojí patofyziologií [3, 5, 8]: A) specifická centrální sluchová porucha Barbora Vokáčová 91 B) všeobecná nespecifická korová porucha. Může se projevovat neschopností nebo sníženou schopností verbálně komunikovat, i když podmínky pro vytvoření této schopnosti jsou dobré: - nevyskytují se závažné psychiatrické, neurologické nálezy - inteligence je přiměřená - nevyskytuje se závažná sluchová, zraková vada - sociální prostředí je podnětné Symptomatologie u vývojové dysfázie se projevuje ve všech jazykových úrovních, kdy základní příčinou je porucha centrálního sluchového zpracování řeči. Rozvoj aktivní slovní zásoby je pomalý, v řeči se objevují dysgramatismy. Obtíže se objevují v percepci, diskriminaci, syntéze a analýze, paměti (především krátkodobé fonologické), diferenciaci, produkci atd. Nesnáze se objevují i ve vývoji orofaciální motoriky. Tato porucha přesahuje rámec fatické poruchy. S deficity se setkáváme i v oblastech: - jemné a hrubé motoriky - grafomotoriky - prostorové a časové orientace - pozornosti - paměti - motivace - emocionality - zájmovosti - dysfatici jsou lehce unavitelní - často se vyskytuje nevyhraněná lateralita PŘÍČINY dysfázie: - funkcionální – vyplývají z nedostatků společenského prostředí - organické – nevyzrálá CNS, LMD, poškození mozku v pre, peri nebo postnatálním období. Neurologický nález může být i negativní. - kombinované Dítě si uvědomuje své nedostatky a obvykle ztrácí zájem o dorozumívání mluvenou řečí. Řečový vývoj stagnuje a dítě spoléhá více na neverbální způsoby – gesta, ukazování apod. Objevuje se výrazná diskrepance mezi verbální a neverbální složkou. Obtíže jsou i v gramatické stavbě řeči, buď jako různý stupeň dysgramatismu nebo větná patlavost. Většinou si děti vytvářejí konstantní deformovanou realizaci slov, takže rodiče se naučí takovým projevům rozumět. Stávají se tak překladateli pro ostatní. 3. ARTETERAPIE VS. VÝVOJOVÁ DYSFÁZIE Koherentní arteterapeutické systémy odvozují svou odlišnost od plně využívaného procesu výtvarné tvorby: „Arteterapeutická teorie vychází z teorie umění a psychoterapeutických škol. Arteterapie je součástí jasně definovaného léčebného (psychoterapeutického) procesu. Je třeba odlišovat psychoterapii užívající artetechnik od arteterapie. Zatím co v psychoterapii jsou artetechniky zařazovány cíleně a izolovaně, zpravidla proto, aby byl získán materiál pro 92 Barbora Vokáčová zpracování určitého tématu, v arteterapii jde o využití plnohodnotného kanálu pro komunikaci a introspekci. Neverbální tvořivá činnost zde slouží nejen pro otevírání, ale i pro zpracování témat.“ (Stiburek in Slavík, [7]). „Arteterapie představuje léčebný systém odvozený od teorie a aplikačních postupů psychoterapie, který obsahuje jasně definované nástroje. Přičemž do terapeutického vztahu vstupuje výtvarný artefakt a proces výtvarné tvorby, které se z části nebo zcela stávají základním terapeutickým prostředím. Přičemž tvořivá činnost vede nejen k otevírání, ale i zpracování terapeutického obsahu, a vede k požadované změně“. [4] Tvořivý proces přináší rozvoj osobnosti celkově. Na základě vlastního prožitku a zážitku vznikají nové zkušenosti, tudíž bychom mohli říct, že tvůrčí proces stimuluje kognitivní stránku jedince. Zároveň je člověku posilována i emocionální, sociální a komunikakční oblast. Z výše uvedeného jasně vyplývá předpoklad, že tvůrčí proces je vzhledem k symptomatologii vývojové dysfázie velmi důležitý a účinný. Na základě symptomatologie vývojové dysfázie nabývá na důležitosti trend multisenzoriality, kdy stěžejním terapeutickým kamenem pro náš projekt je propojení audio – hapticko – vizuálního cítění. Haptické vnímání neproudí jen skrze ruce, ale je nutný pohyb, tzn. motorika. Haptika je důležitá, jelikož v rukách je uloženo vše, dotyk sám se sebou i vůči okolí = něco se nás dotýká a my se něčeho dotýkáme, což vede k impulsu, a to nás vede a „rozhýbe nás“ [11]. Z toho vyplývá hypotéza, že arteterapeutické techniky, které stojí na základě audio-hapticko- vizuálního spojení nás vedou k pohybu, tudíž jsou velmi vhodné pro stimulaci vývoje a rozvoje nejen intaktní populace, ale především pro celostní vývoj a sebenahlížení klientů s vývojovou dysfázií, u kterých je toto „rozhýbání“ nesmírně důležité vzhledem k jejich vývoji. PLÁNOVANÉ TECHNIKY jsou: ruční malba – sluchové fonematické uvědomování a diferenciace (vokály, měkčení, výšky tónů, stejné/jiné atd.) práce s hlínou - sluchové fonematické uvědomování a diferenciace (vokály, měkčení, výšky tónů, stejné/jiné atd.) - Hliněné pole [11, 12] – speciální arteterapeutická technika, která vede k 1) možnost opory 2) je nám k dispozici 3) zprostředkuje to, co jsme vytvořili - zpětná vazba Ačkoliv plánované techniky podporují především stimulaci sluchového zpracování řečového signálu, rozvíjí všechny výše uvedené oblasti – tedy působí na osobnost celostně prostřednictví nového zážitku a zkušenosti díky audio – hapticko – vizuálnímu cítění. S technikou práce na „Hliněném poli“ jsme se seznámili v Německu. Hlavním představitelem této techniky je v Německu arteterapeut Heinz Deuser [1, 2]. Technika je určena pro děti i dospělé, kteří mají různé psychologické obtíže. Díky seznámení s dvěma žáky Heinze Deusera, vyškolenými arteterapeuty, nám byla dána možnost seznámit se s prací na Hliněném poli. Intervence těchto dvou artetrapeutů je směřována především na klienty s ADHD syndromem. Jejich výsledky práce byly natolik inspirativní, že považuji za vhodné tuto techniku zařadit také do výše zmíněného projektu. Jelikož klienti s vývojovou dysfázií mají velmi často obtíže s koncentrací pozornosti a motorikou, věříme v účinnost Hliněného pole u této konkrétní vývojové poruchy. Barbora Vokáčová 93 4. PLÁN VÝZKUMU Z výše uvedeného vyplývá, že stojíme na samém začátku. Základním předpokladem v nejbližší době je vytvoření výzkumných skupin. V plánu je vytvořit minimálně čtyři skupiny, v ideálním případě maximálně šest skupin. Základní bude rozdělení podle věku 1) 3-5 let, 2) 5-7 let. Ke každému věkovému intervalu budou vytvořeny v ideálním případě tři skupiny: 1) klienti s vývojovou dysfázií – terapie „klasická“ 2) klienti s vývojovou dysfázií – terapie „arteterapeutická“ 3) kontrolní skupina. Dále budeme vyhledávat a vybírat vhodné arteterapeutické techniky pro tento projekt. Za cíl si v prvním roce klademe i upřesnění metod hodnocení a výběr statistických metod k objektivnímu hodnocení. Metodika i konkrétní techniky se budou v průběhu projektu upravovat. Během druhého a třetího roku výzkumu budou probíhat výzkumná sledování, která se postupně zpracují a vyhodnotí. Výsledkem předkládaného projektu by v ideálním případě mělo být potvrzení hypotézy, že vybrané arteterapeutické techniky a strategie zmírňují nebo eliminují symptomy vývojové dysfázie. Arteterapeutické techniky a strategie v plné míře využívají princip zkušenosti, prožívání, hry, tvořivosti. Činnostní pojetí a vlastní zážitek klienta posilují osobnost v mnoha stránkách. Vzhledem k danému projektu budeme vyhledávat, upravovat a zobecňovat právě ty strategie a techniky, které především stimulují zpracování řečového signálu a kognitivní stránky osobnosti důležité pro komunikační schopnosti a dovednosti (percepce, diferenciace, produkce atd.). Vzhledem k ojedinělosti tématu v rámci České republiky je na místě spolupracovat i s odborníky ze zahraničí, kdy první kontakt se podařil na Psychiatrické klinice v Tübingenu (Německo). 5. PODĚKOVÁNÍ Tento výzkum je podporován z grantu GAČR 102/08/H008 “Analýza a modelování biomedicínských a řečových signálů”. 94 Barbora Vokáčová Seznam pramenů a použité literatury [1] Deuser, H. a kol. Der haptische Sinn. Hamburg: Verein für Gestaltbildung e. V., 2009. [2] Deuser, H. Im Greifen sich begreifen. Keutschach: Gerhild Tschachler-Nagy, 2007. [3] Dlouhá, O. Vývojové poruchy řeči. Praha: Publisher, 2003. [4] Hrouzek, P. Arteterapie ve speciální pedagogice. Účinné faktory vývojové arteterapie integrativní přístup. Disertační práce, Masarykova Univerzita, Brno, 2006 [5] Mikulajová, M; Rafajdusová, I. Vývinová dysfázia. Bratislava: 1993. [6] Petzold, H., Orth, I. Die neuen Kreativitätstherapien, Handbuch der Kunsttherapie. Band I. Paderborn: Junfermannsche Verlagsbuchhandlung, 2001 [7] Slavík, J. Umění zážitku, zážitek umění. I. a II. díl. Praha: UK Pedagogická fakulta, 2001 a 2004. [8] Škodová, E., Jedlička, I. Základy klinické logopedie. Praha: Portál, 2004. [9] www.artefiletika.cz [10] www.arteterapie.cz [11] www.tonfeld.de [12] www.tonfeld-ammerbuch.de Petr Zetocha 95 Zpřístupnění strukturované databáze dětských promluv Petr Zetocha České vysoké učení v Praze, Fakulta elektrotechnická [email protected] Abstrakt: V příspěvku je popsán FRVŠ projekt č.2453/2008 s názvem Návrh a realizace strukturované databáze dětských promluv. Projekt byl zaměřen na vytvoření databáze dětské mluvené řeči pro tvorbu trénovacích a testovacích datových souborů. Výhodou databáze je snadná přístupnost přes webové rozhraní (pouze pro oprávněné uživatele) a rozmanitost výběru zvukových dat od jednotlivých hlásek až po celá slovní spojení. Databázi mohou využívat studenti, kteří navštěvují předměty vyučující zpracování číslicových a řečových signálů. V současné době databáze obsahuje promluvy od 103 dětí ve věku 4 až 10 let. Jedná se převážně o zdravé děti a děti s vadou řeči. Cílem projektu bylo vytvořit vhodné prostředí pro správu databáze a pro práci s databází. Zpřístupnění databáze dětských promluv snad bude studenty motivovat k většímu zájmu o zpracování řečového signálu a jeho analýze. Celý projekt byl koncipován jako databázové prostředí v MySQL na Linuxovém serveru s možností komunikace přes webového klienta pomocí PHP skriptů.. 1. Úvod Projekt byl zaměřen na vytvoření databáze dětské mluvené řeči. Na vytvoření finální databáze a webového prostředí se kromě autora článku podíleli Pavel Růžička (PHP solution architect), Krystýna Tučková (WEB designer), Marek Bártů (database architect). Nahráváním a zpracováním dětských promluv se zabývala celá skupina LANNA. Celý projekt byl po formální i odborné stránce zaštítěn doc. Ing. Janou Tučkovou. Existence databáze dětské řeči je důležitá z důvodu rozvoje kvality moderních metod používaných při zpracování řečového signálu. Strukturovaná databáze dětských promluv by měla sloužit studentům při výběru konkrétních dat pro tvorbu trénovacích a testovacích datových souborů některých algoritmů číslicového zpracování signálů, zejména řečových. Výhodou databáze je snadná přístupnost přes webové rozhraní a rozmanitost výběru zvukových dat od jednotlivých hlásek až po celá slovní spojení. V současné době tvoří řečový korpus promluvy od 103 dětí ve věku 4 až 10 let. Jedná se o zdravé děti a děti s vadou řeči, nahrávky byly pořízeny ve školkách a na prvním stupni základních škol. Snadná přístupnost a různorodost ve výběru dat z databáze je motivujícím faktorem pro práci studentů na cvičeních nebo při řešení semestrálních a bakalářských projektů, bakalářských a diplomových prací. Podobná databáze v minulosti na ČVUT FEL neexistovala. Informace o existence podobné databáze dětské řeči na ostatních technických vysokých školách nebyla dosud nalezena. 2. Postup řešení K dispozici jsme měli více než 5,5 hodin záznamů dětské řeči. V první fázi projektu jsme pomocí programu pro úpravu zvuku (Cool Edit 2000, fakulta je vlastníkem licence) upravili všechny nahrávky do předem dané struktury. Nahrávka od každého mluvčího byla rozčleněna na samostatně vyslovené promluvy, kterými jsou hlásky, slova až věty – celkem 11 promluv (viz tabulka 1). Dělení nahrávek na menší úseky bylo nutné z hlediska rychlejšího zpracování a přehlednosti. Ve druhé fázi jsme ke každé promluvě vytvořili textový soubor (tzv. label 96 Petr Zetocha soubor) obsahující informace o pozicích jednotlivých fonémů v promluvě. Textové soubory jsou významnou součástí databáze, díky které je uživatel schopen vybírat konkrétní hlásky i z celých slov. V poslední fázi jsme uživatelům zpřístupnili databázi dětských promluv přes relační databázi MySQL, která je umístěna na Linuxovém serveru katedry Teorie obvodů pod názvem ajatubar.feld.cvut.cz. Pro správce databáze jsme vytvořili webovou administraci MySQL databáze (viz obrázek 2). Webové prostředí (viz obrázek 3), ze kterého je možné čerpat informace uložené v MySQL je stále rozšiřováno o nové komponenty. Student si na webové stránce vytvoří dotaz, na serveru dojde k výběru požadovaných dat a studentovi se na výstupní stránce zobrazí výsledné informace (viz obrázek 4). V referencích jsou uvedeny knihy, které byly využívány v poslední fázi projektu. skupina promluva foneticky_prepis Samohlásky a a Souhlásky m m Slabiky prst prst Dvouslabičná slova papír papi:r Tříslabičná slova dědeček J\edet_Sek Čtyřslabičná slova motovidlo motovidlo Víceslabičná slova mateřídouška mateQ\i:do_uSka Zdvojená slova pohádková víla poh\a:tkova: vi:la Narůstání řady slov pramen s živou a mrtvou vodou pramen s Zivo_u a mrtvo_u vodou Složená věta Když šla Červená Karkulka lesem k babičce gdiS Sla t_Servena: karkulka g babit_Sce Složená věta potkala zlého vlka potkala zle:h\o vlka Sluchová difereniace ječí jet_Si: Sluchová difereniace ježí jeZi: Tabulka 1: Skupiny promluv, výběrové příklady promluv a jejich fonetická transkripce Sloupec Typ ID_dite int(11) ID_promluva int(11) ID_skupina int(11) lpc varchar(250) Sloupec Typ ID_dite int(11) alias varchar(10) prijmeni varchar(20) jmeno varchar(20) narozeni date pohlavi enum('M', 'Z') status enum('zdrave', 'nemocne', 'vada') vek int(11) poznamka text Sloupec Typ ID_dite int(11) ID_skupina int(11) Sloupec Typ ID_promluva int(11) ID_promluva int(11) ID_soubor int(11) skupina varchar(100) soubor varchar(120) ID_skupina int(11) label varchar(120) promluva varchar(50) nahrano date foneticky_prepis varchar(50) poznamka text poznamka text zkratka varchar(8) Obrázek 1: Popis propojení hlavních tabulek v databázi Petr Zetocha 97 Obrázek 2: Ukázka webového prostředí pro správu databáze Obrázek 3: Ukázka přihlašovací webové stránky 98 Petr Zetocha Obrázek 4: Ukázka webového rozhraní pro výběr dat Obrázek 5: Ukázka výstupní stránky 3. Závěr Navrhli jsme a vytvořili strukturovanou databázi dětských promluv. Tato databáze obsahuje promluvy 70 zdravých dětí a 33 dětí s vadou řeči (nevysloví /r/). Děti jsou ve věku 4 až 10 let. Protože na každé dítě připadá asi 11 typů promluv (viz tabulka 1 - skupiny promluv, výběrové Petr Zetocha 99 příklady promluv a jejich fonetická transkripce), výsledná databáze se skládá ze čtyř hlavních tabulek – tabulka informací o dětech, tabulka informací o promluvách, tabulka informací o souborech a tabulka propojující uvedené tabulky (viz obrázek 1). Pro správu databáze byl použit MySQL software, který komunikuje s webovým prostředím pomocí PHP skriptů. Každá jednotlivá promluva byla podrobně popsána až na úroveň fonému (label soubor). Informace o fonémech a jejich pozicích ve zvukovém souboru jsou uloženy ve stejném adresáři jako zvukový soubor. Vytvořené webové prostředí dovoluje administrátorům spravovat MySQL databázi a umožňuje studentům definovat vlastní množiny vstupních dat, vhodných pro jejich experimenty (http://ajatubar.feld.cvut.cz/data/index.php). Přenos požadovaných dat je v současnosti řešen generováním tabulky v novém webovém okně. Pro rychlejší přenos dat se zobrazuje vždy jen 1000 řádků. Využitím webového okna jsme obešli nutnost vytvářet unikátní dočasné tabulky výsledků na straně databázového serveru. V budoucnosti budou také řešeny i jiné typy exportů výsledků. 4. Poděkování Tento příspěvek byl vytvořen za podpory grantu GAČR 102/08/H008 „Analýza a modelování biomedicínských a řečových signálu”. Výsledky uvedené v příspěvku čerpají z projektu FRVŠ č.2453/2008 „Návrh a realizace strukturované databáze dětských promluv“. Reference [1] Gilmore W. Jason: Velká kniha PHP a MySQL 5 - kompendium znalostí pro začátečníky i profesionály, Zoner Press, leden 2007, ISBN: 80-86815-53-6 [2] Luke Welling, Laura Thomson: PHP a MySQL - rozvoj webových aplikací, 3 vydání, SoftPress, 2005, ISBN: 80-86497-83-6 [3] Michael Kotlet: Mistrovství v MySQL 5 - Kompletní průvodce webového vývojáře, Computer Press, 2007, ISBN: 978-80-251-1502-2
Podobné dokumenty
BAKALA´RˇSKA´PRA´CE Jan Kadlec Prıstupy pocˇıtacˇove´ho
Univerzita Karlova v Praze
Matematicko-fyzikálnı́ fakulta
analýza a zpracování řečových a biologických signálů sborník prací
v oblasti číslicového zpracování signálů a aplikačním zaměřením na zpracování biomedicínských a řečových signálů a navazuje na sborníky vydávané od roku 2005.
Sborník dává přehled o jednotlivých vý...
Vyhodnocován´ı vad reci det´ı s vyuzit´ım algoritmu DTW
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, ...