Upload
chogan
View
21
Download
0
Embed Size (px)
DESCRIPTION
Beszédfelismerés és beszédszintézis Beszédfelismerés alapjai, izolált szavas kötöttszótárú felismerők. Takács György 14. előadás 2014. 04. 29. Javasolt vizsgaidőpontok:. Május 22. csütörtök 11:00 Június 4. szerda 10:00 Június 25. szerda 10:00. - PowerPoint PPT Presentation
Citation preview
Beszedf 2014.04.29. 1
Beszédfelismerés és beszédszintézis
Beszédfelismerés alapjai, izolált szavas kötöttszótárú felismerők
Takács György
14. előadás
2014. 04. 29.
Beszedf 2014.04.29. 2
Javasolt vizsgaidőpontok:
• Május 22. csütörtök 11:00
• Június 4. szerda 10:00
• Június 25. szerda 10:00
Beszedf 2014.04.29. 3
Megoldott kérdés-e a beszédfelismerés, más szóval
beszéd-szöveg átalakítás?
Beszedf 2014.04.29. 4
Igen
• Mert termékként állnak rendelkezésre megoldások.
• Mert jobb rendszerek beépített eleme (pl., hangportálok, automata telefonkezelő, Windows XP)
• Mert könyvek leírják, iskolában tanítják….
Beszedf 2014.04.29. 5
Beszedf 2014.04.29. 6
NEM!
• Mert nem szeretik!
• Mert nem használják!
• Mert nem hozott komoly üzleti eredményt senkinek!
Beszedf 2014.04.29. 7
Elfogadjuk a létező beszédfelismerőket? Ha nem,
akkor miért nem?
Beszedf 2014.04.29. 8
Az én válaszaim
• Személyfüggő nagyon! • A beszédfelismerőnek „értenie” is kell amit felismer!• Akadnak tényleges felismerési hibák is!• A beszéd több, mint elemek egymásutánisága! A
beszédfolyamat további tényezői közül a finom hangsúly, a dallam, a szünetek, a ritmus, a tempóváltások is a felismerendő üzenet lényegi elemei. Ezek is az értelmezést segítik, a közlendőt árnyalják, a beszédet emberivé, széppé teszik, tehát ha a beszéd üzenetét kívánjuk felismerni ezek sem hagyhatók a folyamatból el.
Beszedf 2014.04.29. 9
Érdekesebb helyek a hálón!
• http://www.nuance.com/naturallyspeaking/• http://www.microsoft.com/enable/products/
windowsvista/speech.aspx• http://download.cnet.com/Speech-
Recognition-Based-on-DTW/3000-2053_4-10878314.html
• http://www.electricrainbow.com/freedemo.html
• http://www.globalchange.com/speech.html
Beszedf 2014.04.29. 10
Ideális beszédfelismerő
• Minimális felismerési hiba• Függetlenség az akusztikai környezettől• Beszélőfüggetlenség• Korlátlan szótár és témakör• Folyamatos, természetes beszédet felismerése.• Reakcióideje nem több 100 ms-nál!!• Indulatok, érzelmek elemeit is képes felismerni!• Platform független, a létező erőforrásokkal
működtethető!
Beszedf 2014.04.29. 11
A beszédfelismerés technikai kérdései ma
• Általános alapeszköz a PC - bőséges operatív memóriával, háttértárral, hangkártyával.
• Mik legyenek a felismerendő alapelemek? Teljes közlendők, mondatok, szavak, szótagok, hangok?
• Hogyan lehet olyan elemeket kialakítani, amelyek jól felismerhetők, ezek felismerésével minden közlendő felismerhető?
• Hogyan kezeljük az egyszerű szótárban nem szereplő elemeket? Hogyan lehet a gépileg esetleg „értelmezhető” elemeket a felismert üzenet szövegébe beleszőni? (pl országgyűlési gyorsírók szabványos megjegyzései)
Beszedf 2014.04.29. 12
A beszédhangok folytonos és diszkrét természete
Beszedf 2014.04.29. 13
A természetes beszédlánc
Beszedf 2014.04.29. 14
Beszédhang• A legkisebb olyan egységek, amelyek sorozatával
egy nyelvet megvalósító beszéd akármilyen részlete az agy számára reprodukálható, beszédhangnak nevezzük.
• A beszédhangok a beszéd olyan szegmensei, részletei, amelyeket a nyelvet beszélő egymástól elkülöníteni és felismerni teljes biztonsággal képes.
• A beszédhangok a nyelvre jellemzőek!• Egyes nyelvekben a hangmagasság hajlítása is
megkülönböztet beszédhangokat.• Az élő beszéd olyan leírása, amely a beszéd
hangzásának leírására törekszik – a fonetikai átírás. Ennek elterjedt rendszerei az APhI és a SAMPA.
Beszedf 2014.04.29. 15
Beszedf 2014.04.29. 16
Beszedf 2014.04.29. 17
Ha nagyon sokat tudunk a beszédfolyamatról – mire lehet építeni a
beszédfelismerőket?
• A -- az agy beszédfelfogási folyamatait utánzó modellekre?
• B -- beszédkeltési folyamatokat leíró modellekre?
Beszedf 2014.04.29. 18
2014. évi állapot
• A létező és működő modellek B típusúak, de teljes egyetértés van abban, hogy a lényegi előrelépéshez kellenek az A típusú modellek!
Beszedf 2014.04.29. 19
Beszedf 2014.04.29. 20
Beszedf 2014.04.29. 21
Beszedf 2014.04.29. 22
Beszedf 2014.04.29. 23
Beszedf 2014.04.29. 24
Lineáris predikció alapokA beszédjel n-edik mintája becsülhető a megelőző p beszédminta lineáris kombinációjával
ahol az αi lineáris predikciós együtthatók hordozzák a jelenségre vonatkozó előismereteket, tapasztalatokat.
p -- a prediktor fokszáma
Beszedf 2014.04.29. 25
Ebben a modellben bemenet a pedikciós hibaminták sorozata és kimenő jel az eredeti beszédjel-minták sorozata.
Beszedf 2014.04.29. 26
A toldalékcső modellje egyenletesen felosztott, állandó keresztmetszetű csőszakaszokkal
Beszedf 2014.04.29. 27
Belátható, hogy az alábbi rács struktúrák ekvivalensek…
Ezért a csőmodell azonos a PARCOR szintézis modellel, hari = ─ ki
Beszedf 2014.04.29. 28
Jól alkalmazható beszédfelismerés kritériumai
• Személyfüggetlen• Folyamatos, természetes beszédet felismer a
rendszer.• A felismerés hibája nem több kb. 1%-nál (szavak
szintjén)! • Értenie is kell valamilyen szinten azt amit
felismer!• Reakcióideje nem több 100 ms-nál!!• Indulatok, érzelmek elemeit is képes felismerni!• Platform független, a létező erőforrásokkal
működtethető!
Beszedf 2014.04.29. 29
Alapproblémák
• A beszéd folyamatos (nincsenek szóközönként szünetek) igazi szünetek csak nagyobb prozódiai egységek között vannak
• Ugyanannak a diszkrét beszédhangnak gyakorlatilag végtelen sok reprezentációja elképzelhető (bemondó, tempó, hangerő, hanglejtés, hangkörnyezet, hasonulás….., érzelem függvényében)
• Elnagyolt ejtés, pontatlanság, ejtési hiba, beszédhiba érthetetlen artikuláció gyakran előfordul
• „érteni” kell a mondandót ahhoz, hogy jól felismerhessük!
Beszedf 2014.04.29. 30
Egy létező és működő technikai kompromisszum:
az izolált szavas kötöttszótárú felismerő
• A felismerendő alapelemek szavak (tehát meghatározott szótárral dolgozik)
• A rendszer két fő eleme a tényleges felismerő és a szótárszerkesztő
• Lehet személyfüggő és személyfüggetlen (ez alapvetően a szótáralkotásra hat ki)
Beszedf 2014.04.29. 31
Beszedf 2014.04.29. 32
A felismerő rész fő elemei
• Kezdet és vég detektálás
• Lényegkiemelés
• Normálás
• Mintaillesztés
Beszedf 2014.04.29. 33
Szókezdet és szóvég detektálás
• Gördülő számolás• 10-20 ms időkeretenként energiát számol• Ebből meghatározható a normál zajszint• Szókezdet = ha a normál zajszintet a keretenergia pl.
6dB értékkel meghaladja• Szóvég = ha kezdet után a keretenergia n kereten át a
normál zajszintet nem haladja meg pl. 6dB értékkel• Detektált szó = ha a szóhossz a szótárelemek
hosszához illeszkedik• Gyakoriak a jelentős kezdet-vég detektálási hibák
Beszedf 2014.04.29. 34
Lényegkiemelés
• Feladata a beszédjelet leíró adattömeg redukálása a jelentési információ megőrzése mellett
• Időkeretenként egy vektort ad meg• Szokásos módjai:
sávszűrők alkalmazása és az energia sávonkénti meghatározása(fülmodell, 10-20 sáv?)
LPC együtthatók számolása (6-20)PARCOR/ Csőmodell együtthatók
számolása (6-20 jól kvantálható)Cepstrum együtthatók számolása (10-20)
Beszedf 2014.04.29. 35
Normálás (uniformizálás)
• Célja, hogy a szótárelemek és a felismerendő szavak jobban összevethetők legyenek
• Egyik szükséges formája az energia-normálás (energia maximum vagy energia átlag alapján) annak érdekében, hogy a mikrofonnal nagyobb vagy kisebb szinttel vett, vagy halkabban vagy hangosabban ejtett szavak a megfelelő szótárelemhez jobban illeszkedjenek,
• Másik szükséges formája az idő-normálás annak érdekében, hogy a gyorsabban vagy lassabban ejtett szavak a megfelelő szótárelemhez jobban illeszkedjenek
• A (referencia) szótárelemek eleve normáltak energia és idő szerint
• A normálás arányos nyújtást vagy zsugorítást jelent az adott dimenzióban
Beszedf 2014.04.29. 36
Mintaillesztés
• A felismerendő szavak és a szótárelemek azonos méretű és elemeikben is normált mátrixok
• A felismerés lényege, hogy a felismerendő beszédjelet leíró a mátrix melyik szótárelem mátrixhoz illeszkedik legjobban
• Kézenfekvő megoldás az elemenkénti különbségek abszolút értekeinek halmazata alapján minimum keresés.
• Probléma: a hibás végpont-detektálás és a ritmuskülönbségek miatt nem összeillő elemeket vetünk össze, ezért nagy a különbség halmazat, nincs meg a jó illeszkedés
• Megoldás: idővetemítés, (Dynamic Time Warping)
Beszedf 2014.04.29. 37
Idővetemítés
• xi a felismerendő szó i-edik keretét leíró lényegkiemelt (normált) vektor , komponensei a sávenergiák, LPC együtthatók stb. p elemmel
• yj az éppen vizsgált szótárelem j-edik keretének vektora azonos (és normált) komponensekkel, p elemmel
• xi és yi lokális távolsága számolható a
• képlettel
p
kkjkiji yxd
1,,,
Beszedf 2014.04.29. 38
PéldaVetemítőgörbe
Felismerendő szó i-edik kerete
Vizsg
ált szótárelem
j-edik
kerete
p
kkjkiji yxd
1,,,
Feladat:keresendő az a vetemítő görbe, amelynél a két alakzat legjobbanIlleszkedik, azaza kumulatív távolságminimális.A keresés elvégzendőminden szótárelemre
Beszedf 2014.04.29. 39
Idővetemítés szuboptimális algoritmusa (PÓK) példa
A di,j lokális távolságok alapján
számolhatók a tij kumulatív távolságok az alábbi képlettel
A kumulatív távolságokat csak az │i-j │≤ 4 egyenlőséggel megengedett tartományon belül számoljuk soronként balról jobbra és alulról felfelé haladva
dijtt
dt
dtt
t
jiji
jiji
jijiji
ji
1,2,1
,1,1
,,11,2
, 2min
tij
Beszedf 2014.04.29. 40
Innen indulunk
Ide kell érkezni
Beszedf 2014.04.29. 41
j
m
1
n1 i
Time Series B
Time Series A
i = j + r
i = j - r
DTW Algorithm at Work
Start with the calculation of g(1,1) = d(1,1).
Move to the second row g(i, 2) = min(g(i, 1), g(i–1, 1), g(i – 1, 2)) + d(i, 2). Book keep for each cell the index of this neighboring cell, which contributes the minimum score (red arrows).
Calculate the first row g(i, 1) = g(i–1, 1) + d(i, 1).
Calculate the first column g(1, j) = g(1, j) + d(1, j).
Trace back the best path through the grid starting from g(n, m) and moving towards g(1,1) by following the red arrows.
Carry on from left to right and from bottom to top with the rest of the grid g(i, j) = min(g(i, j–1), g(i–1, j–1), g(i – 1, j)) + d(i, j).
Beszedf 2014.04.29. 42
Kész algoritmusok
• http://download-book.net/matlab-code-for-dtw-algorithm-for-speech-recognition-pdf.html
• http://download-book.net/dtw-algorithm-in-java-doc.html
• http://member.hitel.net/~wjluv/program.html
• http://www.sourcecodeonline.com/list?q=dtw_algorithm
Beszedf 2014.04.29. 43
Alkalmazások
• Hang-tárcsázás
• Dialógus rendszerek, telefonos információs rendszerek.
• Összetett eszközök vezérlése (pl. autó, vadászgép http://www.f-16.net/news_article2571.html)
• Sérültek segítése
Beszedf 2014.04.29. 44
These gadgets can then be activated and controlled through voice recognition ...
Beszedf 2014.04.29. 45
Beszedf 2014.04.29. 46
Beszedf 2014.04.29. 47
Beszedf 2014.04.29. 48
Beszedf 2014.04.29. 49