Speech Processing
Untitled

Inteligentné rečové komunikačné rozhranie

Inteligentné rečové komunikačné rozhranie (IRKR) je systém, umožňujúci prístup k informáciám prostredníctvom telefónu z ľubovolného miesta s možnosťou pripojenia do telekomunikačnej siete s využitím hlasového módu bez dodatočných dátových modulov a technológií. Poskytované informácie môžu byť čerpané z lokálnych alebo externých dátových zdrojov, vrátane existujúcich zdrojov v celosvetovej sieti internet. Princíp komunikácie je založený na technológii rozpoznávania a syntézy reči v slovenskom jazyku. Systém je vybudovaný na HUB architektúre.
Základom IRKR komunikátora je Galaxi infraštruktúra, na ktorej na ktorej sú vybudované servery komunikátora. Galaxy Communicator (GC) je distribuovaný systém založený na posielaní správ, optimalizovaný na vytváranie systémov dialógu. IRKR komunikátor pozostáva z piatich serverov, ktoré sú nositeľmi obslužných informácii, jedného externého wrappera a hub procesu. Galaxi Communicator sprostredkuje komunikáciu medzi jednotlivými servermi cez ústredný modul - HUB.



IRKR infraštruktúra je založená na HUB architektúre. Využíva HUB proces Galaxy komunikátora a knižnice pre vytváranie serverov pre HUB architektúru a komunikáciu s HUB procesom. Systém IRKR pozostáva z piatich serverov komunikujúcich s HUB procesom.



  • Audio Server - umožňuje riadenie a prepojenie hlasového vstupu a výstupu analógovej telefónnej karty alebo zvukovej kary (desktop verzia) do samostatného dialógového systému. Týmto umožňuje interakciu systému s používateľom prostredníctvom hlasu. Podporuje telefónny hardvér, cez ktorý sa systém pripája do telekomunikačnej siete.
  • ASR Server (Automated Speech Recognition) - server (modul) automatického rozpoznávania reči, ktorý realizuje konverziu reči na text.
  • TTS Server (Text to Speech) - server syntézy reči, realizujúci prevod textu na rečový signál.
  • Informačný server - má za úlohu získavať potrebné informácie
  • Manažér dialógov - server riadenia dialógu na báze interpretera VoiceXML jazyka, integrujúci v sebe jednotky sémantickej analýzy rozpoznanej reči a generovania odpovedí systému.
  • HUB - centrálny server, ktorý spravuje spojenie medzi servermi a smeruje správy medzi nimi, umožnuje ukladanie správ a riadenie toku správ, ktorý je naprogramovaný v nejakom skriptovacom jazyku.


Výhodou komunikácie serverov prostredníctvom TCP/IP spojenia je, že každý komponent, či už HUB alebo server môžu byť spustené na rôznych PC pripojených do siete Internet a takisto môžu fungovať na rôznych platformách (Windows, Linux, Solaris, ...).

Dialóg medzi IRKR a telefonujúcim musí byť jednoduchý, ľahko zrozumiteľný, pozostávajúci z jednoduchých, ľahko realizovateľných krokov a musí pripomínať konverzáciu dvoch inteligentných ľudí. Otázky musia byť formulované jasne a nie zdĺhavo. Dialóg je zapísaný pomocou VoiceXML jazyka. V dialógu sa nachádzajú požiadavky pre jednotlivé servery - rozpoznávanie zadaného strediska, syntéza kontrolných otázok, poslanie a vyžiadanie údajov od IS. Na začiatku audio server informuje HUB, ze je schopný prijímať signál. Následne HUB informuje rozpoznávač, aby bol pripravený rozpoznávať. ASR ďalej pošle správu HUB-u pre zistenie konfigurácie ostatných serverov. V ďalšom kroku da HUB príkaz Manažéru dialógov pre začatie konverzácie. ASR server rozpozna vstup zadaný užívateľom, DM kontaktuje Informačný server pre získanie potrebných informácií z databázy alebo z internetu a pošle ich naspäť. Ak je čas povedať niečo užívaťeľovi DM pošle správu pre HUB, ktorá je ďalej smerovana do TTS servera. Nakoniec TTS vytvorí správu, ktorú audio server reprodukuje. Užívateľ si vypočuje informácie, ktoré potreboval.

Vytvorenie novej aplikácie nie je jednoduchá úloha. Skrýva sa za tým podrobné preštudovanie systému IRKR a oboznámenie sa s jeho jednotlivými časťami. Samozrejmosťou je dobrá znalosť problematiky, ktorej sa bude aplikácia týkať. Údaje sa získavajú z existujúcich databáz alebo aktuálne z celosvetovej siete Internet. Pri získavaní informácií z internetu treba brať ohľad na štruktúru stránky, komplexnosť a aktualizáciu údajov, ale ja trvácnosť stránky. Vývoj aplikácie pozostáva z troch 3 základných častí:

  • Návrh dialógu, podľa ktorého bude prebiehať rozhovor a jeho prepis do jazyka VXML. V dialógu sa nachádzajú požiadavky pre jednotlivé servery - rozpoznávanie zadaného strediska, syntéza kontrolných otázok, poslanie a vyžiadanie údajov od IS. Súčasťou dialógu je privítanie telefonujúceho, kontrolné otázky zisťujúce správnosť zadaného vstupu či zopakovanie odpovede.
  • Vytvorenie gramatiky pre rozpoznávač reči. Gramatika určuje rozsah slov ktorá je ASR server schopný rozpoznať. V dialógu je konkrétna gramatika zadefinovaná vždy pred získaním vstupu od užívateľa.
  • Implementácia samotnej služby - vytvorenie webového wrappera. Wrapper má za úlohu extrakciu dát z internetových webových stránok a ich konverziu do štruktúrovaného formátu vhodného pre uloženie v databáze alebo jeho ďalšie spracovanie. . Wrapper je väčšinou navrhnutý špeciálne pre jeden zdroj údajov, takže ak je potrebné kombinovať údaje z viacerých zdrojov, je nevyhnutné navrhnúť viac druhov. Keďže dizajn web stránok je premenlivý, musia sa aj wrappery časom prispôsobovať aktuálnemu stavu stránky.

Po prekonaní všetkých prekážok vznikne nová aplikácia, ktorá môže ďalej užitočne slúžiť ľuďom. Podľa tohto príkladu môže vzniknúť veľké množstvo telefónnych služieb využiteľných v každodennom živote.