Problem, das gelöst werden soll
-
Die Genauigkeit der sprecherunabhängigen Spracherkennung ist
mit den gegenwärtig benutzten Algorithmen unzureichend,
insbesondere dann, wenn die Erkennung durch angewählte
Telefonverbindungen erfolgt. Die Genauigkeit eines Spracherkenners
bedeutet, daß er die Fähigkeit hat, eine Äußerung dadurch zu
erkennen, daß sie mit den vom System vorberechneten Wortschablonen
verglichen wird.
Gegenwärtige Lösungen und ihre Nachteile
-
Herkömmlich verdeckte Markow-Modelle (HMM), die auf der
Wahrscheinlichkeitstheorie beruhen, werden bei Spracherkennern
benutzt. Während der Erkennungsphase wird die
Wahrscheinlichkeit, daß ein bestimmtes Muster die Äußerung erzeugen kann,
berechnet. Das Muster, das die höchste Wahrscheinlichkeit hat,
wird als das erkannte Wort gewählt.
-
Quellenangabe [2] stellt eine Spracherkennungsmethode vor, die
Vektorquantisierung (VQ) mit HMM's benutzt anstelle der
statistischen Mustererkennung. Während der Erkennungsphase wird
das Fehlerquadrat zwischen der Wortschablone und der
vorgegebenen Äußerung berechnet. Wortschablonen sind HMM's, wobei jeder
Zustand sein eigenes VQ-Referenzbuch hat. Jedes VQ-Referenzbuch
wird aus Ubungsdaten mit einem
LBG-Vektorquantisierungsalgorithmus [5] berechnet und enthält die typischen
Sprachparameter, die in diesem Zustand auftreten. Eine Schablone, die das
kleinste Fehlerquadrat ergibt, wird als das erkannte Wort
gewählt. Der modifizierte Viterbialgorithmus, der benutzt wird, um
den Abstand zu berechnen, ist ebenfalls in [2] beschrieben. Ein
Spracherkener, der HMM's mit kontinuierlichen Mischdichten
verwendet, wird in [3] vorgestellt. Er benutzt das Cepstrum,
das von der LPC-Analyse abgeleitet ist, und seine Ableitung als
den Sprachparameter (Spektralableitung). Der Vektor, der aus
der Sprache berechnet ist, enthält Kurzzeitinformation über
spektrale Änderungen im Signal (über das Cepstrum) und die
Kurzzeitspektralableitung enthält Information über einen
längeren Zeitraum (über das Delta-Cepstrum). Zählt man die
Spektralableitung zu den Sprachparametern dazu, so erhält man eine
genauere, zweidimensionale Darstellung des zeitabhängigen
Sprachsignals (Frequenz und Zeit). Wie aus [3] ersichtlich,
verbessert das die Erkennungsgenauigkeit des HMM-Modells, das
kontinuierliche Mischdichten verwendet.
-
Allerdings ist die Erkennungsgenauigkeit mit jeder dieser
beiden Methoden unzureichend.
-
Der patentierte Algorithmus [4], der für die
Sprecherverifizierung benutzt wird, ergibt eine 1%ige falsche Erkennung und
eine falsche Zurückweisungsrate, wenn man die Zahlen von 0 bis
9 benutzt, um die Verifizierung durchzuführen (in der
Quellenangabe wird nicht erwähnt, wieviele Zahlen der Benutzer während
des Verifizierungsvorganges sprechen muß).
Erfindung
-
Der Grundgedanken ist, die Methoden aus [2] und [3] miteinander
zu kombinieren, das heißt die Spektralableitung, die in [3]
gezeigt wird, zu den Sprachparametern des HMM-VQ-Algorithmus in
[2] zu addieren und eine bessere Erkennungsgenauigkeit zu
erhalten.
-
Die Erfindung sieht eine Spracherkennungsmethode vor, wie in
Anspruch 1 festgelegt.
-
Der Spracherkenner in [2], der VQ-Verzerrungsmessung benutzt,
wird mit den bekannten statistischen HMM's verglichen, die
kontinuierliche oder diskrete Mischdichten benutzen, und die
Überlegenheit des HMM-VQ über das herkömmliche HMM wird
deutlich aufgezeigt. Da der Gebrauch der Spektralableitung bei
statistischen HMM's die Erkennungsgenauigkeit verbessert, kann
durch das Addieren der Spektralableitung zum HMM-VQ-Modell die
Erkennungsgenauigkeit sogar noch mehr verbessert werden. Die
Spektralableitungen enthalten Information über einen längeren
Zeitraum. Durch die Kombination der beiden Parametersätze kann
eine höhere Erkennungsrate erhalten werden, als durch den
Gebrauch des Sprachspektrums allein wie in [2]. Während des
Einübungsprozesses werden separate VQ-Referenzbücher für
Sprach
spektrum und Spektralableitungen berechnet.
-
Bei der Verwendung von Testdaten, erhalten durch angewählte
Telefonleitungen, war die Erkennungsgenauigkeit höher,
verglichen mit der Methode von [2]. Hundert Sprecher wurden zum
Einüben benutzt und 25 verschiedene Sprecher wurden zum Testen
benutzt. Der Wortschatz bestand aus 11 finnischen Worten, und
es wurde eine Genauigkeit von 98,85% erhalten. Wenn ein
Schwellenwert angelegt wurde, so daß die relative Entfernung
zwischen dem besten und dem zweitbesten Wort größer als 10%
sein mußte, bevor ein gültiges Wort erkannt wurde, so wurde
eine 100%ige Genauigkeit erreicht, wobei 1,5% der Eingabe
zurückgewiesen wurden. Die Quellenangabe gibt eine
Erkennungsgenauigkeit von 100% an, doch wurden die Testdaten über ein
Mikrophon höchster Qualität aufgenommen. Die Sprache aus dem
Telefon ist viel schwieriger zu erkennen, da die Bandbreite
begrenzt ist und die Antwortfrequenzen der Telefonleitungen
sehr verschieden sein können.
Anwendungsbeispiel der Erfindung
-
Die vorgeschlagene Methode kann in gleicher Weise zur
Spracherkennung verwendet werden wie statistische HMN's. Die
Einheiten der Sprache, die erkannt werden sollen, können entweder
Worte, Phoneme, Triphone und dergleichen sein.
-
Bei der Anwendung kann es sich zum Beispiel um ein Voice-Mail-
System handeln, bei dem die Menübefehle durch Sprache anstatt
durch Drucken gegeben werden ("... wenn Sie eine Nachricht
hören wollen, drücken Sie 3 ..."). Das System hat gelernt,
einen kleinen Wortschatz von Befehlsworten zu erkennen, der mit
der Sprache des Benutzers verglichen wird.
-
Derselbe Algorithmus kann auch für die Sprecherverifizierung
benutzt werden, und erste Versuche ergaben vielversprechende
Ergebnisse. Wurde nur ein Wort zur Verifizierung benutzt, so
war die Fehlerrate 0,21%. Der Fehler wird berechnet durch
Multiplizieren der Zahl der falschen Zurückweisungen und der
Zahl der falschen Erkennungen und das Ermitteln der
Quadratwurzel des Ergebnisses [6]. Fünf verschiedene "richtige"
Sprecher wurden beim Test benutzt, der mit 185 vorgeblichen
Sprechern verglichen wurde. Die Wortmodelle wurden aus fünf
Wiederholungen eines Wortes berechnet (vergleiche mit [4], was
eine falsche Zurückweisungsrate von weniger als 1% ergibt).
Die Fehlerrate, die in [6] erhalten wurde, betrug 3,2%, und
zum Test wurden Sprachproben von hoher Qualität benutzt.
-
Die Fähigkeit, den Sprecher durch das Telefon zu erkennen, ist
wichtig bei Voice-Mail-Anwendungen, wenn das Telefon keine
DTMF-Töne übermitteln kann. In solch einem Fall gibt es keine
andere verläßliche Methode, um den Anrufer zu erkennen als
seine eigene Stimme.
Beschreibung der Vorgehensweise
-
Eine Methode zur diskreten, sprecherunabhängigen
Spracherkennung wird im folgenden dargestellt:
-
Die Erkennungsmethode benutzt HMM's mit Vektorquantisierung zur
Darstellung der Sprachparameter. Das HMM ist eine einfache
Zustandsmaschine, bei der der Übergang nur zum gegenwärtigen
oder zum nächsten Zustand auftreten kann. Ein Blockdiagramm der
verschiedenen Phasen bei der Spracherkennung ist in Fig. 1
wiedergegeben. Der neue Spracherkenner benutzt HMM-Modelle, so
daß jeder Zustand von zwei verschiedenen VQ-Referenzbüchern
beschrieben wird. Das eine wird durch die Anwendung der
Spektralparameter erhalten, die mit Hilfe der PLP-Analyse [1]
berechnet werden, und das andere wird erhalten durch die
Anwen
dung der Spektralableitungsparameter.
Verschiedene Phasen der Erkennung
1. Sprachanalyse
-
Sprache, die erkannt werden soll, wird mit PLP-Analyse [1] in
30 ms-Teilen und unter Verwendung von 15 ms-Intervallen
analysiert. Die Phasenanalyse ergibt die Sprachparameter ccl(m),
wobei 1 ≤ m ≤ 5, was dieses 15 ms-Phonem darstellt. Der Vektor
ccl(m) zum Zeitpunkt 1 wird mit dem Fenster Wc(m) gewichtet,
was folgende Gleichung ergibt:
-
c&sub1;(m) = cc&sub1;(m)*Wc(m) (1)
2. Berechnung der Parameter
-
Die Quellenangabe [3] beschreibt, wie der Gebrauch der
Spektralableitung die Erkennungsgenauigkeit eines statistischen
HMM's erhöht. Spektralableitung bedeutet den gewichteten
Durchschnitt der Spektralparameter, die aus der Phasenanalyse
erhalten werden. Der Durchschnitt wird über ein kurzes Zeitfenster
berechnet, entsprechend der Gleichung (2)
-
wobei G ein Verstärkungsfaktor ist, der so gewählt ist, daß die
Abweichungen der Vektoren c&sub1;(m) und c&sub1;(m) gleich sind. Der
Wert, der hier gewählt wurde, war 0,2. Durch die Kombination
dieser beiden Vektoren wird ein Parametersatz erhalten, der
das Zeitphonem 1 beschreibt
-
O&sub1; = {c&sub1;(m), c&sub1;(m)} (3),
-
das aus zehn Elementen besteht. Der Sprachparametersatz wird
mit C bezeichnet und der spektrale Ableitungsparameter wird mit
C bezeichnet, das heißt
-
C = {c&sub1;(m)} und C = { c&sub1;(m)} (4)
3. Einübungsphase
-
Die Wortschablonen werden für die Spektralparameter C und für
die abgeleiteten Spektralparameter C getrennt eingeübt. Die
Schablonen werden durch die Verwendung eines
Vektorquantisierungsalgorithmusses eingeübt, und der Einübungsprozeß ist in
Fig. 2 dargestellt.
-
1. Sprachproben, die zum Einüben benutzt werden, werden
zuerst mit Hilfe der PLP-Analyse analysiert, und die
Vektoren C und C werden erhalten. Diese Vektoren
beschreiben die Sprache in 15 ms-Intervallen. Jede
analysierte Sprachprobe wird zuerst linear in Zustände
eingeteilt, so daß jeder Zustand die gleiche Anzahl von
Vektoren hat. Die Zustände entsprechen den Zuständen in
einem HMM. Wenn ein HMM mit acht Zuständen gebraucht
wird, so wird jede analysierte Sprachprobe in acht Teile
von gleicher Länge eingeteilt. Diese lineare Einteilung
ergibt einen Startpunkt für den Einübungsalgorithmus.
-
2. Ein getrenntes Referenzbuch wird für jeden Zustand in
einem HMM berechnet. Der Vektorquantisierungsalgorithmus
wird auf jeden Vektor in jedem Zustand von jeder Probe
angewendet. Beispielsweise werden alle Vektoren, die zum
Zustand eins in jeder Sprechprobe gehören, dazu benutzt,
ein Referenzbuch für den Zustand eins zu erzeugen. Das
gleiche geschieht für die Zustände von zwei bis acht. Die
Referenzbücher enthalten einen Satz von Vektoren, die das
kleinste Abstandsquadrat zwischen den Vektoren, die zum
Einüben benutzt werden, ergeben. Es gibt verschiedene
Algorithmen, um einen Vektorenquantisierer zu entwerfen.
Eine Methode, die in [5] dargestellt wird, wird hier
angewendet.
-
3. Wenn die optimalen Referenzbücher aus den Übungsvektoren
berechnet sind, wird die VQ-Verzerrung jeder Sprachprobe
aus dem Modell berechnet. Die Summe bezeichnet die "Güte"
des Modells. Je kleiner die totale Verzerrung, um so
besser stellt das Modell die Worte dar, die benutzt
wurden, als das Modell entstand.
-
4. Die Summe wird verglichen mit der Summe, die aus der
vorherigen Wiederholung erhalten wurde. Ist die Summe
größer als die vorhergehende Summe, dann endet der
Einübervorgang.
-
5. Ist die neue Summe kleiner, so werden die Sprachproben in
einen neuen Satz von Zuständen geteilt, und der
Lernprozeß beginnt bei Schritt 2. Die beste Zustandssequenz
wird durch die Anwendung des Viterbialgorithmus gefunden.
-
Es ist wichtig, daß die Sprachproben unter denselben
Bedingungen gesammelt werden, bei denen der Spracherkenner eingesetzt
werden soll. Wenn Sprache durch das Telefon erkannt werden
soll, dann müssen die Wortschablonen mit Worten, die aus dem
Telefon gesammelt wurden, eingeübt werden. Falls verschiedene
Bedingungen beim Einüben und beim Erkennen eingesetzt werden,
so wird die Erkennungsgenauigkeit beträchtlich zurückgehen.
4. Abstandsberechnung
-
Der Abstand eines Wortes wird zwischen der gesprochenen Sprache
und der Wortschablone berechnet. Der Abstand D von jeder
Wortschablone wird durch den modifizierten Viterbialgorithmus [2]
berechnet entsprechend der folgenden Gleichung:
-
Hier bedeutet x&sub0;x&sub1; ... xL die Zustandssequenz eines HMM's, und
VQxi bedeutet Referenzbuch am Zustand xi. Die Anzahl der
Zustände im HMM wird mit S bezeichnet, das heißt: 1 ≤ xi ≤ S. L ist
die Anzahl der Phoneme in einem Wort. d(xi-1, xi) ist null,
wenn es einen Übergang vom Zustand xi-1 zum Zustand xi gibt.
Andernfalls gilt d(xi-1, xi) = ∞. d(ci, VQxi) bezeichnet den
kleinsten Abstand zwischen den Vektoren ci und VQxi, der
definiert ist als
-
Hier ist vqj eine Komponente im Referenzbuch. Die Anzahl der
Komponenten in einem Referenzbuch VQxi ist eine Potenzzahl von
zwei, normalerweise 16 oder 32. Die Gleichung (7) berechnet das
kleinste Fehlerquadrat zwischen dem Vektor ci und der
Referenzbuchkomponente vqj. Die Gleichung (6) berechnet das kleinste
Fehlerquadrat zwischen dem Vektor ci und dem Referenzbuch VQxi.
In ähnlicher Weise bezeichnet d( ci, VQxi) die kleinste
Entfernung zwischen den Vektoren ci und VQxi. Der
Viterbialgorithmus, der in (5) angegeben ist, wird rekursiv berechnet, so daß
die VQ-Verzerrung gleichzeitig zu beiden Parametersätzen
dazugezählt wird, das heißt das kleinste Abstandsquadrat, das für
die Spektralparameter und für die Spektralableitungsparameter
berechnet wird. Das kann geschrieben werden als
-
Hier ist die Idee der Erfindung in mathematischer Form. Der
Term d( ct,VQj) wird zum Viterbialgorithmus dazugezählt, und
Gleichung (8) wird für jedes 15 ms-Zeitphonem t berechnet. Es
besteht auch die Möglichkeit, zwei HMN's zu verwenden, wobei
das erste unter Verwendung der Spektralparameter berechnet wird
und das zweite unter Verwendung der
Spektralableitungsparameter. Die Ergebnisse aus diesen beiden Modellen werden dann
zusammengezählt, wobei entsprechend gewichtet wird, um das
endgültige Erkennungsergebnis zu erhalten.
Quellenangaben:
-
[1] H. Hermansky, "Perceptual linear predictive (PLP)
analysis of speech (Wahrnehmbare, lineare, vorhersagbare
Sprachanalyse)", Journal of Acoustical Society of
America, Band 87, Nr. 4, April 1990, Seiten 1738-1752.
-
[2] S. Nakagawa and H. Suzuki, "A new speech recognition
method based an VQ-distortion measure and HMM (Eine neue
Spracherkennungsmethode, die auf VQ-Verzerrungsmessung
und HMM beruht)", ICASSP-93, Seiten II-676-II-679.
-
[3] L. R. Rabiner, J. G. Wilpon und F. K. Soong, "High
performance connected digit recognition using hidden Markov
models (Hochleistungsverbundzeichenerkennung unter
Verwendung von verdeckten Markowmodellen)", IEEE
Transactions an Acoustics Speech and Signal Processing, Band
37, Seiten 1214-1225, August 1989.
-
[4] High Accuracy Speaker Verification System
(Sprechererkennungssystem mit hoher Genauigkeit), Ensigma Ltd.
-
[5] Y. Linde, A. Buzo, R. M. Gray, "An Algorithm of Vector
Quantizer Design (Ein Algorithmus für den Entwurf eines
Vectorquantisierers)", IEEE Transactions an
Communications, Band COM-28, Nr. 1, Januar 1980.
-
[6] D. K. Burton, "Text-Dependent Speaker Verification Using
Vector Quantization Source Coding (Textabhängige
Sprecherverifizierung unter Verwendung von
Vectorquantisierungsquellenreferenzen)", IEEE Transactions an Acoustics,
Speech and Signal Processing, Band ASSP-35, Nr. 2, Seiten
133-143, Februar 1987.