-
Die
vorliegende Erfindung betrifft ein Verfahren zum Erkennen von Sprache
gemäß dem Oberbegriff
des beiliegenden Anspruchs 1, eine Spracherkennungsvorrichtung gemäß dem Oberbegriff
des beiliegenden Anspruchs 7, und eine Funkübertragungsvorrichtung zur
Steuerung durch Sprache gemäß dem Oberbegriff
des beiliegenden Anspruchs 8.
-
Zum
Erleichtern der Benutzung von Funkübertragungsvorrichtungen sind
so genannte Freisprechvorrichtungen entwickelt worden, wobei die Funkübertragungsvorrichtungen
durch Sprache gesteuert werden kann. So kann Sprache benutzt werden,
um verschiedene Funktionen der Funkübertragungsvorrichtungen zu
steuern, wie z. B. Ein- und Ausschalten, Übertragung/Empfang, Steuerung
der Lautstärke,
Auswahl der Telefonnummer, Beantworten eines Anrufs, wodurch es
insbesondere bei Benutzung eines Fahrzeugs für den Benutzer leichter ist,
sich auf das Fahren zu konzentrieren.
-
Ein
Nachteil einer von Sprache gesteuerten Funkübertragungsvorrichtung ist
der, dass die Spracherkennung nicht fehlerfrei ist. In einem Fahrzeug weist
das Hintergrundgeräusch,
das von der Umgebung erzeugt wird, eine hohe Lautstärke auf,
so dass es schwierig ist, Sprache zu erkennen. Aufgrund der Unzuverlässigkeit
der Spracherkennung haben Benutzer von Funkübertragungsvorrichtungen bisher wenig
Interesse an der Steuerung durch Sprache gezeigt. Die Erkennungsfähigkeiten
gegenwärtiger Spracherkenner
sind nicht sehr gut, insbesondere unter schwierigen Bedingungen
wie z. B. in einem sich fortbewegenden Fahrzeug, wo die hohe Lautstärke des
Hintergrundgeräuschs
eine zuverlässige Erkennung
von Worten stark behindert. Falsche Erkennungsentscheidungen verursachen
die meisten Probleme normalerweise in der Einrichtung der Benutzerschnittstelle,
da falsche Erkennungsentscheidungen unerwünschte Funktionen in Gang setzen könne, wie
z. B. das Abbrechen der Verbindung während eines Gesprächs, was
natürlich
besonders störend
für den
Benutzer ist. Ein Ergebnis einer falschen Erkennungsentscheidung
kann sein, dass ein Anruf an eine falsche Nummer geleitet wird.
Aus diesem Grund ist die Benutzerschnittstelle so entworfen, dass
der Benutzer normalerweise gebeten wird, einen Befehl zu wiederholen,
wenn der Spracherkenner sich der vom Benutzer geäußerten Worte nicht ausreichend
sicher ist.
-
Fast
alle Spracherkennungsvorrichtungen basieren auf dem Funktionsprinzip,
dass ein vom Nutzer geäußertes Wort
anhand eines normalerweise ziemlich komplizierten Verfahrens mit
einer Gruppe von Referenzwörtern
verglichen wird, die zuvor im Speicher der Spracherkennungsvorrichtung
gespeichert wurden. Spracherkennungsvorrichtungen berechnen normalerweise
einen Wert für
jedes Referenzwort, um zu beschreiben, wie stark das vom Benutzer
geäußerte Wort
dem Referenzwort ähnelt.
Die Erkennungsentscheidung erfolgt zuletzt auf der Basis dieser
Werte, so dass die Entscheidung die ist, das Referenzwort zu wählen, dem
das geäußerte Wort
am meisten ähnelt.
Die bekanntesten Verfahren zum Vergleich zwischen dem geäußerten Wort
und den Referenzwörtern
sind dynamische Zeitverzerrung (DTW – Dynamic Time Warping) und
das statistische Hidden-Markov-Modell (HMM).
-
Sowohl
im DTW- als auch im HMM-Verfahren wird ein unbekanntes Sprachmuster
mit bekannten Referenzmustern verglichen. Bei der dynamischen Zeitverzerrung
wird das Sprachmuster in mehrere Frames eingeteilt, und der lokale
Abstand zwischen dem Sprachmuster, das in jedem Frame enthalten
ist, und dem entsprechenden Sprachsegment des Referenzmusters wird
berechnet. Dieser Abstand wird berechnet, indem die Sprachsegmente und
die ihnen entsprechenden Sprachsegmente des Referenzmusters miteinander
verglichen werden, und er ist also eine Art Zahlenwert für die durch
den Vergleich ermittelten Differenzen. Für nahe beieinander liegende
Sprachsegmente wird normalerweise ein geringerer Abstand erzielt
als für
weiter voneinander entfernte Sprachsegmente. Auf der Basis der lokalen
Abstände,
die so ermittelt werden, wird durch Benutzung eines Algorithmus
ein minimaler Weg zwischen den Anfangs- und Endpunkten des Worts
gesucht. Durch dynamische Zeitverzerrung wird ein Abstand zwischen
dem geäußerten Wort
und dem Referenzwort ermittelt. Beim HMM-Verfahren werden Sprachmuster
erzeugt, und diese Stufe der Sprachmustererzeugung wird anhand eines
Zustandsänderungsmodells
gemäß dem Markov-Verfahren
modelliert. Das betreffende Zustandsänderungsmodell ist also das
HMM. In diesem Fall erfolgt die Spracherkennung empfangener Sprachmuster
durch die Bestimmung einer Beobachtungswahrscheinlichkeit für die Sprachmuster
anhand des Hidden-Markov-Modells. Bei Spracherkennung mit Hilfe
des HMM-Verfahrens wird zunächst
ein HMM-Modell für
jedes zu erkennende Wort gebildet, d. h. für jedes Referenzwort. Diese
HMM-Modelle werden im Speicher der Spracherkennungsvorrichtung gespeichert.
Wenn die Spracherkennungsvorrichtung ein Sprachmuster empfängt, wird
für jedes
HMM-Modell im Speicher eine Beobachtungswahrscheinlichkeit berechnet, und
als Erkennungsergebnis wird für
das HMM-Modell ein entsprechendes Wort mit der höchsten Beobachtungswahrscheinlichkeit
ermittelt. Es wird also für
jedes Referenzwort die Wahrscheinlichkeit berechnet, mit der das
Wort vom Benutzer geäußert wird.
Die oben erwähnte
höchste
Beobachtungswahrscheinlichkeit beschreibt die Ähnlichkeit des empfangenen
Sprachmusters und des diesem am nächsten kommenden HMM-Modells,
d. h. des diesem am nächsten
kommenden Sprachmusters.
-
In
gegenwärtigen
Systemen berechnet also die Spracherkennungsvorrichtung einen bestimmten Wert
für die
Referenzwörter
auf Basis des vom Benutzer geäußerten Worts.
Beim DTW-Verfahren ist der Wert der Abstand zwischen den Worten,
und beim HMM-Verfahren ist der Wert die Wahrscheinlichkeit der Übereinstimmung
zwischen dem geäußerten Wort
und dem HMM-Modell. Wenn das HMM-Verfahren
benutzt wird, wird für
die Spracherkennungsvorrichtungen normalerweise eine bestimmte Schwellenwahrscheinlichkeit
eingestellt, die das wahrscheinlichste Referenzwort überschreiten muss,
damit die Erkennungsentscheidung fallen kann. Ein anderer Faktor,
der die Erkennungsentscheidung beeinflusst, kann z. B. die Differenz
zwischen den Wahrscheinlichkeiten des wahrscheinlichsten und des
nächst
wahrscheinlichen Wortes sein, die ausreichend groß sein muss,
um eine Erkennungsentscheidung zu fällen. Es ist also möglich, dass
bei einem Hintergrundgeräusch
mit hoher Lautstärke
das Referenzwort im Speicher basierend auf dem vom Benutzer geäußerten Wort,
z. B. dem Wort „Ja", bei jedem Versuch
die höchste
Wahrscheinlichkeit im Verhältnis
zu anderen Referenzwörtern
erzielt, z. B. die Wahrscheinlichkeit 0,8. Wenn die Schwellenwahrscheinlichkeit
beispielsweise 0,9 ist, wird die Erkennung nicht akzeptiert, und
der Benutzer muss den Befehl möglicherweise
mehrmals wiederholen, bis die Schwellenwahrscheinlichkeit überschritten
wird und die Spracherkennungsvorrichtung den Befehl akzeptiert,
obwohl die Wahrscheinlichkeit dem akzeptablen Wert sehr nahe gekommen
sein kann. Dies ist für
den Benutzer sehr irritierend.
-
Außerdem wird
die Spracherkennung von der Tatsache behindert, dass verschiedene
Benutzer dieselben Wörter
in unterschiedlicher Art äußern, weshalb
die Spracherkennungsvorrichtung besser arbeitet, wenn sie von dem
einen Benutzer benutzt wird, als wenn sie von einem anderen Benutzer
benutzt wird. Es ist mit den bekannten Techniken sehr schwierig,
das Sicherheitsniveau von Spracherkennungsvorrichtung so anzupassen,
dass alle Benutzer berücksichtigt
werden. Beim Anpassen des benötigten
Sicherheitsniveaus, z. B. für
das Wort „Ja" bei üblichen
Spracherkennungsvorrichtungen, wird der benötigte Schwellenwert normalerweise
gemäß den so genannten
schlechtesten Sprechern eingestellt. Es tritt also das Problem auf,
dass auch Wörter,
die „Ja" sehr nahe kommen,
fälschlicherweise
akzeptiert werden. Das Problem wird durch die Tatsache verschärft, dass
in einigen Situationen ein bloßes
Hintergrundgeräusch
als Befehlswort erkannt werden kann. Bei üblichen Spracherkennungsvorrichtungen
wird versucht, eine passende Balance zu finden, bei der ein bestimmter
Teil der Benutzer große
Probleme mit der Akzeptanz ihrer Wörter hat und die Anzahl der
fälschlich
akzeptierten Wörter
ausreichend gering ist. Wenn die Spracherkennungsvorrichtung so
angepasst wird, dass eine minimale Anzahl von Benutzern Probleme
mit der Akzeptanz ihrer Wörter
hat, bedeutet das für
die Praxis, dass die Anzahl der fälschlich akzeptierten Wörter ansteigt.
Wenn eine so fehlerfreie Erkennung wie möglich zum Ziel gesetzt wird, hat
andererseits eine steigende Anzahl von Benutzern Schwierigkeiten
mit der Akzeptanz der von ihnen geäußerten Befehle.
-
In
der Spracherkennung werden Fehler im Allgemeinen in drei Kategorien
eingeteilt:
-
– Einfügungsfehler
-
Der
Benutzer sagt nichts, aber trotzdem wird ein Befehlswort erkannt,
oder der Benutzer sagt ein Wort, das kein Befehl ist, und es wird
trotzdem ein Befehlswort erkannt.
-
– Auslassungsfehler
-
Der
Benutzer sagt ein Wort, aber nichts wird erkannt.
-
– Ersetzungsfehler
-
Das
vom Benutzer geäußerte Befehlswort wird
als ein anderes Befehlswort erkannt.
-
Bei
einer theoretischen optimalen Lösung begeht
die Spracherkennungsvorrichtung keinen der genannte Fehler. In praktischen
Situationen, wie sie bereits oben beschrieben wurden, begeht die
Spracherkennungsvorrichtung jedoch Fehler jeder der genannten Kategorien.
Zur Nutzbarkeit der Benutzerschnittstelle ist es wichtig, eine Spracherkennungsvorrichtung
derart zu gestalten, dass der relative Anteil der verschiedenen
Fehlertypen optimal ist. Bei der Sprachaktivierung beispielsweise,
bei der eine durch Sprache aktivierte Vorrichtung stundenlang auf ein
bestimmtes Aktivierungswort wartet, ist es wichtig, dass die Vorrichtung
nicht irrtümlich
aktiviert wird. Es ist des Weiteren wichtig, dass die vom Benutzer geäußerten Befehlswörter mit
guter Genauigkeit erkannt werden. In diesem Fall ist es allerdings
wichtiger, dass keine irrtümliche
Aktivierung stattfindet. In der Praxis bedeutet das, dass der Benutzer
das geäußerte Befehlswort öfter wiederholen
muss, damit es mit ausreichender Wahrscheinlichkeit erkannt wird.
-
Bei
der Erkennung einer Zahlenfolge sind fast alle Fehler von gleicher
Signifikanz. Jeder Fehler bei der Erkennung von Zahlen einer Reihe
resultiert in einer falschen Zahlenfolge. Auch die Situation, in der
ein Benutzer nichts sagt und trotzdem eine Zahl erkannt wird, ist
unpraktisch für
den Benutzer. Eine Situation, in der der Benutzer eine Zahl undeutlich äußert und
die Zahl nicht erkannt wird, kann vom Benutzer korrigiert werden,
indem er die Zahlen deutlicher äußert.
-
Die
Erkennung eines einzelnen Befehlsworts ist gegenwärtig eine
sehr typische Funktion in der Spracherkennung. Beispielsweise kann
die Spracherkennungsvorrichtung den Benutzer fragen: „Möchten Sie
einen Anruf annehmen?",
woraufhin vom Benutzer die Antwort „Ja" oder „Nein" erwartet wird. In solchen Situationen,
in denen relativ wenige alternative Befehlsworte vorliegen, werden
die Befehlswörter
oft, wenn überhaupt,
dann richtig erkannt. Mit anderen Worten, die Anzahl der Ersetzungsfehler ist
in einer solchen Situation sehr gering. Das größte Problem bei der Erkennung
einzelner Befehlswörter ist,
dass ein geäußerter Befehl
gar nicht erkannt wird, oder dass ein irrelevantes Wort als Befehl
erkannt wird. Im Folgenden werden drei unterschiedliche alternative
Situationen für
dieses Beispiel vorgestellt:
- 1) Eine sprachgesteuerte
Vorrichtung fragt den Benutzer: „Möchten Sie einen Anruf annehmen?", worauf der Benutzer
undeutlich „Ja...ja" antwortet. Die Vorrichtung
erkennt die Antwort des Benutzers nicht und fragt den Benutzer wieder: „Möchten Sie
einen Anruf annehmen? Antworten Sie ,Ja' oder ,Nein'," so
dass der Benutzer leicht frustriert werden kann, wenn die Vorrichtung
den Benutzer häufig
um eine Wiederholung des geäußerten Wortes
bittet.
- 2) Die Vorrichtung fragt den Benutzer wieder: „Möchten Sie
einen Anruf annehmen?",
worauf der Benutzer deutlich „Ja" antwortet. Allerdings erkennt
die Vorrichtung dies nicht sicher und verlangt eine Bestätigung: „Haben
Sie ,Ja' gesagt?", worauf der Benutzer
wieder mit „Ja" antwortet. Auch
jetzt konnte keine verlässliche
Erkennung erzielt werden, so dass die Vorrichtung wieder fragt: „Haben
Sie ,Ja' gesagt?" Der Nutzer muss wieder
die Antwort „Ja" wiederholen, damit
die Vorrichtung die Erkennung abschließen kann.
- 3) In einer dritten Beispielsituation fragt die sprachgesteuerte
Vorrichtung den Benutzer, ob er/sie einen Anruf annehmen möchte. Daraufhin murmelt
der Benutzer etwas Undeutliches, und trotzdem interpretiert die
Vorrichtung die Äußerung des
Benutzers als das Befehlswort „Ja" und informiert den
Benutzer: „Gut,
der Anruf wird durchgestellt." In
dieser Situation also liegt die Interpretation der vagen Äußerung des
Benutzers durch die Vorrichtung näher am Wort „Ja" als am Wort „Nein". In dieser Situation
kommt es leicht dazu, dass Wörter,
die einem Befehlswort ähneln, fälschlicherweise
akzeptiert werden.
-
Bei
dem Stand der Technik entsprechenden Spracherkennungsverfahren ist
es typisch, bei der Erkennung eines Befehlswortes ein Zeitfenster
einer bestimmten Länge
zu benutzen, innerhalb dessen der Benutzer das Befehlswort äußern muss.
Bei einem anderen dem Stand der Technik entsprechenden Spracherkennungsverfahren
wird die Erkennungswahrscheinlichkeit für das vom Benutzer geäußerte Wort
berechnet, und falls die Wahrscheinlichkeit einen vorgegebenen Schwellenwert
nicht überschreitet,
wird der Benutzer gebeten, das Befehlswort zu wiederholen, woraufhin
eine neue Berechnung der Erkennungswahrscheinlichkeit anhand der Wahrscheinlichkeitsberechnung
der letzten Erkennungszeit erfolgt. Die Erkennungsentscheidung wird getroffen,
wenn die Schwellenwahrscheinlichkeit unter Berücksichtigung der letzten Wahrscheinlichkeiten
erreicht wird. Bei diesem Verfahren kann die Benutzung der Wiederholung
leicht zu einem Anstieg der Wahrscheinlichkeit des oben genannten
Einfügungsfehlers
führen,
wobei nach dem Wiederholen eines Wortes außerhalb des Vokabulars dieses
leichter als ein Befehlswort erkannt wird.
-
Das
Dokument EP-A-0 651 372 offenbart eine automatische Spracherkennungsverarbeitung mit
Hilfe von Konfidenzmessungen. Die Benutzerschnittstelle ist dynamisch
gesteuert, basierend auf dem Grad an Vertrauen in die Ergebnisse
des automatischen Spracherkennungsprozesses. In dem System von D1
wird ein Konfindenzwertvektor für jede
gesprochene Einheit erzeugt, welcher die Ähnlichkeit dieser Äußerung zu
jedem Modell anzeigt. Die Funktion der Differenz zwischen den zwei
höchsten
Annäherungswerten
wird benutzt, um den Konfidenzgrad zu bestimmen, dass die „Beste
Wahl"-Interpretation einer Äußerung tatsächlich die „richtige" Wahl ist. Mit anderen
Worten, zwei oder mehr Konfidenzgrade werden für jede Äußerung berechnet.
-
Das
Dokument US-A-5 737 724 offenbart Spracherkennung mit Hilfe permissiver
Erkennungskriterien für
eine wiederholte Sprachäußerung.
Die Erkennung basiert auf einer Analyse einer ersten und einer zweiten Äußerung.
Die erste Äußerung wird
mit ein oder zwei Sprachmodellen verglichen, um Ähnlichkeitsmessdaten für jeden
Vergleich dieser Art zu bestimmen. Das Sprachmodell, das am besten
auf die erste Äußerung passt,
wird anhand der Ähnlichkeitsmessdaten
bestimmt. Der Ähnlichkeitsmesswert,
der dem passendsten Sprachmodell entspricht, wird analysiert, um
zu bestimmen, ob der Ähnlichkeitsmesswert
ein erstes Erkennungskriterium erfüllt. Die zweite Äußerung wird
mit einem oder mehreren Sprachmodellen, die mit dem passendsten
Modell assoziiert sind, verglichen, um einen Ähnlichkeitsmesswert der zweiten Äußerung für jeden
Vergleich dieser Art zu bestimmen. Die Ähnlichkeitsmessdaten werden
analysiert, um zu bestimmen, ob der Ähnlichkeitsmesswert oder die Ähnlichkeitsmesswerte
ein zweites Erkennungskriterium erfüllen.
-
Das
Dokument US-A-5 794 194 offenbart die Worterfassung in einer Umgebung
wechselnder Lautstärke.
Durch Analyse der zu erkennenden Sprachmuster werden Niedrig- und
hochdimensionale Merkmalparameter erzielt. Mehrere Ähnlichkeitswerte
zwischen jedem der Merkmalvektorkandidaten werden berechnet, und
die Referenzmuster werden in einem Erkennungslexikon gespeichert.
Ein Erkennungsergebnis wählt
Referenzmuster, die in dem Erkennungslexikon gespeichert sind, wenn
ihre Ähnlichkeit
größer ist
als ein vorgegebener Schwellenwert.
-
Es
ist die Aufgabe der vorliegenden Erfindung, ein verbessertes Spracherkennungsverfahren sowie
eine sprachgesteuerte Funkübertragungsvorrichtung
bereitzustellen, bei der die Spracherkennung im Vergleich zum Stand
der Technik gesichert ist. Die Erfindung beruht auf der Idee, dass
die Erkennungswahrscheinlichkeit, die für ein geäußertes Befehlswort berechnet
wird, mit der Wahrscheinlichkeit für Hintergrundgeräusch verglichen
wird, wobei der so erzielte Konfidenzwert benutzt wird, um herzuleiten,
ob die Erkennung positiv war. Wenn der Konfidenzwert unterhalb einer
vorgegebenen Schwelle für eine
positive Erkennung bleibt, wird das Zeitfenster, das für die Erkennung
benutzt wird, gedehnt, und eine neue Erkennung wird für die wiederholte Äußerung des
Befehlswortes durchgeführt.
Wenn das wiederholte Befehlswort nicht mit einem ausreichenden Konfidenzwert
erkannt werden kann, wird trotzdem ein Vergleich zwischen den vom
Benutzer geäußerten Befehlswörtern durchgeführt; auf
diese Weise wird für
den Fall, dass die Erkennung der vom Benutzer geäußerten Wörter anzeigt, dass der Benutzer dasselbe
Befehlswort zweimal hintereinander geäußert hat, die Erkennung akzeptiert.
Das erfindungsgemäße Verfahren
ist der kennzeichnende Teil des beiliegenden Anspruchs 1. Die Spracherkennungsvorrichtung
gemäß der vorliegenden
Erfindung ist hauptsächlich
durch das gekennzeichnet, was im kennzeichnenden Teil des beiliegenden
Anspruchs 7 vorgestellt ist. Des Weiteren ist die Funkübertragungsvorrichtung
gemäß der vorliegenden
Erfindung durch das gekennzeichnet, was im kennzeichnenden Teil
des beiliegenden Anspruchs 8 vorgestellt ist.
-
Die
vorliegende Erfindung bietet signifikante Vorteile gegenüber den
dem Stand der Technik entsprechenden Verfahren und Vorrichtungen
zur Spracherkennung. Beim erfindungsgemäßen Verfahren wird, wenn die
Erkennung nicht sicher ist, die Zeit zum Interpretieren des Befehlsworts
verlängert,
während
der der Benutzer die Möglichkeit
hat, das gegebene Befehlswort zu wiederholen. Gemäß der Erfindung
ist es zusätzlich
möglich,
bei Bedarf die Wiederholung des Befehlswortes effektiv zu benutzen,
indem ein Vergleich mit dem zuvor vom Benutzer geäußerten Befehlswort
vorgenommen wird, wobei dieser Vergleich die Erkennung des Befehlswortes
wesentlich verbessert. Außerdem
wird die Wahrscheinlichkeit von Situationen, in denen ein Befehlswort
erkannt wird, obwohl der Benutzt kein Befehlswort geäußert hat,
wesentlich reduziert. Das erfindungsgemäße Verfahren macht es möglich, Konfidenzgrade zu
benutzen, bei denen die Anzahl der fehlerhaft erkannten Befehlswörter minimal
ist. Benutzer, deren Sprachbefehle bei Lösungen gemäß dem Stand der Technik nicht
leicht akzeptiert werden, können
durch Wiederholen des Befehlswortes gemäß der vorliegenden Erfindung
die Wahrscheinlichkeit der Akzeptanz der geäußerten Sprachbefehle wesentlich
erhöhen.
-
Im
Folgenden soll die Erfindung unter Bezugnahme auf die beiliegenden
Figuren genauer beschrieben werden.
-
1 zeigt
Erkennungsschwellenwerte, die in dem Verfahren gemäß einer
vorteilhaften Ausführungsform
der Erfindung benutzt werden.
-
2 zeigt
ein Verfahren gemäß einer
vorteilhaften Ausführungsform
der Erfindung, vorgestellt in einer Zustandsmaschinendarstellung,
-
3 illustriert
das zeitliche Verzerren von Merkmalvektoren,
-
4 illustriert
den Vergleich von zwei Wörtern
in einem Histogramm und
-
5 illustriert
eine Funkübertragungsvorrichtung
gemäß einer
vorteilhaften Ausführungsform der
Erfindung in einem vereinfachten schematischen Diagramm.
-
Im
Folgenden soll die Funktion der Spracherkennungsvorrichtung gemäß einer
vorteilhaften Ausführungsform
der Erfindung beschrieben werden. In dem Verfahren wird ein vom
Benutzer geäußertes Befehlswort
erkannt, indem in bekannter Weise die Wahrscheinlichkeit dafür berechnet
wird, wie ähnlich das
geäußerte Wort
verschiedenen Befehlswörtern ist.
Anhand dieser für
die Befehlswörter
berechneten Wahrscheinlichkeiten wird das Befehlswort mit der höchsten Wahrscheinlichkeit
vorteilhaft gewählt.
Anschließend
wird die Wahrscheinlichkeit, die für das erkannte Wort berechnet
wurde, mit der Wahrscheinlichkeit verglichen, die von einem Hintergrundgeräusch-Modell
erzeugt wird. Das Hintergrundgeräusch-Modell
repräsentiert
allgemeine Hintergrundgeräusche
sowie alle Wörter,
die keine Befehlswörter sind.
Auf diese Weise wird hier eine Wahrscheinlichkeit für die Möglichkeit
berechnet, dass das erkannte Wort nur ein Hintergrundgeräusch oder
ein anderes Wort als das Befehlswort ist. Anhand dieses Vergleichs
wird ein erster Konfidenzwert erzielt, um anzuzeigen, wie sicher
das Wort erkannt wurde. 1 zeigt die Bestimmung der Konfidenz
dieser Erkennung durch Benutzen von Schwellenwerten und dem Konfidenzwert.
Bei dem Verfahren gemäß einer
vorteilhaften Ausführungsform
der Erfindung wird ein erster Schwellenwert bestimmt, der in der
beiliegenden Figur mit dem Bezugszeichen Y versehen ist. Es handelt
sich um den für
den Schwellenwert festgelegten Grenzwert, bei dem die Erkennung
sicher ist (der Konfidenzwert ist höher als oder gleich dem ersten Schwellenwert
Y). Bei dem Verfahren gemäß einer zweiten
vorteilhaften Ausführungsform
der Erfindung wird außerdem
ein zweiter Schwellenwert bestimmt, der in der beiliegenden Figur
mit dem Bezugszeichen A versehen ist. Er zeigt an, ob die Erkennung
unsicher war (der Konfidenzwert ist höher als oder gleich dem zweiten
Schwellenwert A, aber kleiner als der erste Schwellenwert Y), oder
sehr unsicher (der Schwellenwert ist kleiner als der zweite Schwellenwert
A).
-
Bei
der Zustandsmaschinendarstellung aus 2 repräsentiert
Zustand 1 die Erkennung eines Befehlswortes. Bei diesem Schritt
der Erkennung des Befehlswortes werden Wahrscheinlichkeiten anhand des
Befehlswortes bestimmt, das vom Benutzer für verschiedene Befehlswörter im
Vokabular der Spracherkennungsvorrichtung geäußert wurde. Das Befehlswort,
das dem vom Benutzer geäußerten Sprachbefehl
entspricht, wird gewählt,
und ist vorläufig
das Befehlswort mit der höchsten
Wahrscheinlichkeit. Für
das gewählte
Befehlswort wird der Konfidenzwert bestimmt und mit dem ersten Schwellenwert
Y und dem zweiten Schwellenwert A verglichen, um herzuleiten, ob
die Erkennung sicher, unsicher oder sehr unsicher war. Wenn der
Konfidenzwert höher
oder gleich dem ersten Schwellenwert 6 ist, geht die Operation zu
Zustand 4 über,
um die Erkennung zu akzeptieren. Wenn der Konfidenzwert unter dem zweiten
Schwellenwert A bleibt, geht die Operation zu Zustand 5 über, um
die Erkennung des Befehlswortes zu beenden, d. h. die Erkennung
zurückzuweisen.
Wenn der Konfidenzwert höher
oder gleich dem zweiten Schwellenwert A, aber kleiner als der erste
Schwellenwert Y war, war die Erkennung unsicher, und die Operation
geht zu Zustand 2 über.
So wird das Fenster gedehnt, d. h. der Benutzer hat mehr Zeit, das
geäußerte Befehlswort
zu wiederholen. Die Operation kann auch wegen eines falschen Wortes
zu diesem Zustand 2 übergehen,
z. B. weil ein Wort vom Benutzer sehr undeutlich geäußert wurde
oder wegen falscher Erkennung aufgrund von Hintergrundgeräusch. In
diesem Zustand 2 wird für
die Dauer des gedehnten Zeitfensters auf die Wiederholung des Befehlswortes
gewartet. Wenn der Benutzer das Befehlswort innerhalb dieses Zeitfensters
wiederholt, wird das Befehlswort erkannt, und der Konfidenzwert
wird berechnet, wie oben bezüglich
Zustand 1 dargestellt. Wenn zu diesem Zeitpunkt der berechnete Konfidenzwert
anzeigt, dass das Befehlswort, das bei diesem zweiten Schritt geäußert wurde,
mit ausreichender Sicherheit erkannt wurde, geht die Operation zu
Zustand 4 über,
und die Erkennung wird akzeptiert. In einer Situation beispielsweise,
in der der Benutzer im Zustand 1 etwas Undeutliches gesagt hat,
aber in Zustand 2 das richtige Befehlswort geäußert hat, kann die Erkennung
allein auf Basis des in Zustand 2 geäußerten Befehlswortes erfolgen.
So erfolgt kein Vergleich zwischen dem ersten und dem zweiten geäußerten Befehlswort,
denn dies könnte
leicht zu einer weniger sicheren Erkennung führen.
-
Wenn
allerdings das Befehlswort in Zustand 2 nicht mit ausreichender
Sicherheit erkannt werden kann, geht die Operation zu Zustand 3 über, um
die wiederholten Befehlsworte zu vergleichen. Wenn der Vergleich
anzeigt, dass das vom Benutzer wiederholte Befehlswort dem Befehlswort,
das der Benutzer zuerst geäußert hatte,
sehr ähnlich
ist, d. h. wahrscheinlich dasselbe Wort zweimal hintereinander geäußert wurde,
wird die Erkennung akzeptiert, und die Operation geht zu Zustand
4 über.
Wenn allerdings der Vergleich anzeigt, dass der Benutzer wahrscheinlich
nicht dasselbe Wort zweimal gesagt hat, geht die Operation zu Zustand
5 über,
und die Erkennung wird zurückgewiesen.
-
Wenn
also bei dem erfindungsgemäßen Verfahren
der erste Schritt eine unsichere Erkennung anzeigt, erfolgt eine
zweite Erkennung, und zwar vorzugsweise nach einem als solchen bekannten
Verfahren. Wenn der zweite Schritt keine ausreichende Sicherheit
der Erkennung leistet, wird ein Vergleich der Wiederholungen vorteilhaft
wie folgt ausgeführt. In
Zustand 1 werden Merkmalvektoren, die von dem vom Benutzer geäußerten Befehlswort
gebildet wurden, in einem Sprachantwortspeicher 4 gespeichert (5).
Solche Merkmalvektoren werden von der Sprache typischerweise in
Intervallen von 10 ms erfasst, d. h. etwa 100 Merkmalvektoren pro
Sekunde. In Zustand 2 werden ebenfalls Merkmalvektoren im Sprachantwortspeicher 4 gespeichert,
die während dieses
Zustands geäußert wurden.
Anschließend geht
die Erkennung in den Zustand 3 über,
in dem diese gespeicherten Merkmalvektoren vorzugsweise durch dynamische
Zeitverzerrung verglichen werden. 3 stellt
die dynamische Zeitverzerrung von Merkmalvektoren in vereinfachter
Weise dar. Oben in der Figur sind Merkmalvektoren dargestellt, die
von der ersten Erkennung erzeugt wurden und mit dem Bezugszeichen
V1 versehen sind, und unten in der Figur sind dementsprechend Merkmalvektoren
dargestellt, die von der zweiten Erkennung erzeugt wurden und die
mit dem Bezugszeichen V2 versehen sind. In diesem Beispiel war das
erste Wort länger
als das zweite Wort, d. h. der Benutzer hat das Wort beim zweiten
Schritt schneller gesagt, oder die betreffenden Wörter sind
verschieden. Für
die Merkmalvektoren des kürzeren
Wortes, in diesem Fall des zweiten Wortes, werden ein oder mehr
Merkmalvektoren des längeren
Worts gefunden, indem die Merkmalvektoren der zwei Wörter durch
Zeitverzerrung so verarbeitet werden, dass sie einander optimal
entsprechen. Für
dieses Beispiel sind diese Ergebnisse der Zeitverzerrung durch gestrichelte
Linien in 3 dargestellt. Die Distanz zwischen
den Wörtern
wird berechnet, z. B. als ein euklidischer Abstand zwischen den
verzerrten Merkmalsvektoren. Wenn der berechnete Abstand klein ist,
kann angenommen werden, dass die betroffenen Wörter verschieden sind. 4 zeigt
ein Beispiel dieses Vergleichs als Histogramm. Das Histogramm umfasst
zwei verschiedene Vergleiche: Den Vergleich zwischen zwei identischen
Wörtern
(in durchgehenden Linien dargestellt) und einen Vergleich zwischen
zwei verschiedenen Wörtern
(in gestrichelten Linien dargestellt). Die horizontale Achse ist
der logarithmische Wert des berechneten Abstands zwischen den Merkmalsvektoren,
wobei ein kleinerer Wert einen kleineren Abstand anzeigt, und die
vertikale Achse ist der Histogrammwert. Je kleiner also insbesondere
die Histogrammwerte sind, d. h. der berechnete Abstand sehr klein
ist, desto höher ist
die Wahrscheinlichkeit, dass die verglichenen Wörter identisch sind.
-
5 zeigt
eine Funkübertragungsvorrichtung 1,
wie z. B. ein GSM-Mobiltelefon, das durch Sprachbefehle gesteuert
wird, gemäß einer
vorteilhaften Ausführungsform
der Erfindung. Nur die zum Verstehen der Erfindung nötigsten
Blöcke
sind in 5 dargestellt. Eine Sprachsteuerungseinheit 2 umfasst
vorzugsweise ein Spracherkennungsmittel 3, einen Sprachantwortspeicher 4,
einen Prozessor 5, einen Lesespeicher (ROM) 6,
einen RAM-Speicher 7,
einen Sprachgenerator 8 und ein Schnittstellenmittel 9.
Ein Befehlswort kann eingegeben werden, z. B. über ein Mikrofon 10a in
der Funkübertragungsvorrichtung 1,
oder über
ein Mikrofon 10b in einer Freisprechvorrichtung 17.
Anweisungen und Informationen an den Benutzer können beispielsweise mit dem
Sprachgenerator 8 entweder über einen Lautsprecher 11a,
der in die Funkübertragungsvorrichtung 1 eingebaut
ist, oder über
einen Lautsprecher 11b in der Freisprechvorrichtung 17 erzeugt werden.
Die erfindungsgemäße Sprachsteuerungseinheit 2 kann
auch ohne den Sprachgenerator 8 benutzt werden, wobei Anweisungen
und Informationen an den Benutzer vorzugsweise im Textformat auf
einem Anzeigemittel 13 in der Telekommunikationsvorrichtung übertragen
werden. Eine weitere Möglichkeit ist,
die Anweisungen und Informationen sowohl als Audio- als auch als
Textnachricht an den Benutzer zu übermitteln. Der Sprachantwortspeicher 4 oder
ein Teil desselben kann auch in Verbindung mit dem RAM-Speicher 7 benutzt
werden, oder er kann in einem möglichen
allgemeinen Speicherplatz der Funkübertragungsvorrichtung eingebaut
sein.
-
Im
Folgenden soll der Betrieb der erfindungsgemäßen Funkübertragungsvorrichtung weiter
beschrieben werden. Damit die Sprachsteuerung funktionieren kann,
müssen
der Sprachsteuerungseinheit 2 normalerweise alle zu benutzenden
Befehlswörter beigebracht
werden. Sie wurden ihr vorzugsweise zum Zeitpunkt der Herstellung
der Vorrichtung beigebracht, z. B. indem Muster, die den Befehlswörtern entsprechen,
im Sprachantwortspeicher 4 gespeichert werden.
-
Beim
Schritt der Erkennung eines Befehlswortes wird das vom Benutzer
geäußerte Befehlswort
von einem Mikrofon 10a, 10b in ein elektrisches Signal
umgewandelt und an die Sprachsteuerungseinheit 2 übertragen.
In der Sprachsteuerungseinheit 2 wandelt das Spracherkennungsmittel 3 das
geäußerte Befehlswort
in Merkmalvektoren um die im Sprachantwortspeicher 4 gespeichert
sind. Die Sprachsteuerungseinheit 2 berechnet außerdem für jedes
Befehlswort im Vokabular der Sprachsteuerungseinheit 2 eine
Wahrscheinlichkeit, um anzuzeigen, mit welcher Wahrscheinlichkeit
das vom Benutzer geäußerte Befehlswort
ein bestimmtes Befehlswort im Vokabular ist. Danach prüft die Sprachsteuerungseinheit 2,
welches Befehlswort im Vokabular den höchsten Wahrscheinlichkeitswert
aufweist, wobei dieses Wort vorläufig
als ein erkanntes Befehlswort ausgewählt wird. Die berechnete Wahrscheinlichkeit
für dieses
Wort wird weiter mit einer Wahrscheinlichkeit verglichen, die für das Hintergrundgeräuschmuster
erzeugt wird, um einen Konfidenzwert zu bestimmen. Dieser Konfidenzwert
wird von der Sprachsteuerungseinheit 2 mit dem ersten Schwellenwert
Y verglichen, der im Speicher der Sprachsteuerungseinheit gespeichert
ist, und zwar vorzugsweise in einem Lesespeicher 6. Wenn
der Vergleich ergibt, dass der Konfidenzwert höher als oder gleich dem ersten
Schwellenwert Y ist, schließt
die Sprachsteuerungseinheit 2 daraus, dass das vom Benutzer geäußerte Befehlswort
das Wort mit dem höchsten Wahrscheinlichkeitswert
war. Die Sprachsteuerungseinheit 2 wandelt dieses Befehlswort
in ein entsprechendes Steuerungssignal um, z. B. das Signal zum Drücken des
Knopfes, der dem Befehlswort entspricht, welches über die
Schnittstelle 9 an Steuerblock 16 der Funkübertragungsvorrichtung
usw. übertragen
wird. Der Steuerblock 16 interpretiert den Befehl und führt ihn
entsprechend aus, in einer per se bekannten Art und weise. Beispielsweise
kann der Benutzer eine gewünschte
Telefonnummer durch Sagen derselben oder durch Drücken der
entsprechenden Knöpfe
eingeben.
-
Falls
der oben beschriebene Vergleich ergab, dass der Konfidenzwert niedriger
als der erste Schwellenwert Y ist, erfolgt ein zweiter Vergleich
mit dem zweiten Schwellenwert A. Wenn der Vergleich ergibt, dass
der Konfidenzwert größer als
oder gleich dem zweiten Schwellenwert A ist, dehnt die Sprachsteuerungseinheit 2 die
Frist aus, die für
das Erkennen des Befehlswortes festgelegt ist, und wartet, ob der
Benutzer das Befehlswort noch einmal äußert. Wenn die Sprachsteuerungseinheit 2 feststellt,
dass der Benutzer innerhalb der Frist einen Sprachbefehl äußert, zieht
die Sprachsteuerungseinheit alle oben bei der Beschreibung der vorteilhaften
Ausführungsform
der Erfindung vorgestellten Messwerte hinzu, d. h. sie bildet die
Merkmalvektoren und speichert sie in Sprachantwortspeicher 4 und
berechnet die Wahrscheinlichkeiten und einen neuen Konfidenzwert.
Als nächstes
erfolgt ein neuer Vergleich zwischen dem Konfidenzwert und dem ersten
Schwellenwert Y. Wenn der Konfidenzwert größer als oder gleich dem ersten
Schwellenwert Y ist, schließt
die Sprachsteuerungseinheit 2 daraus, dass der Sprachbefehl
richtig erkannt wurde, wobei die Sprachsteuerungseinheit 2 den
Sprachbefehl in ein entsprechendes Steuerungssignal umwandelt und
dieses an den Steuerblock 16 überträgt. Wenn allerdings der Konfidenzwert
niedriger ist als der erste Schwellenwert Y, nimmt die Sprachsteuerungseinheit 2 einen
Vergleich zwischen den Merkmalvektoren des ersten und des zweiten
Wortes vor, das geäußert und
im Sprachantwortspeicher 4 gespeichert wurde. Dieser Vergleich
umfasst zunächst
die Zeitverzerrung der Merkmalvektoren und dann die Berechnung des
Abstands zwischen den Wörtern,
wie oben in Bezug auf die Beschreibung des Verfahrens beschrieben
wurde. Auf Basis dieser berechneten Abstände leitet die Sprachsteuerungseinheit 2 her,
ob die vom Benutzer geäußerten Wörter identisch
oder verschieden waren. Wenn es verschiedene Wörter waren, hat die Sprachsteuerungseinheit 2 das
Befehlswort nicht erkannt und bildet auch kein Steuerungssignal.
Wenn die Befehlswörter
wahrscheinlich identisch waren, wandelt die Sprachsteuerungseinheit 2 das
Befehlswort in das entsprechende Steuerungssignal um.
-
Falls
das erste Befehlswort nicht mit ausreichender Sicherheit erkannt
wird und der Benutzer das Befehlswort nicht innerhalb der Frist
wiederholt, wird das Befehlswort nicht akzeptiert. Auch in diesem Fall
wird kein Steuerungssignal an Steuerblock 16 übertragen.
-
Um
die Benutzung der Funkübertragungsvorrichtung 1 in
solchen noch praktischer zu machen, in denen die erste Erkennung
des Befehlswortes keine ausreichend zuverlässige Erkennung leisten konnte,
kann der Benutzer vom Versagen der Erkennung der ersten Stufe informiert
und gebeten werden, das Befehlswort noch einmal zu äußern. Die
Funkübertragungsvorrichtung 1 bildet
z. B. eine Audionachricht mit einem Sprachgenerator 8 und/oder
eine optische Nachricht mit einem Anzeigemittel 13. Die Funkübertragungsvorrichtung 1 kann
den Benutzer mit einem Audio- und/oder optischen Signal auch in solchen
Situationen informieren, in denen die Erkennung erfolgreich war.
So bleibt es für
den Benutzer nicht unklar, ob die Erkennung erfolgreich war oder nicht.
Dies ist besonders unter geräuschvollen
Bedingungen nützlich.
-
Das
Verzerren von Merkmalsvektoren und das Berechnen von Abständen zwischen
Wörtern entspricht
als solches dem Stand der Technik, weshalb diese Verfahren hier
nicht genauer offenbart sind. Es ist selbstverständlich, dass die vorliegende Erfindung
nicht auf die oben vorgestellten Ausführungsformen beschränkt ist,
sondern innerhalb des Umfangs der beiliegenden Ansprüche modifiziert werden
kann.