Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Beszédtechnológia, beszédfelismerés

Hasonló előadás


Az előadások a következő témára: "Beszédtechnológia, beszédfelismerés"— Előadás másolata:

1 Beszédtechnológia, beszédfelismerés
Dr. Tóth László MTA-SZTE Mesterséges Intelligencia Kutatócsoport

2 Beszédtechnológiai témakörök
Beszédfelismerés „Tiszta” felismerés = diktálás (beszédírás) Más rendszer részeként: beszédinput (beszédakció) Szorosan összefonódik a nyelvtechnológiával (nyelvi szinten is modellezni, elemezni kell) Beszélőfelismerés Verifikáció (igen/nem) vagy azonosítás (több beszélő közül) Beszédszintézis (text-to-speech) Problémák: hangminőség, prozódia, érzelmi töltet Beszédtárolás és -továbbítás Beszédtömöríés (speech coding) Minőség javítása (pl. telefonos torzítás) (speech enhancement)

3 Beszédtechnológiai témakörök 2.
Beszédadatbázisok készítése A statisztikai alapú algoritmusok tanítására/tesztelésére A feldolgozás lehetséges szintjei: Alapos lehallgatás, szószinten pontos átirat (plusz zajok, egyedi kiejtések feljegyzése) Szóhatárok bejelölése a felvételen Beszédhang-határok bejelölése a felvételen Felismeréshez kapcsolódó nyelvtechnológiai problémák Valószínűségi alapú nyelvi elemzés Dialógusmodellezés Kiértékelés A beszédtech. alkalmazások hatásfokának objektív mérése

4 Beszédfelismerési alkalmazások
A teljesen általános felismerés nem megy! Valamilyen módon „szűkített” feladatokat keresünk, pl. Szótár v. nyelvtan megszorítható (kicsi-közepes-nagy szótár) A hangminőség jobb az áltagosnál Beszédmód: izolált szavas – olvasott – folyó – spontán Zaj jellege: nincs – modellezhető – változó Beszélők: egyetlen beszélő sokáig (adaptáció) – változó beszélők Klasszikus alkalmazások: Parancsvezérlés (kis szótár, izolált szavak  zaj esetén is OK) Diktálórendszerek (nagy szótár, de tiszta jel, beszélőadaptáció) Dialógusrendszerek (kis szótár, kötött nyelvtan, ált. telefonos)

5 Beszédfelismerési alkalmazások 2.
Jelenleg „divatos” alkalmazások: Multimodalitás (szájról olvasás, arckifejezés, kézmozdulat felismerése, kombinálása a beszédfelismerővel) Multilingvalitás: nyelv felismerése, akcentus felismerése, és kezelése, fordítás Hang-adatbányászat: audio indexing & retrieval, diarization, summarization Néhány további érdekes téma: Egyidejű beszédjelek szétválasztása Érzelmek felismerése Beszédterápia, olvasástanítás, nyelvtanulás segítése Néma beszéd felismerése EMG-ből

6

7 Beszédfelismerő komponensei
akusztikai- fonetikai modell nyelvi modell szintaktikai/ szemantikai modell dialógus- modell Digitalizálás és jellemző- kinyerés Felismerés (osztályozás-kombinálás-keresés) Szintaktikai/szemantikai elemzés Dialógus-vezérlés beszéd- jel spektrális vektorok szólista v. -háló értelme- zett kérés akció beszédszöveg beszédtartalom beszédakció

8 Jellemzőkinyerés Cél: a lényegtelen információ kidobása, a lényeges tömör reprezentálása „lényeg”: nyelvi tartalom (ld. fonetika) Klasszikus módszerek: tisztán matematikai megoldások (ld.: digitális jelfeldolgozás, beszédfeldolgozás) Újabb módszerek: az emberi fül/hallás (durva) modellezése (ld.: pszichoakusztika, neurofiziológia) Mindig valamilyen spektrális vektorsorozat a kimenet, felbontás: 100 vektor/sec, komponens/vektor

9 A felismerés A beszéd (és nyelv) specialitása, hogy hierarchikus:
Spektrális vektor („adatkeret”): ms-os részletet ír le Beszédhang: a magyarban kb. megfelel a betűknek Szó: angolban ~felsorolhatók, magyarban toldalékolás is van! Mondat: nyelvtani szabályokkal próbáljuk leírni (szintaxis) Szöveg ill. dialógus: szemantikai tartalom ill. beszédaktus A szintezettség kezelése: Alapvetően bottom-up módon Több megoldási javaslat továbbítása a következő elemzési szintnek (tkp. a döntés késleltetése) Valószínűségek hozzárendelése

10 A felismerés 2. 1. részfeladat: osztályozás 2. részfeladat: kombinálás
Spektrális vektorok, esetleg beszédhangnyi szegmentumok azonosítása (milyen hangnak felel meg) Tudásalapú (fonetikai) megoldások: nem váltak be, kiszorultak Statisztikai gépi tanulási megoldások: jelenleg csak ilyeneket használnak 2. részfeladat: kombinálás A vektorokat kombinálni kell beszédhangokká, majd a beszédhangokat szavakká, a szavakat mondatokká Valószínűségek kezelése: valszám. szabályai alapján

11 A felismerés 3. 3. részfeladat: keresés A keresési tér szemléltetése ~
Keressük a legnagyobb valószínűségű kombinációt Din. prog., heurisztikák, vágás kell a hatékony bejáráshoz A keresési tér szemléltetése Input: a beszédjel spektrális reprezentációja Ismeretlen: a hangok helye és címkéje Output: fonetikai szimbólumok sorozata („milyen hangok”) „Rejtett” részfeladat: szegmentálás („hol”) ~ k é - t e z r

12 A felismerés 4. A felismerést segítő komponensek A felismerés kimenete
Akusztikus modell: általában az ún. rejtett Markov-modell A hangokhoz tartozó adatvektorokat statisztikailag írja le Valószínűségek kombinálása: naív Bayes-szabály Nyelvi modell: kiejtési szótár és n-gram Szavak leírása: a hozzájuk tartozó hangsorozat megadásával Mondatok: a szavak egymásutániságának valószínűségével A felismerés kimenete Szósorozat, vagy esetleg csak hangok sorozata További feldolgozás esetén: N legvalószínűbb hipotézis A felismerés kiértékelése A hierarchia minden szintjén van értelme kiértékelni Izolált vektorok, hangok szavak: osztályozási pontosság Hang- és szósorozatok: edit distance Jelentéskinyerés vagy dialógus kiértékelése: bonyolultabb

13 A felismerés 5. N-best list és word lattice szemléltetése

14 Magasabb szintű feldolgozás
Szintaktikai/szemantikai elemzés: Ez már nyelvtechnológiai feladat, ld. korábbi két előadás! Dialógusmodellezés: Speciálisan a dialógusrendszerek készítéséhez kapcsolódó beszéd- illetve nyelvtechnológiai terület Cél: a felhasználó számára kényelmes dialógus, minimalizált tévesztési lehetőségekkel Van némi elméleti háttere, de inkább gyakorlati jellegű

15 S: Welcome to British Airways flight information service
S: Welcome to British Airways flight information service How can I help you? C: Yes, I'd like the departure time of flight BA four one eight from Heathrow Airport. S: Do you know the flight number? C: The flight number is BA four one eight. S: Please tell me the flight number. C: BA four one eight. S: Was that flight number three eight four? S: Please tell me the name of the airline. C: British Airways. S: Did you say British Airways? C: Yes. S: Was that British Airways? S: Sorry, I missed what you said. Did you say British Airways? C: Yes, British Airways. S: I'm sorry. I don't know of any such flight. Do you have another inquiry? S: Thank you for calling. Good bye.

16 Beszédkutatás a Kutatócsoportnál
Adatbázisok készítése Új jellemzőkinyerési módszerek Hosszú távú jellemzők (adatkeretek helyett nagyobb blokkok) Jellemzőtér-transzformációs módszerek Beszédterápia és olvasásfejlesztés: a „BeszédMester” Beszédfelismerés Rendszereink: neuronhálós (keretalapú ill. szegmentális) és rejtett Markov-modelles Kitartott magánhangzók osztályozása: ld. BeszédMester Beszédhang-szegmentumok osztályozása: szegmentális modell Beszédhang-sorozatok felismerése: neuronhálós módszerek Szavak, szósorozatok felismerése: Orvosi diktálórendszer (rejtett Markov-modellel és neuronhálós módszerekkel is)

17 Adatbázisok Magyar Telefonos Beszédadatbázis (MTBA)
A Műegyetemmel együttműködve készítettük 500 telefonálótól származó felvételek, vezetékes és mobilos Hívók az ország minden tájáról, vegyes életkori eloszlásban Postán kiküldött szöveget kellett beolvasniuk Izolált szavak: vezetéknevek, cégnevek, számok, betűzött szavak, dátumok, … Hangkapcsolatokban gazdag mondatok és szavak: 500 beszélőtől összesen 7 órányi anyag, 8000 fájl, kézi címkézés Többnyire tiszta és szép kiejtésű felvételek Ellenpéldák: túlartikuláló és alulartikuláló beszélő

18 A szegmentálás szemléltetése

19 Adatbázisok 2. Magyar Referencia Beszédadatbázis (MRBA)
A Műegyetemmel együttműködve készítettük 300 embertől származó felvételek, számítógépes környezetben A legkülönbözőbb féle PC-k, laptopok, valamint mikrofonok Ez is olvasott szöveget tartalmaz Hangkapcsolatokban gazdag mondatok és szavak: Hasonló jellegű mondatok, mint az MTBA-ban 100 ember anyaga kézileg szegmentálva, a többi géppel Életkor vegyes, de túlreprezentált az egyetemista korosztály Sajnos sok a hadaró, motyogó beszélő 

20 Beszéd-adatkeretek osztályozása
A spektrális reprezentáció adott időpillanatait (adatkereteit) külön-külön dolgozzuk fel Időbeli felbontás: 100 vektor/mp (5-10 vektor/hang) Frekvenciabeli: komponens/vektor (MFCC, PLP, …) A címkézés ált. esetben rossz hatásfokkal megy (50-70%) Alkalmazása (kitartott hangokra): ld. BeszédMester é é é é é z z z e e e e e e e

21 Beszédhangok osztályozása
Az egyes hangokhoz tartozó jeldarabokat (szegmentumokat) egy egységként dolgozzuk fel Hosszabb jelrészlet  több információ  jobb felismerés Változó hosszúságú darabok, de fix számú jellemzőt akarunk  speciális jellemzők kellenek (pl. átlagos energia…) Tapasztalat: szegmentális jellemzővel jó felismerési eredmények é z e

22 Jellemzőtér-transzformáció
A szegmentumok osztályozása többféleképpen javítható „Modern” gépi tanulási módszerek, pl. SVM Jellemzőtér-transzformáció az osztályozás előtt Jellemzőtér-transzformációs módszerek Transzformálják a teret, hogy az osztályok könnyebben szétválaszthatók legyenek Lineáris módszerek (pl. LDA): csak forgatás, nyújtás Nemlineáris módszerek (pl. K-LDA): egészen durva vetemítések (ld. ábra)

23 Beszédhang-osztályozási eredmények
Hibaarányok számbemondásokat tartalmazó adatbázison Az MTBA adabázison (52 beszédhang, ANN): 32,17% A TIMIT angol adatbázison (39 beszédhang, ANN) (A legjobb ismert eredmény: 18% körül) trafó Lineáris változat Nemlineáris változat Nincs 28,43% PCA 28,22% 26,49% ICA 29,01% 27,23% LDA 27,12% 25,11% SDA 27,93% 25,93%

24 Szegmentum-alapú felismerés
Probléma: folyamatos szövegben a hangok helye nem ismert! Megoldás: brute-force ‘előre’ keresés (hosszkorlát mellett) Osztályozó kiegészítése egy újabb osztállyal: „anti-phone” Tanítása mesterségesen generált példák alapján Címkék hozzárendelése helyett csak valószínűségek! P(átirat helyes) ~ P(címkék helyesek) és P(szegmentálás helyes) é z Ø

25 Szegmentum-alapú felismerés 2.
A szegmentálás valószínűségének becslése Az anti-fón valószínűségek alapján többféle képlettel Eredmények az MTBA adatbázison (ANN-nel) Gyorsítási lehetőség „Brute force” helyett a valószínűtlen szegmentálások kizárása, pl. neuronhálóval tanulva a szegmenshatárokat Mondatszintű hangsorozat-felismerési eredmények (% korrekt) Antifónok nélkül Egyszerű antifón-modell Bonyolult antifón-modell HMM 53,44% 58,74% 61,34% 61,60%

26 Keretalapú felismerés
A keretekhez osztályonkénti valószínűségeket rendelünk Ezután azonosítás és szegmentálás egyszerre történik: maximumot adó út keresése dinamikus programozással (Viterbi alg.) Keresési megszorítások a szegmentumokra (hangokra): Hosszmodellezés Egymásra következési valószínűségek bizonyos sorozatok engedélyezése/kizárása (szótár) Matematikai formalizálás: a rejtett Markov-modell a b c d

27 A rejtett Markov-modell (HMM)
A keretenkénti valószínűségek becslése történhet Gauss-görbék lineáris kombinációjával (szokványos HMM) Neuronhálókkal (HMM/ANN hibrid ill. HMM/ANN tandem) A valószínűségek kombinálása a HMM-ben Szorzással (naív Bayes-szabály), a tényezők: Keretenkénti val., exponenciális hossz val., átmeneti val. A HMM tanítása Inicializálás: jó, ha van némi kézileg szegmentált adat További tanítás: csak címkézett adaton is megy! Tanító algoritmus: Baum-Welch Iteratív Maximum likelihood kritérium Lokális optimumot garantál

28 Neuronhálók a modellezésben
HMM/ANN hibrid: Olyan, mint a HMM, de Gauss-görbék helyett neuronhálókkal becsli az adatvektorokhoz tartozó valószínűségeket Általában több szomszédos adatvektoron tanítják a hálót „Tandem” séma: az ANN felhasználásának másik módja Az ANN-t úgy tekintjük, mint jellemzőtranszformációs algoritmust, azaz a kimenetét nem valószínűségi becslésként, hanem új jellemzővektorként értelmezzük Így az ANN kimenetén tanítjuk a hagyományos gaussos HMM-et Miért nem fölösleges bonyolítás? A HMM kódjába, paraméterezésébe nem kell belenyúlni Könnyebb az összehasonlítás a hagyományos HMM-mel Az ANN nem csak osztálycímkékkel, hanem bármely más „értelmesnek” ígérkező célértékekkel tanítható

29 A háromféle keretalapú modell

30 Felismerési eredmények
Keretalapú módszerek, beszédhang-stringek felismerése (bigram: két hang egymásra következésének val. modellje) Keretalapú módszerek, szószintű hibaarány Izolált szavas felismerés, 431 telefonos városnév: Ld. Még MÁV demo! HMM Hibrid Tandem Tandem+bigram korrekt 61,60% 61,53% 65,40% 70,91% pontos 52,11% 52,21% 60,16% 68,58% HMM Hibrid Tandem hibaarány 6,73% 6,27% 3,02%

31 Beszédhang-szintű kimenet
Példák (a 68,58%-ot tudó rendszerből): havanedadóütykahartárrazatazatetletfállambezzni temészetesentmavahatésírommavamatizsboncolan egyetlennemvoltakszeméstákozesőin szagedemengyótérpistásulatánatunéhaszinűse kikítmorbigyahasaláttdeszényteszellánytázzuktmintecsecsemett Hány százalék lenne elég? – teszt emberekkel, „rontott” szövegekkel

32 Orvosi diktálórendszer
Államilag támogatott projekt, BME-vel együttműködve Cél: folyamatos beszéd elfogadható szintű felismerése Feladat: nyelvileg erősen szűkített orvosi szövegek SZTE: pajzsmirigy-szcintigráfiás leletek BME: gasztroenterológiai leletek Példa: Klinikai adatok : St.p.strumectomiam. UH: bal lebeny kp. harmadában 12 mm-es göb. Kérdés : Göb? Elözô vizsgálata: - Jelen vizsgálata : Megnagyobbodott, szimmetrikus pajzsmirigy, amely a nyak középvonalában helyezkedik el. Alsó széle 2 cm-nél távolabb van a jugulumtól. Az isthmus rajzolata szabályos. A jobb lebeny az ellenoldalinál több radiofarmakont tárol. A jobb lebeny egyenletes aktivitás- eloszlással ábrázolódik. A bal lebeny középsô harmadában laterálisan 0.5x1.5 cm-es csökkent aktivitású terület látható, mely megfelel az UH-al leírt göbnek. Összefoglaló vélemény: St.p.strumectomiam. Recidiv struma nodosa. Hideg göb a bal lebenyben.

33 A felvetődő feladatok Akusztikai modell: Nyelvi modell:
Adatbázis összegyűjtése, feldolgozása (ld. MRBA!) Akusztikus modellek betanítása, tesztelése az új adatbázison Beszélőadaptációs kísérletek Nyelvi modell: A tanításhoz kapott leletanyag tisztítása Statisztikai nyelvi modell építése (n-gram) Felismerő ‘engine’: Az akusztikus és nyelvi információ kombinálása Hatékony keresés különböző vágási módszerekkel (a valós idejű futás érdekében)

34 A leletanyag Tartalma, mennyisége: Technikai feladatok:
Kb lelet az SZTE Nukleáris Medicina Intézettől Tkp. az összes pajzsmirigy-lelet 6 évre visszamenőleg Technikai feladatok: DOS-os, régi Word-os, stb. fájlformátumok átkonvertálása Karakterkonverzió (kalapos ő, hullámos ő,…) Nyelvi jellegű feladatok: Rengeteg elgépelés Latin kifejezések nem konzekvens írása Rövidítések (főleg latin betegségnevekben)

35 A leletanyag 2. Példa: az „aspirációs” szó előforduló alakjai
Egységesítés után megmaradó szavak száma: ~ 2500 Ezek szóalakok, azaz minden toldalékolt alak külön szó! (A morfológia kezelésével nem is próbálkoztunk…) Számok és dátumok kezelése külön megoldást igényelne (reguláris nyelvtannal: elkészült, de nem teszteltük felismerésben) Nyelvtani kötöttség: nagyon nagyfokú mondatból mindössze különböző Szerkezetileg hasonló mondatok (csak pl. bal helyett jobb…) Asirációs Asp Aspirációc Aspirácios aspirácios Aspirációs aspirációs Aspirácis Aspirácyós Aspiratios Aspiratiós aspiratiós Aspirátios Aspirátiós Aspiráviós Aspirciós Aspirítiós Asprációs

36 A nyelvi modell Az n-gram nyelvi modell
Szópárok, szóhármasok, … egymás utáni előfordulásának valószínűsége (bigram, trigram,…) Egyszerűen közelíthető a szövegben előforduló szópárok, szóhármasok,… előfordulásainak megszámlálásával A tanításkor nem látott szó n-esek kezelése Erre valók az ún. simítási technikák Esetünkben: csoport n-gramok szó n-gramok helyett Szavak szófaji csoportba sorolása MSD-kód alapján A szavak helyett a csoportnevekből képzünk n-gramot Jóval kevesebb csoport, mint szó  kicsi a 0 előfordulás esélye A szó és csoport n-gramok kombinálása  30% hibacsökkenés a pajzsmirigy megnagyobbodott névelő főnév ige

37 A nyelvi modell 2 Az akusztikai és a nyelvi modell kombinálása:
P(össz) = P(akusztikai)*P(nyelvi)α α : állításával szabályozható, hogy az akusztikai vagy a nyelvi modell befolyása legyen erősebb A gyakorlatban általában jó erősre van véve a nyelvi modell hatása… Esetünkben: erősen megszorított nyelvtan  nagyon támaszkodunk a nyelvi modellre Hátrány: „a székrecsegésből is orvosi szöveget csinál”

38 Hatékony keresési technikák
A jelet balról jobbra dolgozzuk fel, a szavak illesztésével tkp. egy keresési fa képződik: Feladat: a fa vágásával az exp. robbanás elkerülése A szavak hatékony tárolása: prefixum-fa Az n-gram modell kiértékelése: előrehozott ne várjuk meg a szó végét, ha nem muszáj! Pl: nagyo(bb) oldalán pajzsmirigy bal jobb megnagyobbodott alsó oldali felől

39 Hatékony keresési technikák 2.
A keresési tér bejárása lehet: Időszinkron (széltében) keresés Vágás: beam pruning (a legjobbnál egy adott küszöbbel rosszabb utak eldobása) ‘Best-first’ keresés Vágás: csak a legjobb K útkezdeményt tartjuk meg (rendezett listában tárolva) A vágással a felismerési pontosság és a futásidő (real time factor) fordítottan változik:

40 Hatékony keresési technikák 3.
A felismerési pontosság és a futási idő a szótár méretének és a megtartott nyelvi hipotézisek számának függvényében

41 Beszélőadaptáció Az akusztikai modelleknek az adott beszélő hangjához való igazítása Megkérjük a felhasználót, hogy olvassa fel a képernyőre kiírt szöveget (kb. 5 percnyi szöveg) A beszédhang-modelleket a felvétel alapján módosítjuk pl. a várhatóérték-vektorokat arrébb toljuk a spektrális vektorok átlaga alapján Eredmények: gyakran 60-70% hibacsökkenés! Beszélő ffi1 ffi2 nő1 nő2 nő3 Pontosság adaptáció előtt 97.57% 98.53% 83.42% 95.33% 82.99% Adaptáció után 98.43% 96,70% 94.52% 98.39% 97.67%

42 Angol felismerő adaptálása magyarra
Motiváció: Az angol adatbázisok sokkal nagyobbak Az MTBA ill. MRBA 5-10 órás nagyságrendűek Angolra „normális” a 100 órás nagyságrendű adatbázis De vannak több ezer órás adatbázisok is! Felhaszált erőforrások HTK: publikus rejtett Markovos beszédfelismerő Quicknet: publikus neuronhálós programcsomag Publikus, angol adatbázison betanított neuronháló-súlyfájlok Módszer A tandem sémát fogjuk használni (ld. korábban!) Az angolra betanított neuronhálón nem változtatunk Adaptáció: a rejtett Markov-modell magyar adatbázison való tanítása révén

43 Az angol neuronhálók Készültek: a Johns Hopkins 2006 summer workshopon, nemzetközi együttműködésben Tanítóadatok: Kétezer(!) órányi angol „conversational telephone speech” Tanítás kétféle célértékekkel: 1. változat: az angol beszédhangok felismerésére 2. változat: ún. artikulációs jellemzők felismerésére (pl. nyelvállás, zöngésség, nazalitás, …) Ezek elvileg nyelvfüggetlenebbek, mint maguk a hangok

44 Eredmények A beszédhang-tévesztések elemzése
Beszédhang-szintű pontosság, MTBA Nincs szignifikáns különbség a 3 eredmény közt, azaz: 2000 óra angol adat kb. annyit ér, mint 7 óra magyar adat Az artikulációs jellemzők detektálása nem vezetett jobb eredményre, mint a hagyományos beszédhangos megoldás A beszédhang-tévesztések elemzése Kérdés: azokon a hangokon téveszt-e többet az angol rendszer, amelyekben a magyar és angol nyelv eltérnek? Az adott hanghoz tartozó pontosságok hányadosát fogjuk nézni  ez >1 ha magyar modell a jobb, <1 ha az angol Magyar tandem Angol tandem (PH) Angol tandem (AF) 62,62% 62,22% 61,83%

45 A hangtévesztések elemzése 2.
Mghk: nem egyértelmű (az ű romlik, de csak a hosszú, az ő kb. ugyanolyan) Felp. zárh: csak a t romlik (hehezet? de az a p-k esetében is lehet) Affrikáták: a cs kivételével ésszerű a romlás (c, ty, gy nincs az angolban) Frikatívák: a zs ritkasága magyarázat lehet a romlására (sz: hosszú-rövid probléma) Nazálisok: kb. ugyanannyi romlás mint javulás


Letölteni ppt "Beszédtechnológia, beszédfelismerés"

Hasonló előadás


Google Hirdetések