-
Die
Erfindung betrifft ein Verfahren und eine Vorrichtung zur intelligenten
Eingabekorrektur für Sprachdialogsysteme.
-
Gebiet der Erfindung:
-
Derartige
Vorrichtungen dienen vorwiegend zur Analyse von Spracheingaben und
zur Steuerung von Systemen durch die Sprache. Technische Spracherkennungseinrichtungen
arbeiten aus verschiedenen Gründen
nicht absolut fehlerfrei. Somit kann es notwendig sein, in einem
nachfolgenden Dialogschritt das gewonnene Erkennungsergebnis durch den
Nutzer verifizieren zu lassen. Eine besondere Rolle spielt hierbei
der so genannte Confidence-Wert des Erkennungsergebnisses. Liegt
dieser Wert hoch, kann u. U. ganz auf eine Verifizierung verzichtet
werden, was die Dialoggeschwindigkeit erhöht. Liegt dieser Wert hingegen
niedrig, muss davon ausgegangen werden, dass das Erkennungsergebnis
auch falsch sein kann. Dann wird in einer Bestätigungsfrage an den Nutzer
das Erkennungsergebnis akustisch wiederholt und der Nutzer durch
eine Ja/Nein-Entscheidung
gezwungen, das Erkennungsergebnis zu bestätigen oder zu verwerfen.
-
Besonders
kritisch sind solche Erkennungssituationen, in denen Sprachkommandos
großer Ähnlichkeit,
für die
auch keine Umschreibungen (sog. Alias) existieren, erkannt werden
müssen.
Städtenamen
wie Dillingen und Illingen sind hierfür ein treffendes Beispiel.
Zur Lösung
dieses Konfliktes wird beim Stand der Technik das N-Best-Verfahren
eingesetzt: Spracherkenner geben meist nicht nur ein Erkennungsergebnis
(1. Hypothese) sondern nach der Erkennungswahrscheinlichkeit sortiert
weitere Erkennungsergebnisse aus. Die Tiefe des Angebotes ist dabei über einen
Parameter frei wählbar.
Wird nun in einer Erkennungssession der nicht zutreffende Ortsname
erkannt, kann der Reihe nach jede Erkennerhypothese dem Nutzer vorgelegt
und durch eine Ja/Nein-Frage entschieden werden. Ohne N-Best besteht
die Gefahr, dass der Nutzer auch bei einer erneuten Eingabe immer
wieder auf das falsche Erkennungsergebnis stößt. In der Regel wird insbesondere bei ähnlich lautenden
Namen schon die zweite Hypothese zutreffend sein, sodass mit einem
hohen Gesamterfolg gerechnet werden kann.
-
Nachteilig
bei der Anwendung des N-Best-Verfahrens ist, dass das Dialogverhalten menschlicher
Nutzer anders ist als für
das Verfahren notwendig. Im Regelfall beschränkt sich der Nutzer nicht einfach
auf eine Ja/Nein-Antwort, wenn z.B. der falsche Ortsname vom Spracherkenner
zur Bestätigung
vorgelegt wird, sondern er verbindet die Verneinung automatisch
mit der Nennung des richtigen Ortsnamens: „Sie haben Dillingen gesagt?" – „Nein, Illingen". Aus der Sicht des
Spracherkenners liegt hier eine Neueingabe des Ortsnamens vor, die
wiederum die erste Hypothese zur Bestätigung liefert. Damit kann
eine frustrierende Endlosschleife, wie bereits oben beschrieben,
gestartet werden. Das im technischen Sinne richtige Verhalten wäre, dass
der Nutzer nur „Nein" antwortet, dann
wird das nach dem Ausschließungsprinzip
arbeitende N-Best-Verfahren aktiv, weil die N-Best-Liste nicht durch
neue Erkennungsergebnisse überschrieben
wird.
-
Eine
andere Quelle für
Fehlerkennungen, die korrekturbedürftig sind, ist der Nutzer
selbst, nämlich dann,
wenn er versehentlich ein falsches Kommando eingegeben hat und dieses berichtigen
möchte.
Im Beispiel der Ortsnamen könnte
der Dialog unter Benutzung des N-Best-Verfahrens wie folgt ablaufen: „Sie haben
Dillingen gesagt?" – „Nein", „Haben
Sie Illingen gesagt?" – „Nein" usw.. Richtig wäre die Antwort
in diesem Fall gewesen: „Nein,
Bexbach". Denn mit
der Nein-Antwort
wird das N-Best-Verfahren aktiviert und es werden alle Hypothesen
abgearbeitet. Hier hätte
mit der ergänzenden
Eingabe des wirklich gewollten Ortsnamens der Erkennungsvorgang
neu gestartet werden müssen,
damit sich die Erkenner-Hypothesen
am Wollen des Nutzers orientieren können.
-
Noch
komplizierter gestaltet sich der Korrekturprozess, wenn mehrere
zu erkennende Einheiten (sog. Slots) je Nutzeräußerung erkannt bzw. korrigiert
werden müssen.
Dann verwirft ein ohne Zusatz ausgesprochenes „Nein" die gesamte Satzhypothese, weil nicht
erkennbar ist, welcher Slot zu korrigieren ist. So wird die 3-Slot-Erkennerhypothese "Sie möchten die
Rufnummer des Bürgeramtes
von Dillingen wissen?" erst
durch die eindeutige Antwort „Nein,
die Fax-Nummer" korrigierbar.
Das N-Best-Verfahren
ist klassisch gar nicht anwendbar, weil im ersten Fall nicht klar
ist, für
welchen Slot die Hypothese zu korrigieren ist und im zweiten Fall,
weil die alternativen Slot-Hypothesen durch den korrigierenden Nachsatz überschrieben
werden.
-
Es
zeigt sich also, dass die Anwendung des N-Best-Verfahrens auf das
Nutzerverhalten Einfluss nehmen muss, um richtig wirken zu können. Dies
ist aber insbesondere bei Anwendungen mit einer hohen Nutzerfrequenz
eine nicht durchsetzbare Anforderung. Weiterhin versagt das N-Best-Verfahren
bei komplexen Satzstrukturen.
-
Aus
der
US 5,241,619 ist
ein Verfahren bekannt, bei dem das N-Best-Verfahren dazu benutzt wird, um
einer Sequenz von Worten, die durch eine Grammatik beschrieben werden,
die wahrscheinlichste Kette von Worten zu einer Satzhypothese zuzuordnen.
Dazu wird die Verbindungswahrscheinlichkeit der Worte untereinander
(und zwar immer zum vorhergehenden Wort) genutzt. Das Ergebnis des Verfahrens
ist eine Liste von Satzhypothesen, die nach einem N-Best-Verfahren
abgearbeitet werden kann. Das vorliegende Patent bezieht das Nutzerverhalten
nicht ein.
-
Aus
der
US 6,272,462 ist
eine Lösung
bekannt, die der iterativen Verbesserung des Sprachmodells eines
Spracherkenners dient, indem die erkannten Word- oder Satzalternativen
durch einen Experimentator als falsch oder richtig eingestuft werden.
Auf diese Weise werden Gewichte generiert, die zukünftige Erkennungsprozeduren
bewerten, um so zu besseren Erkennungsresultaten zu kommen.
-
Die
Druckschrift US 2002/0055841 betrifft eine Lösung zur Entscheidungsfindung,
ob ein Erkennungsergebnis akzeptiert, zurückgewiesen oder durch ein N-Best-Verfahren
verifiziert werden muss. In der Schrift werden allgemein Bedingungen
zur Klassifizierung genannt, aber nicht ausgeführt. Die Lösung bezieht sich ausschließlich auf
den primären Erkennungsprozess
und nimmt nicht Bezug auf einen Nutzerdialog.
-
Die
DE 100 08 502 A1 stellt
ein Verfahren zur semantischen Analyse vor. Eine Anapher ist in
der Sprachwissenschaft die Wiederholung wichtiger Worte an Vers-/Satzanfängen. Das
Verfahren bezieht sich auf die semantische Analyse von Sätzen, auch gesprochenen
Sätzen.
Ziel ist es, die grammatikalisch eindeutige Erkennung von Satzteilen
oder Satzelementen zum Zwecke der semantischen Erkennung der Bedeutung
sprachlicher Äußerungen.
Das Verfahren ist nicht an die Verwendung der N-Best-Strategien gebunden.
-
Das
Verfahren aus der
US 5,712,957 ist
eher für
ein Diktiersystem geeignet, denn es verlangt eine Kennzeichnung
des von einem Spracherkenner falsch erkannten Wortes oder Satzteils.
Mit dieser Kennzeichnung ist es möglich, zusätzlich zu der N-Best-Liste
für die
Satzhypothesen eine zweite N-Best-Liste für das falsch erkannte Wort
zu generieren, indem dieses Wort noch einmal gesprochen werden muss.
Aus der Kombination beider N-Best-Listen ergibt sich dann die korrekte
Satzhypothese.
-
Das
Verfahren
DE 69229124
T2 beschreibt eine Verbesserung des Trainings von Spracherkennern
für komplexe
Eingaben auf der Basis von Einzelworterkennern. Dieses Verfahren
kann aus heutiger Sicht als veraltet bezeichnet werden. Moderne Erkenner
benutzen Phoneme als kleinste zu erkennende Einheit. Im angegebenen
Verfahren wird die Verbundwahrscheinlichkeit der Worte untereinander (HMM)
genutzt. Das vorliegende Verfahren betrifft nur die elementare Spracherkennung
und zwar das Training für
die spätere
konkrete Anwendung.
-
Das
in der
US 5,799,465 beschriebene
Verfahren benutzt das klassische N-Best-Verfahren in einer Anrufervermittlung
(call routing). Routing-Kriterium ist der Name der Zielperson. Es
handelt sich hierbei um die einfachste Form einer N-Best-Anwendung.
-
Das
Ziel der Erfindung aus der
US
6,233,553 B1 besteht in der Erweiterung eines Lexikons
im laufenden Betrieb eines Spracherkenners. Unbekannte Worte müssen durch
den Nutzer buchstabiert werden. Die einzelnen Buchstaben werden
nach ihrer Erkennungssicherheit sortiert (N-Best), zu einem Wort kombiniert
und als neue lexikalische Einheit abgespeichert.
-
Das
Verfahren aus der
US
6,374,220 B1 befasst sich mit der Befüllung eines Resultatspeichers eines
Spracherkenners, geeignet für
eine spätere N-Best-Auswertung.
Die Erfindung betrifft die elementare Spracherkennung.
-
In
der US 2002/0052742 A1 wird ebenfalls auf eine N-Best-Liste zurückgegriffen,
allerdings erfolgt die Kennzeichnung inkorrekter Teile der Erkennungssequenz
per Maus durch den User (z. B. bei Diktiersystemen). Die Korrektur
des so als fehlerhaft gekennzeichneten Abschnittes erfolgt durch
die nächst
wahrscheinliche Hypothese, die nach dem N-Best-Verfahren gefunden wird. Es wird aber
nicht die sprachliche Korrekturmöglichkeit
erwähnt.
Der Fall, dass die Unterscheidung zwischen Maschinenfehler und Nutzerirrtum
erforderlich ist, wird nicht behandelt. Eine Historie von Erkennungsresultaten
wird ebenfalls nicht berücksichtigt,
was bei einer Mauseingabe auch nicht erforderlich ist.
-
Die
Schrift
DE 60000134
T2 bezieht sich auf eine Lösung zur Verbesserung der Spracherkennerleistung
durch Adaption an einen unbekannten Sprecher. Dazu wird das N-Best-Verfahren
benutzt, um die ursprünglichen
Sprachmodelle des Spracherkenners zu optimieren.
-
Die
Druckschrift
EP 01070135
A1 betrifft eine Einrichtung zur Ziffernerkennung. Die
Hypothesen werden in einer N-Best-Liste zur Verfügung gestellt. Mit Hilfe eines
Checksummen-Algorithmus
wird die richtige Hypothese ausgesucht.
-
Aufgabe
der Erfindung ist es, ein Verfahren und eine Einrichtung zur intelligenten
Eingabekorrektur für
automatische Sprachdialogsysteme unter Vermeidung der Nachteile
des Standes der Technik bereitzustellen.
-
Diese
Aufgabe wird durch die Erfindungen mit den Merkmalen der unabhängigen Ansprüche gelöst. Vorteilhafte
Weiterbildungen der Erfindungen sind in den Unteransprüchen gekennzeichnet.
-
Nach
dem Stand der Technik erfolgt die Modellierung der zu erkennenden
Sprachkommandos, insbesondere für
Systeme mit natürlichem
Sprachverstehen (natural language understanding – NLU), in sog. Grammatiken
(Grammar). Diese bestehen neben den bedeutungstragenden Slots auch
aus Fillern (z. B. ich hätte
gern ...), die in der menschlichen Kommunikation unerlässlich sind,
aber an sich keine Informationen beinhalten. Nach Abschluss eines
jeden Erkennungsschrittes liefert der Spracherkenner Slot bezogene
Erkennungsergebnisse geordnet nach den zugehörigen Erkennungswahrscheinlichkeiten.
Dies wird für
jede einzelne Hypothese ausgeführt.
-
Ein
erfindungsgemäßer Gedanke
beruht auf der Zwischenspeicherung aller Slot-Hypothesen in der
bevorzugten Ausführungsform
in einem virtuellen Speicherwürfel.
Die Dimensionen des Würfels
werden bestimmt durch:
- • Historie t (wie viele Korrekturschritte
werden in die Vergangenheit zurückverfolgt)
- • Slot-Anzahl
n und
- • Anzahl
der maximal möglichen
Hypothesen je Slot m.
wobei in Anspruch 1 lediglich das
Verfahren mit einem Slot (Einzelworterkennung) berücksichtigt
wurde.
-
Weiterhin
benutzt die erfindungsgemäße Lösung einen
Vergleicher, der Slot bezogen die Hypothesen auf gleiche Einträge unabhängig von
ihrer Position zwischen verschiedenen Zeitpunkten (d. h. Erkennungsschritten)
prüft und
als ähnlich
(true) oder unähnlich
(false) kennzeichnet.
-
Der
hier betrachtete Dialogschritt beginnt mit einer situationsgerechten
Nutzeräußerung.
Das Spracherkennungsergebnis wird einerseits für die Konfirmation an den Dialog
(Sprachausgabe) geleitet, andererseits aber im Zwischenspeicher
unter t = 1 zu späterer
Verwendung abgelegt. In der Konfirmationsphase werden alle im aktuellen
Dialogschritt gefundenen ersten Hypothesen (m = 1) dem Nutzer zur Bestätigung angeboten.
Folgend sind drei Situationen denkbar:
- 1. der
Nutzer bestätigt
die Satzhypothese mit „Ja" (oder die Erkennungswahrscheinlichkeiten
sind so hoch, dass eine Rückfrage
entfallen kann.). Dann ist der aktuelle Dialogschritt erfolgreich
beendet worden.
- 2. der Nutzer verneint die gesamte Satzhypothese. Dann muss
in weiteren Dialogschritten das Füllen der offenen Slots vorgenommen
werden. Diese Situation wird von der erfindungsgemäßen Lösung nicht
betroffen.
- 3. der Nutzer verneint bei gleichzeitiger Nennung des korrigierenden
Kommandos. Das ist die Situation, die vorzugsweise erfindungsgemäß gelöst werden
soll.
-
Erfindungsgemäß wird in
Situation 3 ein neuer Erkennungsprozess bezüglich des korrigierten Kommandos
gestartet. Slot bezogen wird bzw. werden nun die neue(n) Hypothese(n)
in den Zwischenspeicher unter t = 2 abgelegt. Jetzt erfolgen Vergleiche
der 2. und folgenden Hypothesen aus dem ersten Erkennungsschritt
(t = 1) mit allen Hypothesen des zweiten Erkennungsschrittes (t
= 2). Die erste Hypothese aus dem ersten Erkennungsschritt nimmt am
Vergleich nicht mehr teil, weil sie bereits durch die Nutzerentscheidung
ausgeschieden ist. In Abhängigkeit
vom Ausgang des Vergleichs sind zwei weitere Pfade möglich:
- 1. Der Vergleich war nicht erfolgreich. D.
h., es liegt keinerlei Ähnlichkeit
zwischen der ersten und der zweiten Nutzereingabe vor. Es ist zu
vermuten, dass sich der Nutzer selbst korrigiert hat. Es wird die
erste Hypothese des zweiten Erkennungsschrittes als Erkennungsergebnis
ausgegeben.
- 2. Der Vergleich war erfolgreich. Es ist zu vermuten, dass der
Nutzer ähnlich
klingende Kommandos korrigieren will (klassisches N-Best). Es wird die
zweitwahrscheinliche Hypothese des ersten Erkennungsschrittes als
Erkennungsergebnis ausgegeben.
-
Nun
können
in beiden Fällen
immer noch falsche Resultate vorliegen, sodass die Prozedur wiederholt
werden muss. Dann verneint der Nutzer wieder das angebotene Erkennungsergebnis
und eine neue Hypothese wird aufgestellt. Diese wird dann unter
t = 3 abgespeichert. Für
den Vergleich wird nun auch die zweite Hypothese des ersten Erkennungsschrittes
gestrichen:
- 1. Im positiven Fall (Ähnlichkeit
vorhanden) wird dem Nutzer die dritte Hypothese des ersten Erkennungsschrittes
zur Beurteilung angeboten.
- 2. Im Negativfall (keine Ähnlichkeit
zu einer der Hypothesen des ersten Erkennungsschrittes vorhanden)
wird nunmehr die erste Hypothese des zweiten Erkennungsschrittes
gestrichen und mit den Hypothesen des dritten Erkennungsschrittes verglichen.
Wird eine Ähnlichkeit
festgestellt, so kann wieder im N-Best-Verfahren die zutreffende Alternative
ermittelt werden. Tritt erneut eine Nichtähnlichkeit auf, ist davon auszugehen,
dass der Nutzer erneut seinen Willen geändert hat.
-
Wie
zu sehen ist, arbeitet dieses Verfahren rekursiv. Aus praktischen
Erwägungen
ist es jedoch sinnvoll, die Anzahl möglicher Schritte geeignet zu begrenzen.
-
Zu
Beginn des Dialoges, nach Abschluss jeder erfolgreichen Erkennungsprozedur
und nach Dialog-Resets werden alle Speicherinhalte zurückgesetzt
(Löschen
der Historie).
-
Im
Folgenden wird die Erfindung anhand von Ausführungsbeispielen näher erläutert, die
in den Figuren schematisch dargestellt sind. Gleiche Bezugsziffern
in den einzelnen Figuren bezeichnen dabei gleiche Elemente. Im Einzelnen
zeigt:
-
1 ein
mehrdimensionales Speicherabbild, bei dem die Hypothesen pro Slot
und Historie abgespeichert sind,
-
2 die
Darstellung des Verfahrens bei einer Fehlerkorrektur mittels N-Best,
-
3 die
Darstellung des Verfahrens bei einer Fehlerkorrektur mittels N-Best,
wobei sich der Benutzer selber korrigiert.
-
Im
Rahmen der Erfindung sind zahlreiche Abwandlungen und Weiterbildungen
der beschriebenen Ausführungsbeispiele
verwirklichbar.
-
Ein
erfindungsgemäßer Gedanke
beruht gemäß 1 auf
der Zwischenspeicherung aller Slot-Hypothesen in einem Speicherwürfel. Die
Dimensionen des Würfels
werden bestimmt durch:
- • Historie t (wie viele Korrekturschritte
werden in die Vergangenheit zurückverfolgt)
- • Slot-Anzahl
n und
- • Anzahl
der maximal möglichen
Hypothesen je Slot m.
-
Weiterhin
benutzt die erfindungsgemäße Lösung einen
Vergleicher, der Slot bezogen die Hypothesen auf Gleichheit zwischen
verschiedenen Zeitpunkten (d. h. Erkennungsschritten) prüft und als ähnlich (true)
oder unähnlich
(false) kennzeichnet (1).
-
Es
versteht sich jedoch, dass die Erfindung auch nur mit einem Slot
für die
Einzelworterkennung genutzt werden kann.
-
2 zeigt
die Wirkung der erfindungsgemäßen Lösung im
Falle einer hohen Verwechslungsähnlichkeit
der Sprachkommandos (im Beispiel Slot 3, Ortsname). Der Nutzer verlangt
den Ort Illingen, bekommt aber in der ersten Hypothese den Ort Dillingen
angeboten. Dem gemäß verneint
der Nutzer die entsprechende Rückfrage
und verbindet dies mit der erneuten Eingabe seines Wunsch-Ortes.
Aufgrund sprachlicher oder anderer Besonderheiten steht wieder der
Ortsname Dillingen an erster Stelle der Hypothesen, da aber Dillingen
bereits abgelehnt wurde und der Name Illingen in beiden Erkennungsschritten zu
finden ist, wird nun entsprechend des N-Best-Verfahrens der nächst wahrscheinliche
Name, nämlich korrekter
Weise Illingen ausgegeben.
-
3 zeigt
die Wirkung der erfindungsgemäßen Lösung im
Falle eines Wechsels der Nutzerabsicht. Der Nutzer verlangt den
Ort Illingen, bekommt in der ersten Hypothese korrekt auch Illingen angeboten.
Aber der Nutzer hat sich geirrt und verneint aus diesem Grund die
entsprechende Rückfrage.
Er verbindet dies mit der geänderten
Eingabe seines Wunsch-Ortes, nämlich
Bexbach. Ein Vergleich der Speicherinhalte geht erfolglos aus. Folglich
werden alle Hypothesen des ersten Erkennungsschrittes verworfen
und es wird der Ortsname Bexbach als Alternative ausgegeben.