Sborník 2006 - České vysoké učení technické v Praze

Transkript

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