-
Technisches Gebiet
-
Die vorliegende Erfindung betrifft im Allgemeinen die automatische Spracherkennung, und im Besonderen das Bereitstellen der Spracherkennung, so dass der Benutzer dabei einer geringen kognitiven Belastung ausgesetzt ist.
-
Hintergrund zum Stand der Technik
-
Es ist allgemein bekannt, dass von einem Fahrer durchgeführte Aktionen, welche nicht mit dem Fahren in Verbindung stehen, eine Ablenkung vom Fahren darstellen können. Aus diesem Grund liegt in jüngster Zeit ein Schwerpunkt darauf, die Benutzung von Mobiltelefonen während der Fahrt sowohl durch gesetzliche Maßnahmen als auch durch Belehrung der Fahrer einzuschränken. Es besteht außerdem ein wachsender Bedarf an einem Zugang der Fahrer zu Informations-, Kommunikations- und Unterhaltungsfunktionen im Fahrzeug.
-
Studien haben gezeigt, dass sprachbasierte Schnittstellen weniger ablenkend sein können als herkömmliche visuelle bzw. manuelle Schnittstellen. Befehlsbasierte Sprachschnittstellen für eingeschränkte Funktionen werden in Fahrzeugen zunehmend üblich. Texteingaben mittels Sprachansagen für Funktionen, wie SMS, sind allerdings schwierig, da die Erkennung einer fortlaufenden Sprachansage mit umfangreichem Vokabular fehleranfällig ist. Somit besteht Bedarf an einer Korrektur oder einem anderweitigen Verändern von mittels einer Sprachansage eingegebenem Text, und dabei die Ablenkung eines Benutzers beim Fahren verringert werden kann.
-
Einige Verfahren zum Korrigieren uneingeschränkter Sprachansagen verwenden Editieranwendungen, d. h. Wortprozessoren mit Computeranzeigen und herkömmlichen Tastaturen. Beispielsweise werden durch das in der
US 5,960,447 beschriebene Verfahren Fehlerkennungen von Sprachansagen durch ein Kennzeichnen von Wörtern in dem erkannten Text mit assoziierten Sprachansagen korrigiert, und es den Benutzern der Wortverarbeitungssoftware ermöglicht, die Sprachansage anzuhören, um Texttranskriptionen zu editieren.
-
Ein weiteres Verfahren, welches in der
US 5,970,460 beschrieben ist, verbessert die Editieroperationen durch Assoziieren einer ”Sprachansage-Ereignisdatenbank” mit Positionen in einer Texttranskription in einem Editierungsanwendungsprogramm und durch Erweitern des Kontexts. Solche Verfahren erfordern ein hauptsächliches Konzentrieren auf die Korrekturaufgabe, einschließlich auf eine herkömmliche Tastatur, Maus und Menüauswahl, und insbesondere das Zugreifen auf visuelle Mittel, welche notwendig sind, um visuelle Anzeigen bedienen zu können. Die Verwendung von Tastaturen, Touch-Screens und großen visuellen Anzeigen minimiert allerdings nicht die Ablenkungen vom Führen des Fahrzeugs.
-
Andere Methoden minimieren die Komplexität der Interaktion unter Verwendung von nachfolgenden Sprachansagen, um die Transkription zu editieren, welche von einer ersten Sprachsage stammt. In einem in der
US 6,064,959 beschriebenen Verfahren wird ein Ergebnis der Spracherkennung unter Verwendung der nachfolgenden Äußerung korrigiert. In ähnlicher Weise werden in dem in der
US 7,444,286 beschriebenen Verfahren Teile der Spracherkennung, welche wiedererkannt werden sollen, ausgewählt. Die nachfolgende Interpretation der Sprachansage kann allerdings Fehler erzeugen, wodurch sich ein erhöhter Fehlerkorrekturaufwand ergibt und ferner zur Fahrerablenkung beigetragen wird.
-
Bei einem weiteren in der
US 2006/293,889 beschriebenen Verfahren werden Korrekturen eines einzelnen von dem Benutzer vorgegebenen Wortes eingesetzt, um die Alternativvorschläge für Wörter neben diesem einzelnen Wort anzupassen. Wenn in der Sprachansage des Benutzers allerdings mehrere Wörter falsch interpretiert werden, muss der Benutzer die Sprachansageinterpretationen mehrere Male korrigieren. Außerdem sind die Korrekturen durch dieses Verfahrens auf das Ersetzen des ausgewählten Wortes beschränkt, im Gegensatz zu allgemeineren Typen von Interaktionen, wodurch sich weiteren Ablenkungen für den Benutzer ergeben können. Aus diesem Grund besteht ein Bedarf, die Interaktionen und Benutzerkonzentration, welche zum Steuern der Interpretation der Sprachansage erforderlich sind, zu minimieren.
-
Zusammenfassung der Erfindung
-
Einige Ausführungsformen der Erfindung beruhen auf der Erkenntnis, dass Fehler, welche in der Spracherkennung von fortlaufenden Sprachansagen, welche eine Wortabfolge enthalten, mit umfangreichem Vokabular vorkommen, häufig mit anderen Fehlern assoziiert sind. Aus diesem Grund kann eine Korrektur des Erkennungsergebnisses verwendet werden, um vorherzusagen, an welcher Stelle andere Fehler aufgetreten sein könnten, und um die zusätzlichen Fehler zu korrigieren, anstatt nur den ursprünglichen Fehler zu korrigieren und auf zusätzliche Benutzereingaben zu warten. Diese anderen Fehler können in angrenzenden Wortpositionen vorkommen oder in entfernteren Positionen vorkommen, so dass an angrenzenden Wörtern keinerlei Änderungen erforderlich sind. Somit sollte die Korrektur verwendet werden, um das Erkennungsergebnis zu aktualisieren. Die Korrektureinschränkung kann dann eingesetzt werden, um die von einem Benutzer geäußerte Sprachansage erneut zu interpretieren.
-
Solche Einschränkungen können die Wahrscheinlichkeit erhöhen, dass Gruppen von Wörtern richtig interpretiert werden, im Gegensatz zu einer Interpretation, bei welcher nur die Akustiksignale in Entsprechung mit den einzelnen Wörtern verwendet werden. Zum Beispiel bei einem Erkennungsergebnis mit den Alternativen (in Englisch) ”Wreck a nice beach” und ”Recognize speech”, kann eine Einschränkung verwendet werden, dass das Thema (in Englisch) ”Pollution” ist, um die Wahrscheinlichkeiten der ersten Erkennung zu aktualisieren.
-
Zum Beispiel anstelle des Fragens des Benutzers, ob ein bestimmtes Wort oder Wörter der Interpretation der Sprachansage zu korrigieren sind, kann eine Eingabe von dem Benutzer verwendet werden, um die Wortabfolgeeinschränkungen zu bestimmen, welche verwendet werden können, um die gesamte Interpretation der Sprachansage zu aktualisieren. Diese Erkenntnis ermöglicht es, Maßnahmen durch den Benutzer zur Korrektur der Sprachansage zu reduzieren, da die Wortabfolgeeinschränkungen zur Korrektur der gesamten Interpretation der Sprachansage führen kann, während die Korrektur des Wortes lediglich zur Korrektur dieses Wortes führen kann.
-
In einigen Ausführungsformen umfassen die Wortabfolgeeinschränkungen zum Beispiel Metadaten der Sprachansage, wie eine Anzahl von Wörtern in der Sprachansage oder das Nichtvorhandensein eines bestimmten Wortes in der Sprachansage. In einer weiteren Ausführungsform sind die Wortabfolgeeinschränkungen spezifischer für den Kontext der Sprachansage. Die Wortabfolgeeinschränkungen können zum Beispiel Informationen über die ursprüngliche Interpretation der Sprachansage enthalten, und solche Informationen können werden verwendet, um die Interpretation der gesamten Sprachansage neu zu bewerten.
-
Einige Ausführungsformen beruhen auch auf der Erkenntnis, dass das Verfahren bzw. die Verfahren der Eingabe von Wortabfolgeeinschränkungen die Aktionen des Benutzers, welche zum Auswählen der Einschränkungen erforderlich sind, minimieren soll bzw. sollen, so dass das System den Benutzer einer geringen kognitiven Belastung aussetzt. Die Wortabfolgeeinschränkungen können verschiedene Werte aufweisen, und können aber auch verschiedene Typen aufweisen. Die Typen der Wortabfolgeeinschränkungen können zum Beispiel das Auswählen oder Ablehnen eines Wortes, das Auswählen der Abfolge oder Sequenz eines Wortes, das Auswählen eines Zeitschlitzes, eine Verfolgung der richtigen Wörter in der Abfolge, das Ersetzen von Wörtern oder Reihenfolgen von Wörtern etc. umfassen. Dementsprechend ist es wünschenswert, eine Schnittstelle bereitzustellen, welche ausgelegt ist, sowohl den Typ als auch den Wert der Einschränkungen auszuwählen, mit minimaler Ablenkung der Benutzer von ihrer Hauptaufgabe, wie dem Führen des Fahrzeugs.
-
Einige Ausführungsformen der Erfindung beruhen auf einer Erkenntnis, dass eine einzelne Geste des Benutzers analysiert werden kann, um sowohl den Typ als auch den Wert der Wortabfolgeeinschränkungen zu bestimmen. Insbesondere kann eine Form der Geste verwendet werden, um einen Typ der Wortabfolgeeinschränkung zu bestimmen, und eine Position der Geste in Bezug auf die Schnittstelle, z. B. eine Position des Gestenpfades wie dem Koordinatenraum der Benutzerschnittstelle zugeordnet (und möglicherweise wie auf einer Ausgabeeinrichtung angezeigt) verwendet werden, um den Wert der Wortabfolgeeinschränkung zu bestimmen.
-
Zum Beispiel kann eine horizontale Geste dem Typ der Wortabfolgeeinschränkung zum Auswählen einer Abfolge von Wörtern zugeordnet werden. Diese Position des Pfades dieser Geste auf der Anzeigeeinrichtung kann verwendet werden, um die Abfolge von Wörtern zu bestimmen, welche in der Interpretation der Sprachansage vorhanden sind. In ähnlicher Weise kann eine vertikale Geste dem Typ zum Auswählen eines Zeitschlitzes der Wörter zugeordnet werden, und die Position des Pfades dieser Geste auf der Anzeigeeinrichtung verwendet werden, um die Zeit und/oder Reihenfolge der Äußerung der bestimmten Wörter zu bestimmen. In ähnlicher Weise können verschiedene Formen von Gesten, wie Wischgeste, Kreisgeste, Ziehauswahl und Verfolgung des Wortpfades den verschiedenen Typen von Einschränkungen zugeordnet und die Position der Geste auf der Anzeigeeinrichtung verwendet werden, um den Wert der Einschränkung zum nachfolgenden Neubewerten der möglichen Interpretationen der Sprachansage zu bestimmen.
-
Dementsprechend offenbart eine Ausführungsform der Erfindung ein Verfahren zum Erkennen einer Sprachansage, welche einer Abfolge von Wörtern enthält. Das Verfahren umfasst das Bestimmen einer Form einer Geste und einer Position der Geste in Bezug auf eine Anzeigeeinrichtung, welche eine Reihe von Interpretationen der Sprachansage zeigt; Bestimmen eines Typs der Wortabfolgeeinschränkung auf Grundlage der Form der Geste und eine Zuordnung zwischen einer Gruppe von Formen von Gesten und einer Gruppe von Typen von Wortabfolgeeinschränkung; Bestimmen eines Wertes der Wortabfolgeeinschränkung auf Grundlage der Position der Geste; und Erkennen der Sprachansage unter Verwendung der Wortabfolgeeinschränkung. Die Schritte des Verfahrens werden durch einen Prozessor durchgeführt.
-
In einer weiteren Ausführungsform ist ein System zum Erkennen einer Sprachansage, welche eine Abfolge von Wörtern enthält, offenbart, und welches eine Anzeigeeinrichtung umfasst, um eine Gruppe von Interpretationen der Sprachansage anzuzeigen, und zum Empfangen einer Geste in Bezug auf die Anzeigeeinrichtung in Antwort auf das Anzeigen; und zumindest einen Prozessor zum Bestimmen eines Typs und eines Werts einer Wortabfolgeeinschränkung auf Grundlage einer Form der Geste und einer Position der Geste in Bezug auf Positionen von Elementen der Gruppe von Interpretationen auf der Anzeigeeinrichtung und zum Erkennen der Sprachansage unter Verwendung der Wortabfolgeeinschränkung.
-
Kurzbeschreibung der Zeichnungen
-
1A ist eine schematische Darstellung von Komponenten eines Systems zur Spracherkennung gemäß einer Ausführungsform der Erfindung.
-
1B ist eine Teildarstellung von vorn eines Armaturenbrettes eines Fahrzeuges, welches das System gemäß einigen Ausführungsformen der Erfindung enthält.
-
2A ist ein Blockdiagramm zum Darstellen der Funktionen eines Spracherkennungsmoduls gemäß einer Ausführungsform der Erfindung.
-
2B ist ein Beispiel von Schritten des Verfahrens gemäß 2A.
-
3A ist ein Flussdiagramm der Schritte, welche durch Verfahren zur Fehlerkorrektur in der Spracherkennung gemäß verschiedenen Ausführungsformen der Erfindung durchgeführt werden.
-
3B ist ein Flussdiagramm der Schritte, welche durch Verfahren zur Fehlerkorrektur in der Spracherkennung gemäß verschiedenen Ausführungsformen der Erfindung durchgeführt werden.
-
3C ist ein Flussdiagramm der Schritte, welche durch Verfahren zur Fehlerkorrektur in der Spracherkennung gemäß verschiedenen Ausführungsformen der Erfindung durchgeführt werden.
-
3D ist ein Flussdiagramm der Schritte, welche durch Verfahren zur Fehlerkorrektur in der Spracherkennung gemäß verschiedenen Ausführungsformen der Erfindung durchgeführt werden.
-
4 ist eine schematische Darstellung einer Abfolge von Wörtern mit einem hervorgehobenen Wort gemäß einer Ausführungsform der Erfindung.
-
5 ist eine schematische Darstellung einer Abfolge von Wörtern mit zwei hervorgehobenen Wörtern gemäß einer Ausführungsform der Erfindung.
-
6 ist eine schematische Darstellung einer Abfolge von Wörtern und einer sortierten Gruppe von Wortkandidaten gemäß einer Ausführungsform der Erfindung.
-
7 ist eine schematische Darstellung beispielhafter Ausführungsformen der Erfindung.
-
7B ist eine schematische Darstellung beispielhafter Ausführungsformen der Erfindung.
-
7C ist eine schematische Darstellung beispielhafter Ausführungsformen der Erfindung.
-
8 ist ein Blockdiagramm eines Verfahrens zum Erkennen einer Sprachansage, welche eine Abfolge von Wörtern enthält, gemäß einer Ausführungsform der Erfindung.
-
9A ist ein Diagramm einer beispielhaften Form einer Geste, welche durch eine Sequenz von Koordinatenpositionen in dem Raum der Eingabeeinrichtung dargestellt ist.
-
9B ist ein Diagramm einer Position einer Geste in Bezug auf eine Anzeigeeinrichtung, welche durch die Position der Geste in dem Koordinatenraum der Anzeigeeinrichtung dargestellt ist.
-
9C ist ein Beispiel von Mensch-Maschine-Schnittstellen zum Anzeigen und Spezifizieren der Wortabfolgeeinschränkungen gemäß einigen Ausführungsformen der Erfindung.
-
9D ist ein Beispiel von Mensch-Maschine-Schnittstellen (HMI = Human Machine Interface) zum Anzeigen und Spezifizieren der Wortabfolgeeinschränkungen gemäß einigen Ausführungsformen der Erfindung.
-
10 ist ein Beispiel der Zuordnung zwischen einer Gruppe von Formen von Gesten und einer Gruppe von Typen von Wortabfolgeeinschränkung gemäß einigen Ausführungsformen der Erfindung.
-
Beschreibung der Ausführungsformen
-
1A zeigt ein Beispiel eines Systems 1, welches in der Lage ist, ein Verfahren zum Erkennen von Sprache zu implementieren, während eine kognitive Belastung eines Benutzers, welcher die Sprachansage äußert, minimiert wird, gemäß einigen Ausführungsformen der Erfindung.
-
Das System 1 umfasst eine zentrale Verarbeitungseinheit (CPU = Central Processing Unit) 100, welche den Betrieb des gesamten Systems steuert. Das System 1 interagiert mit einem Speicher 101, welcher eine mit einem Betriebssystem (OS = Operating System) 1010 des Systems verknüpfte Software, Anwendungsprogramme 1011, welche durch die CPU 100 ausgeführt werden können, um einem Benutzer des Systems bestimmte Funktionen bereitzustellen, wie Diktieren und Fehlerkorrektur, und eine mit der Spracherkennung verknüpfte Software 1012 umfasst. Das System 1 umfasst des Weiteren eine Audioschnittstelle (I/F) 102 zum Empfangen von Sprachansagen, welche durch ein Mikrophon 103 aufgenommen oder von einem externen Eingang 104 empfangen werden, beispielsweise von externen Systemen akquirierte Sprachansagen.
-
Das System 1 kann des Weiteren eine oder mehrere Steuerungen enthalten, wie eine Anzeigesteuerung 105 zum Steuern des Betriebes einer Anzeige 106, welche zum Beispiel eine Flüssigkristallanzeige (LCD = Liquid Crystal Display) oder ein anderer Typ von Anzeige sein kann. Die Anzeige 106 dient als eine optische Benutzerschnittstelle UI (UI = User Interface) des Systems 1 und ermöglicht zum Beispiel das Präsentieren von Abfolgen von Wörtern für einen Benutzer des Systems 1. Das System 1 kann des Weiteren mit einer Audioausgabesteuerung 111 verbunden sein, um den Betrieb eines Audioausgabesystems 112, z. B. eines oder mehrerer Lautsprecher, zu steuern. Das System 1 kann zudem mit einer oder mehreren Eingabeschnittstellen, wie einer Joystick-Steuerung 107 zum Empfangen einer Eingabe von einem Joystick 108 und einer Tastatursteuerung 109 zum Empfangen einer Eingabe von einer Tastatur 110 verbunden sein. Es soll ohne Weiteres verstanden werden, dass die Benutzung des Joysticks und/oder der Tastatur lediglich beispielhaft ist. Gleichfalls kann ein Trackball oder Pfeiltasten verwendet werden, um erforderliche Funktion zu implementieren. Zudem kann die Anzeige 106 eine Touchscreen-Anzeige sein, welche als eine Schnittstelle zum Empfangen der Eingaben des Benutzers dient. Zudem kann das System 1 aufgrund der Möglichkeit zum Durchführen der Spracherkennung komplett ohne Schnittstellen auskommen, welche nicht mit Sprache verknüpft sind. Die Audioschnittstelle I/F 102, die Joysticksteuerung 107, die Tastatursteuerung 109 und die Anzeigesteuerung 105 werden durch die CPU 100 gemäß dem OS 1010 und/oder das Anwendungsprogramm 1011, welches die CPU 100 aktuell ausführt, gesteuert.
-
Wie in 1B gezeigt, kann das System 1 in einem Armaturenbrett 150 eines Fahrzeugs 199 eingebettet sein. Verschiedene Steuerungen 131–133 zum Steuern eines Betriebes des Systems 1 können an einem Lenkrad 130 angeordnet sein. Alternativ oder zusätzlich können die Steuerungen 125 an einem Steuerungsmodul 120 platziert sein. Das System 1 ist konfiguriert, um die Interpretation der Sprachansage des Benutzers zu verbessern, um eine Anzahl von Benutzerinteraktionen zu reduzieren, so dass der Benutzer sich auf das Bedienen des Fahrzeuges konzentrieren kann.
-
2A zeigt schematisch die Funktionsweise eines Spracherkennungssystems 200 mit verbesserten Fehlerkorrekturmöglichkeiten gemäß einigen Ausführungsformen der Erfindung. Die Spracherkennungseinheit 200 umfasst ein Spracherkennungsmodul 210, welches durch die CPU 100 des Systems 1 implementiert sein kann, indem die in dem Speicher 101 gespeicherte Spracherkennungssoftware 1012 ausgeführt wird.
-
Das Spracherkennungsmodul 210 empfängt eine Sprachansage 230, welche eine gesprochene Repräsentation einer Wortabfolge ist (zum Beispiel ein vollständiger Satz). In verschiedenen Ausführungsformen enthält die Sprachansage eine oder eine Kombination von einem Audiosignal, Sprachmerkmalen, und rahmenbasierten Akustikbewertungen. Die Wortabfolge umfasst typischerweise mehrere Wörter, z. B. drei oder mehr Wörter.
-
Das Spracherkennungsmodul ist konfiguriert, um eine Spracherkennung der Sprachansage 230 durchzuführen, um eine Gruppe von Interpretationen zu bestimmen, welche in dem Optimalfall der Wortabfolge ähnelt, welche durch die Sprachansage dargestellt ist. Jede Interpretation in der Gruppe umfasst eine Wortabfolge. Das Spracherkennungsmodul kann ein Akustikmodell 201 und ein Sprachmodell 202 verwenden.
-
Das Akustikmodell 201 kann zum Beispiel in dem Speicher 101 des Systems 1 gespeichert sein und beschreibt in einer Ausführungsform die bedingten Wahrscheinlichkeiten von Sequenzen von Akustikmerkmalen für eine gegebene Wortabfolge-Hypothese, oder andere Sequenz von Einheiten, welche die phonetischen Eigenschaften von Wörtern repräsentieren. Das Akustikmodell kann Phoneme oder einige andere Lauteinheiten enthalten. In einigen Ausführungsformen kann das Akustikmodell ein Phonem-Sequenzmodell, ein Modell von subphonetischen Zustandssequenzen und ein Gaußsches Mischmodell für die Wahrscheinlichkeit der Akustikmerkmale, welche für jeden subphonetischen Zustand gegeben sind, enthalten. In anderen Ausführungsformen kann das Akustikmodell eine Konvertierung von Akustikmerkmalen in phonetische Zustandssequenzwahrscheinlichkeiten enthalten, welche zum Beispiel ein neuronales Netzwerk nutzt.
-
Das Sprachmodell 202 kann auch in dem Speicher 101 des Systems 1 gespeichert sein und kann Statistiken über die Wahrscheinlichkeit einer Wortabfolge enthalten, welche zumindest ein Wort enthält, welches in einer Sprache vorkommt. Das Sprachmodell 202 kann zum Beispiel ein Unigramm-Sprachmodell sein, welches mit der Wahrscheinlichkeit eines einzelnen in einer Sprache zu verwendenden Wortes verknüpft ist, oder ein Bigramm-Sprachmodell sein, welches eine Wahrscheinlichkeit von zwei aufeinanderfolgenden Wörtern einer Sprache ausdrückt. Auch Sprachmodelle, welche eine große Anzahl an aufeinanderfolgenden Wörtern berücksichtigen, können eingesetzt werden, z. B. ein Trigramm-Sprachmodell etc.
-
In einigen Ausführungsformen führt das Spracherkennungsmodul 210 die Spracherkennung durch, indem die Sprache in Segmente zerlegt wird, von welchen angenommen wird, dass sie sich auf einzelne Wörter beziehen, und dann die einzelnen Wörter erkennt, zum Beispiel durch Identifizieren von Phonemen in den eingegebenen Sprachsequenzsegmenten und durch Vergleichen der Phoneme mit einer Phonem-zu-Text-Zuordnung des Sprachmodells 202.
-
Das Spracherkennungsmodel 210 identifiziert im Allgemeinen eine Gruppe von möglichen Interpretationen für jedes eingegebene Sprachsequenzsegment, wobei jede Interpretation eine Wortabfolge enthält. Interpretationen sind auch als Erkennungsergebnisse bekannt. Jede Interpretation ist mit einem Erkennungsvertrauenswert assoziiert, z. B. einer Bewertung, welche die Richtigkeit einer Interpretation beim Repräsentieren der Wortabfolge repräsentiert. Die Bewertung drückt einen Vertrauensgrad der Spracherkennung aus, dass das Erkennungsergebnis richtig ist. Das Spracherkennungsmodul kann das Erkennungsergebnis für jedes eingegebene Sprachsegment bestimmen, z. B. ein Wort mit dem größten Erkennungsvertrauenswert, und eine Wortabfolge bereitstellen, von welcher angenommen wird, dass sie die eingegebene Sprachabfolge repräsentiert.
-
Dementsprechend werden die Spracherkennungen von Sprachansagen weiter verfeinert, indem das Sprachmodell 201 berücksichtigt wird. Dann wird zusätzlich zu den Erkennungsvertrauenswerten eine Wahrscheinlichkeit, dass eine Gruppe eines oder mehrerer Wörter in einer Sprache vorkommt, beim Erzeugen einer Gruppe von Interpretationen der Sprachansage unter Verwendung eines Sprachmodells und eines Erkennungsvokabulars berücksichtigt. Zum Beispiel kann sich das Spracherkennungsmodul 210 in einem Fall von einem Eigramm-Sprachmodell selbst dann, wenn ein mögliches Erkennungsergebnis einen hohen Vertrauensgrad in Bezug auf den akustischen Raum aufweist, z. B. ”frei” im Gegensatz zu ”drei”, aufgrund des Bigramm-Sprachenmodells unter Verwendung des Kontexts, zum Beispiel ”um” und ”Uhr”, in der beabsichtigten Wortabfolge ”um drei Uhr” dennoch für ”drei” entscheiden.
-
2B zeigt Beispiele der Gruppe von Interpretationen der Sprachansage 240. In einigen Ausführungsformen wird die Gruppe von Interpretationen bestimmt oder als eine n-beste Liste 250 der Sprachansage oder als ein Wortgitter 260 der Sprachansage dargestellt. Zudem wird in verschiedenen Ausführungsformen für jede Interpretation in der Gruppe 251 eine Bewertung, z. B. die Bewertung 255, bestimmt, welche die Richtigkeit einer Interpretation abhängig von der Wortabfolgeeinschränkung repräsentiert. Die Bewertung kann durch mehrere Weisen bestimmt werden.
-
Eine alternative Darstellung der Gruppe von Interpretationen ist zum Beispiel ein als ein Gitter 260 bekannter Graph, in welchem Knoten, z. B. Knoten 265 und 267, jedes hypothetisierte Wort repräsentieren, welches in einem bestimmten Bereich der Sprachansage identifiziert wird und in einem bestimmten Kontext vorkommt. In dieser Repräsentation können Wörter und Wortabfolgen, welche in vielen Hypothesen in der n-besten Liste an derselben Stelle vorkommen, darauf reduziert werden, dass sie in dem Gitter einen gemeinsamen Unterpfad teilen. Zusätzlich zu den Wörtern können die Bögen des Gitters die Bewertungen des Akustik- und Sprachmodells enthalten, so dass die Gesamtbewertung für eine Wortabfolge von den Bewertungen entlang eines Pfades durch das Gitter abgeleitet werden kann. Die Bögen 261, 262 und 263 können zum Beispiel eine Bewertung darstellen, welche durch entsprechende Wahrscheinlichkeiten der Wörter (in Englisch) ”don't”, ”want” und ”went” nach dem Wort ”I” darstellen.
-
In einigen Ausführungsformen ist das Spracherkennungssystem als ein probabilistisches Modell formuliert, und die Bewertung beruht auf der Wahrscheinlichkeit einer Interpretation oder Wortabfolge für eine gegebene beobachtete Sequenz von Akustikmerkmalen. Eine Interpretation kann eine Wortabfolge enthalten und kann auch den ungefähren Zeitbereich der Äußerung entsprechend des hypothetisierten Worts identifizieren. Die Bewertung S(W|X) in einigen Ausführungsformen beruht auf der Wahrscheinlichkeit der Wortabfolge bei vorliegenden Akustikdaten. Zum Beispiel: S(W|X) ∝ pθ(W|X) wobei ∝ die Proportionalität (d. h. S(W|X) = pθ(W|X)c, wobei c eine positive Konstante ist), θ Parameter des Modells sind, pθ einen Wahrscheinlichkeitsgrad angibt, unter Verwendung von Parametern θ, W = {wi} N / i = 1 die hypothetisierte Sequenz der Wörter w1, w2, ..., wN in der Interpretation ist, und wi das in Position i (für eine Hypothese mit N-Wörtern) hypothetisierte Wort ist. Die Akustikmerkmale sind mit X = {xj} T / j = 1 bezeichnet, wobei xj der j-te Vektor von Akustikmerkmalen für die Äußerung ist (für eine Äußerung mit M-Akustikmerkmalsvektoren). pθ(W|X) ist bekannt als die A-posteriori-Wahrscheinlichkeit von W mit gegebenem X. In einer weiteren Ausführungsform kann die Bewertung als der Logarithmus dieser Größe definiert sein: S(W|X) = logpθ(W|X) + k, wobei k eine beliebige Konstante ist.
-
In einer Ausführungsform ist die Bewertung in verschiedene Unterbewertungen aufgeteilt:
wobei
eine Bewertung aus einem Wortsprachmodell mit Parametern θ
LM ist, und
eine Bewertung aus einem Akustikmodell mit Parametern θ
AM ist. Zur Vereinfachung werden die Parameter θ nachfolgend weggelassen, mit Ausnahme der Stellen, wo sie erforderlich sind.
-
In einer weiteren Ausführungsform wird eine Wortabfolge mit einer Sequenz
R ^ = {r ^} N / i = 1 von hypothetisierten Zeitbereichen der Äußerung für jedes hypothetisierte Wort assoziiert, so dass r ^
i die Position ist, welche für das Wort w
i hypothetisiert wird. In dieser Ausführungsform kann die Bewertung auf einem erweiterten Modell mit einem Anordnungsterm p(R|W) beruhen, so dass p(W)p(X|W) = max
Rp(W)p(R|W)p(X|W, R). In dieser Ausführungsform wird R ^ durch Maximieren der Bewertung über die Gruppe aller möglichen Anordnungen S erhalten:
und die Akustikbewertung für die Untersequenz der Merkmale X(r ^
l) entsprechend dem Bereich r ^
i, welcher mit dem hypothetisierten Wort w
i assoziiert ist, p(X(r ^
i)|w
i) ist.
-
Die Sprachmodell-Bewertung kann in vielen Weisen berechnet werden, einschließlich unter Verwendung eines diskreten probabilistischen Modells, eines neuronalen Netzwerkes, eines diskriminativ trainierten Bedingungszufallsfelds und so weiter. In einer Ausführungsform wird das probabilistische Model zum Beispiel wie folgt formuliert:
-
Die Wahrscheinlichkeiten sind abhängig von Wörtern, welche in der Sequenz früher vorkommen, was als Kontext bekannt ist. Typischerweise ist das allgemeine Modell zu komplex und es wird ein einfacheres Modell verwendet, welches als N-Gramm-Modell bekannt ist, in welchem der Kontext auf die vorangehenden n – 1 Terme beschränkt ist:
-
In einigen Ausführungsformen werden verschiedene andere Parametrierungen und Schätzverfahren mit N-Gramm-Modellen eingesetzt, um deren Fähigkeit zu verbessern, von Trainingsdaten auf Testdaten zu generalisieren.
-
Eine Interferenz in einem Spracherkennungsmodell kann als eine Suche über Hypothesen W charakterisiert sein, um die am besten bewertete Hypothese zu finden:
-
Zudem werden typische n-beste Hypothesen mit den höchsten Bewertungen bestimmt. Die Auswertung jedes möglichen W kann rechenintensiv sein und in einigen Ausführungsformen werden die n-besten Hypothesen unter Verwendung eines rekursiven dynamischen Programmalgorithmus, z. B. dem Viterbi-Algorithmus, kombiniert mit heuristischer Verkürzung des Suchprozesses, z. B. eine Strahlsuche, bestimmt. Es gibt auch viele alternative Suchalgorithmen und Heuristiken, welche in verschiedenen Ausführungsformen eingesetzt werden können.
-
In einigen Ausführungsformen kann die Ausgabe der Suche über die Hypothesen eine n-beste Liste 250 sein, welche n-Interpretationen der Wortabfolgen zusammen mit den Bewertungen der Interpretationen 255, z. B. eine oder eine Kombination der Bewertungen des Akustikmodells und der Bewertungen des Sprachmodells, enthält. In einigen Ausführungsformen wird als eine Ausgabe die am besten bewertete Anordnung der Wörter mit den Zeitsegmenten des Akustiksignals bereitgestellt.
-
In einigen Ausführungsformen kann die Ausgabe der Suche über Hypothesen das Gitter 260 sein. Das Bestimmen von Bewertungen ist in dem Gitter typischerweise effizienter als unter Verwendung einer n-besten-Liste. Zum Zwecke der Klarheit werden einige Ausführungsformen allerdings unter Verwendung der n-besten Repräsentation beschrieben.
-
Obwohl das Sprachmodell und Akustikmodell die Suche einschränken, kann die erzeugte Erkennung dennoch Unklarheiten und Fehler aufweisen. Es kann zum Beispiel die Interpretation 251 mit der höchsten Bewertung noch immer ungenau sein. Ein Auffordern des Benutzers, die bestimmte Interpretation 251 zu korrigieren, lässt andere Interpretationen außer Acht, welche die korrekte Interpretation enthalten könnten. Zudem kann das Auffordern zum Korrigieren der bestimmten Interpretation mehrere Interaktionen des Benutzers erfordern, und der Benutzer kann von anderen Aufgaben abgelenkt werden.
-
Einige Ausführungsformen der Erfindung beruhen auf einer allgemeinen Erkenntnis, dass Korrekturen der Erkennungsergebnisse einer fortlaufenden Sprachansage mit umfangreichem Vokabular, welche eine Wortabfolge enthält, auf Einschränkungen für die Interpretation der gesamten Sprachansage beruhen sollten. Solche Einschränkungen können die Wahrscheinlichkeit der richtigen Interpretation der gesamten Sprachansage erhöhen, im Gegensatz zu Korrekturen, bei welchen nur ein einzelnes Wort geändert wird.
-
Dementsprechend enthält die Spracherkennungseinheit 200 auch ein Fehlerkorrekturmodul 220, welches Erkennungsergebnisse neu interpretiert, indem das Sprachmodell 202 und eine Wortabfolgeeinschränkung 270 berücksichtigt werden. Insbesondere aktualisiert das Fehlerkorrekturmodul 220 in einigen Ausführungsformen die Bewertung jeder Interpretation auf Grundlage einer Übereinstimmung der Interpretation mit der Einschränkung 270.
-
Nach der Aktualisierung kann die Interpretation 215, z. B. mit der höchsten Bewertung, bestimmt und als die erkannte Sprachansage ausgegeben werden.
-
Einige Ausführungsformen beruhen auf der Erkenntnis, dass die Einschränkungen zum Interpretieren der gesamten Sprachansage durch Wortabfolgeeinschränkungen 270 der bereitgestellten Sprachansage, z. B. durch einen die Sprachansage äußernden Benutzer, ergänzt sein können. Die Wortabfolgeeinschränkungen können zum Beispiel eine Anzahl und Reihenfolge der Wörter in der Sprachansage, ein bestimmtes zu einer bestimmten Zeit in der Sprachansage geäußertes Wort, das Nichtvorhandensein des bestimmten Wörtern in der Sprachansage, und ein Verbinden oder Trennen von zwei bestimmten Wörtern in der Sprachansage enthalten. Die Wortabfolgeeinschränkungen können auch das Thema der Sprachausgabe spezifizieren, zum Beispiel, dass das Thema der Sprachansage (in Englisch) ”Pollution” (Verschmutzung) ist.
-
Diese Erkenntnis ermöglicht es, Maßnahmen des Benutzers zum Korrigieren der Sprachansage zu minimieren, da die Wortabfolgeeinschränkungen zur Korrektur der gesamten Interpretation der Sprachansage führen können, während die Korrektur des Wortes lediglich zur Korrektur dieses einen Wortes führen kann. Insbesondere kann die Einschränkung 270 eingesetzt werden, um die Bewertung der gesamten Gruppe der Interpretation zu aktualisieren.
-
Somit wird die Wortabfolgeeinschränkung in einigen Ausführungsformen gleichzeitig mit der Interpretation der Sprachansage eingesetzt, im Gegensatz zur Verwendung der Einschränkungen zur nachfolgenden Korrektur eines Teils der Sprachansage. Die am besten bewerteten Interpretationen der gesamten Sprachansage werden abhängig von Wortabfolgeeinschränkungen bestimmt. Die Interpretation mit der höchsten Bewertung kann als die erkannte Sprachansage bestimmt werden. Tatsächlich kann eine solche Herangehensweise eine Anzahl von Interaktionen minimieren, welche erforderlich sind, um eine korrekte Interpretation der Sprachsequenz zu bestimmen.
-
3A zeigt ein Flussdiagramm eines Verfahrens zum Erkennen einer Sprachansage eines Benutzers gemäß einer Ausführungsform der Erfindung. In dem Verfahren 300 werden einige vorstehend beschriebene Prinzipien und Erkenntnisse angewendet und können unter Verwendung eines Prozessors 301 implementiert sein. In dem Verfahren wird die Sprachansage, welche eine Wortabfolge repräsentiert, empfangen 305, und eine Gruppe von Interpretationen der Sprachansage unter Verwendung eines Akustikmodells und eines Sprachmodells erzeugt 310. Die Gruppe von Interpretationen enthält eine oder mehrere Interpretationen, wobei jede Interpretation eine mögliche Wortabfolge ist, welche gesprochen worden sein könnte. In verschiedenen Ausführungsformen werden die Interpretationen als eine n-beste Liste der Interpretationen, ein Wortgitter oder andere Repräsentation der Gruppe von möglichen Wortabfolgen empfangen oder erzeugt.
-
Für jede Interpretation wird in dem Verfahren eine Richtigkeitsbewertung für diese Interpretation bestimmt 315, um eine Gruppe von Bewertungen zu erzeugen. Die Bewertungen können zum Beispiel auf Grundlage der Wahrscheinlichkeiten bestimmt werden, welche durch das Akustikmodell und das Sprachmodell und/oder eine nachfolgend beschriebene Richtigkeitsfunktion gegeben sind. In einigen Ausführungsformen werden in dem Verfahren die Interpretationen mit der höchsten Bewertung bestimmt 320 und an eine Untergruppe von Interpretationen an den Benutzer übermittelt. In einer Ausführungsform wird dem Benutzer nur die Interpretation mit der höchsten Bewertung übermittelt. In einer alternativen Ausführungsform werden mehrere Interpretationen übermittelt.
-
In verschiedenen Ausführungsformen werden Benutzerschnittstellen-Komponenten eingesetzt, um es dem Benutzer zu ermöglichen, bei Bedarf Einschränkungen für die Gruppe von Interpretationen bereitzustellen. In diesem Verfahren wird entschieden 330, ob eine Korrektur unter Verwendung der Wortabfolgeeinschränkungen gewünscht ist, auf Grundlage der Eingabe von dem Benutzer, welche über die Benutzerschnittstellen-Komponenten erfolgt. Der Benutzer kann Einschränkungen unter Verwendung jeder beliebigen Schnittstelle des Systems 1 oder einer Kombination davon bereitstellen. Der Benutzer kann zum Beispiel die Tastatur 110, den Joystick 108, den Touch-Screen der Anzeige 106, eine Sprachschnittstelle 103 und eine Kombination davon verwenden.
-
Wenn die Korrektur gewünscht ist, wird in dem Verfahren eine Einschränkung für die Wortabfolge empfangen 335. In verschiedenen Ausführungsformen wird die Wortfolgeeinschränkung auf Grundlage von Benutzerschnittstellen-Aktionen über Benutzerschnittstellen-Komponenten, wie Auswahllisten, Buttons etc. empfangen oder bestimmt. In einigen Ausführungsformen des Systems werden die Wortabfolgeeinschränkungen als Wahrscheinlichkeiten des Vorkommens verschiedener Ereignisse dargestellt.
-
In einigen Ausführungsformen enthält die Wortabfolgeeinschränkung Metadaten der Sprachansage, wie die Anzahl von Wörtern in der Sprachansage oder das Nichtvorhandensein eines bestimmten Worts in der Sprachansage. Die Metadaten der Sprachansage sind Informationen über die Wortabfolge im Gegensatz zu den Informationen, welche sich auf den Kontext der Wortabfolge beziehen. Solche Wortabfolgeeinschränkungen können zu jeder Zeit gesammelt werden.
-
In dem Verfahren werden die Bewertungen der Gruppe von Interpretationen der Sprachansage dementsprechend aktualisiert 340, wie sehr jede Interpretation mit der Einschränkung übereinstimmt. Nachdem die Bewertungen aktualisiert sind, wird die höchste Bewertung bestimmt 320 und das Verfahren wird iterativ fortgesetzt, bis von dem Benutzer keine Korrekturen mehr gewünscht sind. Die Gruppe von Interpretationen kann durch das Verfahren ausgegeben werden, z. B. in dem Speicher gespeichert werden, um später verwendet zu werden.
-
3B zeigt ein Flussdiagramm eines Verfahrens zum Aktualisieren der Bewertung abhängig von Einschränkungen. Die Wortabfolgeeinschränkungen werden von dem Benutzer empfangen 350. In einigen Ausführungsformen ist die Wortabfolgeeinschränkung modifiziert, um die Einschränkungen zu bestimmen 360, welche für die Interpretation geeignet sind. In einigen Ausführungsformen werden die Einschränkungen auf Grundlage der Wortabfolgeeinschränkung, welche von dem Benutzer empfangen wird, bestimmt.
-
In einigen Ausführungsformen wird die Wortabfolgeeinschränkung zum Beispiel von dem Benutzer empfangen, in Antwort auf das Übermitteln der Untergruppe von Interpretationen. In den Ausführungsformen wird ein Typ der Einschränkung auf Grundlage der Wortabfolgeeinschränkung bestimmt 361 und die Einschränkung auf Grundlage von dem Typ bestimmt 360. Der Typ der Einschränkung kann zum Beispiel einer oder eine Kombination aus einem Sprachtypen: Eine Einschränkung für die Sprachwahrscheinlichkeiten, einem Akustiktypen: eine Einschränkung für die Wahrscheinlichkeitsverteilung der Akustikmerkmale mit gegebenen hypothetisierten Wörtern, und einem Kontexttypen: eine Einschränkung für die Wortabfolgen innerhalb der Interpretationen sein.
-
3C zeigt ein Beispiel des Bestimmens der Einschränkungen entsprechend einiger Ausführungsformen, wobei der Typ der bestimmten Einschränkungen auf den zu aktualisierenden Bewertungen beruht. In diesen Ausführungsformen wird eines oder eine Kombination der Sprach- und/oder Akustikmodelle aktualisiert 365. In einigen Ausführungsformen wird der Typ der Einschränkung auf Grundlage der Wortabfolgeeinschränkung, welche von dem Benutzer empfangen wird, bestimmt. In einigen Ausführungsformen enthalten die Wortabfolgeeinschränkungen zum Beispiel Metadaten der Sprachansage, wie die Anzahl der Wörter in der Sprachansage, das Thema der Sprachansage, eine Anzahl der Wörter, welcher in einer bestimmten Periode der Sprachansage gesprochen werden. Diese Einschränkungen sind für gewöhnlich Sprach- oder Akustiktypeinschränkungen.
-
In einer weiteren Ausführungsform sind die Wortabfolgeeinschränkungen spezifischer für den Kontext der Sprachansage. Die Wortabfolgeeinschränkungen können zum Beispiel Informationen über das Vorhandensein oder Nichtvorhandensein eines bestimmten Wortes in der Sprachansage enthalten. Diese Einschränkungen sind für gewöhnlich die Kontexttypeinschränkungen.
-
Wenn die Wortfolgeeinschränkung zum Beispiel eine Anzahl der Wörter in der Sequenz ist, erfolgt das Aktualisieren der Bewertungen in einer Ausführungsform durch Neuberechnen der Sprachmodell-Bewertungen, zum Beispiel unter Verwendung von p(W|Länge(W) = 6). In einer Alternativen dieser Ausführungsform bleiben die Akustikmodell-Bewertungen und die geschätzten Bereiche R entsprechend jedem Wort unverändert.
-
In einer Ausführungsform ist der Typ der Einschränkung der Sprachtyp und das Aktualisieren der Bewertungen erfolgt durch Neuberechnen der Sprachmodell-Bewertungen unter Verwendung des modifizierten Sprachmodells. Anstelle des ursprünglichen Sprachmodells
wird das Gitter zum Beispiel neu bewertet unter Verwendung von
Hier sind θ
LM die ursprünglichen Sprachmodellparameter und θ'
LM die Parameter, welche durch Bedingen der Einschränkung erhalten werden, dass in der Sequenz sechs Wörter enthalten sind. Die Bewertung kann somit durch die Bewertung
aktualisiert werden, wobei S'(W|X) die modifizierte Bewertung ist.
-
In einer Ausführungsform wird eine Einschränkung, dass das Thema ”Pollution” ist, in einer ähnlichen Weise auferlegt. In dieser Ausführungsform wird ein eingeschränktes Sprachmodell
mit Parametern θ'
LM verwendet, welche für Wortabfolgen zu dem Thema ”Pollution” geeignet sind. Somit kann in dieser Ausführungsform die vorstehende Bewertungsfunktion S'(W|X) unter Verwendung des eingeschränkten Sprachmodells aktualisiert werden.
-
Mit der aktualisierten Bewertung jeder Interpretation ergibt die Neubewertung eine Auswertung der Bewertung unter Verwendung der modifizierten Bewertungsfunktion für jeden Eintrag der n-besten Liste. Alternativ kann ein Graph von möglichen Wortabfolgen basierend auf dem Gitter oder der n-besten Liste unter Verwendung verschiedener Algorithmen, wie Vorwärts-Rückwärts-Algorithmus, Viterbi-Decodierung oder Stapel-Decodierung, unter Verwendung der modifizierten Bewertungsfunktion effizient gesucht werden. In dem Prozess zum Auswerten der Bewertungen wird eine modifizierte n-beste-Liste oder ein Gitter erzeugt.
-
Wenn die Einschränkung nur für Wortabfolgen ist, können die Akustikmodell-Bewertungen, wie
in dem vorstehenden Beispiel und die geschätzten Bereiche R entsprechend jedem Wort unverändert bleiben. In anderen Ausführungsformen ist der Typ der Einschränkung allerdings der Akustiktyp und die Akustikbewertungen p(X|W) werden in Abhängigkeit von den Einschränkungen verändert. Zum Beispiel in dem Fall, wenn eine Anordnung zwischen den Wörtern und den Akustikmerkmalen berechnet wird, kann die Neubewertung auch von der Anordnung abhängig sein. In einer Ausführungsform wird das Modell
definiert und die Bewertungen auf Grundlage von Einschränkungen für R aktualisiert:
wobei
eine Untergruppe der erlaubten Anordnungen repräsentiert, welche die gewünschte Einschränkung anwenden. Eine solche Einschränkung kann zum Beispiel sein, dass es innerhalb eines bestimmten Zeitbereichs nur ein Wort gibt.
S
-
3D zeigt ein Flussdiagramm eines Verfahrens zum Bestimmen absoluter oder relativer Einschränkungen zum Aktualisieren der Bewertungen. In einigen Ausführungsformen wird, wenn eine Einschränkung absolut ist, die Interpretation der Wortabfolge, welche mit der Einschränkung nicht übereinstimmt, mit einer kleinstmöglichen Bewertung neubewertet. Umgekehrt wird, wenn eine Einschränkung relativ, z. B. probabilistisch, ist, eine Interpretation, welche mit der Einschränkung nicht zusammenpasst, mit einer kleineren Gewichtung neubewertet als Interpretationen, welche mit der Einschränkung zusammenpassen, allerdings kann eine nicht passende Interpretation noch immer eine Endbewertung aufweisen, welche höher ist als die Bewertungen der Interpretation, welche mit der relativen Einschränkung übereinstimmt.
-
In einigen Ausführungsformen weisen die relativen Einschränkungen zum Beispiel kontinuierliche Werte auf, welche verschiedene Grade der Einschränkungserfüllung darstellen. Solche Einschränkungen können unter Verwendung eines die Einschränkung darstellenden Multiplikationsfaktors formuliert sein. In einer Ausführungsform enthält die Einschränkung einen Einschränkungsfaktor f(X, W, R)
369, dessen Produkt eine Zahl ist, welche den Grad der Einschränkungserfüllung für einen oder mehrere von einer Akustiksequenz, einer Wortabfolge und einer Anordnung angibt. Unter Verwendung dieses Einschränkungsfaktors wird in einer Ausführungsform eine allgemeine Neubewertungsfunktion formuliert:
-
In Abhängigkeit von dem Einschränkungsfaktor können verschiedene Arten von Einschränkungen realisiert sein, einschließlich der Fälle mit absoluten und relativen Einschränkungen. In einigen Ausführungsformen kann der Einschränkungsfaktor zum Beispiel unter Verwendung einer Indikatorfunktion 363 bestimmt sein, welche die von dem Benutzer spezifizierte Wortabfolgeeinschränkung der Einschränkung zuordnet, welche zum Aktualisieren der Bewertungen der Interpretation geeignet ist, und eines Gewichtungsparameters 367, welchen einen Grad der relativen Einschränkung (bis die relativen Einschränkungen absolut gemacht werden) anzeigt.
-
Wenn der Einschränkungsfaktor zum Beispiel
f(X, W, R) = f(W) = αILänge(W)=6 + β, ist, wobei die Bezeichnung f(W) angibt, dass der Einschränkungsfaktor in diesem Fall nicht von X und R abhängig ist, α und β nicht-negative Gewichtungsparameter sind, welche den Grad der Einschränkungserfüllung darstellen, und zum Beispiel
eine Indikatorfunktion für die Einschränkung ist, dass es in der Sequenz sechs Wörter gibt.
-
Wenn der Gewichtungsparameter α relativ zu β groß ist, ist die Einschränkungserfüllung hoch, und die Einschränkungserfüllung andernfalls gering. Eine absolute Einschränkung kann erreicht werden, indem β auf Null gesetzt wird, so dass die Funktion f(W) in allen Fällen, welche nicht gewünscht sind, einen Nullwert aufweist.
-
In einer weiteren Ausführungsform kann eine Einschränkung für die Anordnung unter Verwendung von
realisiert sein, wobei
eine Indikatorfunktion für die Bedingung ist dass R in der Bedingung als
eingestellt ist.
-
In dem Fall mit der in einem eingeschränkten Sprachmodell
mit Parametern θ'
LM realisierten Einschränkung ist der Einschränkungsfaktor
wobei p(W) das Sprachmodell ist, welches in der ursprünglichen Erkennung verwendet wird. Dies führt zu der gleichen Wirkung für die Bewertungen, als wenn das neue Modell
mit dem alten Modell p(W) ersetzt wird.
-
Es wird darauf hingewiesen, dass die absolute Skala von f keinen Einfluss auf die relative Bewertung verschiedener Worthypothesen hat, so dass jeder beliebige andere Einschränkungsfaktor, welcher proportional zu einem anderen ist, f'(X, W, R) ∝ f(X, W, R), die gleiche Wirkung auf die resultierende n-beste Liste oder Gitter hat.
-
Zusätzlich oder alternativ können mehrere Einschränkungen für die Interpretation auf Grundlage der von dem Benutzer empfangenen Wortabfolgeeinschränkung bestimmt werden. Wenn der Benutzer zum Beispiel angegeben hat, dass ein Wort in der Wortabfolge richtig ist, wird in manchen Ausführungsformen bestimmt, dass die Wörter links oder rechts vom Wort (abhängig von dem Sprachmodell) ebenfalls richtig sind. In diesen Ausführungsformen werden zusätzliche Einschränkungen für benachbarte Wörter erzeugt.
-
In einer Ausführungsform wird zum Beispiel durch die Bewertungsfunktion das Vorhandensein des bestimmten Wortes geprüft. Es kann zum Beispiel eine Richtung der Sprachansage auf Grundlage des Sprachmodells bestimmt werden, und die Bewertungsfunktion wird mit einer Prüfung des Vorhandenseins der vorangehenden und nachfolgenden Wörter aktualisiert, in Entsprechung mit der Richtung der Sprachansage, und das bestimmte Wort in der Interpretation wird dem Benutzer mitgeteilt. In dieser Ausführungsform wird durch die Bewertungsfunktion nicht nur das bestimmte Wort geprüft, sondern auch andere Wörter benachbart zu dem Wort aus der Richtung der Sprachansage geprüft.
-
Nachdem die Einschränkung für die Interpretation bestimmt ist, werden die Bewertungen einiger Interpretationen auf Grundlage einer Übereinstimmung einer bestimmten Interpretation mit der Einschränkung aktualisiert 370. In einigen Ausführungsformen wird jede Interpretation aktualisiert, so dass die Bewertung jeder Interpretation entweder erhöht oder herabgesetzt werden kann. Das heißt, dass nach der Aktualisierung 370 die Bewertung jeder Interpretation entweder erhöht oder herabgesetzt werden kann. Durch einige Alternativen der Ausführungsformen ist es möglich, dass die Bewertung einiger Interpretationen unverändert bleiben kann.
-
Nachdem die Bewertungen aktualisiert sind, werden die Interpretationen mit der höchsten Bewertung bestimmt 380, und die Ausgabe für den Benutzer gebildet 390 und dem Benutzer mitgeteilt. In einigen Ausführungsformen werden die Interpretationen unter Verwendung visueller Mittel, wie auf einer Anzeigte gezeigte Wörter und Buchstaben, mitgeteilt. In einigen Ausführungsformen werden die Interpretationen mittels Audiorückkopplung, wie von einem Lautsprecher erzeugte Töne, unter Verwendung von Text-zu-Sprache oder aufgezeichneten Audiowellenformen mitgeteilt. In verschiedenen Ausführungsformen können eine oder mehrere Interpretationen mit den besten Bewertungen mitgeteilt werden.
-
Die 4, 5 und 6 zeigen Beispiele von Schnittstellen zum Auswählen der Wortfolgeeinschränkung auf Grundlage von Interpretationen, welche dem Benutzer der Sprachansage mitgeteilt werden. Die Interpretation kann eine ursprüngliche Interpretation der Sprachansage oder nachfolgende Interpretationen, welche nach dem Aktualisieren der Bewertungen gewählt werden, sein.
-
Die Wortabfolge 4 ist ein Satz, welcher fünf Wörter enthält, wobei das dritte Wort (Wort3) mit einem hervorhebenden gestrichelten Rahmen 40 versehen ist. In einer weiteren Ausführungsform wird das Wort3 als die effizienteste Einschränkung für die Wortabfolge bestimmt.
-
Des Weiteren dient in dem Beispiel von 4 der gestrichelte Rahmen 40 nicht nur zur Hervorhebung, sondern stellt auch einen Selektor dar, welcher durch einen Benutzer bewegt werden kann, um Wörter auszuwählen, welche falsch erkannt sind und somit einer Korrektur bedürfen. Ein solches Bewegen kann zum Beispiel Wort für Wort mittels eines Joysticks oder Pfeiltasten durchgeführt werden, und das Auswählen kann dann durch ein Drücken eines dedizierten Buttons oder einer Taste erfolgen (welche zum Beispiel in dem Joystick oder Touch-Screen integriert oder durch diese implementiert sein können).
-
5 zeigt eine alternative Schnittstelle, an welcher der Benutzer eines oder mehrere Wörter, zum Beispiel Wort3 und Wort5, auswählen kann. Nach dem Auswählen eines Wortes oder einer Wortabfolge kann der Benutzer eine der folgenden Aktionen durchführen: Markieren des ausgewählten Wortes oder der Sequenz als richtig, Markieren eines oder mehrerer ausgewählter Wörter oder Sequenzen als falsch, Überspringen des ausgewählten Worts oder der Sequenz, Anfordern zusätzlicher Auswahlen für das ausgewählte Wort oder die Sequenz, oder möglicherweise Ändern einiger anderer Einschränkungen, wie den Inhalt oder Stil des Textes.
-
In einer Ausführungsform kann, nachdem ein Wort oder eine Wortabfolge ausgewählt wird, die Zeit oder das Zeitfenster, welche mit dem ausgewählten Wort assoziiert sind, verwendet werden, um die Gruppe von Wörtern zu finden, welche zu dieser Zeit oder in diesem Zeitfenster gesprochen worden sein könnten, und einige oder alle davon dem Benutzer angezeigt werden, vorzugsweise geordnet in der Reihenfolge von absteigenden Bewertungen.
-
6 zeigt beispielhaft eine Scroll-Down-Liste 60 für das dritte Wort (Wort3) von einer Wortabfolge 6. Diese Scroll-Down-Liste 60 enthält vier Wortkandidaten, welche auf Grundlage des Zeitfensters entsprechend dem Wort3 ausgewählt sind. Ein Selektor 61 wird automatisch auf dem ersten Eintrag in dieser Scroll-Down-Liste 60 platziert, welcher vertikal bewegt werden kann, um Einträge aus der Scroll-Down-Liste 60 auszuwählen.
-
Beispiele
-
7A zeigt eine schematische Darstellung eines beispielhaften Verfahrens zur Interpretation der Sprachansage 710 abhängig von der Wortabfolgeeinschränkung gemäß einer Ausführungsform der Erfindung. In diesem Beispiel enthält die Wortabfolgeeinschränkung eine Einschränkung 714 für eine Anzahl von Wörtern, d. h. dass die Sprachansage sechs Wörter aufweist. Insbesondere wird die Einschränkung 714 verwendet, um die Bewertung 712 der gesamten Gruppe von Interpretationen 711 zu aktualisieren, um eine aktualisierte Gruppe 715 mit aktualisierten Bewertungen 716 der Interpretationen zu erzeugen. Wie in dem Beispiel gemäß 7A erkannt werden kann, werden die Bewertungen 716 für die gesamte Gruppe der Interpretationen aktualisiert.
-
Für diese beispielhafte Ausführungsform kann die allgemeine Neubewertungsformel
wie vorstehend erläutert verwendet werden, mit einem bestimmten Einschränkungsfaktor f(X, W, R), welcher Sequenzen mit sechs Wörtern eine höhere Gewichtung zuweist, wie
f(X, W, R) = f(W) = αILänge(W)=6 + β und
-
Es können auch andere Einschränkungsfaktoren und/oder Indikatorfunktionen eingesetzt werden.
-
7B zeigt eine schematische Darstellung eines beispielhaften Verfahrens zum Interpretieren einer Sprachansage 720 abhängig von einer Wortabfolgeeinschränkung gemäß einer Ausführungsform der Erfindung. In diesem Beispiel enthält die Wortabfolgeeinschränkung eine Einschränkung 724 für ein Thema der Sprachansage, d. h. dass die Sprachansage das Thema ”Pollution” betrifft. Die Einschränkung 724 wird verwendet, um die Bewertung 722 der gesamten Gruppe der Interpretation 721 zu aktualisieren, um eine aktualisierte Gruppe 725 mit aktualisierten Bewertungen 716 der Interpretationen zu erzeugen.
-
In dieser beispielhaften Ausführungsform wird ein eingeschränktes Sprachmodell
mit Parametern θ'
LM verwendet, welche für Wortfolgen zum Thema ”Pollution” geeignet sind. Somit kann die Ausführungsform die vorstehende Bewertungsfunktion S'(W|X) unter Verwendung des eingeschränkten Sprachmodells aktualisieren.
-
7C zeigt eine schematische Darstellung eines beispielhaften Verfahrens zum Interpretieren der Sprachansage 730 abhängig von der Wortabfolgeeinschränkung gemäß einer Ausführungsform der Erfindung. In diesem Beispiel enthält die Wortabfolgeeinschränkung eine Einschränkung 734 für ein Vorhandensein des bestimmten Worts (in Englisch) ”Carts” in der Sprachansage. Die Einschränkung 734 wird eingesetzt, um die Bewertung 732 der gesamten Gruppe der Interpretation 731 zu aktualisieren, um eine aktualisierte Gruppe 735 mit aktualisierten Bewertungen 736 der Interpretationen zu erzeugen.
-
Für diese beispielhafte Ausführungsform kann die allgemeine Neubewertungsfunktion
wie vorstehend erläutert eingesetzt werden, mit einem bestimmten Einschränkungsfaktor f(X, W, R), welcher Sequenzen, welche das Wort ”Carts” enthalten, eine höhere Gewichtung zuweist, wie
f(X, W, R) = f(W) = αICarts∊W + β und
-
Es können auch andere Einschränkungsfaktoren und/oder Indikatorfunktionen eingesetzt werden.
-
Bestimmen der Wortabfolgeeinschränkung für geringe kognitive Spracherkennung
-
Einige Ausführungsformen beruhen auch auf der Erkenntnis, dass das bzw. die Verfahren zum Eingeben von Wortabfolgeeinschränkungen die Aktionen des Benutzers minimieren sollen, welche zum Auswählen der Einschränkungen erforderlich sind, so dass das System einem Benutzer eine geringe kognitive Belastung auferlegt. Die Wortabfolgeeinschränkungen können verschiedene Werte aufweisen, können allerdings auch verschiedene Typen aufweisen. Die Typen der Wortabfolgeeinschränkungen können zum Beispiel das Auswählen oder Ablehnen eines Wortes, das Auswählen der Wortabfolge, das Auswählen eines Zeitschlitzes, eine Verfolgung von richtigen Wörtern in der Sequenz, das Ersetzen von Wörtern oder Reihenfolgen von Wörtern etc. enthalten. Dementsprechend ist es vorteilhaft, eine Schnittstelle bereitzustellen, welche ausgelegt ist, sowohl den Typen als auch den Wert der Einschränkungen mit minimaler Ablenkung der Benutzer von ihrer Hauptaufgabe, wie dem Fahren, auszuwählen.
-
Einige Ausführungsformen der Erfindung beruhen auf der Erkenntnis, dass eine einzelne Geste des Benutzers analysiert werden kann, um sowohl den Typen als auch den Wert der Wortabfolgeeinschränkungen zu bestimmen. Insbesondere kann ein Typ der Geste eingesetzt werden, um einen Typen der Wortabfolgeeinschränkung zu bestimmen, und ein Pfad der Geste in Bezug auf die Schnittstelle, z. B. eine Position des Pfades auf einer Anzeigeeinrichtung, kann verwendet werden, um den Wert der Wortabfolgeeinschränkung zu bestimmen.
-
8 zeigt ein Blockdiagramm eines Verfahrens zum Erkennen einer Sprachansage, welche eine Wortabfolge enthält, gemäß einer Ausführungsform der Erfindung. In der Ausführungsform wird eine Form 817 einer Geste und eine Position 815 der Geste in Bezug auf eine Anzeigeeinrichtung, welche eine Gruppe von Interpretationen der Sprachansage zeigt, bestimmt 810.
-
9A zeigt ein Beispiel einer Form 901 einer Geste, welche von einem Benutzer auf einer Eingabeeinrichtung ausgeführt wird. Die Eingabeeinrichtung kann zum Beispiel den Pfad der Geste als eine Sequenz von Positionskoordinaten 904 innerhalb des Koordinatenraums der Eingabeeinrichtung darstellen.
-
In einer Berührungseinrichtung liegt die Koordinatensequenz innerhalb einer 2D-Ebene der Berührungsoberfläche. In einer 3D-Freihandgesteneinrichtung liegt die Koordinatensequenz innerhalb eines 3D-Bewegungsraums, wie durch die Einrichtung gemessen. Die Form der Geste wird durch die Positionen dieser Koordinaten relativ zueinander gebildet und kann geometrische Muster enthalten, welche durch Transformationen, wie Skalieren und/oder Rotation, minimal beeinflusst werden. In einigen Ausführungsformen wird die Sequenz der Positionskoordinaten geordnet und die Form der Geste enthält Dynamiken zum Bilden der Geste, wie in der Greifgeste oder Heranzoom- bzw. Herauszoomgeste.
-
9B zeigt eine Position 903 der Geste, welche die Form 901 aufweist, auf einer Anzeigeeinrichtung 902. Die Position der Geste kann absolut oder relativ sein. Die absolute Position kann zum Beispiel als eine Position einer geometrischen Mitte der Geste oder eine Position eines Kreises, welcher die Form der Geste umschreibt, bestimmt werden. In alternativen Ausführungsformen kann die Position der Geste in dem Koordinatenraum der Anzeige von U/I-Elementen abgebildet werden, und kann relativ zu den auf der UI der Eingabeeinrichtung angezeigten Elementen bestimmt werden. Die Position 903 kann zum Beispiel relativ zur Gruppe der Interpretationen, welche auf der Anzeigeeinrichtung 902 angezeigt ist, bestimmt werden. In dem Beispiel von 9B ist die Position der Geste als die am nächsten zum Element 905 Liegende bestimmt.
-
In einigen Ausführungsformen enthält die Position der Geste eine Gruppe von Positionen geometrisch signifikanter Punkte der Form der Gesten, wie Ecken der Form entsprechend einer Änderung der Richtung der Geste. Zusätzlich oder alternativ können die signifikanten Punkte einen Punkt enthalten, welcher am nächsten zu einem bestimmten UI-Element liegt, d. h. den Punkt der Geste, welche am nächsten zu einem Wort der Interpretation der Sprachansage liegt.
-
Anschließend wird in der Ausführungsform ein Typ der Wortabfolgeeinschränkung 860 bestimmt 850, auf Grundlage der Form der Geste und einer Zuordnung 830 zwischen einer Gruppe von Formen von Gesten und einer Gruppe von Typen von Wortabfolgeeinschränkung. In einigen Ausführungsformen wird die Zuordnung 830 vorherbestimmt und in einem Speicher gespeichert, wie dem Speicher 101. Zusätzlich oder alternativ kann die Zuordnung 830 während des Betriebes des Spracherkennungssystems bestimmt oder aktualisiert werden.
-
In der Ausführungsform wird auch einen Wert 845 der Wortabfolgeeinschränkung 860 bestimmt 840, auf Grundlage der Position der Geste 815 und der Form der Geste 817 und die Sprachansage unter Verwendung der Wortabfolgeeinschränkung 860 erkannt 820. Eine horizontale Geste kann zum Beispiel dem Typ der Wortabfolgeeinschränkung zum Auswählen einer Wortabfolge zugeordnet sein. Die Position des Pfades dieser Geste wird auf der Eingabeeinrichtung in einer Position in dem Koordinatenraum der Benutzer-Schnittstelle abgebildet, welche verwendet werden kann, um die Wortabfolge zu bestimmen, welche in der Interpretation der Sprachansage vorhanden sind. In ähnlicher Weise kann die vertikale Geste dem Typen zum Auswählen eines Zeitschlitzes der Wörter zugeordnet werden, und die Position des Pfades dieser Geste auf der Eingabeeinrichtung kann in einer entsprechenden Position der Geste in dem Benutzer-Schnittstellenraum abgebildet werden, welche verwendet werden kann, um die Zeit und/oder Reihenfolge der Äußerung der bestimmten Wörter zu bestimmen.
-
In der gleichen Weise können verschiedene Formen der Gesten, wie Wischen, Kreisen, Ziehauswahl und Verfolgung des Wortpfades verschiedenen Typen der Einschränkungen zugeordnet werden und die Position der Geste in dem Raum der UI-Elementeinrichtung kann verwendet werden, um den Wert der Einschränkung zur nachfolgenden Neubewertung der möglichen Interpretationen der Sprachansage zu bestimmen.
-
Sowohl die Form als auch die Position der Geste können als eine einzelne beste Auswahl dargestellt oder als eine probabilistische Liste der Möglichkeiten von Formen und Positionen, welche mit Bewertungen assoziiert sind, dargestellt werden. Zudem können in einigen Ausführungsformen die Form und die Position der Geste auf Grundlage der Wahrscheinlichkeit ihrer gemeinsamen Übereinstimmung aktualisiert 816 werden. Wenn zum Beispiel die Form der Geste so interpretiert werden kann, dass ein Wort zu entfernen oder eine Wortabfolge auszuwählen ist, aber die Position der Geste sich nur auf ein einzelnes Wort bezieht, kann die Wahrscheinlichkeit der Form der Geste entsprechend dem Entfernen eines Wortes erhöht werden.
-
9C zeigt eine beispielhafte Mensch-Maschine-Schnittstelle (HMI), welche für eine Anzeigeeinrichtung 902 gezeigt ist, um die Wortabfolgeeinschränkungen gemäß einer Ausführungsform der Erfindung anzuzeigen und zu spezifizieren. In dieser Ausführungsform werden Wörter mit relativ hohen aktuellen Richtigkeitsbewertungen gemäß der Spracheingabe und die aktuellen Wortabfolgeeinschränkungen in einer mehrdimensionalen Darstellung gezeigt. Für jeden gezeigten Wortkandidaten gibt es ein bestimmtes visuelles Schnittstellenelement 910. Das Schnittstellenelement 910 kann ein Wort, einen Buchstaben, ein Phonem oder eine Wortabfolge darstellen. In diesem Beispiel stellt die horizontale Dimension die Zeit und die vertikale Dimension die Bewertung jedes Elements dar, wobei die Elemente in Richtung des oberen Teils der Darstellung eine höhere Bewertung aufweisen.
-
Elemente, welche oberhalb/unterhalb voneinander angeordnet sind, sind alternative Möglichkeiten für etwas, was während des gleichen Teils der sprachlichen Äußerung gesagt worden sein könnte, und die beste (wahrscheinlichste) Interpretation der Äußerung kann entlang des oberen Teils der Darstellung gelesen werden. 8 zeigt mehrere Arten von Auswahlen, welche erfolgen können, um die Wortabfolgeeinschränkung zu spezifizieren. Eine einzelne Wortauswahl 930 in der Wortabfolge kann dem Benutzer gezeigt werden, z. B. durch Hervorheben des Schnittstellenelements mittels Farbe, Hintergrundschattierung oder anderen visueller Informationen. Eine Wortabfolge-Auswahl 940 wählt eine Wortabfolge aus. In einer Zeitsegment-Auswahl 920 wird ein zeitgebundenes Segment der Äußerung ausgewählt und alle möglichen Wörter abgerufen, welche während dieses Zeitabschnittes gesagt worden sein könnten.
-
Die HMI kann unter Verwendung von verschiedenen Arten von Anzeigeeinrichtungen 902, wie Head-Up-Anzeigen oder tragbaren Anzeigen mit einer Gesteneingabeeinrichtung, oder einen Anzeigebildschirm mit direkter Berührung, wie ein Touch-Screen, realisiert sein. Andere Kombinationen visueller Ausgabe und Berührung, Maus oder Gesteneingabe sind auch möglich. In jedem Fall werden durch die Ausführungsform bestimmte Gestenformen entweder bestimmten Arten von Einschränkungen oder Aktionen zum Auswählen eines Wortes 830, einer Wortabfolge 840 und/oder einem Zeitsegment 820 zugeordnet. Nachdem ein bestimmtes Element ausgewählt wird, werden durch weitere Schnittstellenaktionen dem bzw. den ausgewählten Element/en Wortabfolgeeinschränkungen auferlegt.
-
In einigen Ausführungsformen können einige Gesten in getrennte Gestensegmente zerlegt werden, welche für Form- und Positionsinformationen getrennt analysiert werden können.
-
9D zeigt ein Beispiel eines bestimmten Aktionstyps, welcher es dem Benutzer ermöglicht, eine bestimmte Interpretation der Äußerung zu bevorzugen, und die Wortabfolgeeinschränkung für diese Interpretation bereitzustellen. Die Anzeigeeinrichtung 902 stellt einem Benutzer eine Möglichkeit bereit, eine Kurve durch die Schnittstellenelemente, welche die richtigen Wörter darstellen, zu verfolgen. 9D zeigt Beispiele der zwei verschiedenen Verfolgungen. Die Verfolgung 950 stellt die Interpretation (in Englisch) ”I want to get some rice and beans” dar, und die Verfolgung 960 stellt die Interpretation (in Englisch) ”I went to get the same jeans” dar.
-
Gesten und Berührungsverfolgungen sind gleichermaßen unklar und geräuschintensiv, so dass die Berührungs-/Gestenverfolgung in eine Wahrscheinlichkeit p(Z|V, W) konvertiert werden kann, wobei Z der Pfad der Geste ist, V das Layout der visuellen Elemente auf der Anzeigeeinrichtung ist, und W die Wortabfolge in der Interpretation ist. Diese Formulierung kombiniert die Verfolgung mit dem Sprachmodell und den Akustikbewertungen, um die Richtigkeitsbewertungen zu aktualisieren, so dass die Bewertung für Interpretationen, welche sowohl mit der Verfolgung und dem Sprachmodell übereinstimmen, erhöht wird.
-
Dementsprechend wird in einigen Ausführungsformen ein Einschränkungsfaktor bestimmt, welcher einen Grad der Übereinstimmung mit der Wortabfolgeeinschränkung anzeigt. Der Einschränkungsfaktor kann verwendet werden, um eine Bewertungsfunktion auf Grundlage des Einschränkungsfaktors zu bestimmen, und die Gruppe von Bewertungen mittels der Bewertungsfunktion zu aktualisieren.
-
Zum Beispiel mit der gegebenen Verfolgung 960 gibt es verschiedene Möglichkeiten für die beste Auswahl in dem Zeitsegment, welches die Wörter (in Englisch) {nice, my, slice, ...} enthält. Die Verfolgung erscheint als am nächsten zu ”slice”, dies würde allerdings ergeben (in Englisch) ”I went to get the same slice jeans”, was für das Sprachmodell eine schlechte Übereinstimmung ist. In diesem Fall wären die am höchsten bewerteten Interpretationen nach Kombination der Verfolgungseinschränkung und der Sprachmodelleinschränkungen ”I went to get the jeans” und ”I went to get the nice jeans”.
-
10 zeigt ein Beispiel der Zuordnung 830 zwischen einer Gruppe von Typen der Gesten 1020 und eine Gruppe von Typen von Wortabfolgeeinschränkung 1010. Im Allgemeinen stellt die Position der Berührungs-/Gestenaktion Kontext darüber bereit, was ausgewählt werden soll oder worauf die Einschränkung aufzuerlegen ist. Das Durchführen zum Beispiel einer Geste ”X” über einem Wort in der Darstellung V kann zum Beispiel einer Ablehnung eines Wortes zugeordnet werden (Herabsetzen von dessen Bewertung auf einen sehr niedrigen Wert).
-
In einigen Ausführungsformen werden durch die Typen der Wortabfolgeeinschränkung die Typen des Einschränkungsfaktors bestimmt. In diesen Ausführungsformen wird der Einschränkungsfaktor auf Grundlage des Typs der Wortabfolgeeinschränkung bestimmt. In einer Ausführungsform enthält die Zuordnung 830 zum Beispiel die Geste einer horizontalen Auswahl, und gibt entsprechend dem Einschränkungsfaktor eine Zahl aus, welche einen Grad der Übereinstimmung mit einer Wortabfolge anzeigt. In einer weiteren Ausführungsform enthält die Zuordnung 830 die Geste einer Verfolgung einer richtigen Wortabfolge, und gibt entsprechend dem Einschränkungsfaktor eine Zahl aus, welche einen Grad der Übereinstimmung mit der Verfolgung anzeigt.
-
In einer Ausführungsform ist f(X, W, R) = fZ,V(W), wobei fZ,V(W) ein Einschränkungsfaktor ist, welcher eine Zahl ausgibt, welche einen Grad der Übereinstimmung einer Wortabfolge mit der Verfolgung und der Visualisierung ausgibt. Zum Beispiel kann fZ,V(W) proportional zu p(Z|V, W) sein.
-
Wenn eine Geste G gegeben ist, welche einer Einschränkung zugeordnet ist, ist f(X, W, R) = fG,V(W), wobei fG,V(W) ein Einschränkungsfaktor ist, wird eine Zahl ausgibt, welche einen Grad der Übereinstimmung einer Wortabfolge mit der Geste und Visualisierung anzeigt. Zum Beispiel kann fG,V(W) proportional zu p(G|V, W) sein.
-
In dem Beispiel der Ablehnungsgeste sei w
rej ein Wort, welches der Benutzer abgelehnt hat. Dann
-
Zusätzlich oder alternativ enthält die Zuordnung in einigen Ausführungsformen eine oder eine Kombination einer Auswahleinschränkung in Entsprechung mit einer Greifgeste, eine Abfolgeeinschränkung in Entsprechung mit einer horizontalen Geste, eine Synonymeinschränkung in Entsprechung mit einer Kreisgeste, eine Verfolgungseinschränkung in Entsprechung mit einer Spur einer Pfadverfolgungsgeste, eine Überschneidungseinschränkung in Entsprechung mit einer Hutgeste, und eine Neuanordnungseinschränkung in Entsprechung mit einer Ziehverfolgungsgeste.
-
Die vorstehend erläuterten Ausführungsformen können in mehreren beliebigen Weisen realisiert sein. Die Ausführungsformen können zum Beispiel unter Verwendung von einer Hardware, Software oder einer Kombination davon realisiert sein. In dem Falle eines Implementierens in einer Software, kann der Software-Code auf jedem beliebigen Prozessor oder Sammlung von Prozessoren, entweder bereitgestellt in einem einzelnen Computer oder verteilt auf mehrere Computer, ausgeführt werden. Solche Prozessoren können als integrierte Schaltungen implementiert sein, mit einem oder mehreren Prozessoren in einer integrierten Schaltungskomponente. Ein Prozessor kann allerdings auch unter Verwendung einer Schaltungsanordnung in jedem beliebigen Format implementiert sein.
-
Es soll ferner erkannt werden, dass ein Computer in jeder beliebigen Anzahl von Formen, wie einen Rack-Computer, Desktop-Computer, Laptop-Computer, Minicomputer oder Tablet-Computer, ausgeführt sein kann. Ein Computer kann auch ein oder mehrere Eingabe- und Ausgabesysteme enthalten. Diese Systeme können unter anderem verwendet werden, um eine Benutzerschnittstelle darzustellen. Solche Computer können durch ein oder mehrere Netzwerke in jeder geeigneten Form miteinander verbunden sein, einschließlich ein Local Area Network oder ein Wide Area Network, wie ein Enterprise Network oder das Internet. Solche Netzwerke können auf jeder beliebigen Technologie basieren und gemäß jedem geeigneten Protokoll betrieben werden, und können drahtlose Netzwerke, drahtgebundene Netzwerke oder faseroptische Netzwerke umfassen.
-
Außerdem können die verschiedenen hier beschriebenen Verfahren oder Prozesse als Software kodiert sein, welche auf einem oder mehreren Prozessoren ausführbar ist, welche eines von einer Vielzahl von Betriebssystemen oder Plattformen verwenden. Zusätzlich kann eine solche Software unter Verwendung einer Vielzahl von geeigneten Programmiersprachen und/oder Programmier- oder Scripting-Tools geschrieben sein, und kann auch als ausführbare Maschinensprache oder als Zwischencode kompiliert sein, welche auf einem Framework oder einer virtuellen Maschine ausgeführt werden.
-
Die Begriffe ”Programm” oder ”Software” werden in der vorliegenden Erfindung in einem generischem Sinne verwendet, so dass sich diese auf einem beliebigen Typ von Computercode oder eine Gruppe von computerausführbaren Instruktionen beziehen, welche verwendet werden können, um einen Computer oder anderen Prozessor zu programmieren, um die verschiedenen Aspekte der vorliegenden Erfindung, wie vorstehend erläutert, zu implementieren.
-
Computerausführbare Instruktionen können in vielen Formen vorliegen, wie Programmmodule, welche durch einen oder mehrere Computer oder andere Systeme ausgeführt werden. Im Allgemeinen enthalten Programmmodule Routinen, Programme, Objekte, Komponenten und Datenstrukturen, welche bestimmte Aufgaben durchführen oder bestimmte abstrakte Datentypen implementieren. Typischerweise können die Funktionen der Programmmodule kombiniert oder nach Bedarf in verschiedenen Ausführungsformen verteilt sein.
-
Die Ausführungsformen der Erfindung können auch als ein Verfahren realisiert sein, von welchem ein Beispiel bereitgestellt ist. Die als Teil des Verfahrens durchgeführten Aktionen können in jeder beliebigen Weise geordnet sein. Dementsprechend können Ausführungsformen konstruiert sein, in welchen Aktionen in einer anderen als der dargestellten Reihenfolge durchgeführt werden, welche das gleichzeitige Durchführen einiger Handlungen enthalten können, auch wenn diese in veranschaulichenden Ausführungsformen als aufeinanderfolgende Aktionen gezeigt sind.
-
Die Verwendung der Ordnungszahlen ”erster”, ”zweiter” in den Ansprüchen, um ein Anspruchselement zu modifizieren, bedeutet an sich keine Priorisierung, Rangordnung oder Reihenfolge eines Anspruchselements gegenüber einem anderen Anspruchselement oder der Zeitfolge, in welcher Aktionen eines Verfahrens durchgeführt werden, sondern wird lediglich als Kennzeichnung eingesetzt, um ein Anspruchselement, welches eine bestimmte Bezeichnung hat, von einem anderen Element, welches die gleichen Bezeichnung hat (mit Ausnahme der Verwendung der Ordnungszahl) zu unterscheiden, so dass Anspruchselemente voneinander unterschieden werden.