praktyczne aspekty wykorzystywania systemów rozpoznawania

Transkrypt

praktyczne aspekty wykorzystywania systemów rozpoznawania
MODELOWANIE INŻYNIERSKIE
40, s. 171-178, Gliwice 2010
ISSN 1896-771X
PRAKTYCZNE ASPEKTY WYKORZYSTYWANIA SYSTEMÓW
ROZPOZNAWANIA MOWY OPARTYCH NA HMM
AGNIESZKA MIETŁA, MAREK IWANIEC
Katedra Automatyzacji Procesów, Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie e-mail:
[email protected], [email protected]
Streszczenie. W artykule poruszono problem tworzenia systemów
automatycznego rozpoznawania mowy zbudowanych na bazie ukrytych modeli
Markowa. Przedstawiono matematyczne podstawy HMM oraz odniesiono je do
rzeczywistego problemu. Wykazano, że niezwykle istotny jest odpowiedni dobór
liczby stanów oraz rozkładów w systemie. Zaprezentowano także wyniki testów
stwierdzające przewagę współczynników RASTA-PLP nad MFCC oraz
konieczność stosowania parametrów delta oraz delta-delta.
1. WSTĘP
Systemy automatycznego rozpoznawania mowy (ARM) stają się z roku na rok coraz
bardziej popularne. Dzieje się tak za sprawą licznych potencjalnych zastosowań dla tego typu
systemów: od prostych sterowników włączających i wyłączających światło na komendę
[1][2], poprzez zaawansowane programy notujące, czy też wspomagające urządzenia dla osób
niepełnosprawnych [3]. Ponadto mowa jest naturalnym sposobem komunikacji dla człowieka,
stąd wielka atrakcyjność tego typu systemów dla potencjalnych użytkowników.
Dostępność gotowych narzędzi wspomagających pisanie programów do automatycznego
rozpoznawania mowy, takich jak HTK czy Sphinx [6][7] sprawia, że tworzenie tego typu
systemów jest znacznie prostsze niż jeszcze kilka lat temu. Ponadto dzięki temu autorzy nie
muszą dokładnie zgłębiać wszystkich, częstokroć niezwykle skomplikowanych, modeli
matematycznych stojących u podstaw ARM. Niestety, takie podejście ma również wady, gdyż
nieznajomość modeli powoduje, że trudno jest w sposób świadomy dobierać parametry, czy
choćby wybierać te z nich, które mogą mieć istotny wpływ na działanie systemu.
W artykule przedstawiono w sposób ogólny zastosowanie ukrytych modeli Markowa
(hidden Markov models, HMM) jako narzędzia do budowy algorytmów rozpoznawania
mowy. Omówione zostały parametry wpływające na skuteczność działania tych algorytmów,
gdyż ich właściwy dobór może poprawić efektywność systemu rozpoznawania mowy nawet
o kilkadziesiąt procent.
W pracy zawarto praktyczne informacje adresowane nie tylko do twórców programów do
automatycznego rozpoznawania mowy, ale także dotyczące innych systemów bazujących na
ukrytych modelach Markowa.
172
A. MIETŁA, M. IWANIEC
2. UKRYTE MODELE MARKOWA
Ukryte modele Markowa to zaawansowane modele statystyczne. Rozważany system może
w dyskretnej chwili czasowej t przyjmować jeden z N stanów, zależnie od stanu w chwili
poprzedniej (jest on łańcuchem Markowa rzędu pierwszego, tzn. jego stan zależy tylko od
jednego stanu poprzedzającego) [4]. Wówczas można posłużyć się rys.1 do zobrazowania
przejść pomiędzy stanami.
Rys.1. Łańcuch Markowa dla systemu z 3 dopuszczalnymi stanami (N=3)
Przejścia opisuje się za pomocą kwadratowej macierzy prawdopodobieństw A=[aij].
Element aij jest to prawdopodobieństwo przejścia systemu ze stanu i do stanu j w kolejnej
chwili czasowej [5]:
aij = Pr(q t = j | q t -1 = i ) 1 £ i, j £ N ,
(1)
N
åa
j =1
ij
= 1.
(2)
Do opisu systemu nie wystarczy sama macierz A. Konieczna jest również znajomość
macierzy Π, która zawiera prawdopodobieństwa wystąpienia i-tego stanu na początku
sekwencji stanów.
P i = Pr(q 0 = i ) .
(3)
Znając obie macierze: A oraz Π, możliwe jest obliczenie prawdopodobieństwa
wygenerowania przez system sekwencji stanów q=(q0, q1, …, qT):
Pr(q | A, P ) = P q0 a q0 q1 a q1q2 K a qT -1qT .
(4)
W przypadku rozpoznawania mowy rozważa się jednak nieco odmienną sytuację, gdy
łańcuch q uznawany jest za niejawny (ukryty). Znana jest natomiast sekwencja obserwacji O.
W przypadku mowy obserwacja jest to wektor cech wyekstrahowanych z pojedynczej ramki
nagrania.
Rys.2. Sekwencja obserwacji (wektorów cech wyekstrahowanych z nagrania mowy)
PRAKTYCZNE ASPEKTY WYKORZYSTYWANIA SYSTEMÓW ROZPOZNAWANIA MOWY… 173
Dla każdego ze stanów systemu istnieje pewne prawdopodobieństwo b, że w trakcie
przebywania systemu w tym stanie wygenerowana zostanie obserwacja Ot:
B = {bi (Ot )}iN=1 .
(5)
Ponieważ nie da się przewidzieć liczby różnych obserwacji, które mogą wystąpić (może
być ich nieskończenie wiele), do opisu prawdopodobieństwa pojawienia się obserwacji Ot
w czasie, gdy system znajduje się w i-tym stanie, należy posłużyć się ciągłą funkcją gęstości
prawdopodobieństwa. Najczęściej używa się kombinacji liniowej M rozkładów Gaussa:
M
bi (Ot ) = å cim N ( m im , S im ) ,
(6)
m =1
cim ³ 0 Ù
M
åc
m =1
im
= 1.
(7)
gdzie cim oznacza współczynnik wagowy, a N(µ,Σ) jest to rozkład normalny
charakteryzowany przez wektor wartości średnich µ oraz macierz kowariancji Σ.
Ukryte modele Markowa oznacza się często jako λ [5]:
l = (P, A, B) .
(8)
Na podstawie tych wszystkich informacji możliwe jest obliczenie prawdopodobieństwa
wygenerowania sekwencji obserwacji O przez system λ:
T
Pr(O | P , A, B) = å P(O, q | P , A, B) = å P q0 Õ a qt -1qt bqt (Ot ) .
q
q
(9)
t =1
3. EKSPERYMENTY I OTRZYMANE REZULTATY
Ważnym etapem tworzenia aplikacji HMM jest zrozumienie, w jaki sposób model
matematyczny odnieść do rzeczywistego problemu, jakim jest w tym przypadku
rozpoznawanie mowy. W opracowanym systemie, na podstawie nagranej wypowiedzi,
obliczane są kolejne wektory obserwacji. Najczęściej wykorzystywanymi cechami są w tym
przypadku współczynniki melcepstralne (mel-frequency cepstral coefficients) [9]. Przed
przystąpieniem do obliczania wektorów obserwacji można dokonać odpowiedniej obróbki
sygnału (normalizacja, filtracja, itp.).
W najprostszym przypadku dla każdego rozpoznawanego słowa wytrenowany jest odrębny
model (HMM). Pojęcie treningu odnosi się tutaj do wyznaczenia parametrów modelu –
macierzy Π,A,B tworzonych na podstawie dostarczonych próbek (sekwencji obserwacji).
Etap rozpoznawania słowa polega na obliczeniu prawdopodobieństwa wygenerowania
sekwencji obserwacji obliczonej z nagrania przez każdy z wytrenowanych modeli. Następnie
wybierane jest największe z prawdopodobieństw oraz właściwy model.
Jako skuteczność rozpoznawania rozumiany jest iloraz liczby nagrań, które zostały
prawidłowo przypisane odpowiedniemu modelowi słowa i całkowitej liczby próbek
wykorzystywanych w teście.
W niniejszej pracy rozważano wpływ kilku parametrów na skuteczność działania systemu
rozpoznawania mowy. Wzięto pod uwagę dwa warianty systemu: zależny oraz niezależny od
mówcy. W pierwszym przypadku ARM trenowany jest na próbkach mowy jednej osoby i jest
przystosowany tylko do rozpoznawania jej wypowiedzi. Z kolei konstruując system
174
A. MIETŁA, M. IWANIEC
niezależny od mówcy, zakłada się, że będzie on poprawnie działał dla każdej osoby, która
potrafi wypowiedzieć dane słowo.
3.1. System zależny od mówcy
Istotną kwestią jest odpowiedź na pytanie: ile próbek (nagrań) należy dostarczyć, aby
system został dobrze wytrenowany. Na rys. 3 przedstawiono wyniki rozpoznawania kolejnych
cyfr w zależności od ilości próbek treningowych. Okazuje się, że już niewielka liczba nagrań
(10) pozawala na uzyskanie wysokiej skuteczności. Jedynie w przypadku trzech cyfr poziom
błędu pozostawał zbyt wysoki (trzy, pięć, siedem).
Rys. 3. Skuteczność rozpoznawania cyfr w zależności od liczby nagrań użytych do treningu
Dla tych słów przeprowadzono dalsze testy polegające na zbadaniu skuteczności
rozpoznawania przy zmieniającej się ilości stanów w HMM.
Jak pokazuje rys. 4, dla każdej z trzech cyfr można wskazać pewną optymalną liczbę
stanów, dla której skuteczność jest największa. Mimo to uzyskane wyniki nadal nie są
zadowalające.
Rys. 4. Skuteczność rozpoznawania cyfr w zależności od liczby stanów w modelu
PRAKTYCZNE ASPEKTY WYKORZYSTYWANIA SYSTEMÓW ROZPOZNAWANIA MOWY… 175
Kolejnym zmienianym parametrem była liczba rozkładów Gaussa charakteryzujących
prawdopodobieństwo pojawienia się określonej obserwacji. Zmieniając liczbę rozkładów,
uzyskano znaczny wzrost skuteczności rozpoznawania słów. Jak pokazują dane zamieszczone
na rys. 5, odpowiedni dobór tego parametru umożliwia wzrost skuteczności (rozpoznawania
słów) nawet o kilkadziesiąt procent.
Rys. 5. Skuteczność rozpoznawania cyfr w zależności od ilości rozkładów w modelu
Niezmiernie istotną kwestią w systemach rozpoznawania jest dobór odpowiednich cech, na
podstawie których dokonywana będzie klasyfikacja wypowiedzi. W przypadku
rozpoznawania mowy dużą popularnością cieszą się współczynniki melcepstralne (MFCC).
Ich skuteczność porównano z innym typem parametrów, współczynnikami RASTA-PLP
(Relative Spectral Transform - Perceptual Linear Prediction) [8].
Testy wykazały, iż stosowanie wektora cech poszerzonego o ich pierwszą oraz drugą
pochodną po czasie (współczynniki delta oraz delta-delta) poprawia skuteczność
rozpoznawania. W przypadku wykorzystywania samych parametrów RASTA-PLP
maksymalna osiągnięta skuteczność wynosiła 89.3% (przy 15 współczynnikach).
Tymczasem, jak pokazują dane zebrane na rys. 6, już przy 12-elementowym wektorze
zawierającym 4 współczynniki RASTA-PLP, 4 delta oraz 4 delta-delta uzyskano skuteczność
przekraczającą 98%.
176
A. MIETŁA, M. IWANIEC
Rys. 6. Porównanie średniej skuteczności rozpoznawania cyfr dla różnej liczby
współczynników MFCC oraz RASTA-PLP w połączeniu z parametrami delta i delta-delta
3.2. System niezależny od mówcy
Skonstruowanie systemu automatycznego rozpoznawania mowy działającego niezależnie
od mówcy jest trudnym zadaniem. Przeprowadzenie odpowiedniego treningu modelu
wymaga zgromadzenia znacznej liczby próbek każdego z rozpoznawanych słów. Co więcej,
nagrania te powinny być jak najbardziej zróżnicowane, to znaczy pochodzić od dużej liczby
osób. Należy także uważać, aby zachować odpowiednie proporcje pomiędzy próbkami
pochodzącymi od kobiet i mężczyzn, gdyż w przeciwnym przypadku może okazać się, że
model będzie czuły na płeć.
Rys. 7. Średnia skuteczność rozpoznawania cyfr w zależności od ilości próbek treningowych
dla każdego słowa
Na rys. 7 pokazano jak zmienia się skuteczność działania systemu w zależności od liczby
nagrań użytych do treningu w przypadku użycia współczynników MFCC oraz RASTA-PLP.
Zadowalającą skuteczność otrzymano dopiero wtedy, gdy zgromadzono 300 próbek dla
PRAKTYCZNE ASPEKTY WYKORZYSTYWANIA SYSTEMÓW ROZPOZNAWANIA MOWY… 177
każdej cyfry. Wykorzystano nagrania pochodzące od 30 osób (zachowano równowagę płci),
natomiast testy prowadzono na nagraniach pochodzących od 80 osób.
Rys. 8. Średnia skuteczność rozpoznawania słów w zależności od rodzaju i liczby
współczynników ekstrahowanych z nagrania
Na rys. 8 przedstawiono, jak zmienia się skuteczność systemu przy zastosowaniu różnej
liczby współczynników MFCC oraz RASTA-PLP. W tym przypadku wektor cech był
poszerzony o parametry delta oraz delta-delta. Zdecydowanie lepsze efekty wykazywały
modele trenowane na współczynnikach RASTA-PLP.
4. WNIOSKI
W pracy przedstawione zostały matematyczne podstawy tworzenia systemów
automatycznego rozpoznawania mowy wykorzystujących ukryte modele Markowa. W zarysie
przedstawiono główne problemy związane z powyższymi systemami działającymi zależnie
i niezależnie od mówcy. Wskazano parametry, które w dużej mierze warunkują skuteczne
działanie tego typu systemów. Wyniki przeprowadzonych badań pokazują, że właściwy dobór
parametrów może poprawić skuteczność identyfikacji słów nawet o kilkadziesiąt procent.
W badaniach wykazano, iż stworzenie systemu automatycznego rozpoznawania mowy
zależnego od mówcy jest stosunkowo proste i nie wymaga dużego zbioru treningowego.
Jednak wtedy, gdy system ma działać dla dowolnego użytkownika, konieczne jest
zgromadzenie pokaźnej ilości próbek do treningu.
Ponadto okazało się, iż lepsze wyniki rozpoznawania otrzymuje się przy stosowaniu
parametrów RASTA-PLP niż MFCC. Poprawę skuteczności zapewnia również użycie
pierwszej oraz drugiej pochodnej po czasie (parametry delta oraz delta-delta) w przypadku
obu typów współczynników.
Korzystanie z ukrytych modeli Markowa wymaga odpowiedniego doboru ilości stanów
oraz rozkładów. Testy pokazały, że najbardziej wrażliwym parametrem jest ilość rozkładów
Gaussa, a jej zmiana powoduje bardzo duże zmiany w skuteczności działania systemu.
178
A. MIETŁA, M. IWANIEC
LITERATURA
1. Haleem M.S.: Voice controlled automation system. Multitopic Conference IEEE
International, Karachi 2008, p. 508-512.
2. Kubik T., Sugisaka M.: Use of a cellular phone in mobile robot voice control. SICE
Proceedings of the 40th SICE Annual Conference, Nagoya 2001, p. 106-111.
3. Simpson R.C., Levine S.P.: Voice control of a powered wheelchair. “Neural Systems and
Rehabilitation Engineering” 2002, 10, 2, p. 122-125.
4. Elliott R.J., Aggoun L., Moore J.B.: Hidden Markov models: estimation and control. New
York : Springer, 1995, p. 3-19.
5. Juang B.H., Rabiner L.R.: Hidden Markov models for speech recognition.
“Technometrics” 1991, 33, 3, p. 251-272.
6. Ma G., Zhou W., Zheng J., You X., Ye W.: A Comparison between HTK and SPHINX
on Chinese Mandarin. “Artificial Intelligence” 2009, p. 394-397.
7. Young S.J, Woodland P.C., Byrne W.J.: Spontaneous speech recognition for the credit
card corpus using the HTK toolkit. Speech and Audio Processing, IEEE Transactions on,
2, 4, 1994, p. 615-621.
8. Openshaw J.P., Sun Z.P., Mason J.S.: A comparison of composite features under
degraded speech in speaker recognition. “Acoustic, Speech and Signal Processing” 1993,
2, 2, p. 371-374.
9. Tolba H., O’Shaughnessy D.: Automatic speech recognition based on cepstral
coefficients and a mel-based discrete energy operator. “Acoustic, Speech and Signal
Processing” 1998, 2, 2, p. 973-976.
PRACTICAL ASPECTS OF USE AUTOMATIC SPEECH
RECOGNITION SYSTEMS BASED ON HMM
Summary. Article discusses problems associated with automatic speech
recognition systems based on Hidden Markov Model. Mathematical basis of
HMM have been presented and it is shown how it can be applied to the real
problem. Extremely important is the proper selection of the quantity of states and
Gaussian distributions. Test results indicating the advantage of RASTA-PLP
coefficients over MFCCs and necessity of using delta and delta-delta parameters
are presented.

Podobne dokumenty