• Embed Doc
  • Readcast
  • Collections
  • CommentGo Back
Download
 
Ukryte Modele Markowa w rozpoznawaniu mowy
Michał Stanek 
 Data seminarium: 24 styczeń 2006  Data oddania dokumentu: 26 styczeń 2006 
 Streszczenie
 Dokument omawia zagadnienia związane z rozpoznawaniemmowy za pomocą ukrytych modeli markowa. Omówiony został proces kon- strukcji systemu, wykorzystanie modeli markowa w praktycznym działaniuoraz budowa zintegrowanego systemu rozpoznawania mowy SPHINX 4.
1.Wstęp
Historia systemów rozpoznawania mowy sięga początków lat 50-tych, kiedy to wBell Laboratory zaczęto prace nad systemem do rozpoznawania izolowanych cyfr.Wykorzystywano wtedy informacje na temat różnic w rezonansach spectrów. Konieclat 50-tych, lata 60-te oraz 70-te to dalszy rozwój tej dziedziny. Poza analizą spectrówzaczęto wykorzystywać informacje statystyczne, porównywać wzorce. Powstałymatematyczne podstawy oraz formalizacja wielu metod w tym metody
[2]
:
•
nieliniowego skalowania pary słów w celu ich porównania,
•
liniowe kodowanie predykcyjne,
•
dwupoziomowe programowanie dynamiczne,
•
 jednoprzebiegowa metoda Bridle'a i Browna,
•
ukryte modele Markowa oraz
•
sieci neuronowe.Wiele z prac rozpoczętych w tamtym okresie zakończyło się sukcesami, między innymi system IBM'a (opracowywany ponad 20 lat) osiąga on bardzo dobre rezultaty przyrozpoznawaniu mowy ciągłej.Obecnie poprawia się opracowywane wcześniej techniki, lecz niewątpliwie największą popularnością cieszą się ukryte modele markowa. Są one tak popularne i tak często wykorzystywane, że wiele osób myśli, iż stanowią one jedyne słuszne i prawidłowe rozwiązanie problemu rozpoznawania mowy.
2.Rodzaje systemów rozpoznawania mowy
Wyróżnić możemy różne rodzaje systemów rozpoznawania mowy
[1]
. Istniejące systemy podzielić możemy na takie, których zadaniem jest
rozpoznawania mowy
 
ciągłej 
i takie które mają wykrywać wystąpienia
izolowanych słów 
(wbrew pierwszemu wrażeniu rozpoznawanie pojedynczych słów nie jest wcale sprawą łatwiejszą).Wyróżnić możemy również systemy przeznaczone dla
 jednej konkretnej osoby
, czyli
1
 
ukierunkowane w celu rozpoznawania sygnału dźwiękowego z pewną z góry określoną charakterystyką, oraz takie które muszą rozpoznać słowa wypowiadane przezwielu
 potencjalnych rozmówców 
.Wreszcie ze względu na wielkość wyróżnić możemy systemy
małe, średnie
oraz
duże
. Jako systemy małe rozumiemy takie w których łączna ilość rozpoznawanychsłów lub zwrotów nie przekracza 100. Systemy takie cechują się najwyższą skutecznością oraz potrafią poradzić sobie z rozpoznawaniem mowy wielu osób. Średniesystemy to takie w których łączna liczba rozpoznawanych słów nie przekracza 3tysięcy. Aktualnie badania oraz prace rozwojowe prowadzi się nad systemami tej właśnie wielkości. W końcu systemy duże to takie w których liczba rozpoznawanychsłów sięga nawet 20 tysięcy. W trakcie tworzenia takich systemów pojawia się wielekomplikacji, zwłaszcza jeżeli chcemy stworzyć system uniwersalny potrafiący roz poznawać mowę wielu osób. Jeszcze trudniej stworzyć taki system tej wielkościdziałający w czasie rzeczywistym.
3.Etapy rozpoznawania mowy
Każdy system rozpoznawania mowy składa się z zasadniczo podobnych modułów, zktórych każdy odpowiedzialny jest za analizę otrzymanych danych na odpowiednimdla niego poziomie. Zasadniczo nie ma znaczenia jakich algorytmów i metod używamy w trakcie procesu rozpoznawania mowy, czy są to przykładowo sieci neuronoweczy też może ukryte modele markowa, ogólny schemat pozostaje niezmienny. Schemat ten przedstawiony jest na rysunku 1, a każdy z kroków analizy sygnału zostanieomówiony w dalszej części tego podpunktu.
 Rysunek 1: Etapy rozpoznawania mowy ([3] str. 19)
Etap analizy sygnału dźwiękowego
Pierwszym oraz zasadniczym etapem w czasie rozpoznawania sygnału dźwiękowego jest etap analizy tego sygnału. Jest on niezmiernie istotny z punktu widzenia funkcjonowania całego systemu. Jak widzimy na rysunku 1, błędy powstałe na tym etapieodbiją się na wszystkich następnych krokach. Podczas tego etapu dochodzi do wydo bycia pewnych wartości charakteryzujących dany sygnału wejściowy. Należą do nichmiędzy innymi zmiana amplitudy w czasie oraz zmiana natężenia poszczególnychczęstotliwości w czasie (rys. 2). Od nas zależy jakie cechy będą dla nas interesujące. Niemniej jednak istnieje już szereg parametrów, które potwierdziły swoje praktyczneznaczenie
[2],
między innymi parametry cepstralne oraz wartości zmian energiisygnału.
2
 
 Rysunek 2: Wykres amplitudy od czasu oraz natężenia częstotliwości od czasu –  spektrogram ([2] str. 7) Rysunek 3: Przykładowa konfiguracja filtrów dla fazy wstępnej ([2] str. 5)
Kiedy ustalimy już zestaw podstawowych parametrów jakie chcemy wydobywać zdźwięku (rysunek 2 przedstawia przykładową konfigurację filtrów dźwiękowych),kolejnym etapem jest ustalenie długości ramki dźwiękowej. Zastosowanie ramki powoduje, że pomiaru parametrów dokonujemy nie z całego sygnału dźwiękowego, atylko z jego fragmentu. Ramki dźwiękowe w zależności od podejścia mogą na siebienachodzić lub też nie. Podział sygnału dźwiękowego na ramki powoduje iż uzyskujemy ciąg pomiarów z których każdy jest wektorem odpowiednio zdefiniowanych przeznas cech. Taki wektor trafia następnie do etapu analizy, gdzie następuje próba zakwalifikowania danego zestawu obserwacji do wcześniej wprowadzonych wzorców.Zanim to się jednak stanie stoimy przed jeszcze jednym problemem, jakim jest ciągłość wartości parametrów charakteryzujących każdą ramkę.
 Rysunek 4: Podział sygnału dźwiękowego na ramki
Wiele metod maszynowego uczenia w tym także ukryte modele markowa posiadają dyskretny charakter, i aby móc je zastosować dysponować musimy dyskretnym orazskończonym zestawem dopuszczalnych stanów. Problem ten rozwiązuje się za pomocą kwantyzacji danego sygnału.Problem doboru progów dla poszczególnych parametrów rozwiązujemy zazwyczaj zwykorzystaniem algorytmów klasteryzujących np. K-means. Po utworzeniu od powiednich klastrów każdy parametr zostaje zakwalifikowany do odpowiedniego znich i jego numer zostaje dalej zwracany. Możliwe jest, że klasteryzacji podlega caływektor w n-wymiarowej przestrzeni, dzięki czemu możliwe jest zmniejszenie do jednego wymiaru wektora wejściowego zwracając po prostu numer klastra, który jest
3
of 00

Leave a Comment

You must be to leave a comment.
Submit
Characters: ...
You must be to leave a comment.
Submit
Characters: ...