DE102019217751B4 - Method for operating a speech dialogue system and speech dialogue system - Google Patents
Method for operating a speech dialogue system and speech dialogue systemInfo
- Publication number
- DE102019217751B4 DE102019217751B4 DE102019217751.4A DE102019217751A DE102019217751B4 DE 102019217751 B4 DE102019217751 B4 DE 102019217751B4 DE 102019217751 A DE102019217751 A DE 102019217751A DE 102019217751 B4 DE102019217751 B4 DE 102019217751B4
- Authority
- DE
- Germany
- Prior art keywords
- dialogue
- speech
- output
- response output
- relevance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/167—Audio in a user interface, e.g. using voice commands for navigating, audio feedback
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Navigation (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Verfahren zum Betreiben eines Sprachdialogsystems, bei demeine Spracheingabe erfasst wird;eine erste Antwortausgabe anhand der Spracheingabe mittels einer nicht-zielgeführten Dialoganalyse erzeugt wird; undeine zweite Antwortausgabe anhand der Spracheingabe mittels einer zielgeführten Dialoganalyse erzeugt wird;eine erste Relevanzwahrscheinlichkeit für die erste Antwortausgabe und eine zweite Relevanzwahrscheinlichkeit für die zweite Antwortausgabe bestimmt werden; undanhand der Antwortausgabe mit der höchsten Relevanzwahrscheinlichkeit eine Sprachausgabe erzeugt wird,dadurch gekennzeichnet, dassdie erste Relevanzwahrscheinlichkeit für die erste Antwortausgabe und die zweite Relevanzwahrscheinlichkeit für die zweite Antwortausgabe mit einem Relevanz-Schwellenwert verglichen werden,wobei für die Erzeugung der Sprachausgabe nur Antwortausgaben mit einer Relevanzwahrscheinlichkeit oberhalb des Relevanz-Schwellenwerts berücksichtigt werden undwobei der Relevanz-Schwellenwert dynamisch erzeugt wird und umso höher bestimmt wird, je höher eine für einen Kontext bestimmte Kritikalität ist.Method for operating a speech dialogue system, in which a speech input is recorded; a first response output is generated based on the speech input by means of a non-target-guided dialogue analysis; and a second response output is generated based on the speech input by means of a target-guided dialogue analysis; a first relevance probability for the first response output and a second relevance probability for the second response output are determined; and a speech output is generated based on the response output with the highest relevance probability, characterized in that the first relevance probability for the first response output and the second relevance probability for the second response output are compared with a relevance threshold, wherein only response outputs with a relevance probability above the relevance threshold are considered for generating the speech output, and wherein the relevance threshold is generated dynamically and is determined to be higher the higher a criticality determined for a context is.
Description
Die vorliegende Erfindung betrifft ein Verfahren zum Betreiben eines Sprachdialogsystems und ein Sprachdialogsystem, insbesondere in einem Fahrzeug.The present invention relates to a method for operating a speech dialogue system and a speech dialogue system, in particular in a vehicle.
Sprachdialogsysteme können in vielfältigen Kontexten eingesetzt werden, um eine besonders einfache Bedienung elektronischer Einrichtungen zu ermöglichen. Der Nutzer muss dabei keine physischen Bedienelemente betätigen, sondern kann mittels sprachlicher Äußerungen Funktionen aktivieren oder einstellen, Eingaben vornehmen oder Kommunikationsaufgaben durchführen. Eingaben in natürlicher Sprache stellen allerdings bekannte Systeme häufig vor Probleme, etwa wenn dem Nutzer ein korrekter Sprachbefehl unbekannt ist oder er nicht weiß, welche Steuerungs- und Eingabemöglichkeiten ihm zur Verfügung stehen. Zudem eigenen sich nicht alle Ansätze zur Spracherkennung und -verarbeitung gleichermaßen für alle Aufgaben, etwa das Führen eines Gesprächs mit dem Nutzers und die Bedienung von konkreten elektronischen Einrichtungen.Speech dialogue systems can be used in a variety of contexts to enable particularly simple operation of electronic devices. The user does not have to operate any physical controls, but can activate or set functions, enter inputs, or perform communication tasks using spoken utterances. However, inputs in natural language often pose problems for existing systems, for example, when the user is unfamiliar with the correct voice command or is unaware of the available control and input options. Furthermore, not all speech recognition and processing approaches are equally suitable for all tasks, such as conducting a conversation with the user and operating specific electronic devices.
Aus der
Die
Bei dem in der
Die
Die
Die
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, ein Sprachdialogsystem und ein Verfahren zu seinem Betrieb bereitzustellen, wobei der Nutzer auf eine möglichst einfache und intuitive Weise eine sprachliche Bedienung vornehmen kann.The present invention is based on the object of providing a speech dialogue system and a method for its operation, whereby the user can carry out a speech operation in the simplest and most intuitive way possible.
Erfindungsgemäß wird diese Aufgabe durch ein Verfahren mit den Merkmalen des Anspruchs 1 und ein Sprachdialogsystem mit den Merkmalen des Anspruchs 9 gelöst. Vorteilhafte Ausgestaltungen und Weiterbildungen ergeben sich aus den abhängigen Ansprüchen.According to the invention, this object is achieved by a method having the features of claim 1 and a speech dialogue system having the features of claim 9. Advantageous embodiments and further developments emerge from the dependent claims.
Bei dem erfindungsgemäßen Verfahren zum Betreiben eines Sprachdialogsystems wird eine Spracheingabe erfasst. Eine erste Antwortausgabe wird anhand der Spracheingabe mittels einer nicht-zielgeführten Dialoganalyse erzeugt und eine zweite Antwortausgabe wird anhand der Spracheingabe mittels einer zielgeführten Dialoganalyse erzeugt. Eine erste Relevanzwahrscheinlichkeit für die erste Antwortausgabe und eine zweite Relevanzwahrscheinlichkeit für die zweite Antwortausgabe werden bestimmt. Anhand der Antwortausgabe mit der höchsten Relevanzwahrscheinlichkeit wird eine Sprachausgabe erzeugt. Wobei bei einer Weiterbildung die erste Relevanzwahrscheinlichkeit für die erste Antwortausgabe und die zweite Relevanzwahrscheinlichkeit für die zweite Antwortausgabe mit einem Relevanz-Schwellenwert verglichen werden, wobei für die Erzeugung der Sprachausgabe nur Antwortausgaben mit einer Relevanzwahrscheinlichkeit oberhalb des Relevanz-Schwellenwerts berücksichtigt werden und wobei der Relevanz-Schwellenwert dynamisch erzeugt wird und umso höher bestimmt wird, je höher eine für einen Kontext bestimmte Kritikalität ist.In the method according to the invention for operating a speech dialogue system, a speech input is recorded. A first response output is generated from the speech input by means of a non-goal-guided dialogue analysis, and a second response output is generated from the speech input by means of a goal-guided dialogue analysis. A first relevance probability for the first response output and a second relevance probability for the second response output are determined. A speech output is generated from the response output with the highest relevance probability. In a further development, the first relevance probability for the first response output and the second relevance probability for the second response output are compared with a relevance threshold, wherein only response outputs with a relevance probability above the relevance threshold are considered for generating the speech output, and wherein the relevance threshold is generated dynamically and is determined to be higher the higher the criticality determined for a context.
Dies erlaubt es vorteilhafterweise, zwischen Antwortausgaben auszuwählen, die mittels verschiedener Analysemethoden erzeugt wurden, und abhängig vom jeweiligen Kontext die optimale Sprachausgabe bereitzustellen. Das Sprachdialogsystem kann dadurch insbesondere sowohl eine natürlichsprachliche, nicht-zielgeführte Unterhaltung mit dem Nutzer, als auch einen zielgeführten Dialog zum Steuern einer Einrichtung implementieren.This advantageously allows to select between response outputs generated by different analysis methods and to provide optimal speech output depending on the respective context. The speech dialogue system can thus implement both a natural language, non-targeted conversation with the user and a target-guided dialogue for controlling a device.
Einem Nutzer, etwa dem Fahrer eines Fahrzeugs, sind häufig nicht alle bedienbaren Funktionalitäten und Anwendungen beziehungsweise Applikationen bekannt, etwa Funktionen eines Fahrzeugs oder weiterer Geräte wie Smartphones oder eines externen Rechnersystems. Dies ist etwa durch die Fülle der zur Verfügung stehende Funktionalitäten bedingt. Von besonderer Bedeutung ist dies bei einer Nutzung von Leihfahrzeugen, mit denen der Nutzer nicht vertraut ist. Zudem steht nur eine geringe Aufmerksamkeit für die Bedienung zur Verfügung, vor allem während des Führens des Fahrzeugs, was das Aufrufen und Nutzen verschiedener Funktionen erschwert. Das Verfahren erlaubt es nun, eine für den Nutzer unterstützende und informierende Small-Talk-Funktionalität bereitzustellen, die inhaltlich auch als nützlich empfunden wird, während gleichzeitig vorhandene Funktionalitäten, etwa eines Fahrzeugs oder eines Infotainmentsystems, und weitere Funktionen umfassend genutzt werden können.A user, such as the driver of a vehicle, is often not familiar with all of the operable functions and applications, such as the functions of a vehicle or other devices such as smartphones or an external computer system. This is due, for example, to the wealth of available functions. This is particularly important when using rental vehicles with which the user is unfamiliar. In addition, only limited attention is available for operation, especially while driving the vehicle, which makes it difficult to access and use various functions. The method now makes it possible to provide the user with a small talk function that supports and informs them and is also perceived as useful in terms of content, while at the same time allowing comprehensive use of existing functions, such as those of a vehicle or an infotainment system, and other functions.
Das Sprachdialogsystem wird dabei insbesondere nicht gezielt aufgerufen, um eine konkrete Applikation zu bedienen, sondern der Kontext wird automatisch erkannt und ein geeignetes System zur Dialoganalyse wird gewählt. Das heißt, der Nutzer muss die jeweilige gewünschte Applikation sowie deren bedienbare Funktionen nicht von Beginn an kennen. Ferner ist das System flexibel in einer Vielzahl verschiedener Situationen nutzbar.In particular, the speech dialog system is not specifically invoked to operate a specific application; rather, the context is automatically recognized and a suitable system for dialog analysis is selected. This means that the user does not need to be familiar with the desired application and its available functions from the outset. Furthermore, the system can be used flexibly in a wide variety of situations.
Die erfasste Spracheingabe ist insbesondere natürlichsprachlich ausgebildet, das heißt, sie ist nicht auf vorgegebene Befehle oder Schlüsselwörter beschränkt, sondern ein Nutzer kann frei formulierte Eingaben tätigen. Die Erfassung erfolgt auf an sich bekannte Weise, insbesondere mittels eines Mikrofons. Es wird eine Umwandlung der Spracheingabe in Text oder eine andere automatisch von einem Rechnersystem verarbeitbare Datenform durchgeführt. Dabei können an sich bekannte Verfahren zur Umwandlung von Sprache in Text (speech to text, SST) verwendet werden. Umgekehrt wird die Sprachausgabe insbesondere akustisch wahrnehmbar erzeugt, wobei ebenfalls bekannte Verfahren zur Umwandlung von Text in Sprache erfolgt (text to speech, TTS).The recorded speech input is, in particular, natural language, meaning it is not limited to predefined commands or keywords, but a user can enter freely formulated inputs. Recording occurs in a conventional manner, in particular using a microphone. The speech input is converted into text or another data form that can be automatically processed by a computer system. Known methods for converting speech into text (speech to text, SST) can be used for this purpose. Conversely, the speech output is generated in an acoustically perceptible manner, using known methods for converting text into speech (text to speech, TTS).
Bei einer „Dialoganalyse“ im Sinne der Erfindung wird ausgehend von zumindest einer Spracheingabe und einer Dialoghistorie zumindest eine Antwortausgabe oder eine Reihe von Kandidaten für eine Antwortausgabe erzeugt.In a “dialogue analysis” within the meaning of the invention, at least one response output or a series of candidates for a response output is generated based on at least one speech input and a dialogue history.
Bei der nicht-zielgeführten Dialoganalyse wird insbesondere nicht von einem Dialog ausgegangen, der entlang einer vordefinierten Abfolge von Eingaben eines Nutzers und eindeutig zugeordneten Antworten des Systems verläuft, um als Ziel der Interaktion beispielsweise eine Einstellung einer Funktionalität vorzunehmen. Stattdessen wird beispielsweise eine Small-Talk-Funktionalität ausgeführt, bei welcher die Sprachausgabe als Antwort des Systems so erzeugt werden soll, dass eine fortlaufende Unterhaltung mit dem Nutzer fortgeführt wird. Eine solche nicht-zielgeführte Analyse kann etwa mittels eines datengetriebenen Systems ausgeführt werden, bei dem die Antwortausgabe anhand von Trainingsdaten früherer Dialoge erzeugt wird.In particular, non-goal-guided dialogue analysis does not assume a dialogue that follows a predefined sequence of user inputs and clearly assigned system responses, for example, to configure a functionality as the goal of the interaction. Instead, a small-talk functionality is executed, for example, in which the speech output is generated as a response from the system in such a way that an ongoing conversation with the user is continued. Such a non-goal-guided analysis can be performed, for example, using a data-driven system in which the response output is generated based on training data from previous dialogues.
Bei einer erfindungsgemäßen Ausbildung wird die erste Antwortausgabe bei der nicht-zielgeführten Dialoganalyse mittels eines Maschinenlernsystems erzeugt. Insbesondere umfasst das Maschinenlernsystem ein tiefes neuronales Netz (deep neural network, DNN). Dadurch kann das System vorteilhafterweise besonders umfassend und mittels einer Vielzahl bereits vorbekannter Dialogverläufe und stetig neu erfasster Daten trainiert werden.In an embodiment according to the invention, the first response output in the non-target-guided dialogue analysis is generated using a machine learning system. In particular, the machine learning system comprises a deep neural network (DNN). This advantageously allows the system to be trained particularly comprehensively and using a large number of previously known dialogue histories and continuously newly acquired data.
Bei einer weiteren Ausbildung greift das Maschinenlernsystem zum Erzeugen der ersten Antwortausgabe auf eine personalisierte Präferenzen-Datenbank zu, die in Abhängigkeit von einer Dialoghistorie aktualisiert wird. Dadurch kann das Maschinenlernsystem vorteilhafterweise besonders flexibel an einen Nutzer, bestimmte Kontexte und Ansprüche angepasst werden.In a further development, the machine learning system accesses a personalized preferences database to generate the initial response output. This database is updated based on a dialogue history. This advantageously allows the machine learning system to be adapted particularly flexibly to a user, specific contexts, and requirements.
Die Präferenzen-Datenbank wird beispielsweise anhand von erfassten Daten über die Annahme von Sprachausgaben durch den Nutzer erzeugt. Beispielsweise kann der Nutzer durch eine Eingabe zu erkennen geben, dass eine Sprachausgabe des Systems nicht relevant für seine Spracheingabe ist oder dass er den Dialogverlauf zu einem anderen Thema lenken möchte. Hieraus kann dann bestimmt werden, dass die ausgegebene Sprachausgabe nicht relevant für den Nutzer ist und in der Präferenzen-Datenbank kann eine negative Rückmeldung gespeichert werden. Umgekehrt kann eine positive Rückmeldung gespeichert werden, wenn der Nutzer die Sprachausgabe akzeptiert oder bestätigt.The preferences database is created, for example, based on recorded data about the user's acceptance of speech output. For example, the user can indicate through an input that a speech output from the system is not relevant to their voice input or that they would like to steer the dialogue to a different topic. From this, it can then be determined that the output is not relevant to the user, and negative feedback can be stored in the preferences database. Conversely, positive feedback can be stored if the user accepts or confirms the speech output.
Die bei der Dialoganalyse berücksichtigte Dialoghistorie ist insbesondere so gebildet, dass sie einen Verlauf eines aktuellen Gesprächs umfasst. Der Verlauf kann etwa eine Reihe nacheinander erfasster Spracheingaben und Antwortausgaben umfassen oder es kann die innerhalb eines bestimmten Zeitraums erfassten Spracheingaben und die dazu erzeugten Antwortausgaben umfassen. Die Dialoghistorie wird insbesondere in einer Datenbank gespeichert, auf die beispielsweise zum Erzeugen der ersten und/oder zweiten Antwortausgabe zugegriffen werden kann.The dialogue history considered in the dialogue analysis is, in particular, formed in such a way that it encompasses the course of a current conversation. The history may, for example, comprise a series of consecutively recorded voice inputs and response outputs, or it may comprise the voice inputs recorded within a specific period of time and the response outputs generated for them. The dialogue history is, in particular, stored in a database, which can be accessed, for example, to generate the first and/or second response output can be accessed.
Die Dialoghistorie kann ferner weitere Informationen über einen Gesprächskontext umfassen. Beispielsweise können dies Informationen über einen Betriebszustand eines Fahrzeugs, eine aktuelle Verkehrssituation, eine Position und/oder eine geografische Umgebung des Fahrzeugs sein. Die weiteren Informationen können ferner aktuelle Informationen umfassen oder auf die Vergangenheit und Zukunft bezogen sein, etwa bei Terminen eines Nutzers oder Daten einer Nutzung einer Kommunikationseinrichtung, oder Informationen über weitere Personen in der Nähe eines Nutzers, etwa im gleichen Fahrzeug.The dialogue history may further include additional information about a conversation context. For example, this may be information about the operating status of a vehicle, the current traffic situation, the position, and/or the geographical surroundings of the vehicle. The additional information may also include current information or be related to the past and future, such as a user's appointments or data on the use of a communication device, or information about other people in the vicinity of a user, for example, in the same vehicle.
Bei der zielgeführten beziehungsweise regelbasierten Dialoganalyse wird insbesondere von einem „geskripteten“, deterministisch vorgegebenen Dialogverlauf ausgegangen. Das heißt, einer Spracheingabe wird ein in einer Datenbank gespeicherter Dialogzustand zugeordnet, etwa ein Schritt einer Bedienung einer Einrichtung. Diesem Dialogzustand ist dann eine Antwortausgabe zugeordnet. Eine solche Dialoganalyse ist also beispielsweise dazu geeignet, einen Nutzer gezielt durch eine Bedienung zu führen, eine Eingabe zu erfassen oder einen anderen vorgegebenen Dialogablauf durchzuführen.Goal-guided or rule-based dialogue analysis is based on a "scripted," deterministically predefined dialogue flow. This means that a speech input is assigned to a dialogue state stored in a database, such as a step in operating a device. A response output is then assigned to this dialogue state. This type of dialogue analysis is therefore suitable, for example, for guiding a user through a specific operation, capturing an input, or executing another predefined dialogue flow.
Bei einer Weiterbildung wird bei der zielgeführten Dialoganalyse anhand eines regelbasierten Expertensystems eine Bedienanweisung für eine mittels des Sprachdialogsystems steuerbaren Funktionalität erzeugt. Der Dialog kann dadurch vorteilhafterweise dazu genutzt werden, eine Handlungsanweisung an der System gezielt zu erfassen.In a training course, goal-guided dialogue analysis uses a rule-based expert system to generate operating instructions for a function controlled by the speech dialogue system. The dialogue can thus be advantageously used to capture a specific action instruction in the system.
In diesem Fall entspricht also eine Bedienanweisung dem Ziel der zielgeführten Dialoganalyse, insbesondere eines geskripteten Dialogs, etwa um eine bestimmte Einrichtung zu bedienen oder um eine bestimmte Eingabe zu erfassen. Dabei wird eine vorgegebene Wissensbasis verwendet, um eine relevante Antwortausgabe zu bestimmen.In this case, an operating instruction corresponds to the goal of goal-guided dialogue analysis, especially a scripted dialogue, for example, to operate a specific device or to capture a specific input. A predefined knowledge base is used to determine a relevant response output.
Das Expertensystem kann bei dem Verfahren lokal ausgebildet sein, etwa mit einer integrierten Speichereinheit das Sprachdialogsystems zum Speichern einer entsprechenden Datenbank das Sprachdialogsystem kann ferner auf eine externe Einheit mit dem Expertensystem zugreifen, etwa über ein Rechnernetzwerk wie das Internet oder durch eine Verbindung zu einer externen Einheit, wie einem mobilen Nutzergerät. Auf diese Weise können unterschiedliche Expertensysteme modular eingebunden werden.The expert system can be implemented locally in the method, for example, with an integrated storage unit for the speech dialogue system to store a corresponding database. The speech dialogue system can also access an external unit with the expert system, for example, via a computer network such as the Internet or through a connection to an external unit, such as a mobile user device. In this way, different expert systems can be integrated modularly.
Die Handlungsanweisung betrifft insbesondere eine mit dem Sprachdialogsystem datentechnisch gekoppelte Einheit, an die die Bedienanweisung anschließend übertragen wird. Beispielsweise ist das Sprachdialogsystem in einem Fahrzeug integriert und die Handlungsanweisung wird für eine weitere Einrichtung des Fahrzeugs erzeugt. Derartige Einrichtungen können beispielsweise Einstellungen der Fahreigenschaften des Fahrzeugs, ein Infotainmentsystem oder eine Telekommunikationseinrichtung betreffen.The instruction specifically relates to a unit that is data-linked to the speech dialog system, to which the operating instruction is subsequently transmitted. For example, the speech dialog system is integrated into a vehicle, and the instruction is generated for another device in the vehicle. Such devices can, for example, relate to settings for the vehicle's driving characteristics, an infotainment system, or a telecommunications device.
Bei einer Ausbildung zum Erzeugen der zweiten Antwortausgabe wird die Spracheingabe einem Dialogszenario zugeordnet, wobei das Dialogszenario eine Eingabeintention und eine für die Eingabeintention vorgegebene Ausgabeantwort umfasst. Dadurch wird vorteilhafterweise ein geskripteter Dialog besonders effizient durchgeführt.In a design for generating the second response output, the speech input is assigned to a dialog scenario, where the dialog scenario includes an input intention and an output response predefined for the input intention. This advantageously allows a scripted dialog to be executed particularly efficiently.
Beim Bestimmen eines Dialogszenarios wird ein Kontext der Eingabe bestimmt, wobei die Dialoghistorie und weitere Daten über den Zustand des Sprachdialogsystems und der jeweiligen Umgebung berücksichtigt werden. Das Dialogszenario beschreibt eine potentiellen Ablauf des Dialogs mit Systemantworten, die bestimmten Eingaben zugeordnet sind, und darauf erwarteten potentiellen weiteren Eingaben eines Nutzers. Hierbei wird als Eingabeintention die Bedienung einer bestimmten Einheit, das Aufrufen einer Funktionalität oder die Ausführung einer Aufgabe zum Bereitstellen von bestimmten Informationen verstanden. Das heißt, die Eingabeintention gibt an, welchem Ziel die zielgeführte Dialoganalyse dienen soll.When defining a dialog scenario, the context of the input is determined, taking into account the dialog history and other data about the state of the speech dialog system and the respective environment. The dialog scenario describes a potential dialog flow with system responses associated with specific inputs and potentially expected further user inputs. The input intention is understood as the operation of a specific unit, the invocation of a function, or the execution of a task to provide specific information. This means that the input intention specifies the goal of the goal-guided dialog analysis.
Bei dem Verfahren wird insbesondere laufend die Relevanz der zuletzt bestimmten Eingabeintention überprüft. Wenn bestimmt wird, dass eine andere Intention relevanter erscheint, wird das Dialogszenario entsprechend anders bestimmt. Auf diese Weise kann reagiert werden, wenn sich die Eingabeintention des Nutzers während des Dialogs verändert oder wenn der Nutzer zum Ausdruck bringt, dass eine falsche Eingabeintention erkannt wurde. In particular, the process continuously checks the relevance of the last determined input intention. If it is determined that a different intention appears more relevant, the dialog scenario is redefined accordingly. This allows for a reaction if the user's input intention changes during the dialog or if the user indicates that an incorrect input intention was detected.
Bei einer weiteren Ausbildung werden Umgebungsdaten eines Nutzers erfasst und die erste und/oder zweite Antwortausgabe werden ferner anhand der erfassten Umgebungsdaten des Nutzers erzeugt werden. Dadurch kann vorteilhafterweise eine besonders relevante Antwortausgabe erzeugt werden.In a further embodiment, environmental data of a user are recorded, and the first and/or second response output is further generated based on the recorded environmental data of the user. This advantageously allows a particularly relevant response output to be generated.
Die Umgebungsdaten können beispielsweise den Betriebszustand eines Fahrzeugs oder einer anderen Einrichtung, eine aktuelle, vergangene oder prognostizierte Position und dieser Position zugeordnete Merkmale sowie persönliche Daten eines Nutzers umfassen. Sie können auch nutzerbezogene Informationen betreffen, anhand derer etwa eine Erkennung eines Zustands des Nutzers und/oder seiner Emotionen durchgeführt werden kann. Die erste und/oder zweite Antwortausgabe können daher ferner anhand der erfassten Informationen über einen Zustand und/oder Emotionen des Nutzers erzeugt werden. Sie können ferner in einer räumlichen Umgebung des Nutzers ermittelte und/oder gespeicherte Informationen betreffen. Die räumliche Umgebung kann dabei für einen aktuellen, vergangenen oder zukünftigen Zeitpunkt betrachtet werden.The environmental data may include, for example, the operating status of a vehicle or other device, a current, past, or predicted position and characteristics associated with that position, as well as personal data of a user. They may also relate to user-related information, which may be used, for example, to a recognition of a user's state and/or emotions can be performed. The first and/or second response output can therefore also be generated based on the acquired information about a user's state and/or emotions. They can also relate to information determined and/or stored in a spatial environment of the user. The spatial environment can be considered for a current, past, or future point in time.
Anhand der Umgebungsdaten wird insbesondere ein Kontext der Spracheingabe bestimmt und bei der nicht-zielgeführten beziehungsweise bei der zielgeführten Dialoganalyse verwendet. Beispielsweise kann die Menge der potentiell zu berücksichtigenden Antwortausgaben anhand der Umgebungsdaten beschränkt werden, etwa weil der sprachliche Bezug zwischen der Spracheingabe anhand der Umgebungsdaten geklärt werden kann.Based on the environmental data, a context for the speech input is determined and used in either non-goal-guided or goal-guided dialogue analysis. For example, the set of potentially considered response outputs can be limited based on the environmental data, for example, because the linguistic relationship between the speech input can be clarified based on the environmental data.
Das Bestimmen der ersten und zweiten Relevanzwahrscheinlichkeit erfolgt auf an sich bekannte Weise. Die Wahrscheinlichkeiten werden insbesondere bei einer statistischen Analyse der erzeugten ersten und zweiten Antwortausgabe bestimmt und mit der jeweiligen Antwortausgabe zusammen ausgegeben. Die Relevanzwahrscheinlichkeit gibt an, mit welcher Wahrscheinlichkeit eine Antwortausgabe eine für den Nutzer relevante Reaktion auf die zuvor erfasste Spracheingabe darstellt. Es können unterschiedliche Verfahren verwendet werden, um beispielsweise Beziehungen zwischen den Antwortausgaben und der Spracheingabe zu analysieren und einen Kontext sowie eine Eingabeintention anhand der Spracheingabe und der Dialoghistorie zu bestimmen. Beim Bestimmen der Relevanzwahrscheinlichkeiten können auch die Umgebungsdaten berücksichtigt werden.The first and second relevance probabilities are determined in a conventional manner. The probabilities are determined, in particular, through a statistical analysis of the generated first and second response outputs and output together with the respective response output. The relevance probability indicates the probability that a response output represents a relevant reaction for the user to the previously recorded speech input. Different methods can be used, for example, to analyze relationships between the response outputs and the speech input and to determine a context and input intention based on the speech input and the dialogue history. Environmental data can also be taken into account when determining the relevance probabilities.
Der Relevanz-Schwellenwert kann fest vorgegeben sein. Er kann sich ferner je nach dem Verfahren unterscheiden, durch das die Antwortausgaben erzeugt wurden. Beispielsweise können unterschiedliche Relevanz-Schwellenwerte vorgesehen sein, wenn Antwortausgaben mittels eines neuronalen Netzes oder mittels eines Expertensystems erzeugt werden. Der Relevanz-Schwellenwert kann ferner dynamisch erzeugt werden und beispielsweise umso höher bestimmt werden, je höher eine für den Kontext bestimmte Kritikalität ist. Beispielsweise kann im Kontext eines Fahrzeugs bestimmt werden, dass bei hohem Verkehrsaufkommen eine höhere Kritikalität als bei niedrigem Verkehrsaufkommen vorliegt, und der Schwellenwert kann in diesem Fall höher angesetzt werden, um eine unnötige Ablenkung durch weniger relevante Antworten zu vermeiden. Es können zum Beispiel die Umgebungsdaten berücksichtigit werden, um die Relevanzwahrscheinlichkeit zu bestimmenThe relevance threshold can be fixed. It can also vary depending on the method used to generate the response outputs. For example, different relevance thresholds can be provided if response outputs are generated using a neural network or an expert system. The relevance threshold can also be generated dynamically and, for example, be set higher the higher the criticality determined for the context. For example, in the context of a vehicle, it can be determined that a higher criticality exists during high traffic volumes than during low traffic volumes, and the threshold can be set higher in this case to avoid unnecessary distraction from less relevant responses. For example, the environmental data can be taken into account to determine the relevance probability.
Bei einer Ausbildung wird eine von der Spracheingabe umfasste Entität bestimmt und die erste Relevanzwahrscheinlichkeit und die zweite Relevanzwahrscheinlichkeit werden in Abhängigkeit von der bestimmten Entität bestimmt. Die Bestimmung der Entitäten kann mittels an sich bekannter Verfahren, etwa mittels eines Named Entity Resolver oder eines Named Entity Recognizer (NER) erfolgen. Anhand der Entitäten können vorteilhafterweise besonders relevante und an den jeweiligen Kontext angepasste Antwortausgaben erzeugt werden.During training, an entity encompassed by the speech input is identified, and the first and second relevance probabilities are determined based on the identified entity. The entities can be identified using conventional methods, such as a Named Entity Resolver or a Named Entity Recognizer (NER). Based on these entities, particularly relevant response outputs can be advantageously generated, tailored to the respective context.
Unter „Entitäten“ werden im Kontext der Erfindung insbesondere sprachliche Objekte verstanden, die gesammelte Informationen beinhalten. Zu den Entitäten können beispielsweise Attribute und Prädikate bestimmt werden, um den Inhalt der Spracheingabe weiter zu bestimmen. Auf diese Weise werden sie zum Erzeugen der Antwortausgaben genutzt und geben sowohl Aufschluss über den Kontext der Spracheingabe als auch über den Inhalt beziehungsweise die Eingabeintention des Nutzers.In the context of the invention, "entities" are understood to mean, in particular, linguistic objects that contain collected information. For example, attributes and predicates can be assigned to the entities to further determine the content of the speech input. In this way, they are used to generate response outputs and provide information about both the context of the speech input and the content or input intention of the user.
Die bestimmten Entitäten sind damit zentral für die Entscheidung, welche der erzeugten Antwortausgaben die höchste Relevanz für den Nutzer aufweist. Insbesondere wird anhand der Entitäten unterschieden, ob eine Antwortausgabe der nicht-zielgeführten Dialoganalyse oder eine Antwortausgabe der zielgeführten Dialoganalyse ausgegeben werden soll.The specific entities are therefore central to the decision as to which of the generated response outputs is most relevant to the user. In particular, the entities are used to distinguish whether a response output from the non-goal-guided dialogue analysis or a response output from the goal-guided dialogue analysis should be generated.
Insbesondere werden Entitäten im Zusammenhang mit durch das Sprachdialogsystem bedienbaren Funktionalitäten, etwa mit Fahrzeug- und Infotainment-Funktionalitäten in einem Fahrzeug, durch ein Maschinenlernsystem trainiert und gelernt, wobei sie in einer Datenbank als sogenannte Knowledge-Base gespeichert werden. Die Nutzung bedienbarer Funktionalitäten wird insbesondere personalisiert mit einem Nutzer verknüpft. In einem aktuellen Dialog verwendete Entitäten werden beispielsweise durch ein Maschinenlernsystem generiert, indem Sprachdialoge und Umgebungsdaten ausgewertet werden, etwa von einem Fahrzeug erfasste Daten über die Fahrsituation, den Innenraum oder das Umfeld des Fahrzeugs, eine Verkehrssituation sowie erfasste Informationen über den Zustand des Fahrers. Insbesondere werden dabei auch persönliche Interessen des Fahrers und/oder für den Nutzer bestimmte Emotionen ausgewertet, um flexibel auf die jeweilige Stimmung des Fahrers reagieren zu können.In particular, entities related to functionalities that can be operated by the voice dialogue system, such as vehicle and infotainment functionalities in a vehicle, are trained and learned by a machine learning system and stored in a database as a so-called knowledge base. The use of operable functionalities is particularly personalized and linked to a user. Entities used in a current dialogue are generated, for example, by a machine learning system by evaluating voice dialogues and environmental data, such as data recorded by a vehicle about the driving situation, the interior or surroundings of the vehicle, a traffic situation, and recorded information about the driver's condition. In particular, the driver's personal interests and/or emotions specific to the user are also evaluated in order to be able to react flexibly to the driver's current mood.
Die gegebenenfalls von den Umgebungsdaten umfassten Informationen über den Zustand des Nutzers können ihrerseits verschiedene Daten umfassen und werden insbesondere bei einer Nutzeremotions- und Nutzerzustandserkennung erfasst und ausgewertet. Dabei können etwa Bewegungsabläufe, Mimik und Gestik des Fahrers oder eines anderen Nutzers ausgewertet werden. Ferner können Sprachparameter analysiert werden, etwa Parameter einer Stimme, Sprechgeschwindigkeit, Lautstärke, verwendete Phrasen oder eine Gesprächsdynamik. Zudem können physiologische Parameter beziehungsweise Vitalparameter des Nutzers des Sprachdialogsystems berücksichtigt werden. Insbesondere sind hierfür in einem Fahrzeug eine Fahreremotions- und Fahrerzustandserkennung vorgesehen. Ferner kann etwa eine Smartphone-Applikation genutzt werden, um Informationen über den Zustand des Nutzers, wie etwa Bewegungsabläufe, Bewegungsmuster, Gestik und Mimik, zu ermitteln und zu klassifizieren. Ferner können physiologische Parameter beziehungsweise Vitalparameter des Nutzers über Sensoren erfasst werden, die etwa in Kleidungsstücken oder in tragbaren Messgeräten integriert sind und am Körper oder in der Nähe des Körpers des Nutzers angeordnet sind. Die so erfassten Daten können dann ausgelesen werden, etwa mittels einer Smartphone-Applikation, und für das Sprachdialogsystem ausgewertet und genutzt werden.The information about the user's state, which may be included in the environmental data, can in turn comprise various data and is recorded and evaluated, in particular, in the case of user emotion and user state recognition. This can include, for example, the movement sequences, facial expressions and gestures of the driver or a other user can be evaluated. Furthermore, speech parameters can be analyzed, such as voice parameters, speaking rate, volume, phrases used or conversation dynamics. In addition, physiological parameters or vital parameters of the user of the speech dialogue system can be taken into account. In particular, driver emotion and driver state recognition are provided for this purpose in a vehicle. Furthermore, a smartphone application can be used to determine and classify information about the user's state, such as movement sequences, movement patterns, gestures and facial expressions. Furthermore, physiological parameters or vital parameters of the user can be recorded via sensors that are integrated, for example, in clothing or in portable measuring devices and are arranged on or near the user's body. The data recorded in this way can then be read out, for example using a smartphone application, and evaluated and used for the speech dialogue system.
Das erfindungsgemäße Sprachdialogsystem umfasst eine Erfassungseinheit, die dazu eingerichtet ist, eine Spracheingabe zu erfassen, eine erste Dialoganalyseeinheit, die dazu eingerichtet ist, anhand der Spracheingabe mittels einer nicht-zielgeführten Dialoganalyse eine erste Antwortausgabe zu erzeugen, und eine zweite Dialoganalyseeinheit, die dazu eingerichtet ist, anhand der Spracheingabe mittels einer zielgeführten Dialoganalyse eine zweite Antwortausgabe zu erzeugen. Es umfasst ferner eine Steuereinheit, die dazu eingerichtet ist, eine erste Relevanzwahrscheinlichkeit für die erste Antwortausgabe und eine zweite Relevanzwahrscheinlichkeit für die zweite Antwortausgabe zu bestimmen, und eine Ausgabeeinheit, die dazu eingerichtet ist, anhand der Antwortausgabe mit der höchsten Relevanzwahrscheinlichkeit eine Sprachausgabe zu erzeugen, die Steuereinheit dazu eingerichtet ist, die erste Relevanzwahrscheinlichkeit für die erste Antwortausgabe und die zweite Relevanzwahrscheinlichkeit für die zweite Antwortausgabe mit einem Relevanz-Schwellenwert zu vergleichen, wobei für die Erzeugung der Sprachausgabe nur Antwortausgaben mit einer Relevanzwahrscheinlichkeit oberhalb des Relevanz-Schwellenwerts berücksichtigt werden und wobei der Relevanz-Schwellenwert dynamisch erzeugt wird und umso höher bestimmt wird, je höher eine für einen Kontext bestimmte Kritikalität ist. Das erfindungsgemäße Sprachdialogsystem ist insbesondere ausgebildet, das vorstehend beschriebene erfindungsgemäße Verfahren zu implementieren. Das Sprachdialogsystem weist somit dieselben Vorteile auf wie das erfindungsgemäße Verfahren.The speech dialogue system according to the invention comprises a capture unit configured to capture a speech input, a first dialogue analysis unit configured to generate a first response output based on the speech input by means of a non-targeted dialogue analysis, and a second dialogue analysis unit configured to generate a second response output based on the speech input by means of a target-guided dialogue analysis. It further comprises a control unit configured to determine a first relevance probability for the first response output and a second relevance probability for the second response output, and an output unit configured to generate a speech output based on the response output with the highest relevance probability. The control unit is configured to compare the first relevance probability for the first response output and the second relevance probability for the second response output with a relevance threshold. Only response outputs with a relevance probability above the relevance threshold are considered for generating the speech output. The relevance threshold is generated dynamically and is determined to be higher the higher the criticality determined for a context. The speech dialogue system according to the invention is particularly designed to implement the above-described method according to the invention. The speech dialogue system thus has the same advantages as the method according to the invention.
Bei einer Ausbildung des erfindungsgemäßen Sprachdialogsystems ist die zweite Dialoganalyseeinheit dazu eingerichtet, anhand eines regelbasierten Expertensystems eine Bedienanweisung für eine mittels des Sprachdialogsystems steuerbaren Funktionalität zu erzeugen. Dadurch wird die Antwortausgabe vorteilhafterweise gezielt anhand einer bestehenden Wissensbasis erzeugt. Ferner können Expertensysteme modular in das Sprachdialogsystem eingebunden oder über eine datentechnische Verbindung von einer externen Einheit bereitgestellt werden.In one embodiment of the speech dialog system according to the invention, the second dialog analysis unit is configured to generate, based on a rule-based expert system, an operating instruction for a functionality controllable by the speech dialog system. This advantageously generates the response output based on an existing knowledge base. Furthermore, expert systems can be integrated modularly into the speech dialog system or provided by an external unit via a data connection.
Dabei können anhand einer Sprachinteraktion Funktionalitäten aufgerufen werden, für die dem Nutzer bereits vorgegebene Begriffe, Ausdrücke und Wörter bekannt sind. Dies erfolgt insbesondere über eine zielgeführte Dialoganalyse , insbesondere einen geskripteten Dialog. Ferner kann der Nutzer mittels einer nicht-zielgeführten Dialoganalyse zum Aufrufen, Aktivieren und Nutzen von Funktionalität und Anwendungen gelangen, die ihm unbekannt sind oder auf die er zunächst hingewiesen werden muss. Hierfür wird beispielsweise eine Small-Talk-Applikation genutzt, bei der anhand von Daten über einen Kontext oder eine Situation zu empfehlende Funktionalitäten bestimmt werden. Mittels der Small-Talk-Applikation und gegebenenfalls einer Situationserkennung kann ermittelt werden, auf welche Weise der Nutzer aktuell unterstützt werden möchte beziehungsweise welche relevante Unterstützung angeboten werden kann, wobei weniger relevante Funktionalitäten nicht angeboten werden. Über eine Small-Talk-Applikation kann auf Funktionalitäten und Anwendungen gezielter und schneller zugegriffen werden, wobei der Nutzer sich die Sprachbefehle dafür nicht merken muss. Üblicherweise vom Nutzer in einem bestimmten Kontext verwendete Funktionalitäten und Anwendungen können gezielt angeboten werden.A voice interaction can be used to call up functionalities for which the user already knows predefined terms, expressions and words. This is done in particular via a goal-guided dialogue analysis, especially a scripted dialogue. Furthermore, a non-goal-guided dialogue analysis can be used to call up, activate and use functionalities and applications that are unknown to the user or that they must first be made aware of. For this purpose, for example, a small talk application is used in which recommended functionalities are determined based on data about a context or situation. Using the small talk application and, if necessary, situation recognition, it can be determined how the user would like to be supported at the moment and what relevant support can be offered, whereby less relevant functionalities are not offered. A small talk application can access functionalities and applications more specifically and quickly, and the user does not have to memorize the voice commands. Functionalities and applications that are usually used by the user in a certain context can be offered in a targeted manner.
Somit erfolgt eine weitgehende Unterstützung bei der Nutzung bedienbarer Funktionalitäten, etwa in einem Fahrzeug und zur Bedienung einer Infotainmenteinrichtung, es wird ein intuitiver Zugang zu einer umfassenden Menge von Funktionalitäten und Anwendungen über das Sprachdialogsystem bereitgestellt. Beispielsweise kann auch eine Fahrzeugwartung oder die Nutzung einer Infrastruktur, etwa von Parkplätzen, intuitiv unterstützt werden.This provides extensive support for the use of operable functions, such as those in a vehicle and for operating an infotainment system, and intuitive access to a comprehensive range of functions and applications is provided via the voice dialog system. For example, vehicle maintenance or the use of infrastructure, such as parking spaces, can also be intuitively supported.
Weiterhin kann für verschiedene Nutzer personalisiert gelernt werden, welche spezifischen Funktionalitäten in bestimmten Situationen verwendet werden sollen. Von den gesamten, beispielsweise in einem Fahrzeug, verfügbaren Funktionalitäten und Anwendungen werden anhand des Kontextes und der gegebenenfalls erfassten Daten über die Umgebung die relevantesten bestimmt und genutzt.Furthermore, personalized learning can be provided for different users regarding which specific functionalities should be used in specific situations. Of all the functionalities and applications available, for example, in a vehicle, the most relevant ones are determined and used based on the context and any data collected about the environment.
Zudem kann mittels des Sprachdialogsystems und der nicht-zielgeführten Dialoganalyse ein „Freies Sprechen“ beziehungsweise ein „Small-Talk“ realisiert werden, bei dem auf geskriptete Dialogzustände verzichtet wird. Anhand solcher Zustände können allerdings auch zielgerichtete Aufgaben für einen Nutzer erfüllt werden, sodass bei dem Sprachdialogsystem ferner eine zielgeführte Dialoganalyse vorgesehen ist, insbesondere parallel durchgeführt wird. Die Entscheidung, anhand welcher Dialoganalyse die Antwortausgabe erzeugt wird, wird anhand von Relevanzwahrscheinlichkeiten getroffen, zu deren Bestimmung insbesondere Entitäten herangezogen werden. Das heißt, die Verknüpfung der verschiedenen Dialoganalysen des Sprachdialogsystems erfolgt mithilfe der Entitäten, mittels derer auf den jeweiligen Kontext und den aktuellen Dialoginhalt geschlossen wird.Furthermore, the speech dialogue system and non-goal-guided dialogue analysis can be used to implement "free speech" or "small talk" without scripted dialogue states. However, such states can also be used to perform targeted tasks for a user, so that the speech dialogue system also provides for goal-guided dialogue analysis, particularly in parallel. The decision as to which dialogue analysis will be used to generate the response output is made based on relevance probabilities, which are determined primarily by entities. This means that the various dialogue analyses of the speech dialogue system are linked using entities, which are used to determine the respective context and the current dialogue content.
Das Verfahren ermöglicht es, eine Small-Talk-Applikation so mit einer regelbasierten Analyse des Dialogs zu verbinden, dass verschiedene Funktionalitäten, etwa eines Fahrzeugs sowie externer Geräte, in einem einheitlichen Bedienkonzept bedient werden.The process makes it possible to combine a small talk application with a rule-based analysis of the dialogue in such a way that different functionalities, such as those of a vehicle and external devices, can be operated in a uniform operating concept.
Zielgeführte Dialoganalysen werden dazu verwendet, konkrete Aufgaben zu erfüllen, etwa bei Spracheingaben wie „Wie ist das Wetter?“ oder „Kauf mir zwei Tickets!“. Insbesondere werden dazu geskriptete Dialogzustände genutzt, bei denen die Spracheingabe einem Dialogszenario zugeordnet wird, für das wiederum bestimmte Antwortaufgaben vorgegeben sind. Dagegen wird die nicht-zielgeführte Dialoganalyse dazu verwendet, ein freies Sprechen mit dem Sprachdialogsystem zu ermöglichen, auch als „Small-Talk“ bezeichnet. Hier wird auf geskriptete Dialogzustände verzichtet und relevante Antwortausgaben werden etwa mittels datengetriebener Maschinenlernsysteme erzeugt, wie beispielsweise ein tiefes neuronales Netz (deep neural network, DNN). Hier wird der Inhalt einer einzelnen Spracheingabe typischerweise nicht bestimmt, sondern die Antwortausgabe wird anhand statistischer Verfahren ermittelt. Bei dem Verfahren werden die beiden Ansätze der Dialoganalyse kombiniert und je nach Anwendungsfall wird zwischen beiden umgeschaltet.Goal-guided dialogue analyses are used to perform specific tasks, for example with speech inputs such as "What's the weather like?" or "Buy me two tickets!". Scripted dialogue states are used in particular, where the speech input is assigned to a dialogue scenario for which specific response tasks are predefined. In contrast, non-goal-guided dialogue analyses are used to enable free conversation with the speech dialogue system, also known as "small talk." Scripted dialogue states are dispensed with here, and relevant response outputs are generated using data-driven machine learning systems such as a deep neural network (DNN). Here, the content of an individual speech input is typically not determined, but rather the response output is calculated using statistical methods. This method combines the two approaches of dialogue analysis, switching between the two depending on the application.
Die beiden Ansätze werden insbesondere mittels Entitäten verknüpft, die beispielsweise durch ein tiefes neuronales Netz in einer Trainingsphase gelernt werden. Die verfügbaren Entitäten werden mit zugeordneten Informationen in einer Datenbank gespeichert. Wenn eine Antwortausgabe durch das DNN Ende erzeugt wird, kann ein Dialogmanager über die in der Spracheingabe verwendeten und generierten Entitäten den Dialoginhalt und insbesondere eine Eingabeintention des Nutzers ermitteln. Wird eine Aufgabe erkannt, deren Erfüllung über das Ausführen von Small-Talk hinausgeht, kann ein geskripteter Dialog mittels der zielgeführten Dialoganalyse durchgeführt werden, bis die Aufgabe erfüllt ist.The two approaches are linked, in particular, by entities that are learned, for example, by a deep neural network in a training phase. The available entities are stored in a database with associated information. When a response output is generated by the DNN end, a dialogue manager can determine the dialogue content and, in particular, the user's input intention based on the entities used and generated in the speech input. If a task is identified that goes beyond small talk, a scripted dialogue can be conducted using goal-guided dialogue analysis until the task is completed.
Bei dem Verfahren kann ferner erreicht werden, dass das Sprachdialogsystem personalisiert wird. Mithilfe eines Reinforcement-Ansatzes werden dabei personalisierte Nutzerinformationen generiert und verwendet, um das System für den Nutzer zu erweitern oder anzupassen. Wird beispielsweise eine Sprachausgabe erzeugt, die auf einer für den Nutzer nicht relevanten Antwortausgabe basiert, so kann das System dies an einem Themenwechsel oder eine andere Rückmeldung durch den Nutzer erkennen; eine negative Rückmeldung wird durch sogenanntes Reinforcement-Learning genutzt, um in zukünftigen Dialoge ähnlicher Art solche nicht relevanten Ausgaben zu vermeiden.The method can also personalize the speech dialogue system. Using a reinforcement approach, personalized user information is generated and used to expand or adapt the system for the user. For example, if a speech output is generated based on a response that is irrelevant to the user, the system can detect this through a change of topic or other feedback from the user. Negative feedback is used through reinforcement learning to avoid such irrelevant output in future dialogues of a similar nature.
Zudem können weitere passende Entitäten erkannt und zugeordnet werden, für die bereits eine Small-Talk-Funktion oder ein Entitätenmodell eines empathischen Assistenten vorhanden ist. Ein Entitätenmodell ordnet dabei zueinander passende Entitäten einander zu. Beispielsweise werden durch eine Fusion von Daten verschiedener Umfeldsensoren oder weiterer Sensoren, etwa zur Situationserkennung in einem Fahrzeuginnenraum, Objekte und Situationen erkannt, die einem Softwareobjekt und/oder einem Begriff, das heißt einer möglichen Entität, in verschiedenen Systemen zugeordnet werden können. Insbesondere werden ferner in Fahrzeug- und Infotainment-Systemen eingestellte Parameter sowie Merkmale und Eigenschaften einer aktuellen Medien- und App-Nutzung im Fahrzeug gespeichert. Attribute für einzelne Objekten (Entitäten) können dabei im Fahrzeug- und Infotainmentsystem zugeordnet und gespeichert werden.In addition, other suitable entities can be recognized and assigned for which a small talk function or an entity model of an empathic assistant already exists. An entity model assigns matching entities to one another. For example, by merging data from various environmental sensors or other sensors, e.g. for situation recognition in a vehicle interior, objects and situations are recognized that can be assigned to a software object and/or a term, i.e. a possible entity, in different systems. In particular, parameters set in vehicle and infotainment systems as well as features and properties of current media and app usage in the vehicle are also stored. Attributes for individual objects (entities) can be assigned and stored in the vehicle and infotainment system.
Beispiele für eine Objekt- oder Situationserkennung sind das Erkennen eines Gebäudes oder einer geografischen Umgebung, die Klassifikation von Gebäuden oder anderer klassifizierbarer Einrichtungen, etwa als Theater, Oper, Kino, Hotel, Schule, Rathaus, Schwimmbad, Krankenhaus sowie Arztpraxis und Therapieeinrichtung, Restaurant, Haltestelle, Bahnhof, Parkplatz oder ähnliches. Dabei können ferner Informationen über Sonderziele (points of interest, POl) eines Navigationssystems berücksichtigt werden. Ferner können eine Verkehrssituation, Route, Gegend oder direkte Umgebung erfasst und berücksichtigt werden. Zudem können Merkmale und Eigenschaften einer aktuellen Nutzung von Medien oder Apps, etwa eine Lautstärke, ein Musik- oder Medientitel, ein Radiosender, eine genutzte App oder Funktionalität, eine Kurzbeschreibung eines Titels von Inhalten genutzt werden. Ein Navigationssystem kann in einer geografischen Umgebung angeordnete POls sowie für den Nutzer individuell interessante POls bereitstellen.Examples of object or situation recognition include the recognition of a building or a geographical environment, the classification of buildings or other classifiable facilities, such as a theater, opera house, cinema, hotel, school, town hall, swimming pool, hospital, doctor's office and therapy facility, restaurant, bus stop, train station, parking lot, or similar. Information about points of interest (POI) of a navigation system can also be taken into account. Furthermore, a traffic situation, route, area, or immediate surroundings can be recorded and considered. Furthermore, characteristics and properties of a current use of media or apps, such as volume, a music or media title, a radio station, an app or functionality used, or a short description of a content title, can be used. A navigation system can operate in a geographical environment provide arranged POls as well as POls of individual interest to the user.
Diese Objekte und/oder deren Merkmale und Attribute können in einer Small-Talk-Datenbank (entity data store) permanent aktualisiert gespeichert werden, etwa bei einem externen Backend oder im Fahrzeug. Die Small-Talk-Datenbank zum Speichern von Attributen von Dateneinheiten kann zusätzlich genutzt oder angebunden werden. Während des Small-Talks werden erkannte Entitäten aus dem Gespräch in Beziehung zu Entitäten der (Fahrzeug-)Small-Talk-Datenbank gesetzt und der Small-Talk kann so in eine für den Fahrer informierende beziehungsweise unterstützende Richtung gelenkt werden.These objects and/or their features and attributes can be stored and continuously updated in a Small Talk database (entity data store), for example, in an external backend or in the vehicle. The Small Talk database for storing attributes of data units can be used additionally or connected. During Small Talk, recognized entities from the conversation are related to entities in the (vehicle) Small Talk database, and the Small Talk can thus be steered in a direction that informs or supports the driver.
Durch eine Sprachanalyse der von dem Fahrer und/oder weiteren Fahrzeuginsassen gesprochenen Dialoge können Entitäten gefunden werden, die zuvor im Small-Talk-System gespeichert wurden. Entitäten können über eine Datenbank, etwa bei einer Datenmodellierung mittels eines Entity-Relationship-Modells, für wissensbasierte Systeme (Wissensbasis, knowledge base) definiert sein und über semantische Entitätenmodelle in Beziehung zueinander gesetzt werden, sodass weitere die Thematik näher spezifizierende passende Fragen, Angebote, Vorschläge, Informationen und/oder Antworten durch das Small-Talk-System als Antwortausgaben erzeugt und ausgegeben werden können.By analyzing the dialogue spoken by the driver and/or other vehicle occupants, entities previously stored in the Small Talk system can be found. Entities can be defined via a database, for example, in data modeling using an entity-relationship model, for knowledge-based systems (knowledge base) and related to each other using semantic entity models, so that further appropriate questions, offers, suggestions, information, and/or answers that further specify the topic can be generated and output by the Small Talk system as response outputs.
Die zueinander in Beziehung stehenden Entitäten werden in Entitätenmodellen hinterlegt und können zur weiteren Präzisierung von thematischen Inhalten für das Small-Talk-Gespräch verwendet werden. Dabei werden weitere Entitäten assoziiert, die in Entitätenmodellen hinterlegt sind, insbesondere auf Grundlage von im Sprachdialog bereits erkannten Entitäten. In dem Datenmodell, in dem die Entitäten und deren Verknüpfungen definiert sind, können Prognosen zu auf der Erfahrung basierenden linguistischen Zusammenhängen berücksichtigt werden, welche zuvor statisch aus Datenauswertungen erhoben wurden. Beispielsweise treten bestimmte Begriffe treten häufig in Kombination mit anderen Begriffen auf. Das Entitätenmodell kann daher auch für eine konkrete Person selbstlernend erweitert und personalisiert werden.The interrelated entities are stored in entity models and can be used to further refine thematic content for small talk conversations. Additional entities stored in entity models are associated, particularly based on entities already recognized in the speech dialogue. The data model, in which the entities and their relationships are defined, can incorporate predictions of experience-based linguistic relationships, which were previously collected statically from data analyses. For example, certain terms frequently occur in combination with others. The entity model can therefore be expanded and personalized for a specific person through self-learning.
In diesem Zusammenhang können auch Angebote bezüglich bereits vorhandener und beispielweise vom Fahrzeugsystem angebotener Applikationen und Dienste genutzt werden, wie Organisationsapplikationen, die Reservierungsmöglichkeit von beispielsweise Kino oder Theaterkarten, Bestellmöglichkeiten, etwa von Lebensmitteln, Musik, Nachrichten, Informationen, Beratung und so weiter.In this context, offers relating to already existing applications and services offered, for example, by the vehicle system can also be used, such as organizational applications, the possibility of reserving cinema or theater tickets, ordering options, for example, for food, music, news, information, advice, and so on.
Weiterhin kann diese Art von an den Fahrer angepasstem Small-Talk genutzt werden, um die Fahrsicherheit zu erhöhen, die Verkehrssituation beziehungsweise Umgebung zu erkennen oder dem Fahrer neue Funktionalitäten des Fahrzeugs zu erschließen sowie auf dessen aktuelle Emotionen einzugehen. So können etwa bei vom Fahrzeugsystem erkannten Fahreremotionen, wie Ärger, Wut, Traurigkeit oder Ungeduld, mit Hilfe eines um die aktuellen Fahrerinteressen erweiterten Small-Talks durch gezielte Fragen an den Fahrer spezifische Angebote an diesen aus den im Fahrzeug vorhandenen Applikationen und Diensten angeboten werden, um den Fahrerzustand positiv zu beeinflussen, etwa gewünschte Bestellungen und Aufrufen des Infotainmentsystems mit Musik, Nachrichten, Informationen oder spezifischer Beratung. Somit kann ein Einbezug einer Emotionserkennung zum Small-Talk mit einem empathischen Assistenten erfolgen.Furthermore, this type of small talk tailored to the driver can be used to increase driving safety, recognize the traffic situation or surroundings, or introduce the driver to new vehicle functions and respond to their current emotions. For example, if the vehicle system detects driver emotions such as annoyance, rage, sadness, or impatience, small talk expanded to reflect the driver's current interests can be used to ask the driver specific questions from the vehicle's applications and services in order to positively influence the driver's state, such as desired orders and calling up the infotainment system with music, news, information, or specific advice. This allows emotion recognition to be incorporated into small talk with an empathetic assistant.
Die Erfindung wird nun anhand von Ausführungsbeispielen mit Bezug zu den Zeichnungen erläutert.
-
1 zeigt ein Fahrzeug mit einem Ausführungsbeispiel des erfindungsgemäßen Sprachdialogsystems und -
2 zeigt eines Detailansicht des Ausführungsbeispiels des erfindungsgemäßen Sprachdialogsystems.
-
1 shows a vehicle with an embodiment of the speech dialogue system according to the invention and -
2 shows a detailed view of the embodiment of the speech dialogue system according to the invention.
Mit Bezug zu
Das Fahrzeug 1 umfasst eine Steuereinheit 3, mit der eine Erfassungseinheit 2 und eine Ausgabeeinheit 6 gekoppelt sind. Die Steuereinheit 3 umfasst eine erste 4 und eine zweite Dialoganalyseeinheit 5.The vehicle 1 comprises a control unit 3, to which a detection unit 2 and an output unit 6 are coupled. The control unit 3 comprises a first dialogue analysis unit 4 and a second dialogue analysis unit 5.
Die Erfassungseinheit 2 ist auf an sich bekannte Weise ausgebildet und umfasst insbesondere ein Mikrofon. Die Erfassung von lautlichen Äußerungen eines Nutzers, insbesondere eines Fahrers des Fahrzeugs 1, erfolgt bei dem Ausführungsbeispiel fortlaufend, wobei in dem Beispiel erfasste Äußerungen in einem Ringspeicher so gespeichert werden, dass lediglich die Äußerungen innerhalb eines vergangenen Zeitintervalls vorgegebener Länge gespeichert und ältere Äußerungen wieder gelöscht werden. Erst wenn erfasst wurde, dass der Nutzer einen Dialog mit dem Sprachdialogsystem ausführen möchte, werden in diesem Fall auch Äußerungen über einen längeren Zeitraum hinweg gespeichert. Bei weiteren Ausführungsbeispielen erfolgt die Erfassung und Speicherung auf eine Eingabe des Nutzers hin, etwa ausgelöst durch Betätigen eines Eingabeelements oder durch ein Signal einer mittels Sprachbedienung bedienbaren Einrichtung, die den Nutzer zur Eingabe von Sprachbefehlen auffordert und das Sprachdialogsystem zum Erfassen der Sprachbefehle aktiviert.The recording unit 2 is designed in a manner known per se and comprises, in particular, a microphone. The recording of vocal utterances of a user, in particular of a driver of the vehicle 1, takes place continuously in the exemplary embodiment, wherein, in the example, recorded utterances are stored in a ring buffer such that only the utterances within a past time interval of a predetermined length are stored, and older utterances are deleted. Only when it has been recorded that the user wishes to engage in a dialogue with the speech dialogue system are utterances stored over a longer period of time. In further exemplary embodiments, the recording and storage takes place upon input from the user, for example, triggered by actuating an input element or by a signal from a device operable via voice control. tion that prompts the user to enter voice commands and activates the voice dialogue system to record the voice commands.
Auch die Ausgabeeinheit 5 ist auf an sich bekannte Weise ausgebildet und umfasst insbesondere einen Lautsprecher. Sie ist bei dem Ausführungsbeispiel in ein Infotainmentsystem des Fahrzeugs 1 integriert, das verschiedene Funktionen der Wiedergabe von Medien, den Betrieb von Kommunikationseinrichtungen und die Ausgabe von Meldungen von Fahrerassistenzsystemen sowie die jeweils zugeordnete Erfassung von Nutzereingaben implementiert.The output unit 5 is also designed in a manner known per se and, in particular, comprises a loudspeaker. In the exemplary embodiment, it is integrated into an infotainment system of the vehicle 1, which implements various functions for media playback, the operation of communication devices, and the output of messages from driver assistance systems, as well as the associated recording of user inputs.
Mit Bezug zu
Bei dem Ausführungsbeispiel des Verfahrens wird zunächst eine Spracheingabe eines Nutzers mittels der Erfassungseinheit 2 erfasst und in einem ersten Schritt S1 in maschinenlesbaren Text umgewandelt. Dabei werden an sich bekannte Verfahren der Umwandlung (speech-to-text, STT) genutzt. In einem zweiten Schritt S2 wird der so erzeugte Text an eine Einheit zum Verständnis natürlicher Sprache (natural language understanding unit, NLU) übertragen und dort verarbeitet. Insbesondere erfolgt die Verarbeitung mittels einer Einheit zum Erkennen von Entitäten (named entity recognizer, NER), die hierfür eine datentechnische Verbindung zu einer ersten Datenbank DB1 aufbaut.In the exemplary embodiment of the method, a user's voice input is first captured by the capture unit 2 and converted into machine-readable text in a first step S1. Known conversion methods (speech-to-text, STT) are used. In a second step S2, the text thus generated is transmitted to a natural language understanding unit (NLU) and processed there. In particular, the processing is carried out by a named entity recognizer (NER), which establishes a data connection to a first database DB1 for this purpose.
Die erste Datenbank DB1 speichert Allgemein- und domänenspezifisches Wissen (knowledge base), das konkret die semantische Beziehung zwischen verschiedenen Entitäten repräsentiert. Solche Beziehungen können beispielsweise auf die folgende Weise repräsentiert werden: (Bill Gates; geboren in; Seattle), (Seattle; liegt in; USA). Im Schritt S2 bestimmte Entitäten werden nun dazu verwendet, zugeordnete Informationen zu erfassen und einen Kontext einer Gesprächssituation zwischen dem Nutzer und dem Sprachdialogsystem zu erkennen. The first database DB1 stores general and domain-specific knowledge (knowledge base), which specifically represents the semantic relationships between different entities. Such relationships can be represented, for example, as follows: (Bill Gates; born in; Seattle), (Seattle; located in; USA). Entities identified in step S2 are then used to capture associated information and recognize the context of a conversation between the user and the speech dialog system.
Anschließend werden zu der Spracheingabe passende Antwortausgaben ermittelt. Dies erfolgt mittels der ersten 4 und zweiten Dialoganalyseeinheit 5. Die erste Dialoganalyseeinheit 4 verarbeitet die Spracheingabe und die darin bestimmten Entitäten in einem Schritt S4 mittels eines tiefen neuronalen Netzes (deep neural network, DNN), das mittels statistischer Verfahren eine erste Antwortausgabe oder eine Reihe potentieller erster Antwortausgaben bestimmt. Das DNN greift hierfür ferner auf eine weitere Datenbank DB3 zu, die einen Dialogverlauf beziehungsweise eine Dialoghistorie zwischen dem Nutzer und dem System speichert. Aus den dort gespeicherten Daten kann daher ein Kontext für die aktuelle Spracheingabe bestimmt werden. Es wird eine nicht-zielgeführte Dialoganalyse durchgeführt, das heißt, es wird nicht ein Ziel bestimmt, auf welches der Dialog ausgerichtet ist, beispielsweise die Erlangung bestimmter Informationen als Nutzereingabe. Vielmehr dient die Dialoganalyse und das Erzeugen der ersten Antwortausgabe dazu, den Dialog weiterzuführen, bis erkannt wird, dass eine bestimmte Bedienhandlung durchgeführt werden soll und eine zielgeführte Dialoganalyse relevanter ist.Subsequently, response outputs matching the speech input are determined. This is done by the first dialogue analysis unit 4 and the second dialogue analysis unit 5. The first dialogue analysis unit 4 processes the speech input and the entities identified therein in a step S4 using a deep neural network (DNN), which uses statistical methods to determine a first response output or a series of potential first response outputs. For this purpose, the DNN also accesses another database DB3, which stores a dialogue history between the user and the system. A context for the current speech input can therefore be determined from the data stored there. A non-goal-guided dialogue analysis is performed, meaning that a goal toward which the dialogue is directed is not determined, for example, obtaining specific information as user input. Rather, the dialogue analysis and the generation of the first response output serve to continue the dialogue until it is recognized that a specific operating action should be performed and a goal-guided dialogue analysis is more relevant.
Das DNN greift dabei ferner auf eine weitere Datenbank DB2 zu, in der personalisierte Informationen über das Verhalten, die Interessen sowie Präferenzen des Nutzers gespeichert sind. Das heißt, bei dem Ausführungsbeispiel wird davon ausgegangen, dass eine Identität des Nutzers bekannt ist. Diese wird durch an sich bekannte Verfahren festgestellt, insbesondere mittels einer Eingabe, eines persönlichen Fahrzeugschlüssels oder eines mobilen Nutzergeräts.The DNN also accesses another database, DB2, in which personalized information about the user's behavior, interests, and preferences is stored. This means that the exemplary embodiment assumes that the user's identity is known. This identity is determined using conventional methods, in particular by means of an input, a personal vehicle key, or a mobile user device.
Die zweite Dialoganalyseeinheit 5 umfasst eine Skript-Einheit, mittels derer in einem Schritt S5 eine zweite Antwortausgabe erzeugt wird. Hierbei erfolgt eine zielgeführte Dialoganalyse mittels eines regelbasierten Expertensystems, bei dem die Spracheingabe einem vorgegebenen aktuellen Dialogzustand zugeordnet wird, für den wiederum eine bestimmte zweite Antwortausgabe definiert ist. Die Skript-Einheit greift hierzu ebenfalls auf den in der Datenbank DB3 gespeicherten Dialogverlauf zu. Insbesondere wird zunächst eine Eingabeintention bestimmt, beispielsweise eine bestimmte bedienbare Funktion einer Einrichtung des Fahrzeugs 1, zu der im aktuellen Kontext mit einer bestimmten Wahrscheinlichkeit eine Bedienhandlung erfasst werden soll. Eine solche Bedienhandlung stellt dann das Ziel der Bedienung mittels der zweiten Dialoganalyseeinheit 5 dar, wobei in diesem Fall der Dialog so geführt wird, dass die notwendigen Eingaben des Nutzers für Bedienhandlung erfasst werden.The second dialogue analysis unit 5 comprises a script unit, by means of which a second response output is generated in a step S5. Here, a goal-guided dialogue analysis is carried out using a rule-based expert system, in which the voice input is assigned to a predetermined current dialogue state, for which in turn a specific second response output is defined. For this purpose, the script unit also accesses the dialogue history stored in the database DB3. In particular, an input intention is first determined, for example a specific operable function of a device of the vehicle 1, for which an operating action is to be recorded with a specific probability in the current context. Such an operating action then represents the goal of the operation by means of the second dialogue analysis unit 5, wherein in this case the dialogue is conducted in such a way that the necessary inputs from the user for the operating action are recorded.
Bei einem weiteren Ausführungsbeispiel greift auch die Skript-Einheit auf die Datenbank DB2 mit personalisierte Informationen zu und verwendet die dort gespeicherten Daten über den Nutzer, um beispielsweise die Eingabeintention oder den aktuellen Dialogzustand genauer zu bestimmen.In a further embodiment, the script unit also accesses the DB2 database with personalized information and uses the data about the user stored there to more precisely determine, for example, the input intention or the current dialog state.
Bei einem weiteren Ausführungsbeispiel werden ferner Umgebungsdaten erfasst. Diese umfassen beispielsweise Informationen über einen Zustand des Fahrzeugs 1, seinen Fahrbetrieb oder eine Situation in seinem Innenraum. Ferner können Informationen über die Position des Fahrzeugs erfasst werden, sowohl betreffend den aktuellen Zeitpunkt, als auch vorhergegangenen Zeitpunkte oder Positionen einer geplanten Route. Anhand der Positionsinformationen können weitere Daten erfasst werden, etwa über Sonderziele in einer Umgebung, Gebäude und Einrichtungen, Gaststätten und Einkaufsmöglichkeiten oder ähnliches. Weiterhin können auch gespeicherte Daten und Informationen, wie zum Beispiel zu Einrichtungsgegenständen eines Smart Home des Nutzers, berücksichtigt werden. Ferner können weitere Informationen über die Umgebung des Fahrzeugs 1 beziehungsweise des Nutzers ermittelt und für eine weitere Bestimmung der Situation gespeichert werden. Die Erfassung von Umgebungsdaten oder anderen Informationen kann dabei nicht nur durch Sensoren des Fahrzeugs 1 erfolgen, sondern es können auch weitere Informationsquellen berücksichtigt werden, etwa ein Rechnernetzwerk, Eingaben eines Nutzers und/oder verfügbare Speichermedien. Die Antwortausgaben werden dann auch anhand dieser Umgebungsdaten und/oder weiteren Informationen erzeugt, wobei anhand der verfügbaren Daten beispielsweise ein Kontext bestimmt wird.In a further embodiment, environmental data is also recorded. This includes, for example, information about a state of the vehicle 1, its driving operation, or a situation in its interior. Furthermore, Information about the position of the vehicle is recorded, both regarding the current time and previous times or positions on a planned route. Using the position information, further data can be recorded, for example about points of interest in the area, buildings and facilities, restaurants and shops, or similar. Furthermore, stored data and information, such as furnishings in a user's smart home, can also be taken into account. Furthermore, further information about the environment of the vehicle 1 or the user can be determined and stored for further determination of the situation. The recording of environmental data or other information can not only be carried out by sensors of the vehicle 1, but other information sources can also be taken into account, such as a computer network, user inputs, and/or available storage media. The response outputs are then also generated based on this environmental data and/or other information, whereby, for example, a context is determined based on the available data.
Die erzeugte erste und zweite Antwortausgabe werden an einen Dialog-Manager übertragen, der in einem Schritt S6 entscheidet, ob die erste oder die zweite Antwortausgabe ausgegeben werden soll. Das heißt, der Dialogmanager entscheidet zwischen mittels unterschiedlicher Dialoganalysen erzeugten Antworten auf die Spracheingabe. Hierzu werden Relevanzwahrscheinlichkeiten genutzt, die bei dem Ausführungsbeispiel bei der Erzeugung der Antwortausgaben durch die erste 4 und zweite Dialoganalyseeinheit 5 bestimmt wurden.The generated first and second response outputs are transmitted to a dialogue manager, which decides in step S6 whether the first or second response output should be output. This means that the dialogue manager decides between responses to the speech input generated using different dialogue analyses. For this purpose, relevance probabilities are used, which in the exemplary embodiment were determined by the first dialogue analysis unit 4 and the second dialogue analysis unit 5 when generating the response outputs.
Das Bestimmen der Relevanzwahrscheinlichkeiten erfolgt auf an sich bekannte Weise. Beispielsweise wird die Antwortausgabe beziehungsweise eine Vielzahl potentieller Antwortausgaben durch das DNN der ersten Dialoganalyseeinheit 4 mittels statistischer Verfahren bestimmt und dabei wird auch eine Wahrscheinlichkeit bestimmt, mit der die erste Antwortausgabe als Antwort auf die Spracheingabe relevant ist. Diese Wahrscheinlichkeit wird das Relevanzwahrscheinlichkeiten mit der ersten Antwortausgabe an den Dialogmanager Dialog-Manager übergeben. In analoger Weise wird durch die Skript-Einheit der zweiten Dialoganalyseeinheit 5 eine Relevanzwahrscheinlichkeit für die ausgegebene zweite Antwortausgabe bestimmt, wobei beispielsweise eine Konfidenz beim Bestimmen der Eingabeintention berücksichtigt wird, und an den Dialog-Manager übergeben.The relevance probabilities are determined in a manner known per se. For example, the response output or a plurality of potential response outputs is determined by the DNN of the first dialogue analysis unit 4 using statistical methods, and in the process, a probability is also determined with which the first response output is relevant as a response to the voice input. This probability is passed along with the first response output to the dialogue manager. In a similar manner, the script unit of the second dialogue analysis unit 5 determines a relevance probability for the output of the second response output, taking into account, for example, a confidence factor when determining the input intention, and passes this probability to the dialogue manager.
Zum Entscheiden zwischen der ersten und zweiten Antwortausgabe wird ferner der Kontext des durchgeführten Dialogs berücksichtigt, insbesondere durch Zugriff auf die Datenbank DB3, die den Dialogverlauf speichert, sowie auf die Datenbank DB2 mit personalisierten Informationen. Anhand der dort erfassten Daten wird der Kontext näher bestimmt und die Relevanzwahrscheinlichkeiten für die erste und zweite Antwortausgabe kann präzisiert werden. Umgekehrt werden im Schritt S6 auch Daten bereitgestellt, um die Datenbanken DB2, DB3 zu aktualisieren, beispielsweise indem der Dialogverlauf um die schließlich ausgegebene Antwortausgabe ergänzt und eine dabei bestimmte persönliche Präferenz des Nutzers gespeichert wird.To decide between the first and second response output, the context of the dialogue being conducted is also taken into account, in particular by accessing the database DB3, which stores the dialogue history, as well as the database DB2 with personalized information. Based on the data recorded there, the context is further determined, and the relevance probabilities for the first and second response output can be specified. Conversely, in step S6, data is also provided to update the databases DB2 and DB3, for example, by supplementing the dialogue history with the final response output and storing a personal preference determined by the user.
In einem weiteren Schritt S7 erfolgt eine Umwandlung der Antwortausgabe mit der höchsten Relevanzwahrscheinlichkeit in gesprochene Sprache, wobei hierzu auf an sich bekannte Weise eine Umwandlung des Textes in gesprochene Sprache (text-to-speech, TTS) erfolgt. Die Ausgabe wird schließlich mittels der Ausgabeeinheit 6 im Fahrzeug 1 ausgegeben.In a further step S7, the response output with the highest relevance probability is converted into spoken language, whereby the text is converted into spoken language (text-to-speech, TTS) in a conventional manner. The output is finally output via output unit 6 in vehicle 1.
Ein Dialog zwischen dem Nutzer und dem als „Bot“ bezeichneten Sprachdialogsystem kann beispielsweise auf folgende Weise ablaufen:
- Nutzer: „Ich habe gestern den Trailer zum neuen „König der Löwen“-Film gesehen, was hältst du vom Film?"
- Bot: „Ich mag die fotorealistische Darstellung der Tiere im Film.“
- Nutzer: „Das heißt, dass im Film keine echten Tiere vorkommen?“
- Bot: „Der gesamte Film entstand am Computer.“
- Nutzer: „Das klingt beeindruckend. Kannst du mir sagen, ob der Film irgendwo in der Nähe aufgeführt wird?“
- User: "I saw the trailer for the new "Lion King" movie yesterday. What do you think of the film?"
- Bot: “I like the photorealistic depiction of the animals in the film.”
- User: “So that means there are no real animals in the film?”
- Bot: “The entire film was created on the computer.”
- User: "That sounds impressive. Can you tell me if the film is showing anywhere nearby?"
Bis zu diesem Punkt werden die Ausgaben des Bots mittels des neuronalen Netzes der ersten Dialoganalyseeinheit 4 erzeugt, die einen Small-Talk-Bot implementiert. Die Antworten werden datengetrieben erzeugt, das heißt, das System generiert die wahrscheinlichsten Antworten auf der Grundlage zuvor gelernter, früherer Dialoge.Up to this point, the bot's outputs are generated using the neural network of the first dialogue analysis unit 4, which implements a small-talk bot. The responses are generated data-driven, meaning the system generates the most probable responses based on previously learned, previous dialogues.
An diesem Punkt des Dialogverlaufs erkennt das System anhand der Frage des Nutzers, dass eine Handlungsanweisung an das System vorliegt, nämlich das Suchen eines Kinos in der Nähe, das den Film zeigt. Diese Funktion kann durch eine Funktion des Systems im Fahrzeug 1 ausgeführt werden. Hierzu wird durch Identifizieren der Entitäten in der Anfrage des Nutzers sowie in der Dialoghistorie die Entität „der Film“ als Referenz auf den Filmtitel „König der Löwen“ aufgelöst und zusammen mit dem Befehl zur Suche nach einer entsprechenden Spielstätte, im Allgemeinen also zu einer POI-Suche, an das Sprachdialogsystem weitergegeben. Nachfolgend werden nun Antwortausgaben durch die zweite Dialoganalyseeinheit 5 ausgegeben, wobei ein skriptbasierter Dialog zum Abarbeiten einer Anfrage des Nutzers an die POI-Suche durchgeführt wird und gegebenenfalls weitere Informationen vom Nutzer abgefragt werden. Beispielsweise kann nun auch aus dem Dialog heraus eine Bedienhandlung erfasst werden, durch die das Navigationssystem des Fahrzeugs 1 für eine Fahrt zu einem entsprechenden Kino eingestellt wird und/oder in einem Kalender des Nutzers ein Termin für einen Kinobesuch geplant wird.At this point in the dialogue, the system recognizes from the user's question that an instruction has been given to the system, namely to search for a nearby cinema showing the film. This function can be performed by a function of the system in vehicle 1. To do this, by identifying the entities in the user's request and in the dialogue history, the entity "the film" is resolved as a reference to the film title "The Lion King" and passed on to the speech dialogue system along with the command to search for a corresponding cinema—generally, a POI search. Subsequently, response outputs are output by the second dialog analysis unit 5, whereby a script-based dialog is executed to process a user's POI search request and, if necessary, further information is requested from the user. For example, an operating action can now also be recorded from the dialog, through which the navigation system of vehicle 1 is set for a trip to a corresponding cinema and/or an appointment for a cinema visit is scheduled in the user's calendar.
BezugszeichenlisteList of reference symbols
- 11
- Fahrzeugvehicle
- 22
- ErfassungseinheitRegistration unit
- 33
- SteuereinheitControl unit
- 44
- Erste DialoganalyseeinheitFirst dialogue analysis unit
- 55
- Zweite DialoganalyseeinheitSecond dialogue analysis unit
- 66
- AusgabeeinheitOutput unit
- S1 bis S7S1 to S7
- SchrittStep
- DB1, DB2, DB3DB1, DB2, DB3
- Datenbankdatabase
- DMDM
- DialogmanagerDialogue Manager
- NERNER
- Einheit zum Erkennen von EntitätenEntity recognition unit
Claims (9)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102019217751.4A DE102019217751B4 (en) | 2019-11-18 | 2019-11-18 | Method for operating a speech dialogue system and speech dialogue system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102019217751.4A DE102019217751B4 (en) | 2019-11-18 | 2019-11-18 | Method for operating a speech dialogue system and speech dialogue system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE102019217751A1 DE102019217751A1 (en) | 2021-05-20 |
| DE102019217751B4 true DE102019217751B4 (en) | 2025-08-21 |
Family
ID=75683372
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE102019217751.4A Active DE102019217751B4 (en) | 2019-11-18 | 2019-11-18 | Method for operating a speech dialogue system and speech dialogue system |
Country Status (1)
| Country | Link |
|---|---|
| DE (1) | DE102019217751B4 (en) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102021003074B3 (en) * | 2021-06-15 | 2022-08-25 | Mercedes-Benz Group AG | Method and device for generating voice output in a vehicle |
| DE102023005196A1 (en) * | 2023-12-16 | 2025-06-18 | Mercedes-Benz Group AG | Method for answering environment-related questions from a vehicle occupant and driver assistance system |
| DE102024101275A1 (en) | 2024-01-17 | 2025-07-17 | Bayerische Motoren Werke Aktiengesellschaft | Assistance system and assistance procedure for a vehicle |
| US20260024526A1 (en) * | 2024-07-16 | 2026-01-22 | GM Global Technology Operations LLC | Vehicle user interface and control system using large language models |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1346556B1 (en) * | 2000-12-18 | 2011-10-19 | Deutsche Telekom AG | Dialog system for man-machine interaction, comprising co-operating dialog devices |
| DE102013222757A1 (en) * | 2012-11-13 | 2014-05-15 | Gm Global Technology Operations, Llc | Adaptation methods and systems for speech systems |
| DE102013219649A1 (en) * | 2013-09-27 | 2015-04-02 | Continental Automotive Gmbh | Method and system for creating or supplementing a user-specific language model in a local data memory connectable to a terminal |
-
2019
- 2019-11-18 DE DE102019217751.4A patent/DE102019217751B4/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1346556B1 (en) * | 2000-12-18 | 2011-10-19 | Deutsche Telekom AG | Dialog system for man-machine interaction, comprising co-operating dialog devices |
| DE102013222757A1 (en) * | 2012-11-13 | 2014-05-15 | Gm Global Technology Operations, Llc | Adaptation methods and systems for speech systems |
| DE102013219649A1 (en) * | 2013-09-27 | 2015-04-02 | Continental Automotive Gmbh | Method and system for creating or supplementing a user-specific language model in a local data memory connectable to a terminal |
Also Published As
| Publication number | Publication date |
|---|---|
| DE102019217751A1 (en) | 2021-05-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE102019217751B4 (en) | Method for operating a speech dialogue system and speech dialogue system | |
| EP0852051B1 (en) | Process for automatic control of one or more devices by voice commands or by real-time voice dialog and apparatus for carrying out this process | |
| DE112016004863T5 (en) | Parameter collection and automatic dialog generation in dialog systems | |
| EP1927980B1 (en) | Method for classifying spoken language in spoken dialogue systems | |
| DE60015531T2 (en) | CLIENT SERVER VOICE RECOGNITION SYSTEM | |
| DE112020002288T5 (en) | Method, system and apparatus for understanding and generating human conversational cues | |
| DE102019119171A1 (en) | VOICE RECOGNITION FOR VEHICLE VOICE COMMANDS | |
| DE102014109122A1 (en) | Systems and methods for result-based arbitration in speech dialogue systems | |
| US11438283B1 (en) | Intelligent conversational systems | |
| Beveridge et al. | Automatic generation of spoken dialogue from medical plans and ontologies | |
| CN113821620B (en) | Multi-round dialogue task processing method and device and electronic equipment | |
| EP3735688B1 (en) | Method, device and computer-readable storage medium having instructions for processing a speech input, motor vehicle, and user terminal with speech processing | |
| DE102019218918A1 (en) | DIALOGUE SYSTEM, ELECTRONIC DEVICE AND METHOD OF CONTROLLING THE DIALOGUE SYSTEM | |
| DE102005018174A1 (en) | Method for the targeted determination of a complete input data record in a speech dialogue 11 | |
| EP1321851B1 (en) | Method and system for the usage of user selectable markers as entry points in the structure of a menu of a speech dialogue system | |
| EP3576084B1 (en) | Efficient dialog design | |
| WO2002037473A1 (en) | Robust voice recognition with data bank organisation | |
| EP3115886A1 (en) | Method for operating a voice controlled system and voice controlled system | |
| DE102020100638A1 (en) | System and method for a dialogue with a user | |
| DE102019133133A1 (en) | Assistance system through which the output of at least one media content is controlled in a room, motor vehicle and operating method for the assistance system | |
| DE102019201413B4 (en) | Method for operating and/or controlling a dialogue system | |
| EP2012218A2 (en) | Method for influencing the interpretation of multimodal input | |
| DE102024126727B3 (en) | Method for automatically populating a database with user information using a voice dialogue system, as well as a voice dialogue system and a motor vehicle, comprising the voice dialogue system | |
| Lucas-Cuesta et al. | Dialogue-based management of user feedback in an autonomous preference learning system | |
| DE102004011426B3 (en) | Device for detecting emotion in voice signal for man-machine interface has first function block using fixed processing script that is emotion recognition standard, second function block for supplying output from input using adapted script |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| R012 | Request for examination validly filed | ||
| R079 | Amendment of ipc main class |
Free format text: PREVIOUS MAIN CLASS: G10L0015220000 Ipc: G10L0015320000 |
|
| R016 | Response to examination communication | ||
| R018 | Grant decision by examination section/examining division |