message=
A kötött szótáras beszédszintézis azt jelenti, hogy előre meghatározott szövegeket mond ki a gép. A tervezőnek az a feladata, hogy meghatározza a rendszer akusztikai építőelemeit, kialakítsa a beszéd felépítésének szabályit, megtervezze, hogy milyen módszerrel érhető el a legjobb hang- és beszédminőség. A kötött szótáras rendszerekben leginkább úgynevezett "tárolt" beszéd technológiát alkalmaznak. Az egyszerű felépítésű rendszereknél csak előre meghatározott fix üzeneteket mondatnak ki a géppel. A kívánt közlést egy bemondó felolvassa, ezt digitalizálják, majd visszajátsszák a telefonvonalra (pl. "Itt az ébresztő szolgálat jelentkezik"). Ez a technológia jó minőségű beszédet biztosít, de csak addig, ameddig nem kell több tárolt elemet összekapcsolni a kívánt üzenet létrehozásához. A bonyolultabb rendszerekben a bemondandó információ változhat, itt már fonetikai, beszédakusztikai ismeretekre van szükség, hogy jó minőségű beszédet érjünk el a rendszer kimenetén. Például egy dátum automatikus felolvasásánál az üzenet tartalma (év, hónap nap, óra perc) változik, vagy egy számla összege, egy kötvény napi árfolyama stb. is mindig más szám kimondatását követeli meg. Ebből következik, hogy bonyolultabb üzeneteket csak több előre eltárolt beszédelem összekapcsolásával lehet összeállítani. Az ilyen rendszerek beszédminősége erősen függ attól, hogy egyrészről milyen szoftverbe kell beépíteni a szolgáltatást (a szoftver milyen korlátozásokat tartalmaz, ami miatt esetleg nem lehet az adott nyelvre vonatkozó szabályokat teljes egészében a programba beépíteni), másrészről attól, hogy beszédakusztikához, fonetikához értő szakember tervezte-e meg a beszédelemeket és az összekapcsolásukat vezérlő szabályokat. A beszédminőségi skála tehát ezekben a rendszerekben a nagyon rossztól az igen jóig terjed.
A kötött szótáras beszélő rendszerek előre rögzített emberi beszédelemek (mondat, mondatrész, szó, szóelem) összekapcsolásával állítják elő a közlendő üzenetet. A rendszerek beszédelemeinek meghatározásánál, tervezésénél sok tényezőt kell figyelembe venni ahhoz, hogy a végleges beszédszolgáltatás hangja minden esetben jó legyen. Ilyenek a szolgáltatás jellege (interaktív, csak hívható, csak fix üzeneteket használ, változó tartalmú információt is be kell mondani), a műszaki megoldás keretrendszere (egycsatornás, több csatornás, használ-e külön DSP kártyát ), és a működtető szoftver formája (meglévőbe kell beépíteni, külön programot készítenek a szolgáltatáshoz). Végül az is befolyásolja a beszédelemek tervezését, hogy igénybe vesznek-e fonetikai, nyelvészeti szakértelmet a tervezésnél, vagy csak saját elképzelés szerint alakítják ki a rendszert, hiszen "a beszédhez mindenki ért".
A működtető program
A kötött szótáras rendszerek beszédelemeinek tervezésénél meghatározó tényező, hogy a beszéddel válaszoló rendszert milyen szoftverrel valósítják meg. Sok esetben külföldi gyártmányú, úgynevezett keretszoftvert használnak, ami eleve behatárolja a felhasználható elemek körét. Mivel ezek a szoftverek zömmel angol, esetleg német eredetűek, az angol, illetve német nyelv sajátosságait követik mind grammatikai, mind beszédszokás szempontjából. Például a telefonszámok kimondásához a számokat egyenként olvassák fel. A mobil telefonokra kapcsolt hangpostai szoftverek például így beszélnek: a telefonszám: egy, három, kilenc, négy, nulla, nulla, nyolc. Ez idegen hangzású a magyar felhasználó számára. Magyarul az ilyen telefonszámot úgy mondjuk, százharminckienc, negyven, nulla-nyolc. Ennél talán még durvább nyelvi hibát vét az a rendszer, amelyik a dátumot úgy mondja be, hogy tizenharmadika, december, 16 óra 32 perc. Itt egyértelmű, hogy a szoftver keretrendszerét más országból (pl. német) vették át, és ezt használják magyar szövegek bemondására úgy, hogy csak a beszédfájlokat cserélik ki magyarra. További korlátozás ezeknél az "idegen" szoftvereknél, hogy nem engedik meg, hogy egy elemből több variánst is lehessen bennük tárolni és alkalmazni. Ezért lehet az, hogy a legtöbb rendszerben a közlés befejezését (például a telefonszám végét) nem tudják ereszkedő hanglejtéssel kiejteni. Ez szintén zavaró, nem is beszélve arról, hogy tudat alatti hatásával rossz hanglejtésre neveli a rendszert felhívó felhasználót. Mindezeket a korlátokat át lehet lépni, ha a rendszerhez illesztett célszoftvert készítenek, és ennek során kikérik fonetikus szakember véleményét a beszédszolgáltatás elemeinek tervezéséről. Az íly módon gondosabban megtervezett rendszerek sokkal barátságosabb, a természetes ejtéshez közelállóbb hangminőséggel tájékoztatják az őket felhívó személyeket.
A szövegelemek megtervezése
A szövegek megtervezése kihat az egész kötött szótáras rendszer szolgáltatásának minőségére. Ebből következik, hogy már a szövegek megtervezésénél át kell látni az egész rendszer működését és ennek figyelembevételével kell a szöveget megtervezni. Általában kétfajta szöveglistát kell megkülönböztetnünk. Az egyik az a szöveg, ami elhangzó beszéd formájában fel fog hangzani ("üzenet"). Ezeket a szövegelemeket a rendszerben beszédhullám formájában tároljuk, és ebből építjük fel bemondandó beszédjelet. A másik pedig az a "szöveg", amit a hangfelvétel elkészítésénél a bemondó kezébe adunk, hogy olvassa fel. Célszerű, hogy a "szöveg" bővebb legyen, mint az "üzenet". Sok mai, beszéddel válaszoló rendszer hangminősége azért kifogásolható, mert a bemondáshoz, felolvasáshoz az "üzenetek" szövegét adták a bemondó kezébe, hogy ezeket olvassa fel.
Az "üzenet" kétféle lehet egy kötött szótáras rendszerben: teljes mondat (M), és beszédrészlet (BR). A teljes mondatot tartalmazó üzenetek (például: A telefonszám megváltozott, kérjük hívja a tudakozót). mindig jó minőségben szólalnak meg, hiszen azok akusztikai szerkezetét a bemondó hangja határozza meg. Ha a rendszer csak ilyen fix üzeneteket tartalmaz, akkor az "üzenet" szöveglista és a felolvasandó "szöveg" megegyezik. A felolvasás ilyenkor nem jelent nehézséget.
Ha az üzenetek felépítéséhez nem csak teljes mondatok, hanem beszédrészletek felvétele is szükséges, akkor bonyolódik a helyzet. Ha az információ változik az üzenetben (például: Az Ön postafiókjába ..3..... üzenet érkezett.), akkor több BR elem összekapcsolásával hozzuk létre a mondatot. Ebben a példamondatban a BR1 és BR2 közé kell bevágni az aktuális számelemet. Az ilyen típusú mondatok hangzásában általában erősen érezni lehet, hogy az üzenet több részből van összevágva. Két hibakategória határozható itt meg: a szaggatottság és a prozódia nem megfelelő volta (a prozódia magában foglalja a beszéd dallamát, ritmusát, hangsúlyozását, intenzitásszerkezetét). Mindkét hiba mértéke csökkenthető, ha a szövegtervezésnél gondosan járunk el, és figyelembe vesszük a beszédképzés fonetikai szabályait, a beszéd folyamatos jellegét is. Ez azt jelenti, hogy az SZ szöveglisát úgy kell megtervezni, hogy a BR elemek a kiejtésüknek megfelelő szövegkörnyezetbe (vivő mondatokba) legyenek beágyazva és így kell a lista elemeit felolvastatni. Például: AZ ÖN PÓSTAFIÓKJÁBA hét ÜZENET ÉRKEZETT. vivő mondatból kivágható az első három szóból álló rész és az utolsó két szóból álló. A számot nem ebből a mondatból kell kivágni. Ezzel elérhető hogy, mivel természetes környezetéből vágtuk ki az elemeket, az összefűzésnél sem lesznek komoly akusztikai eltérések a megszólaló üzenetben.
Fontos szempont a "szöveg" megtervezésénél, hogy legyünk tekintettel a kivágás megvalósíthatóságára is. Ez annyit jelent, hogy a szöveget úgy kell megtervezni, hogy a kivágandó elem határain lévő hangok a legkevésbé torzuljanak az előttük lévő, illetve az őket követő hang hatására. Ezért választottuk a példamondatban a két kivágandó eleme közé a hét szót és nem például a kettő szót. A hét szó első hangja jól elválik a postafiókjába utolsó hangjától és az üzenet szó első hangjának kezdete is jól meghatározható a t hang után. Ha a hét helyett a kettő szót tettük volna bele ebbe a mondatba, akkor a kettő üzenet hullámformájából sokkal nehezebben lehetne meghatározni az üzenet szó kezdetét, - mivel magánhangzó találkozásban a hullámforma folyamatosan alakul át az egyik hangból a másikba - és a kivágott üzenet első hangjának amplitudója is magas lenne, ami nem felel meg egy hangsorkezdési állapotnak. Más finomság is figyelembe vehető némi akusztikai tervezéssel. Például a NYOMJA MEG A csillag GOMBOT, NYOMJA MEG A hármas GOMBOTt üzenetek közül az elsőhöz a csillag és a gombot építőelemet kell a szótárban rögzíteni, majd később onnan kivenni és összefűzni. Mivel a két elem határán ugyanaz a hang van, a zárfelpattanást nem kell megvalósítani mindkettőben. Ez a természetes artikuláció következménye. Ezért célszerű a csillag elem kivágásánál a zárfelpattanást elhagyni a g hangból, még akkor is, ha a bemondó ejtette. Az így elkészített elemmel való összekapcsolás után a csillag gombot beszédrészlet természetesen és folyamatosan fog hangzani, nem pedig mesterkélten, külön ejtve a két g hangot. Az ilyen fonetikai tervezés sokat javít az elemekből összefűzött beszéd minőségén. Természetesen a fonetikai tervezéskor alkalmazott szabályok a szövegtől függnek, tehát minden rendszerhez más és más szabályokat kell alkalmazni.
A hangfelvétel elkészítése
A hangfelvétel szintén kritikus pontja a megvalósításnak. Először is ki kell választani a megfelelő hanggal rendelkező személyt (nem szükséges, hogy színész legyen, de szép, nyugodt beszédű, jól artikuláló alanyt célszerű választanunk). A bemondást megfelelően kialakított "csendes" szobában kell elvégezni. A bemondás előtt célszerű a bemondóval gyakoroltatni a szövegek felolvasását, figyelmeztetve őt arra, hogy lehetőleg ugyanabban a beszédtempóban, beszédstílusban és egyenletes hangerővel olvassa fel a szövegeket. Gyakorlati tapasztalat az, hogy a tervezett szövegek teljes anyagát ugyanazon a napon egyszerre kell felvenni, ugyanis az ember hangja (hangszínezete) naponta változik. Törekedni kell arra, hogy ne kelljen pótfelvételt készíteni későbbi időpontban.
Digitalizálás, korrekciók, véglegesítés
A digitalizálás a mai technikai lehetőségek mellet nem bonyolult feladat. A digitalizált jelen a legtöbb esetben korrekciókat kell végezni. Ide értjük a legegyszerűbb problémákat is, amikor például a bemondó az adott szöveg, szövegrész, szó felolvasása előtt intenzíven vesz levegőt, vagy a száj kinyitása hangadással jár. Ezeket a nemkívánatos zörejeket, hangokat ki kell vágni, illetve amplitúdójukat nullára kell korrigálni. A korrigálás másik csoportja, amikor a hangerőt kell kiegyenlíteni. A felolvasás során a bemondó hangereje változhat (változik is). A szótár elemeinek próbaszerű összekapcsolásával és meghallgatással meg lehet találni azokat az elemeket, amelyek vagy túl intenzívek, vagy túl gyengék. Ezek amplitúdóját az optimális szintre kell korrigálni. Ezen kívül egyedi korrekciók szükségessége is elképzelhető. Itt a leggyakoribb az, amikor hangrészeket kell kivágni és áthelyezni, illetve megszüntetni. Sok esetben a bemondó hanyag ejtése miatt egyes zárhangok nem eléggé karakteresen jelennek meg a bemondott elemekben, és ezt érezni is lehet a meghallgatásnál. Ilyenkor az a megoldás, hogy a nem megfelelő zárhang helyére keresünk egy másik helyről származó ugyanilyen hangot, és azt a hangsebészeti szabályok betartásával hozzáillesztjük a problémás hangrészhez. Ilyen korrekciós munka után alakul ki a szótár elemeinek végleges halmaza, amely már hibamentesen, jól fog megszólalni az élő rendszerben.
A korrekció egy másik fajtáját kell alkalmaznunk, amikor szükség van a szótárelemek bővítésére (például egy pályaudvari bemondó rendszerben), mivel új közlendő információk keletkeznek. Ilyenkor nagyon nehéz olyan hangfelvételt készíteni, amelyikből kivágva az új elem hibátlanul beleilleszthető a rendszerbe. A beszédsebesség, a beszéddallam, az alaphangmagasság nem fog illeszkedni a korábban felvett elemekéihez. Ezért ezeknek az új elemeknek az akusztikai becsiszolására lenne szükség. Ilyent ma nem végeznek az üzemeltetők, mivel ehhez bonyolult speciális szoftverre van szükség, egyszerűen becsatolják az új elemeket a rendszerbe és azok úgy, sok esetben hibás hangmagassággal, hangerővel, sebességgel szólalnak meg. Ez nehezíti a közlemény megértését. Beszédkutatással foglalkozó helyeken léteznek olyan szoftverek, amelyekkel ilyen korrekciók is elvégezhetők lennének.
Korszerű számfelolvasó tervezése
A számokat is felolvasó rendszerek első generációjának (2000-ig) az a jellemzője, hogy a kimondandó számot a közismert számelemek emberi beszédből kivágott és eltárolt változatainak összekapcsolásával állítják elő a kimondáskor.
A számelemek a legtöbb magyar számfelolvasó rendszerben a következők: nulla, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, tizen, 20, huszon, 30, 40, 50, 60, 70, 80, 90, 100, ezer, millió, milliárd.
Az írás szintjén ezekből az elemekből, magyar nyelven, bármilyen szám összerakható. A beszéd szintjén azonban az egymással összekapcsolt ilyen számelemekből felépített számok hangzása, természetessége, ritmusa, hangsúlyozása messze elmarad a természetesen ejtett számokétól. Ennek ellenére ilyen elemekből építkezik szinte az összes banki telefonon felhívható számlaérték- felolvasó és néhány telefonszám-változást bejelentő automata, hangos telefonszámla-szolgáltatás stb. Meghallgatva ezeket a számbemondó rendszereket feltűnik, hogy azok a számokat szaggatottan, természetellenes hangsúlyozással, az összekapcsolás határpontjain megjelenő amplitúdó és dallamív különbségek miatt "döcögősen" ejtik ki. A hallgató nagyon érzi, hogy a rendszer által összeállított szám a fenti elemekből került generálásra és érzi azt is, hogy az automatikusan felolvasott számok kiejtése, prozódiai szerkezete, hangsúlyozása természetessége messze elmarad a természetes ejtéstől. Ennek következménye például, hogy a bemondott szám nem mindig érthető, le kell jegyezni az automata által mondott számelemeket, és a felhasználó csak azután tudja helyesen értelmezni a leírt számot.
Ez annak a következménye, hogy a beszédszolgáltatást megtervező mérnökök nem kérték ki beszédkutatással foglalkozó szakember véleményét a tervezéskor, nem vették figyelembe a beszédképzés szabályait, a koartikulációból adódó törvényszerűségeket, az ezzel kapcsolatos nyelvészeti és fonetikai tényeket. Az elemeket egyszerűen össze lehet kapcsolni az írás szintjén, ezt azonban nem lehet megtenni a beszéd szintjén.
A fentiekből következik, hogy a mai beszédszolgáltatási megoldások bonyolultabb esetekben nem felelnek meg a kor, egyébként magas követelményű, műszaki színvonalának. A szolgáltatás korszerű, a beszéd minősége azonban megkérdőjelezhető.
Új elvek egy jó minőségű számfelolvasó tervezéséhez
Az alábbi új elveket (1997-ben szabadalmaztatott eljárás) az eddig használt 25 számelemre alkalmazzuk. Az elv lényege az, hogy a számfelolvasó hangelemeit nem az írás alapján, hanem a kiejtett beszédjel szempontjai (beszédakusztikai ismérvek) szerint állítjuk össze. Az eljárás lényege a következő. Bármely szám kiejtésekor beszédjel teljes akusztikai jellemzéshez három fizikai szerkezeti szintet kell figyelembe venni. Ezek a következők: a beszéd belső akusztikai építőelemei (a), az intenzitás (i) és az időszerekezet (t). Az akusztikai szintet két részre kell bontani, nevezetesen a koartikulációból (k) adódó formánsváltozásokat figyelembe vevő szintre és a beszéddallamra (d). Ebből adódik, hogy ideális esetben az eredeti 25 számelem mindegyikét egy-egy 4 paraméteres függvény szerint kellene meghatároznunk, amely függvényben a koartikulációból adódó változatok egy további több paraméteres függvény formájában szerepelnek. Az új elvek alapján készítendő számelemet a következő általános összefüggés szerint lehet származtatni ugyanazon régi számelemből.
Új számelem = számelem (a (k,d),i,t)
A fenti függvény megalkotásához az alábbi kérdésekre kell válaszolni:
- Hogyan változik a számot felépítő számelemek időtartama a számban való elhelyezkedésük szerint?
- Hány elemtípust kell megkülönböztetni, ha a számot az emberi ejtéshez közel álló ritmikával akarjuk megvalósítani?
- Milyen a dallammenet a kiejtett számon belül? Vannak-e hangsúlyozásra utaló alaphangmagasság-kiemelkedések?
- Milyen koartikulációs szabályok szerint kell osztályozni a számelemeket, hogy az összekapcsolások után a találkozási pontokon az akusztikai szerkezet folyamatossága biztosítva legyen, tehát a lehető legkisebb torzulások keletkezzenek és a folyamatos hangzás megvalósuljon.
A következőkben sorra vesszük a fenti kérdéseket.
Időszerkezet
A számelemek időszerkezetére vonatkozó mérések átlagolt eredményei szerint minden számelemet legalább háromféle időtartammal (kezdő elemé, belsőé és utolsóé) kell megvalósítani, hogy közelítsük a természetes ejtés ritmikai szerkezetét.
Alapfrekvencia-változás
A dallammenet és a belső időtartamok szerkezete szoros összefüggést mutat. A számok kiejtése során az általános dallammenet eső tendenciát mutat. Erre az általános alapfrekvencia-görbére szuperponálódnak a számelemek hangsúlyozásából eredő emelkedő-eső dallamformák. Ezekben a kiemelkedés mértéke általában +15 százalékkal az alapgörbéhez képest. Minden számelem önálló eső tendenciájú alapfrekvencia-változással bír, amelynek az indulási frekvenciája mindig magasabban van, mint az előző elem befejezésekor jelenlévő frekvencia. Ez alól csak a helyi értéket kifejező elemek kivételek, azokban nincs hangsúlyozás, mivel ezek az elemek az őket megelőző elemhez kapcsolódnak és azzal kiejtésileg egybeolvadnak. Tehát a szám kiejtésekor az alapfrekvencia egy fűrészfogazathoz hasonló görbe szerint változik, amelynek általános tendenciája gyengén eső.
Ha összehasonlítjuk, hogy milyen elemeket kell használnunk az időszerkezet szempontjából és milyeneket az alapfrekvencia-változás szempontjából, akkor láthatjuk, hogy nagy az átfedés a két elemhalmaz között.
Ebből következik, hogy adott szám korrekt idő- és alapfrekvencia-szerkezet szerinti leírásához az építőelemeket ugyanazon elvek szerint lehet meghatározni, és ez az elv megegyezik az időszerkezet szerinti felosztás korábban említett (kezdő, belső, utolsó) szabályaival. Ha ezek szerint határozzuk meg az építőelemeket, akkor azok a korrekt időszerkezeten túl automatikusan tartalmazni fogják a szám belső hangsúlyozását megvalósító alapfrekvencia-változásokat is.
Akusztikai folytonosság
A kötött szótáras rendszerek építőelemeit (így egy számfelolvasóét is) úgy kell megtervezni hogy a lehető legjobban biztosítsuk a természetes ejtésre jellemző folyamatosan változó (törések, ugrások nélküli) spektrumképet (formánsmozgásokat). Ugyanezt kell biztosítani a prozódiai szerkezetekre is (hangintenzitás, dallam, alaphangmagasság, időszerkezet). A kötött szótáras rendszerek építő elemeinél az elemek csatlakozó hangjainak (adott elem utolsó és a hozzá csatlakozó elem első hangja) spektrális szerkezetét és összekapcsolódásuk spektrumképét kell ismerni a korrekt tervezéshez.
Elemek
A fentiek figyelembe vétele azt jelenti, hogy egy számfelolvasó rendszerben minden számelemből többféle variánst kell eltárolnunk és ezeket kell az összekapcsolásnál a megfelelő helyen felhasználnunk. Az elembázis-fejlesztés eredménye, hogy az eredeti 25 alapelem helyett mindegyikből több variánst, összesen 218 számelemet határoztunk meg. Az így meghatározott elemhalmazhoz még hozzá kell rendelni egy olyan összekapcsolási szabályrendszert, amelyik a megszólaltatandó szám analízise alapján megmondja, hogy mely elemeket kell kiválasztani és összekapcsolni a szintézis során. Ezzel a számfelolvasó rendszerrel olyan beszédminőséget tudunk elérni, amely igen közel áll a természetes ejtéshez.