-
Querverweis auf verwandte Anmeldungen
-
Diese Anmeldung beansprucht die Priorität der U. S. Provisional-Patent-Application No. 61/845,798, die am 12. Juli 2013 eingereicht wurde, deren Inhalte durch Bezugnahme hierin aufgenommen sind.
-
Technisches Gebiet
-
Das technische Gebiet bezieht sich im Allgemeinen auf Sprachsysteme und insbesondere bezieht es sich auf Verfahren und Systeme zum Auswählen zwischen verfügbaren Spracherkennungsergebnissen.
-
Hintergrund
-
Fahrzeugsysteme für Sprachdialoge (oder ”Sprachsysteme”) führen unter anderem eine Spracherkennung durch, die auf einer Sprache basiert, welche durch Besitzer eines Fahrzeugs geäußert werden. Die Sprachäußerungsweisen schließen typischerweise Kommandos ein, die mit einem oder mehreren Merkmalen des Fahrzeugs sowie andere(n) Systeme(n), die durch das Fahrzeug zugänglich sind, kommunizieren oder diese steuern. Ein Sprachsystem erzeugt Sprachbefehle in Reaktion auf die Sprachäußerung, und in einigen Fällen werden Sprachbefehle in Reaktion auf die Spracherkennung erzeugt, die weitere Informationen benötigt, um die Spracherkennung durchzuführen.
-
Zunehmend kann eine Spracherkennungsfunktionalität durch multiple Geräte innerhalb der Umgebung des Nutzers sowie auch extern verfügbare Server zur Verfügung gestellt werden. Im Kontext eines Fahrzeugsystems für Sprachdialoge ist es zum Beispiel nicht ungewöhnlich, dass Spracherkennungsergebnisse simultan von dem mobilen Gerät des Nutzers (über eine oder mehrere Applikationen, die auf dem mobilen Gerät vorhanden sind), von dem Sprachsystem an Bord des Fahrzeugs und von externen Servern Dritter (welche über ein Netzwerk mit dem an Bord befindlichen Kommunikationsnetzwerk gekoppelt sind) verfügbar sind. Weiterhin kann die Zeit, die notwendig ist, damit die Systeme Spracherkennungsergebnisse erzeugen, sowie der Konfidenzwert bzw. Vertrauenslevel, der mit derartigen Ergebnissen assoziiert ist, stark variieren.
-
Demgemäß ist es wünschenswert, verbesserte Verfahren und Systeme für das Auswählen oder ”Arbitrieren” von Spracherkennungsergebnissen in einem Sprachsystem bereitzustellen. Überdies werden andere wünschenswerte Merkmale und Kennzeichen der vorliegenden Erfindung durch die nachfolgende detaillierte Beschreibung und die anhängenden Ansprüche in Verbindung mit den begleitenden Zeichnungen und dem vorhergehenden technischen Gebiet und dem Hintergrund verständlich.
-
Beschreibung der Zeichnungen
-
Die beispielhaften Ausführungsformen werden hiernach in Zusammenhang mit den nachfolgenden Zeichnungsfiguren beschrieben, wobei gleiche Nummern gleiche Elemente bezeichnen, und wobei:
-
1 ein funktionelles Blockdiagramm eines Fahrzeugs ist, das ein Sprachsystem gemäß unterschiedlicher beispielhafter Ausführungsformen einschließt;
-
2 ein Flussdiagramm ist, das ein Verfahren gemäß einer Ausführungsform zeigt; und
-
3 ein funktionales Blockdiagramm ist, das ein Spracherkennungs-Arbitrierungssystem gemäß beispielhafter Ausführungsformen zeigt.
-
Kurze Zusammenfassung
-
Ein Verfahren zum Arbitrieren von Sprachdialogergebnissen gemäß einer Ausführungsform umfasst ein Empfangen einer Sprachäußerung von einem Nutzer innerhalb einer Umgebung; Empfangen erster Erkennungsergebnisse und eines ersten Konfidenzwertes bzw. Vertrauenslevels, die mit der Sprachäußerung assoziiert sind, von einer ersten Quelle; Empfangen zweiter Erkennungsergebnisse und eines zweiten Vertrauenslevels, die mit der Sprachäußerung assoziiert sind, von einer zweiten Quelle; Empfangen einer Mensch-Maschine-Schnittstellen- bzw. HMI-Information (HMI, human-machine-interface), die mit dem Nutzer assoziiert ist; Auswählen zwischen den ersten Erkennungsergebnissen und den zweiten Erkennungsergebnissen basierend auf wenigstens einem von dem ersten Vertrauenslevel, dem zweiten Vertrauenslevel und der HMI-Information.
-
Ein System für ein Arbitrieren von Sprachdialogergebnissen in einem Fahrzeug gemäß einer Ausführungsform umfasst ein semantisches Interpretationsmodul, ein Shortcut- bzw. Verkürzungsmodul und ein Ergebnisauswahlmodul. Das semantische Interpretationsmodul ist konfiguriert, um eine Sprachäußerung von einem Nutzer innerhalb der Umgebung zu empfangen, um erste Erkennungsergebnisse und einen ersten Konfidenzwert bzw. Vertrauenslevel, der mit der Sprachäußerung assoziiert ist, von einer ersten Quelle zu empfangen und um zweite Erkennungsergebnisse und einen zweiten Vertrauenslevel, der mit der Sprachäußerung assoziiert ist, von einer zweiten Quelle zu empfangen. Das Verkürzungsmodul ist konfiguriert, um die ersten Erkennungsergebnisse auszuwählen, wenn der erste Vertrauenslevel über einem Schwellenwert liegt. Das Ergebnisauswahlmodul ist konfiguriert, um die ersten Erkennungsergebnisse auszuwählen, wenn der erste Vertrauenslevel größer ist als der zweite Vertrauenslevel und der erste Vertrauenslevel nicht oberhalb des Schwellenwerts liegt.
-
Detaillierte Beschreibung
-
Die nachfolgende detaillierte Beschreibung ist in ihrer Art nur beispielhaft und es ist nicht beabsichtigt, die Applikation oder den Gebrauch zu limitieren. Ferner besteht keine Absicht, durch irgendeine ausgedrückte oder verwendete Theorie, die in dem vorhergehenden technischen Gebiet, dem Hintergrund, der kurzen Zusammenfassung oder der nachfolgenden detaillierten Beschreibung präsentiert wird, gebunden zu sein. Der hierin verwendete Ausdruck ”Modul” bezieht sich auf eine anwendungsspezifische integrierte Schaltung (ASIC, application specific integrated circuit), einen elektronischen Schaltkreis, einen Prozessor (anteilig, speziell zur Verfügung gestellt, oder als Gruppe) und einen Speicher, der eine oder mehrere Software- oder Firmware-Programme durchführt, eine kombinierte logische Schaltung und/oder andere geeignete Komponenten, welche die beschriebene Funktionalität bereitstellen.
-
Nun auf 1 Bezug nehmend, wird gemäß den beispielhaften Ausführungsformen des hierin beschriebenen Gegenstandes ein Sprachdialogsystem (oder einfach ”Sprachsystem”) 10 innerhalb eines Fahrzeugs 12 bereitgestellt. Im Allgemeinen stellt ein Sprachsystem 10 eine Spracherkennung, ein Dialogmanagement und eine Spracherzeugung für ein oder mehrere Fahrzeugsysteme durch ein Mensch-Maschine-Schnittstellenmodul 14 (HMI, human machine interface) bereit, das konfiguriert ist, um durch einen oder mehrere Nutzer 40 (z. B. einen Fahrer, Beifahrer usw.) betrieben zu werden (oder in anderer Weise mit diesem in Wechselwirkung zu treten). Derartige Fahrzeugsysteme können zum Beispiel ein Telefonsystem 16, ein Navigationssystem 18, ein Mediasystem 20, ein Telematiksystem 22, ein Netzwerksystem 24 und irgendwelche anderen Fahrzeugsysteme einschließen, die eine sprachabhängige Applikation umfassen. In einigen Ausführungsformen sind ein oder mehrere der Fahrzeugsysteme kommunikativ über ein Netzwerk gekoppelt (z. B. ein proprietäres Netzwerk, ein 4G Netzwerk oder dergleichen), die eine Datenkommunikation mit einem oder mehreren Backendservern 26 bereitstellen.
-
Ein oder mehrere mobile Geräte 50 könnten auch innerhalb des Fahrzeugs 12 vorhanden sein, einschließlich unterschiedlicher Smartphones, Tabletcomputern, Ausstattungstelefonen (engl. feature phones) usw. Ein mobiles Gerät 50 kann auch kommunikativ mit der HMI 14 über eine geeignete drahtlose Verbindung gekoppelt sein (z. B. Bluetooth oder WiFi), so dass eine oder mehrere Applikationen, die auf dem mobilen Gerät 50 resident sind, für den Nutzer 40 über das HMI 14 zugänglich sind. Somit kann typischerweise ein Nutzer 40 einen Zugriff auf Applikationen haben, die auf drei unterschiedlichen Plattformen aktiv sind: Applikationen, die innerhalb des Fahrzeugsystems selbst ausgeführt werden, Applikationen, die auf einem mobilen Gerät 50 im Einsatz sind, und Applikationen, die auf einem Abschlussserver 26 residieren bzw. installiert sind. Weiterhin können ein oder mehrere dieser Applikationen gemäß ihrer eigenen jeweiligen Sprachdialogsysteme arbeiten, und somit kann eine Vielzahl von Geräten in der Lage sein, in unterschiedlichem Ausmaß auf die Anfrage, die von einem Nutzer 40 gesprochen wird, zu reagieren.
-
Das Sprachsystem 10 kommuniziert mit den Fahrzeugsystemen 14, 16, 18, 20, 22, 24 und 26 über einen Kommunikations-Bus und/oder über ein anderes Datenkommunikationsnetzwerk 29 (z. B. drahtgebunden, nahbereichsdrahtlos oder fernbereichsdrahtlos). Der Kommunikations-Bus kann zum Beispiel ein CAN-Bus (CAN, controller area network), ein LIN-Bus (LIN, local interconnect network) oder dergleichen sein. Es ist sinnvoll, dass das Sprachsystem 10 in Verbindung sowohl mit fahrzeugbasierenden Umgebungen als auch mit nicht-fahrzeugbasierenden Umgebungen verwendet wird, welche eine oder mehrere sprachabhängige Applikationen aufweisen, und die hier vorgesehenen fahrzeugbasierenden Beispiele werden allgemeingültig dargelegt.
-
Wie dargestellt, umfasst das Sprachsystem 10 ein Sprachverständnismodul 32, ein Dialogmanagermodul 34 und ein Spracherzeugungsmodul 35. Diese funktionalen Module können als separate Systeme oder als ein kombiniertes, integriertes System ausgeführt sein. Im Allgemeinen empfängt das HMI-Modul 14 ein akustisches Signal (oder eine ”Sprachäußerung”) 41 von einem Nutzer 40, welche dem Sprachverständnismodul 32 zur Verfügung gestellt wird.
-
Das Sprachverständnismodul 32 umfasst jede Kombination der Hardware und/oder Software, die konfiguriert ist, um die Sprachäußerung vom HMI-Modul 14 (empfangen über ein oder mehrere Mikrofone 52) zu verarbeiten, und zwar unter Verwenden geeigneter Spracherkennungsverfahren, welche zum Beispiel automatische Spracherkennung und semantische Decodierung (oder Verständnis der gesprochen Sprache (SLU, spoken language understanding)) aufweisen. Unter Verwenden derartiger Techniken erzeugt das Sprachverständnismodul 32 eine Ergebnisliste (oder Listen) 33 möglicher Ergebnisse von der Sprachäußerung. In einer Ausführungsform umfasst die Ergebnisliste 33 einen oder mehrere Satzhypothesen, die eine Wahrscheinlichkeitsverteilung über den Satz der Äußerungen repräsentiert, welche durch den Nutzer 40 gesprochen sein könnten (nämlich die Äußerung 41). Die Liste 33 könnte zum Beispiel die Form einer N-Bestenliste annehmen. In unterschiedlichen Ausführungsformen erzeugt das Sprachverständnismodul 32 eine Liste der Ergebnisse (”Spracherkennungsergebnisse” oder einfach ”Ergebnisse”) 33 unter Verwenden vordefinierter Möglichkeiten, die in einem Datenspeicher gespeichert sind. Zum Beispiel könnten die vordefinierten Möglichkeiten Namen oder Nummern sein, die in einem Telefonbuch gespeichert sind, Namen oder Adressen sein, die in einem Adressbuch gespeichert sind, Namen von Liedern, Alben oder Künstlern sein, die in einem Musikverzeichnis gespeichert sind, usw. In einer Ausführungsform entwickelt das Sprachverständnismodul 32 eine Front-End-Merkmalsextraktion, auf die ein HMM-Modell (Hiden Markov Model) und ein Punktezählmechanismus folgt. Wie weiter unten im Detail beschrieben, kann das Sprachverständnismodul 32 zwischen einer Vielzahl von Spracherkennungsergebnissen arbitrieren, die von einer Vielzahl von Geräten und/oder Systemen empfangen werden, um die endgültige Ergebnisliste 33 zu erzeugen,
-
Das Dialogmanagermodul 34 schließt jede Kombination von Hardware und/oder Software ein, die konfiguriert ist, um eine Interaktionssequenz und eine Auswahl der Sprachaufforderungen 42, die zu dem Nutzer zu sprechen sind, zu managen, basierend auf einer Liste 33. Wenn eine Liste mehr als ein mögliches Ergebnis enthält, verwendet das Dialogmanagermodul 34 Eindeutigkeitsstrategien, um einen Dialog von Aufforderungen mit dem Nutzer zu managen, so dass ein erkanntes Ergebnis bestimmt werden kann. Demgemäß ist in einer beispielhaften Ausführungsform das Dialogmanagermodul 34 in der Lage, Dialogkontexte zu managen, wie es weiter unten beschrieben wird.
-
Das Spracherzeugungsmodul 35 umfasst jede Kombination von Hardware und/oder Software, die konfiguriert ist, um gesprochene Aufforderungen bzw. Sprachaufforderungen 42 an den Nutzer 40 zu erzeugen, und zwar basierend auf dem Dialog, der durch das Dialogmanagermodul 34 bestimmt ist. In dieser Beziehung wird das Spracherzeugungsmodul 35 im Allgemeinen eine natürliche Spracherzeugung (NLG, natural language generation) und eine Sprachsynthese oder eine Text-zu-Sprache (TTS, text-to-speech) bereitstellen.
-
Die Ergebnisliste 33 schließt ein oder mehrere Elemente ein, die ein mögliches Ergebnis repräsentieren. In unterschiedlichen Ausführungsformen umfasst jedes Element der Liste 33 einen oder mehrere ”Ausschnitte” bzw. ”Slots”, die jeweils mit einem linguistischen, von der Applikation abhängigen Slot- bzw. Ausschnitttyp assoziiert sind. Wenn zum Beispiel die Applikation das Telefonieren mit Telefonbuch-Kontakten unterstützt (z. B. ”Ruf John Doe an”), dann kann jedes Element Ausschnitte mit Ausschnitttypen eines Vornamens, eines Mittelnamens und/oder eines Familiennamens einschließen. Wenn in einem anderen Beispiel die Applikation die Navigation unterstützt (z. B. ”Fahre zu 1111 Sunshine Boulevard”), dann kann jedes Element Ausschnitte mit Ausschnitttypen einer Hausnummer und eines Straßennamens usw. einschließen. In unterschiedlichen Ausführungsformen können die Ausschnitte und die Ausschnitttypen in einem Datenspeicher gespeichert sein und von jedem der dargestellten Systeme kann auf sie zugegriffen werden. Jedes Element oder jeder Ausschnitt der Liste 33 ist mit eine Vertrauenslevel bzw. Konfidenzwert assoziiert.
-
Zusätzlich zu einem gesprochenen Dialog könnten die Nutzer 40 auch mit der HMI 14 über unterschiedliche Tasten, Schalter, Touchscreen-Nutzer-Schnittstellenelemente, Gesten (z. B. Handgesten, die durch eine oder mehrere Kameras, die innerhalb des Fahrzeugs 12 bereitgestellt sind) und dergleichen zusammenwirken. In einer Ausführungsform wird eine Taste 54 (z. B. eine ”Drücken-zum-Sprechen”-Taste oder einfach ”Sprechen-Taste”) bereitgestellt, die leicht von einem oder mehreren Nutzern 40 erreichbar ist. Die Taste 54 kann zum Beispiel in einem Lenkrad 56 eingebettet sein.
-
Bezugnehmend nun auf 3 wird ein Arbitrierungssystem 300 gemäß einer Ausführungsform nun in Verbindung mit einem beispielhaften Arbitrierungsverfahren 200 beschrieben, das in 2 gezeigt wird. In einigen Ausführungsformen wird ein System 300 als Teil eines Sprachverständnismoduls 32, das in 1 gezeigt wird, verwendet. In anderen Ausführungsformen befindet sich das System 300 in einem oder mehreren anderen Modulen, die in 1 gezeigt werden.
-
In der gezeigten Ausführungsform umfasst das System 300 ein Ereignis-Zeitgebermodul 308, ein semantisches Interpretationsmodul 310, ein Shortcut- bzw. Verkürzungsmodul 312, ein Ergebnisauswahlmodul 314, eine laufende bzw. aktuelle Mensch-Maschine-Schnittstelle-Zustandsinformation (HMI state information) 306 und ein Ausgabemodul 318. Das Ereignis-Zeitgebermodul 308 ist konfiguriert, um eine Vielzahl von Spracherkennungsergebnissen (oder einfach ”Ergebnisse”) 301–305 zu akzeptieren (Schritt 202, 2). Die Spracherkennungsergebnisse 301–305 können von vielen Quellen abgeleitet werden und/oder könnten mit Ergebnissen korrespondieren, die durch eine Vielzahl von Spracherkennungsverfahren erzeugt werden. Zum Beispiel könnten die Ergebnisse 301 Ergebnissen entsprechen, die durch eine Applikation eines statistischen Sprachmodells (SLM, statistical language model) erzeugt werden, während die Ergebnisse 302 mit Ergebnissen korrespondieren könnten, die durch eine Applikation einer finiten Statusgrammatik (FSG, finite state grammar) zu der gleichen Sprachäußerung erzeugt wurden. In ähnlicher Weise können die Ergebnisse 303 durch ein On-board- (oder ”eingebettetes”) Spracherkennungssystem erzeugt sein, wie ein Navigationssystem, während die Ergebnisse 305 durch einen externen Server (z. B. Server 26 in 1) erzeugt sein könnten.
-
Das Ereignis-Zeitgebermodul 308 ist konfiguriert, um die unterschiedlichen Ergebnisse 301–305 zu empfangen und die Zeit zu bestimmen, zu der jedes der Ergebnisse empfangen wurde (Schritt 204, 2). Das bedeutet zum Beispiel, dass die Ergebnisse 301 bei 200 Millisekunden (ms) nach einer bestimmten Zeit (z. B. der Zeit, in der eine Äußerung zur Interpretation übermittelt wurde) empfangen sein könnten, während die Ergebnisse 305 (von einem externen Server) 3,0 Sekunden nach der spezifizierten Zeit empfangen werden könnten.
-
Das semantische Interpretationsmodul 310 ist konfiguriert, um die Ergebnisse 301–305 zusammen mit den Zeitinformationen von dem Ereignis-Zeitgebermodul 308 zu empfangen, und ist konfiguriert, um geeignete Verfahren anzuwenden, um den Dialogkontext und/oder die unterschiedlichen ”Ausschnitte” bzw. ”Slots”, die auf die empfangenen Ergebnisse anwendbar sind, zu bestimmen, wie es oben (Schritt 206, 2) beschrieben ist. Das bedeutet, dass das semantische Interpretationsmodul 310 konfiguriert ist, um die semantische Bedeutung der empfangenen Ergebnisse zu bestimmen und auch den Vertrauenslevel für jede Interpretation festzulegen. Das semantische Interpretationsmodul 310 kann auch vorher interpretierte Ergebnisse von einer oder mehreren Quellen empfangen, z. B. Ergebnisse 305 von einem externen Server.
-
Das Shortcut- bzw. Verkürzungsmodul 312 ist konfiguriert, um die interpretierten Ergebnisse von den unterschiedlichen Quellen zu empfangen und zu bestimmen (Schritt 208), ob eines der interpretierten Ergebnisse von ausreichend hohem Vertrauen ist (nämlich über einem vorbestimmten Schwellenwert). Wenn das so ist, wird das interpretierte Ergebnis direkt zum Ausgangsmodul 318 übertragen (Schritt 210), dadurch wird jede Verzögerung, die durch nachfolgende Prozessschritte eingeführt werden könnten, vermieden. Der vorbestimmte Schwellenwert kann variieren, was für den Fachmann der Technik verständlich ist, in Abhängigkeit von der Natur der Ergebnisse 301–302 sowie dem semantischen Interpretationsmodul 310.
-
Wenn beim Schritt 208 bestimmt wird, dass keines der interpretierten Ergebnisse einen Vertrauenslevel über dem vorbestimmten Schwellenwert aufweist, dann wählt das Ergebnisauswahlmodul 314 zwischen den interpretierten Ergebnissen aus, und zwar basierend auf dem Vertrauenslevel, der mit jedem assoziiert ist, zusammen mit HMI-Zustandsinformation 306 (Schritt 211, 2). In diesem Zusammenhang umfasst die HMI-Zustandsinformation jede Information, die sich auf den gegenwärtigen Bearbeitungsmodus des HMI 14 der 1 bezieht. Eine derartige Information könnte zum Beispiel die gegenwärtige Bildschirmdarstellung auf einem Touchscreen, den Status von irgendwelchen Tasten (z. B. Sprachtasten) innerhalb der Umgebung, ob der Nutzer mit bestimmten Internethosts (z. B. Google Maps, Pandora usw.) zusammenwirkt, ob der Nutzer mit Medien zusammenwirkt, den gegenwärtigen Dialogstatus, den Inhalt dessen, was dem Nutzer angezeigt wird, Informationen, die den Zustand des Fahrzeugs betreffen (z. B. stationär oder bewegend) oder dergleichen umfassen. Die Verwendung der HMI-Statusinformation 306 ermöglicht dem Ergebnisauswahlmodus 314 eine intelligentere Auswahl zu treffen. Wenn zum Beispiel der Nutzer mit Google Maps auf einem externen Server zusammenwirkt, dann würde das Ergebnisauswahlmodul 314 typischerweise auf Ergebnisse 305, die empfangen werden sollen, warten, selbst wenn derartige Ergebnisse später empfangen werden als die Ergebnisse von anderen Quellen (da klar ist, dass der Nutzer wünscht, Ergebnisse spezifischerweise von diesem Dienst bzw. Service zu nutzen).
-
Das Ausgabemodul 318 ist konfiguriert, um eine Ausgabe der ausgewählten interpretierten Ergebnisse 330 auszugeben (nämlich entweder die verkürzten Ergebnisse von dem Verkürzungsmodul 312 oder die ausgewählten Ergebnisse von dem Ergebnisauswahlmodul 314). In dieser Beziehung können Ergebnisse 330 mit Ergebnissen der Liste 33, die in 1 gezeigt ist, korrespondieren. Das Ausgabemodul 318 ist weiterhin konfiguriert, um das Ereignis-Zeitgebermodul 308 zurückzusetzen (nämlich den Wartezeitgeber zurück auf Null zu setzen).
-
Gemäß einer Ausführungsform werden historische Daten in Bezug auf den Betrieb des Systems 300 verwendet, um unterschiedliche Komponenten des Systems 300 zu trainieren – zum Beispiel Aktualisieren der Modelle, die für das semantische Interpretationsmodul 310 und für das Ergebnisauswahlmodul 314 verwendet werden.
-
Während wenigstens eine beispielhafte Ausführungsform in der vorhergehenden detaillierten Beschreibung präsentiert wurde, sollte es erwähnt sein, dass eine beträchtliche Anzahl von Variationen existiert. Es sollte auch erwähnt sein, dass die beispielhafte Ausführungsform oder die beispielhaften Ausführungsformen nur Beispiele sind, und es nicht beabsichtigt ist, den Umfang, die Anwendbarkeit oder die Konfiguration der Offenbarung in irgendeiner Weise zu begrenzen. Vielmehr wird die vorhergehende detaillierte Beschreibung dem Fachmann der Technik einen geeigneten Plan zum Ausführen der beispielhaften Ausführungsform oder den beispielhaften Ausführungsformen bereitstellen. Es sollte klar sein, dass unterschiedliche Änderungen in der Funktion und der Anordnung der Elemente durchgeführt werden können, ohne von dem Umfang der Offenbarung, wie er in den anhängenden Ansprüchen und den gesetzlichen Äquivalenten davon festgelegt ist, abzuweichen.
-
Beispiele:
-
Beispiel 1. Ein Verfahren zum Arbitrieren von Sprachdialogergebnissen, wobei das Verfahren umfasst:
Empfangen einer Sprachäußerung von einem Nutzer innerhalb der Umgebung;
Empfangen erster Erkennungsergebnisse und eines ersten Vertrauenslevels bzw. Konfidenzwertes, die mit der Sprachäußerung assoziiert sind, von einer ersten Quelle;
Empfangen zweiter Erkennungsergebnisse und eines zweiten Vertrauenslevels, die mit der Sprachäußerung assoziiert sind, von einer zweiten Quelle;
Empfangen einer Mensch-Maschine-Schnittstellen- bzw. HMI-Information (HMI, human-machine-interface), die mit dem Nutzer assoziiert ist;
Auswählen zwischen den ersten Erkennungsergebnissen und den zweiten Erkennungsergebnissen basierend auf wenigstens einem von dem ersten Vertrauenslevel, dem zweiten Vertrauenslevel und der HMI-Information.
-
Beispiel 2. Das Verfahren von Beispiel 1, wobei das Auswählen zwischen den ersten Erkennungsergebnissen und den zweiten Erkennungsergebnissen ein Auswählen der ersten Erkennungsergebnisse einschließt, wenn der erste Vertrauenslevel oberhalb eines Schwellenwerts liegt.
-
Beispiel 3. Das Verfahren von einem der Beispiele 1–2, weiterhin umfassend ein Auswählen der ersten Erkennungsergebnisse, wenn der erste Vertrauenslevel nicht über dem Schwellenwert liegt und der erste Vertrauenslevel größer ist als der zweite Vertrauenslevel.
-
Beispiel 4. Das Verfahren von einem der Beispiele 1–3, wobei wenigstens ein Teil der ersten Erkennungsergebnisse vorbestimmte Erkennungsergebnisse sind.
-
Beispiel 5. Das Verfahren von einem der Beispiele 1–4, wobei jedes der ersten Erkennungsergebnisse einen oder mehrere linguistische Slots bzw. Ausschnitte einschließt, die mit entsprechenden Ausschnitttypen assoziiert sind.
-
Beispiel 6. Das Verfahren von Beispiel 5, wobei die linguistischen Ausschnitttypen einen Eigennamen und/oder eine Adresse einschließen.
-
Beispiel 7. Das Verfahren von einem der Beispiele 1–6, wobei das Auswählen zwischen den ersten Erkennungsergebnissen und den zweiten Erkennungsergebnissen ein Auswählen einschließt, das auf einem Hidden Markov Modell basiert.
-
Beispiel 8. Ein System für ein Arbitrieren von Sprachdialogergebnissen in einem Fahrzeug, wobei das System umfasst:
ein semantisches Interpretationsmodul, das konfiguriert ist, um eine Sprachäußerung von einem Nutzer innerhalb der Umgebung zu empfangen, um erste Erkennungsergebnisse und einen ersten Vertrauenslevel, der mit der Sprachäußerung assoziiert ist, von einer ersten Quelle zu empfangen und um zweite Erkennungsergebnisse und einen zweiten Vertrauenslevel, der mit der Sprachäußerung assoziiert ist, von einer zweiten Quelle zu empfangen;
ein Shortcut- bzw. Verkürzungsmodul, das konfiguriert ist, um die ersten Erkennungsergebnisse auszuwählen, wenn der erste Vertrauenslevel über einem Schwellenwert liegt; und
ein Ergebnisauswahlmodul, das konfiguriert ist, um die ersten Erkennungsergebnisse auszuwählen, wenn der erste Vertrauenslevel größer ist als der zweite Vertrauenslevel und der erste Vertrauenslevel nicht oberhalb des Schwellenwerts liegt.
-
Beispiel 9. Das System von Beispiel 8, wobei das Ergebnisauswahlmodul konfiguriert ist, um eine HMI-Zustandsinformation zu empfangen, und weiter konfiguriert ist, um die ersten Erkennungsergebnisse teilweise basierend auf der HMI-Zustandsinformation auszuwählen.
-
Beispiel 10. Das System von einem der Beispiele 1–9, wobei wenigstens ein Teil der ersten Erkennungsergebnisse vorbestimmte Erkennungsergebnisse sind.
-
Beispiel 11. Das System von einem der Beispiele 8–10, wobei jedes der ersten Erkennungsergebnisse einen oder mehrere linguistische Slots bzw. Ausschnitte einschließt, die mit entsprechenden Ausschnitttypen korrespondieren.
-
Beispiel 12. Das System von Beispiel 11, wobei die linguistischen Ausschnitttypen einen Eigennamen und/oder eine Adresse einschließen.
-
Beispiel 13. Das System von einem der Beispiele 8–12, wobei das Auswählen zwischen den ersten Erkennungsergebnissen und den zweiten Erkennungsergebnissen ein Auswählen einschließt, das auf einem Hidden Markov Modell basiert.
-
Beispiel 14. Das System von einem der Beispiele 8–13, weiterhin umfassend ein Ereignis-Zeitgebermodul, das konfiguriert ist, um eine erste Zeit festzulegen, die damit assoziiert ist, wann die ersten Erkennungsergebnisse empfangen wurden, um eine zweite Zeit festzulegen, die damit assoziiert ist, wann die zweiten Erkennungsergebnisse empfangen wurden, wobei das Ergebnisauswahlmodul weiterhin konfiguriert ist, um die ersten Erkennungsergebnisse teilweise basierend auf der ersten Zeit und der zweiten Zeit auszuwählen.
-
Beispiel 15. Das System von einem der Beispiele 8–14, weiterhin umfassend ein Ausgabemodul, das konfiguriert ist, um dem Nutzer die ausgewählten ersten Erkennungsergebnisse bereitzustellen und dem Ereignis-Zeitgebermodul ein Rücksetzsignal bereitzustellen.
-
Beispiel 16. Ein nicht-transistorisches computerlesbares Medium trägt Softwareinstruktionen, die konfiguriert sind, um einen Prozessor zu veranlassen, Sprachdialogergebnisse zu arbitrieren bzw. zu vermitteln durch Ausführen der Schritte:
Empfangen einer Sprachäußerung von einem Nutzer innerhalb der Umgebung;
Empfangen erster Erkennungsergebnisse und eines ersten Konfidenzwertes bzw. Vertrauenslevels, die mit der Sprachäußerung assoziiert sind, von einer ersten Quelle;
Empfangen zweiter Erkennungsergebnisse und eines zweiten Vertrauenslevels, die mit der Sprachäußerung assoziiert sind; von einer zweiten Quelle;
Empfangen einer Mensch-Maschine-Schnittstellen- bzw. HMI-Information (HMI, human-machine-interface), die mit dem Nutzer assoziiert ist;
Auswählen zwischen den ersten Erkennungsergebnissen und den zweiten Erkennungsergebnissen basierend auf wenigstens einem von dem ersten Vertrauenslevel, dem zweiten Vertrauenslevel und der HMI-Information.
-
Beispiel 17. Computer-lesbares Medium von Beispiel 16, wobei die Softwareinstruktionen weiterhin den Prozessor veranlassen, zwischen den ersten Erkennungsergebnissen und den zweiten Erkennungsergebnissen zu wählen durch Auswählen der ersten Erkennungsergebnisse, wenn der erste Vertrauenslevel oberhalb eines Schwellenwerts liegt.
-
Beispiel 18. Das computerlesbare Medium von einem der Beispiele 16–17, wobei die Softwareinstruktionen weiterhin den Prozessor veranlassen, die ersten Erkennungsergebnisse zu wählen, wenn der erste Vertrauenslevel nicht oberhalb des Schwellenwerts liegt und der erste Vertrauenslevel größer als der zweite Vertrauenslevel ist.
-
Beispiel 19. Das computerlesbare Medium von einem der Beispiele 16–18, wobei jedes der ersten Erkennungsergebnisse einen oder mehrere linguistische Slots bzw. Ausschnitte einschließt, die mit korrespondierenden Ausschnitttypen assoziiert sind.
-
Beispiel 20. Das computerlesbare Medium von Beispiel 19, wobei die linguistischen Ausschnitttypen einen Eigennamen und/oder eine Adresse einschließen.