Impresivna superiornost mozga u širokom spektru kognitivnih veština, uključujući prepoznavanje govora, je inspirisala istraživanje na polju nove paradigme računanja od 40-ih godina prošlog veka, na predpostavku da modeli koji podsećaju na mozak mogu da vode u performanse koje podsećaju na performanse mozga kada je reč o mnogim kompleksnim zadacima. Ova fascinantna oblast istraživanja je sada poznata kao konekcivizam ili nauka o veštačkim neuralnim mrežama.
Koje je trenutno stanje veštine prepoznavanja govora? Ovo je komplikovano pitanje, zato što tačnost sistema zavisi od uslova pod kojima je isti razvijen. Pod dovoljno usmerenim uslovima skoro svaki sistem može da dostigne tačnost sličnu čovekovoj, ali je mnogo teže postići dobru tačnost pod opštim uslovima. Uslovi evaulacije i takođe tačnosti bilo kog sistema mogu da variraju po sledećim dimenzijama:
- Veličina rečnika i zbunjivost.
Kao opšte pravilo, jednostavno je diskriminisati u okviru malog skupa reči, ali stopa greška raste prirodno kako veličina rečnika raste. Na primer, 10 cifara od “nula” do “devet” može da bude prepoznato suštinski savršeno, ali veličina rečnika od 200, 5000 ili 100000 može da ima stopu greška od 3%, 7% ili 45%. S druge strane, čak i mali rečnik može da bude problematičan za prepoznavanje ukoliko sadrži zbunjujće reči. Na primer, 26 slova engleskog alfabeta je vrlo teško diskriminisati zato što sadrže tako mnogo zbunjujućih reči (najnotornije, E-skup: “B, C, D, E, G, P, T, V, Z”); stopa greške od 8% se smatra dobrom za ovaj rečnik.
- Zavisnost i nezavisnost od govornika.
Po definiciji, sistem koji zavisi od govornika je predviđen da se koristi samo od strane jednog govornika, dok sistem nezavistan od govornika može da koristi bilo koji govornik. Nezavisnost od govornika je teška za postizanje zato što parametri sistema postaju povezani sa govornikom koji je obučen za rad sa tim sistemom i ovi parametri teže da budu viskoko specifični po pitanju govornika.
- Izolovani, nekontinualni ili kontinualni govor.
Izolovani govor znači jednu reč; nekontinualni govor znači čitave rečenice u kojima su reči veštački razdvojene tišinom; i kontinualni govor znači prirodno izgovorene rečenice. Izolovano i nekontinualno prepoznavanje govora je relativno jednostavno zato što se granice između reči lepo detektuju i reči teže da budu jasno izgovorene.
- Zadatak i jezička ograničenja.
Čak i sa fiksnim rečnikom, performanse će varirati sa prirodom ograničenja po pitanju sekvenci reči koje su dopuštene za vreme prepoznavanja. Neka ograničenja mogu biti zavisna od zadatka (na primer, neke primene mogu da odbace hipotezu „Jabuka je crvena“); druga ograničenja mogu da budu semantička (odbacujući „Jabuka je besna“), ili sinaktička (odbacujući „Crvena je jabuka ta“). Ograničenja su često predstavljena gramatičkim pravilima, koja idealno isfiltriraju nerazumene rečenice, tako da sistem za prepoznavanje govora evoluaira samo verodostojne rečenice. Gramatička pravila su obično rangirana prema njihovoj kompleksnosti, broju koji indicira gramatički faktor prosečnog grananja, kao što je broj reči koji može da prati bilo koju datu reč. Poteškoća zadatka je mnogo pouzdanije merena njenom komplikovanošću nego veličinom rečnika.
- Čitani naspram spontanog govora.
Sistem može biti razvijen i zasnovan na govoru koji je ili čitan iz pripremljenih skripti, ili izgovoren spontano. Spontani govor je daleko teži, zato što ima tendenciju da bude začinjen sa disfluentnostima kao što su „uh“ ili „um“, lažnim počecima, nepotpunim rečenicama, mucanjem, kašljem i smehom i, naravno, rečnik je praktično neograničen, tako da sistem mora da bude u stanju da upravlja inteligentno sa nepoznatim rečima.
- Neprijateljski uslovi.
Performanse sistema takođe mogu da budu degradirane čitavim spektrom neprijateljskih uslova. Ovo uključuje buku okruženja (na primer, buku u automobilu ili fabrici); akustičke distorzije (na primer, eho, akustiku prostorije); različite mikrofone (na primer, pričanje iz blizine, višesmernost ili telefon); ograničen frekventni propusni opseg (u telefonskom prenosu); i izmenjene načine pričanja (vikanje, kukanje, brzo pričanje, itd.).
Sa ciljem da se razviju i uporede različiti sistemi koji funkcionišu pod dobro definisanim uslovima, veliki broj standardizovanih baza podataka je bio kreiran i svaka od njih ima neke posebne karakteristike. Na primer, jedna baza podataka koja je bila široko korišćena je DARPA Resource Management baza podataka – veliki rečnik (1000 reči), nezvisna od govornika, baza podataka sa kontinualnim govorom koja se sastoji od 4000 trening rečenica u domenu menadžmenta mornaričkih resursa, čitanja iz skripte i snimanja pod uslovima benignog okruženja; testiranje je obično izvršeno korišćenjem gramatičkih pravila kompleksnosti 60. Pod ovim kontrolisanim uslovima, stanje umetnosti performansi je oko 97% tačnosti prepoznavanja reči (ili manje za jednostavnije sisteme).
Struktura standardnog sistema za prepoznavanje govora je ilustrovana na Slici 1.
Slika 1. Struktura standardnog sistema za prepoznavanje govora
- Neizvežbani govor. Govor je tipično uzorkovn na visokoj frekvenciji, na primer 16 KHz preko mikrofona ili 8 KHz preko telefona. Ovo daje prinos sekvence amplitudne vrednosti tokom vremena.
- Analiza signala. Neizvežbani govor bi trebao na početku da bude transformisan i kompresovan, sa ciljem da se pojednostavi procesiranje podsekvenci. Mnoge tehnike analize signala su dostupne što može da izvuče korisne karakteristike i kompresuje podatke sa faktorom 10 bez gubitka važnih informacija. Među najpopularnijima su:
- Furijeova analiza (FFT) daje prinos diskretnih frekvencija tokom vremena, koje mogu da budu interpretirane vizuelno. Frekvencije su obično distribuirane koristeći Mel scale, koji je linearan u niskom opsegu, ali i logaritamski u visokom opsegu, što odgovara fiziološkim karakteristikama ljudskog uha.
- Perceptivna linearna predikcija (PLP) je takođe fiziološki motivisana, ali daje prinos koeficijentima koji ne mogu da budu interpretirani vizuelno.
- Linearno prediktivno kodiranje (LPC) donosi koeficijente linearnih jednačina koje mogu da približe skoriju istoriju vrednosti neizvežbanog govora.
- Kepstralova analiza izračunava inverznu Furijerovu transformaciju logaritma spektra snage signala.
Slika 2. Prikaz LDA analize govora
- Govorni okviri. Rezultat analize signala je sekvena govornih okvira, čiji je interval obično oko 10 msec, sa oko 16 koeficijenata po okviru. Ovi okviri mogu biti predstavljeni pomoću svojih sopstevih prvih i/ili drugih izvoda, pružajući eksplicitnu informaciju o dinamici govora – ovo tipično vodi u unapređene performanse. Govorni okviri se koriste za akustičku analizu.
- Akustički modeli. Sa ciljem da se analiziraju govorni okviri za njihove akustičke sadržaje, potreban je skup akustičkih modela. Postoji mnogo vrsta akustičkih modela, koji variraju u smislu reprezentacije, granualnosti, zavisnosti od konteksta, itd.
Slika 3 prikazuje dve popularne reprezentacije za akustičke modele. Najjednostavniji je šablon, koji je čisto uskladišteni uzorak jedinice govora koja treba da se modeluje, na primer, snimanjem reči. Nepoznata reč može biti prepoznata jednostavnim poređenjem sa svim poznatim šablonima i pronalaženjem najpribližijeg spoja. Šabloni imaju dve glavne manjkavosti: (1) oni ne mogu da modelujuakustičke promene, osim na grubi način tako što pridružuju višestruke šablone svakoj reči; i (2) u praksi oni su ograničeni na modele čitavog sveta, zato što je teško snimiti ili segmentovati uzorak koji je kraći od reči – tako da su šabloni korisni samo u malim sistemima koji mogu da obezbede luksuz korišćenja modela čitavog sveta. Mnogo fleksibilnija reprezentacija, korišćena u većim sistemima, je zasnovana na istreniranim akustičkim modelima ili stanjima. U ovom pristupu, svaka reč je modelovana u vidu sekvence istreniranog stanja i svako stanje indicira zvuk koji može da se čuje u tom segmentu reči koristeći raspodelu verovatnoće duž akustičkog prostora. Raspodela verovatnoće može da bude modelovana pomoću parametara, pretpostavljajući da postoji jednostavan oblik (na primer, Gusova raspodela) i onda pokušati pronaći parametre koji je opisuju; ili neparametarski predstavljajući raspodelu direktno pomoću histograma ili koristeći neuralnu mrežu.
U daljem tekstu će biti objašnjen algoritam dinamičkog vremenskog savijanja, koji predstavlja jedan od najstarijih i najvažnijih algoritama pri prepoznavanju govora.
Najjednostavniji način da se prepozna uzorak izolovane reči je da se on poredi sa velikim brojem uskladištenih šablona reči i da je na osnovu toga odredi koji je „najbolji pogodak“. Ovaj način je komplikovan zbog čitavog niza faktora. Prvo, različiti uzorci će imati različita trajanja. Ovaj problem može biti eliminisan jednostavnom noramlizacijom šablona i nepoznatog govora, tako da svi oni dobiju jednako trajanje. Međutim, drugi problem je to da brzina govora ne mora da bude konstantna duž reči. Drugim rečima, optimalno ravnanje između šablona i uzorka govora može da bude nelinearno. Dinamičko vremensko savijanje je efikasan metod za pronalaženje optimalnog nelinearnog ravnanja.
Dinamičko vremensko savijanje je primer opšte klase algoritama koji je poznat kao dinamičko programiranje. Njegova vremenska i prostorna kompleksnost su samo linearni u trajanju uzorka govora i veličine rečnika. Prikaz dinamičkog vremenskog savijanja je dat na Slici 4.
Zato što je prpoznavanje govora u osnovi problem prepoznavanja obrazca i zato što su neuralne mreže dobre u prepoznavanju obrazca, mnogi raniji istraživači su primenjivali neuralne mreže u prepoznavanju govora. Najraniji pokušaji su uključivali visoko pojednostavljene zadatke, kao što su klasifikacija govornih segmenata u smislu glasovnih i neglesovnih ili nosnih, friktivnih i praskavih. Uspeh u ovim eksperimentima je ohrabrio istraživače da pređu na klasifikaciju fonoma – ovaj zadatak je postao odskočna daska za neuralne mreže jer je brzo postizao rezultate svetske klase.
Postoje dva osnovna pristupa u klasifikaciji govora korišćenjem neuralnih mreža: statički i dinamički, kao što je prikazano na Slici 5.
Jednostavan, ali elegantan eksperiment je izveden od strane Huang-a & Lippmann-a (1988), koji su demonstrirali da neuralna mreža može da formira kompleksne površine odluka iz podataka vezanih za govor. Oni su primenili višeslojnu percepciju sa samo 2 ulaza, 50 skrivenih jedinica i 10 izlaza. Posle 50.000 iteracija treninga, mreža je proizvela regione odluke koji su prikazani na Slici 6. Ovi regioni odluke su skoro optimalni i ponovo sklapaju regione odluke koji bi inače bili nacrtani ručno, što vodi u tačnost klasifikacije koja može da se poredi sa više konvencionalnih algoritama, kao što su k-najbliži sused ili Gausova klasifikacija.
Među najsloženijim zadacima klasifikacije je tako zvani E-skup, odnosno pravljenje razlike između ritmičkih engleskih slova “B, C, D, E, G, P, T, V, Z”. Burr (1988) je primenio statičku mrežu za ovaj zadatak i dobio vrlo dobar rezulat. Njegova mreža je koristila ulazni prozor od 20 spektralnih okvira, automatski ekstraktujući iz svih iskaza i koristeći energetsku informaciju. Ovi ulazi su vodili direktno do 9 izlaza reprezentujući slova E-skupa. Mreža je trenirana i testirana koristeći 180 simbola od jednog govornika. Sa povećanjem broja testiranih uzoraka i povećanjem efikasnosti i drugih karakteristika, tačnost prepoznavanja je postajala gotovo savršena.
Tekst je preuzet sa sajta: www.learnartificialneuralnetworks.com, obrađen i prilagođen srpskom jeziku.