Úvod do zpracování přirozeného jazyka
Akustika¶
- hlediska
- fyzikální: zvuk jako vlnění
- fysiologické: tvorba/percepce zvuku (řeči) u člověka
- molekulární
- digitální: zpracování
- zvuk charakterisován amplitudou a frekvencí
- rychlost zvuku závisí na teplotě, hustotě prostředí, tlaku, …
Hmotný bod na nehm. pružině¶
- okamž. výchylka: y = ymax sin(ωt)
- ω - úhlová rychlost periodického jevu ω=2π/T=2πF [rad/s]
- kmitání v reálu vždy tlumené
Kmitání¶
- vlastní kmity - bez působení vnějších sil
- vynucené - způsobené buzením - působění vnějšího prostředí
- resonance - malá budící síla může způsobit velké kmity
Akustický tlak, ~ intensita¶
- intensita
- množství energie, které projde jednotkovou plochou za jednotku času
- [Wm-2]
- I = P / S (intensita = tlak / plocha)
- tlak
- síla působící na element plochy v prostředí vlnivého děje
- [Pa]
- sinusový průběh
- a. intensita je úměrná 2. mocnině a. tlaku
Vnímání zvuku - intenzity¶
- práh citlivosti (cca 20μPa), práh bolesti (cca 130 Pa)
- intensita nevnímána lineárně
- jednotka hladiny intensita - Bel - rozsah slyšení cca 13 B
- šepot 10-20 dB
- hovor 55 dB
- vzlet letadla 190 dB
Základní, složený tón¶
- základní - průběh sinusoida
- složený - kombinace zákl. tónů, nepravidelný průběh
- rozklad zvuku - e.g. Fourierova transformace (dále FT)
Fysiologická akustika¶
- Helmholtzova resonanční teorie
- Bekesy - výzkum fce cochlei
vytváření řeči¶
- rozkmitají se hlasivky, vzniklý zvuk modifikován v resonančních dutinách
Vnímání zvuku¶
- ušní boltec
- zvukovod
- ušní bubíne - kmitá, přenáší energii na kosti stř. ucha
- Eustach. trubice - do úst, vyrovnávání změn tlaku
- oválné okénko
- cochlea (hlemýžď) - vlákánka o délkách vln. délek vnímaných zvuků, napojena na nervy → generování signálu o zvuku
Produkce řeči¶
- Brocova oblast v mozku
- artikulační vzorce sekvencí zapojení svalů pro produkci slov
- Wernickeho oblast
- sluchové vzorce, významy slov
Fonetika¶
- koartikulace - fonémy vedle seme se ovlivňují → alofony (difon, trifon, …)
- problémy při rozpoznávání řeči a synthese
- přepis - většinou v unicode, 7bit ASCII - SAMPA, ..
Formanty¶
- Určující pro rozpoznávání samohlásek
- Formant F1 vzniká rezonancí v dutině ústní
- Formant F2 vzniká rezonancí v dutině hrdelní
Digitalisace akustického signálu¶
- vzorkování - převod souvislého signálu na diskrétní hodnoty
- kvantisace - posloupnost reálných čísel na pos. integerů
- kódování - způsob uložení vzorků
Vzorkování¶
- if se data nemají ztratit, vz. frek. aspoň 2x vyšší než nejvyšší frekvence, jež je v signálu - shanonův vzorkovací theorem
- vzorek = okamžitý signál = většinou napětí/proud
Kvantisace¶
- počet integerů = počet úrovní kvantování
- kvantisační krok - jakému intervalu hodnot ve vstupním signálu odpovídá jedna jednotka na výstupu:
- Na vstupu je signál s amplitudou 128 mA (-128 - 127 mA).
- 8bitová kvantizace - 256 kvantizačních úrovní
- kvantizační krok = 256 [mA]/256 [kvantizačních úrovní] = 1[mA]
- běžně 8, 16, 24 bitů
Kódování¶
- PCM - přímé ukládání hodnot
- + jednoduché zpracování
- - malé rozdíly mezi hodnotami
- - redundance dat
- řeší se diferenčním PCM (ukládání rozdílů) nebo adaptivním (kvant. krok určen podle amplitudy vstupu)
Zpracování digitalisovaného signálu¶
Krátkodobá analysa¶
- zvuk je periodický na krátkém intervalu → mikrosegmenty (10-40 ms)
- časová / frekvenční oblast
- použití mikrosegmentu → způsobuje chybu → kompensace okénkem
- posloupnost vah pro vzorky v mikrosegmentu
- hammingovo okénko
- pravoúhlé okénko
Analysa v časové oblasti¶
- hodnoty vzorků, nikoliv spektra
- fce krátkodobé energie
- citlivá na změny v signálu, 2. mocnina zvyšuje dynamiku výstupu
- fce krátkodobé intensity
- krátkodobá fce středního počtu průchodů nulou
- diferenční klasifikátory
- krátkodobá korelační fce
- zjišťování periodicity základního tónu řeči
Analysa ve frekvenční oblasti¶
- krátkodobá FT
- kepstrální analysa
- lineární prediktivní analysa
- ???
- Diskrétní FT, Fast FT,
Kepstrální analysa¶
- modelování řečového ústrojí
- odezva lineárního systému na buzení
Lineární predikce¶
- efektivní
- přesné odhady parametrů při malé zátěži
- předpoklad, že vzorek lze popsat kombinací předchozích vzorků a buzení
- určování spektrálních charakteristik modelu hlasového ústrojí
- z chyby predikce lze odvodit poznatky o znělosti a určit frekvenci základního
tónu
- koeficienty ai nesou informaci o spektrálních vlastnostech
- lze je použít jako příznaky pro rozpoznávání řeči
Rozpoznávání řeči¶
Cíle¶
- příkazy uživatele, převod mluv. slova na text, …
Rozpoznávání isolovaných slov¶
- povely pro navigaci, řízení, telefon, …
- není nutno řešit hranice slov
- omezený slovník
- trénování na uživateli
- obvykle používají vektror příznaku získaný krátkodobou analysou
- obtíže při detekci hranic slov
- šum vs. sykavky
- detekce nahodilých šumů
- oklusivy obsahuji pausy
- přítomnost infrazvuků (?)
Porovnávání vektorů … some shit I dont understand at all
Klasifikátory¶
- porovnávání slov metodou DTW (Dynamic Time Warping)
- porovnávání dvou dynam. jevů, jež probíhají různě rychle
- klasifikátory založ. na statických metodách
- modelování pomocí HMM (Hidden Markov Models)
- hierarchické klasifikátory
- hierarchická analysa signálu - akustika, segmentace, fonetika, rozpoznávání
- podobně v plynulé řeči
Metoda DTW¶
- borcení časové osy
- porovnávání dvou úseků promluvy, vyjádřených vektory příznaků
- počítá vzdálenost mezi nimi
- vybírá dva úseky s největší shodou (aka nejmenší vzdáleností) → pravděpodobně to správné slovo
- vzdálenost - např. Euklidovská
a lot of gibberish
Markovův model¶
- stochastický model, který pracuje s markovovým atributem
- stochastický = náhodný; stochastický proces (funkce) je soubor náhodných veličin, jehož stav závisí nedeterministicky na předchozích stavech
- stochastický proces má markovův atribut, jestliže jeho budoucí stavy závisí pouze na současném stavu a nikoliv na minulých stavech
Hidden Markov Model¶
- statistický Markovův model, v němž se modelovaný systém považuje za Markovův proces, jehož stavy jsou nepozorova(tel)né (hidden)
- skryté jsou stavy, jimiž model prochází, nikoliv jeho parametry
Metoda HMM (Hidden Markov Models)¶
- vychází z toho, že hlas. ústrojí se v určitém čase promluvy nachází v nějaké z konečné množiny konfigurací, v dalším časovém úseku přejde do následující konfigurace
- Kvantizací akustických vektorů (vytvořením kódové knihy) lze dosáhnout konečnosti
všech parametrů odpovídajícího modelu
Rozpoznávání plynulé řeči¶
- nelze mít databasi vzorů
- prosodie (intonace, …)
- segmentace slov
- nutno používat jazykové modely
- HMM vrátí stejnou pravděpodobnost např. pro slova "máma" a "nána" → "máma" je častější - vhodné použít "máma"
- → hledání nejpravděpodobnější promluvu
- úspěšnost rozponávání: 50-99 %
- lze zvýšit
- znalostí tématu promluvy - změní se pravděpodobnost n-gramů (sell honey / sell money?)
- užití gramatiky
Gramatiky pro podporu rozpoznávání řeči¶
- zvyšují úspěšnost, snižují volnost vyjadřování
- bezkontextové gramatiky
- JSGF - původně definována v Java Speech API
- SRGS - součást standardů W3C Voice Browser Activity
- Určeny pro tvorbu dialogových a hlasových rozhraní.
Synthesa řeči¶
- psaný text nutno přepsat fonetickou transkripcí
- pak podle toho vytvořit mluvenou řeč
- případně zpracovat post-processingem kvůli prosodii, větným přízvukům, pauzám, …
Druhy synt. řeči¶
- ve frekvenční oblasti
- v časové oblasti
- korpusová
- problémově orientovaná
Synthesa ve frekvenční oblasti¶
- emulace hlasového ústrojí (FM (Frekvenční Modulace) synthetisator)
- ukládá se
- frek. charakteristika hlasu
- parametry buzení
- systém frek. generátorů (aka hlasivky), filtry, zesilovače
- ovládáno parametry modelu
- LPC - wat?
- +: paměťové nároky
- -: robotické hlasy; pokud se to negeneruje softwarově → náročné; neexistuje na to dost přesný matemat. model
Využití¶
- dříve - HW slabá zařízení (Atari, …)
- dnes - HW slabá zařízení… xD (málo paměti)
- v časové oblasti se doplňuje o prosodii
Synthesa ve časové oblasti¶
- spojování navzorkovaných segmentů z databáze (hlásek, slabik, slov, …)
- když větší segmenty
- lepší modelace charakteristik hlasu
- náročnost na paměť - až 2n segmentů (n = délka seg.)
- alofony
- každý foném má 3 alofony (podle okolí) - obsahují okolí
- n3
- difony
- trifony
- slabiky
- nejednoznačné dělení
- cca 10k slabik
- slabičné segmenty uměle definovány, řeší nejednoznačnost
- slabičné typy: V, KV, KVK, KKV (dna), KKVK (dmout)
- segmenty z korpusu
- korpus musí obsahovat segmentační značky, fonetický přepis a průběh formantu F0
- rámce
Posprocessing¶
Prosodie¶
- výška, hlasitost, doba trvání (slabik)
- větná intonace
- přízvuky, důrazy (modifikace F0 a intensity)
- (chvění hlasu, zbarvení tónu, …)
- (pausy, zaváhání)
- výška základního tónu - formant F0 - no…prostě…já nevím…
Odvozené pros. vlastnosti¶
- emfatický přízvuk - emotivní zabarvení hlasu
- opakování - e.g. neuvědomělé doplňení promluvy, buď zdůraznění nebo vada
- výplňová slova
- korekce částí promluvy (přeřeknutí, oprava, zpřesnění)
Dialogové systémy¶
- informační systém s dialogovým rozhraním
- údajně přirozenější…heh
- použití:
- ovládání sys. bez použití končetin
- navigace, telefony, armáda, …
- imobilní / jinak indisponovaní useři
- GUI - paralelní
- hlasové ovládání - sekvenční
Komponenty dial. systému¶
- rozpoznávání řeči
- sémantický analysator
- význam promluvy
- užívá user profile, doménové znalosti (jaká data se zadávají, co přibližně může od usera čekat etc.), kontext dialogu
- dialogový manažer
- rozhoduje o dalším kroku v dialogu
- generátor sdělení
- generuje sdělení podle požadavků dialogového manažeru
- hlasový sythetiser (Text To Speech)
Dialogová strategie¶
- jak se dialog povede
- hodnotící fce dialogu přiřazuje číslo podle úspěšnosti dialogu pro danou stranu
- dialogy kooperativní, nekooperativní, s nulovým součtem
- multimodalita
- komunikace na více kanálech (obraz, zvuk, hmat)
Implementace¶
- telefonní
- VoIP (Voice over IP)
- PSTN (Public Switched Telephone Network) - přepínaná telef. síť
- textová
Protokoly¶
- VoIP
- SIP (Session Initiation Protocol) - přenos signalisace v internetové telefonii, používán e.g. v VoIP
- JSFG (Java Speech Grammar Specification) - universální zápis gramatiky
- SRGS - def. způsob odkazování a zápisu gramatik (pravidel), std. od W3C VBA (viz níže)
- XML (Extensible Markup Language), Augmented BNF (Backus-Naur From) - různé zápisy týchž gramatik
- W3C Voice Browser Activity
- návrh standardů pro přístup k WWW hlasem a telefonem
- VoiceXML
- popis dial. rozhraní
- formuláře (konečné automaty) / menu, stavy dialogu, přechodu pomocí URI (identifier) odkazu
- SISR (Semantic Intepretation for Speech Recognition)
- std W3C
- přiřazování významu slovům a promluvám
- spjat s ECMA, SRGS
- SSML (Speech Synthesis Markup Language) - značkovací jazyk pro synthetisovanou řeč na webu
- Simlulace dialogu metodou Wizard of Oz
- človek-člověk, jeden si hraje na počítač, průběh podle navrženého protokolu, postup se protokoluje