WO2021144155A1 - Verfahren, computerprogramm und vorrichtung zum verarbeiten einer nutzereingabe - Google Patents

Verfahren, computerprogramm und vorrichtung zum verarbeiten einer nutzereingabe Download PDF

Info

Publication number
WO2021144155A1
WO2021144155A1 PCT/EP2021/050016 EP2021050016W WO2021144155A1 WO 2021144155 A1 WO2021144155 A1 WO 2021144155A1 EP 2021050016 W EP2021050016 W EP 2021050016W WO 2021144155 A1 WO2021144155 A1 WO 2021144155A1
Authority
WO
WIPO (PCT)
Prior art keywords
entity
user input
knowledge base
knowledge
data
Prior art date
Application number
PCT/EP2021/050016
Other languages
English (en)
French (fr)
Inventor
Raveesh Meena
Mark PLESCHKA
Spyros Kousidis
Okko Buss
Original Assignee
Volkswagen Aktiengesellschaft
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Volkswagen Aktiengesellschaft filed Critical Volkswagen Aktiengesellschaft
Publication of WO2021144155A1 publication Critical patent/WO2021144155A1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/247Thesauruses; Synonyms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation

Definitions

  • the present invention relates to a method, a computer program with instructions and a device for processing user input.
  • the invention further relates to a means of locomotion in which a method according to the invention or a device according to the invention is used.
  • Voice-based approaches for user interaction are increasingly being implemented in modern motor vehicles. Voice inputs from a user are processed and information is output to the user in natural language.
  • EP 3 392 878 A1 describes a method for operating a speech recognition device.
  • a voice command is received via a microphone.
  • an operation corresponding to the keyword command is performed. If the received voice command does not correspond to a previously stored keyword command, voice data including the voice command is transmitted to a voice server.
  • No. 7,398,209 B2 describes a method that reacts to a user-generated speech utterance in natural language.
  • the user-generated speech utterance is first received in natural language.
  • a domain for the utterance is then determined.
  • at least one domain agent is then selected to process the utterance.
  • the domain agent is a stand-alone executable file that receives, processes, and responds to a query or command.
  • DE 102011 120 119 A1 describes a method for voice-based retrieval of externally provided information in a motor vehicle.
  • the method involves mapping information structures for graphical-haptic interaction in a knowledge network to information structures of a semantic world model using a topic-related specifiable semantic world model.
  • the information structures of the semantic world model are mapped into information structures for multimodal interaction in the motor vehicle using a subject-related, specifiable interaction model.
  • US 2016/0163312 A1 describes a method for disambiguating heteronyms in speech synthesis. In the method, a voice input from a user is received which contains a heteronym.
  • the speech input is processed using an automatic speech recognition system to determine a phonemic string that corresponds to the heteronym uttered by the user in the speech input.
  • Correct pronunciation of the heteronym is determined based on the phonemic string or using an n-gram language model of the automatic speech recognition system.
  • a dialog response to the voice input is generated in the form of a voice output, the dialog response containing the heteronym pronounced according to the correct pronunciation.
  • NLU Natural Language Understanding
  • NLU components in the vehicle are primarily intended to support only typical functions required in the vehicle, such as route planning, the operation of an infotainment system or the Making phone calls.
  • typical functions required in the vehicle such as route planning, the operation of an infotainment system or the Making phone calls.
  • NLU components in the vehicle can only understand a limited set of entities. This in turn forces the user to only use certain phrases.
  • the desired behavior of the wizard is that the wizard can provide a specific answer. Even if the answer is a rejection, the assistant appears more intelligent and the user learns something about the functionality of the assistant. A specific answer to the question "How did Borussia Dortmund play?" could be, for example, "Undoubtedly, I cannot help you on the subject of sports".
  • NLU models and dialog models are implemented for more than the functionally supported domains of the voice assistant in order to be able to handle inquiries regarding certain expected functions that are not available.
  • an assistant for an infotainment system could understand inquiries about the weather and specifically reject them because the “weather” domain was taken into account in the NLU and dialogue development, although no weather service was planned.
  • the development effort increases with each domain.
  • SMS Short Message Service
  • chat message email to a chatbot of a service provider.
  • a method for processing a user input comprises the steps:
  • a class for the at least one entity being determined on the basis of the data queried from the knowledge base, and it being determined on the basis of the class whether the at least one entity belongs to a supported domain or an unsupported domain;
  • a computer program contains instructions which, when executed by a computer, cause the computer to carry out the following steps for processing user input:
  • the term computer is to be understood broadly. In particular, it also includes control devices, integrated systems and other processor-based data processing devices.
  • the computer program can, for example, be provided for electronic retrieval or can be stored on a computer-readable storage medium.
  • a device for processing a user input has:
  • a receiving module for receiving user input
  • an extraction module for extracting at least one entity from the user input
  • a query module for querying data for the at least one entity from a knowledge base
  • a processing module for evaluating the data requested from the knowledge base, the processing module using the data requested from the knowledge base to determine a class for the at least one entity and, on the basis of the class, to determine whether the at least one entity belongs to a supported domain or a non-supported domain Domain, and for generating a response to user input using results of the evaluation.
  • the NLU component is provided with knowledge about entities about the relationships between the entities by means of a knowledge base.
  • This knowledge can be used to assign entities that are not known to the NLU component to a domain and to determine a user intention that is covered by the functional scope of the wizard. If the determined user intention lies outside the functional scope of the assistant, at least a meaningful rejection or a rejection that is understandable for the user can be generated as a response.
  • a class for the at least one entity is determined on the basis of the data queried from the knowledge base. The class can be used to easily determine which domain an entity falls into.
  • the set of classes can be derived manually or algorithmically from the relational hierarchy between the entities and the abstract types in a hierarchical knowledge base.
  • the at least one entity belongs to a supported domain or an unsupported domain.
  • Manually or algorithmically created and maintained lists of classes can be kept for the supported domains and the unsupported domains.
  • the list of unsupported domains can in particular include domains that are outside the scope of functions of a digital assistant, but for which inquiries from the user are expected. If the entity belongs to a class which in turn belongs to a supported domain, a positive system response can be generated. If, on the other hand, the entity falls into an unsupported domain, at least a specific rejection for this domain can be generated as a response.
  • the data queried from the knowledge base comprise relational attributes of the at least one entity.
  • the relational attributes can be, for example, the indication that the entity is an occurrence of another entity, or that another entity is part of the extracted entity.
  • Such attributes can be used by an NLU component for meaningful conclusions.
  • the data queried from the knowledge base are determined by querying a knowledge graph.
  • queries can easily be used to verify whether an entity is an expression of an abstract entity. In the simplest case, it can be checked, for example, whether the entity is connected to the abstract entity by a property path "Subclass-of" or "Instance-of".
  • the assistant can learn algorithmically which of the alternatives is better suited for human understanding.
  • Such an algorithm can use knowledge specified by the system developer, for example. Alternatively or additionally, the algorithm can automatically learn from general knowledge about the world, or even use the reaction of the user to the selected system reaction in order to learn whether the reaction was appropriate for the user.
  • a comparison with results of a non-knowledge-based language processing is carried out. This makes it possible to disambiguate the hypotheses of the knowledge base and to select the correct type of entity if the knowledge base provides several results.
  • a method according to the invention or a device according to the invention is preferably used in a (partially) autonomous or manually controlled means of locomotion.
  • the means of transport can in particular be a motor vehicle, but also a ship, a manned or unmanned aircraft, e.g. a drone or a Volocopter, etc.
  • the solution according to the invention can also be used in other application scenarios, e.g. in a dialog system or in a user terminal. Examples of such user terminals are smartphones, tablets or portable and stationary computers.
  • FIG. 1 schematically shows a method for processing a user input
  • FIG. 2 shows a first embodiment of an apparatus for processing a user input
  • FIG. 3 shows a second embodiment of an apparatus for processing user input
  • FIG. 8 schematically shows a system diagram of an NLU framework according to the invention.
  • a user input is received 10, for example a voice input or a text-based user input.
  • At least one entity is then extracted from the user input 11.
  • the input variable for this step is a text sequence that was generated from a speech utterance when the user input was received 10, for example.
  • Data for the at least one entity are then queried from a knowledge base 12.
  • the data queried from the knowledge base include relational attributes of the at least one entity. These can be determined by querying a knowledge graph.
  • the data queried from the knowledge base are evaluated 13. It can happen that in step 11 no entity could be recognized. In this case, of course, no data can be queried from a knowledge base.
  • a response to the user input is generated 14.
  • the response can be, for example, a voice output or a text output.
  • a class can be determined for the at least one entity. Based on the class, it can be determined whether the at least one entity belongs to a supported domain or an unsupported domain. In the evaluation 13 it can also be determined whether the at least one Entity is outside of a given scope. In addition, a comparison can be made with the results of non-knowledge-based language processing.
  • FIG. 2 shows a simplified schematic illustration of a first embodiment of a device 20 for processing a user input NE.
  • the device 20 has an input 21 via which a receiving module 22 can receive a user input NE, for example a voice input or a text-based user input.
  • An extraction module 23 extracts at least one entity from the user input NE.
  • the input variable for the extraction module 23 is a text sequence that was generated, for example, by the receiving module 22 when receiving the user input from a voice utterance.
  • a query module 24 of the device 20 queries data for the at least one entity from a knowledge base 51.
  • the query module 24 can access the knowledge base 51 via an interface 27.
  • the data queried from the knowledge base include relational attributes of the at least one entity.
  • a processing module 25 evaluates the data queried from the knowledge base 51 and generates a response to the user input NE using the results of this evaluation. The response generated can then be output via the interface 27.
  • the answer can be, for example, a voice output or a text output. It can happen that the extraction module 23 could not recognize an entity. In this case, of course, no data can be queried from a knowledge base. However, the knowledge that no entity was contained in the user input can also be used by the processing module 25 for an informed decision.
  • the processing module 25 can be set up to determine a class for the at least one entity during the evaluation. Based on the class, it can be determined whether the at least one entity belongs to a supported domain or an unsupported domain. The processing module 25 can also determine whether the at least one entity is outside of a predetermined scope. In addition, the processing module 25 can be set up to carry out a comparison with results of a non-knowledge-based language processing.
  • the receiving module 22, the extraction module 23, the query module 24 and the processing module 25 can be controlled by a control module 26. If necessary, settings of the receiving module 22, the extraction module 23, the query module 24, the processing module 25 or the control module 26 can be changed via a user interface 29.
  • the data occurring in the device 20 can, if necessary, be stored in a memory 28 of the device 20, for example for a later evaluation or for use by the components of the device 20.
  • the receiving module 22, the extraction module 23, the query module 24, the processing module 25 and the control module 26 can be implemented as dedicated hardware, for example as integrated circuits. Of course, they can also be partially or completely combined or implemented as software that runs on a suitable processor, for example on a GPU.
  • the input 21 and the interface 27 can be implemented as separate interfaces or as a combined bidirectional interface.
  • the device 30 has a processor 32 and a memory 31.
  • the device 30 is a computer, a workstation or a control device. Instructions are stored in the memory 31 which, when executed by the processor 32, cause the device 30 to carry out the steps in accordance with one of the methods described.
  • the instructions stored in the memory 31 thus embody a program which can be executed by the processor 32 and which implements the method according to the invention.
  • the device has an input 33 for receiving user input and information from a knowledge database. Data generated by the processor 32 are provided via an output 34. In addition, they can be stored in memory 31.
  • the input 33 and the output 34 can be combined to form a bidirectional interface.
  • Processor 32 may include one or more processing units, such as microprocessors, digital signal processors, or combinations thereof.
  • the memories 28, 31 of the described embodiments can have volatile and / or non-volatile storage areas and comprise a wide variety of storage devices and storage media, for example hard disks, optical storage media or semiconductor memories. Information can also be stored in a cloud.
  • Fig. 4 shows schematically a means of locomotion 40 in which a solution according to the invention is implemented.
  • the means of locomotion 40 is a motor vehicle.
  • the motor vehicle has a number of assistance systems 41, one of which is shown as an example.
  • a sensor system 42 which is used by the assistance systems 41 and which can be used to record information about the surroundings of the motor vehicle.
  • An operation of the motor vehicle can partially speech-based.
  • the motor vehicle therefore has a device 20 according to the invention for processing a user input from a driver or another user. Further components of the motor vehicle are, for example, a navigation system 43 and a data transmission unit 44.
  • a connection to a service provider 50 can be established by means of the data transmission unit 44, in particular to a provider of a knowledge database.
  • the knowledge database can be an offline service that runs in the means of transport 40, or an online service, for example a cloud service or simply a website.
  • a memory 45 is provided for storing data. The data exchange between the various components of the motor vehicle takes place via a network 46.
  • the above-described limitation of current NLU components is overcome in that the knowledge of the NLU component is expanded in such a way that it can understand a large number of entities, such as courts or sports clubs. It should be noted that the world is constantly changing. New entities emerge every day, making it almost impossible to keep an internal vocabulary up-to-date without great expense. In addition, the system should not only have knowledge about entities available, but also knowledge about the relationships between the entities. For this reason, a dynamic and structured approach to maintaining system knowledge is used.
  • the online knowledge database Wikidata [1] provides a structured knowledge resource that contains millions of entities and their relationships, is continuously updated, collaboratively edited and checked and is under the control of millions of users around the world.
  • Fig. 5 illustrates how world knowledge of the foods “lasagna” and “pho” is recorded.
  • the relational attributes “subclass-of”, “instance-of”, “country of origin” and “has part” are of particular importance. These attributes can be used by an NLU component for meaningful conclusions.
  • the framework presented is generic and scalable so that any other similar knowledge base can also be used.
  • the approach used according to the invention for representing knowledge is shown in FIG.
  • the approach includes a new way of deriving knowledge about an entity.
  • the set of abstract entities is motivated by the class of entities in the scope of the system functions.
  • the set of classes can be derived manually or algorithmically from the relational hierarchy between the entities and the abstract types in a hierarchical knowledge base. Whether x is a type or a subclass or instance of an abstract entity can be verified by querying the knowledge graph.
  • the attribute “country of origin” of the entities of the type food in the knowledge base can be used to infer the type of kitchen. It can also be the case that the property "kitchen” is explicitly recorded in the knowledge base.
  • the approach described scales with the size of the knowledge base.
  • the NLU component in the vehicle is able to identify every dish and cuisine mentioned in the knowledge base.
  • the approach described above for expanding the NLU capabilities of the voice assistants for use cases in the vehicle is based on the identification of those specified by the user Entities and their respective types.
  • the ability of an NLU component to understand all kinds of named entities is also useful for handling user requests that are beyond the capabilities of the wizard.
  • the range of functions of a voice assistant, ie supported domains, intentions or entities, is usually not known to the user.
  • a voice assistant in the vehicle can support the areas of navigation, media, telephone, vehicle functions, etc., but cannot answer questions about sports results. As already explained at the beginning, to the question “How did Borussia Dortmund play?” The system answer “Undoubtedly, I cannot help you on the subject of sports” would be more appropriate.
  • the voice assistant can respond to the user in a smarter way, such as "Sorry, I don't know much about sports.” .
  • the system can convey that it is able to understand user requests even if they are not within the scope of the system.
  • the NLU component is unable to determine the type of an entity x using one of the two approaches as the type of a class of the supported domains (lst-type-of (x, Y)) or the type of a class of the unsupported domains ( To identify is-type-of (x, 0)), it can mark the request as out of scope and query the knowledge base only with regard to the type of entity, ie, is-type-of (x). For a hierarchical knowledge base in which an entity is linked to other types in a hierarchical form, such a query provides the various possible class types of x. For example, it can be seen from the links in FIG.
  • Pho is a subclass of soup and dish
  • soup is a subclass of liquid
  • dish is a subclass of food.
  • Possible answers would be, for example, “Sorry, I don't know a lot about TV shows”, “Sorry, I don't know a lot about series” or “Sorry, I don't know a lot about the brand.”
  • An intelligent assistant can algorithmically learn which of them Alternatives are more appropriate for human understanding. Such an algorithm can use knowledge specified by the system developer, for example.
  • the algorithm can automatically learn from general knowledge about the world, or even use the reaction of the user to the selected system reaction in order to learn whether the reaction was appropriate for the user.
  • 8 schematically shows a system diagram of an NLU framework 60 according to the invention.
  • a number of processing modules are used to extract and resolve named entities such as “Lasagne” or “Borussia Dortmund” using a structured knowledge base.
  • An extraction module 61 is used to recognize the entities that are spoken about in a word sequence.
  • a conventional NLU module 62 is capable of recognizing user intent and functional area with regard to in-vehicle applications.
  • a knowledge-based NLU module 63 searches for entities found in an external knowledge base and retrieves their properties.
  • the result of the conventional NLU module 62 can be used to disambiguate the hypotheses of the knowledge base and to select the correct type of entity if the knowledge base provides several results.
  • the knowledge base can provide two search results for “Lasagne”. The first is a food and the second is a family name.
  • the conventional NLU module classified the intention of the utterance as a "call”.
  • Application-specific logic in this case selects the second result, i.e. the family name, based on the compatibility between entity and intention.
  • the conventional NLU module 62 can benefit from the knowledge-based NLU module 63 in disambiguating its own speech understanding.
  • a fusion module 64 finally fuses the results. If the result of the conventional NLU module 62 has a high score and the entities retrieved from the knowledge base are compatible with this result, the results are merged.
  • the properties of that entity can be used to generate an intelligent rejection.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Die vorliegende Erfindung betrifft ein Verfahren, ein Computerprogramm mit Instruktionen und eine Vorrichtung zum Verarbeiten einer Nutzereingabe. Die Erfindung betrifft weiterhin ein Fortbewegungsmittel, in dem ein erfindungsgemäßes Verfahren oder eine erfindungsgemäße Vorrichtung eingesetzt wird. In einem ersten Schritt wird eine Nutzereingabe empfangen (10). Aus der Nutzereingabe wird dann zumindest eine Entität extrahiert (11). Anschließend werden Daten für die zumindest eine Entität aus einer Wissensbasis abgefragt (12). Die aus der Wissensbasis abgefragten Daten werden ausgewertet (13). Unter Verwendung der Ergebnisse der Auswertung (13) wird schließlich eine Antwort auf die Nutzereingabe generiert (14).

Description

Beschreibung
Verfahren, Computerprogramm und Vorrichtung zum Verarbeiten einer Nutzereingabe
Die vorliegende Erfindung betrifft ein Verfahren, ein Computerprogramm mit Instruktionen und eine Vorrichtung zum Verarbeiten einer Nutzereingabe. Die Erfindung betrifft weiterhin ein Fortbewegungsmittel, in dem ein erfindungsgemäßes Verfahren oder eine erfindungsgemäße Vorrichtung eingesetzt wird.
In modernen Kraftfahrzeugen werden zunehmend sprachbasierte Ansätze für die Nutzerinteraktion umgesetzt. Dabei werden sowohl Spracheingaben eines Nutzers verarbeitet als auch Informationen in natürlicher Sprache an den Nutzer ausgegeben.
Beispielsweise beschreibt EP 3 392 878 A1 ein Verfahren zum Betreiben einer Spracherkennungsvorrichtung. Bei dem Verfahren wird ein Sprachbefehl über ein Mikrofon empfangen. Wenn der empfangene Sprachbefehl einem vorab gespeicherten Schlüsselwortbefehl entspricht, wird eine dem Schlüsselwortbefehl entsprechende Operation ausgeführt. Wenn der empfangene Sprachbefehl nicht einem vorab gespeicherten Schlüsselwortbefehl entspricht, werden Sprachdaten einschließlich des Sprachbefehls an einen Sprachserver übertragen.
US 7,398,209 B2 beschreibt ein Verfahren, das auf eine benutzergenerierte Sprachäußerung in natürlicher Sprache reagiert. Bei dem Verfahren wird zunächst die benutzergenerierte Sprachäußerung in natürlicher Sprache empfangen. Im Anschluss wird eine Domäne für die Sprachäußerung bestimmt. Basierend auf der bestimmten Domäne wird dann mindestens ein Domänenagent zum Verarbeiten der Sprachäußerung ausgewählt. Der Domänenagent ist eine autonome ausführbare Datei, die eine Abfrage oder einen Befehl empfängt, verarbeitet und darauf reagiert.
DE 102011 120 119 A1 beschreibt ein Verfahren zum sprachbasierten Abrufen von extern bereitgestellten Informationen in einem Kraftfahrzeug. Bei dem Verfahren erfolgt ein Abbilden von Informationsstrukturen zur graphisch-haptischen Interaktion in einem Wissensnetz zu Informationsstrukturen eines semantischen Weltmodells unter Verwendung eines themenbezogen spezifizierbaren semantischen Weltmodells. Zudem erfolgt ein Abbilden der Informationsstrukturen des semantischen Weltmodells zu Informationsstrukturen zur multimodalen Interaktion in dem Kraftfahrzeug unter Verwendung eines themenbezogen spezifizierbaren Interaktionsmodells. US 2016/0163312 A1 beschreibt ein Verfahren zur Disambiguierung von Heteronymen in der Sprachsynthese. Bei dem Verfahren wird eine Spracheingabe eines Benutzers empfangen, die ein Heteronym enthält. Die Spracheingabe wird unter Verwendung eines automatischen Spracherkennungssystems verarbeitet, um eine phonemische Zeichenfolge zu bestimmen, die dem vom Benutzer in der Spracheingabe ausgesprochenen Heteronym entspricht. Eine korrekte Aussprache des Heteronyms wird basierend auf der phonemischen Zeichenfolge oder unter Verwendung eines n-Gramm-Sprachmodells des automatischen Spracherkennungssystems bestimmt. Eine Dialogantwort auf die Spracheingabe wird in Form einer Sprachausgabe erzeugt, wobei die Dialogantwort das entsprechend der korrekten Aussprache ausgesprochene Heteronym enthält.
In Anbetracht der Fortschritte in der Spracherkennung ist es inzwischen möglich, dass automatische Spracherkennungssysteme natürlichsprachliche Benutzeraussagen wie „Finde italienische Restaurants in der Nähe!“, „Ich möchte Lasagne“ oder „Wie hat Borussia Dortmund gespielt“ erkennen. Aufgrund der begrenzten Möglichkeiten der derzeit in Kraftfahrzeugen verfügbaren Komponenten für das Verstehen natürlicher Sprache, besser bekannt als Natural Language Understanding (NLU), ist der Sprachassistent jedoch nicht immer in der Lage, die Absicht des Benutzers zu verstehen.
Ein inhärenter Faktor, der zur Einschränkung der Fähigkeiten von NLU-Komponenten im Fahrzeug beiträgt, ist, dass diese in erster Linie dazu bestimmt sind, nur typische im Fahrzeug benötigte Funktionen zu unterstützen, wie z.B. die Routenplanung, die Bedienung eines Infotainment-Systems oder das Durchführen von Telefonaten. Zudem wird aufgrund der Kosten für die Erfassung natürlichsprachlicher Benutzeräußerungen nur eine beschränkte Anzahl von Benutzeräußerungen in Trainingsmodellen für das Verstehen der Sprache verwendet. Da die gesprochene Sprache jedoch spontan und variantenreich ist, wird letztlich jeder große Datensatz nicht alle möglichen Formulierungen von Benutzeräußerungen abdecken können. Infolgedessen können die aktuellen NLU- Komponenten im Fahrzeug nur einen begrenzten Satz von Entitäten verstehen. Dies wiederum zwingt den Benutzer dazu, nur bestimmte Formulierungen zu verwenden.
Aktuelle NLU-Komponenten im Fahrzeug sind in der Lage, typische Benutzerwünsche zu verarbeiten. Auf eine Spracheingabe „Finde italienische Restaurants in der Nähe!“ kann das System mit der Sprachausgabe „OK, ich habe die folgenden drei italienischen Restaurants in der Umgebung gefunden.“ reagieren. Die zugehörigen Ergebnisse können dann auf einem Display angezeigt werden. Dies ist möglich, da die Kategorien für Orte von Interesse (POI: Point of Interest), wie Restaurant, und die verschiedenen Küchen, wie Italienisch oder Vietnamesisch, begrenzte, handhabbare Mengen von Entitäten sind und einer NLU- Komponente zur Verfügung gestellt werden können.
Eine erheblich schwierigere Aufgabe ist es, Äußerungen zu verstehen, in denen bestimmte Gerichte erwähnt werden. Auch auf eine Spracheingabe „Ich möchte Lasagne“ sollte das System mit der Sprachausgabe „OK, ich habe die folgenden drei italienischen Restaurants in der Umgebung gefunden.“ reagieren. Das System hat aber kein Wissen über die Entität „Lasagne“, da es nicht Bestandteil seines Trainings war. Ein Benutzer, der mit der Reaktion auf die oben genannte explizite Frage nach italienischen Restaurants vertraut ist, wäre unter Umständen enttäuscht, dass das System den Wunsch nach Lasagne nicht verstehen kann.
Mit der zunehmenden Verbreitung smarter Sprachassistenten, z.B. auf dem Smartphone oder im Haus des Nutzers, wird deren Verwendung immer alltäglicher. Damit einhergehend steigen die Erwartungen der Benutzer. Daher werden oftmals Situationen auftreten, bei denen die Spracheingaben den Funktionsumfang der Assistenten übersteigen. Ein Beispiel für eine solche Spracheingabe für einen Assistenten in einem Fahrzeug, die den Funktionsumfang des Assistenten übersteigt und von diesem nicht richtig interpretiert werden kann, ist „We hat Borussia Dortmund gespielt?“ Eine typische Antwort auf diese Frage wäre die unspezifische Zurückweisung „Entschuldigung, ich habe Sie nicht verstanden.“. Alternativ kann es auch zu einem Verwechslungsfehler kommen, der zu einer Antwort der Art „Die Route nach Dortmund, Borussiastraße wird gestartet.“ führt. Beide Reaktionen sind nicht optimal. Mit der unspezifischen Zurückweisung bleibt für den Nutzer unklar, ob die Eingabe z.B. akustisch nicht richtig verstanden wurde, die gewählte Formulierung nicht verstanden wurde oder die Funktion vom Assistenten gar nicht unterstützt wird. Der Verwechslungsfehler führt gegebenenfalls zu einer ungewollten Aktion des Assistenten, die der Nutzer anschließend korrigieren muss. Die Ursache der Verwechslung bleibt ebenfalls unklar. Der Nutzer erfährt nicht, ob ein Fehler vorliegt oder die Funktion nicht unterstützt wird.
Das gewünschte Verhalten des Assistenten besteht darin, dass der Assistent eine spezifische Antwort geben kann. Auch wenn die Antwort eine Zurückweisung ist, wirkt der Assistent intelligenter und der Nutzer lernt etwas über den Funktionsumfang des Assistenten. Auf die Frage „Wie hat Borussia Dortmund gespielt?“ könnte eine spezifische Antwort z.B. lauten „Beim Thema Sport kann ich Ihnen leider nicht weiterhelfen“.
Ein Ansatz für die obige Problematik besteht darin, dass die NLU-Modelle und Dialogmodelle für mehr als die funktional unterstützten Domänen des Sprachassistenten implementiert werden, um Anfragen bezüglich bestimmter erwarteter, ab er nicht vorhandener Funktionen handhaben zu können. Beispielsweise könnten ein Assistent für ein Infotainment-System auf Anfragen zum Wetter verstehen und diese spezifisch zurückweisen, weil die Domäne „Wetter“ in der NLU- und Dialogentwicklung berücksichtigt wurde, obwohl kein Wetterdienst geplant war. Allerdings steigt der Entwicklungsaufwand bei diesem Ansatz mit jeder Domäne an.
Die obigen Ausführungen gelten analog auch für Nutzereingaben in Textform, z.B. textbasierte Nachrichten mittels SMS (SMS: Short message Service; Kurznachrichtendienst), Chatnachricht oder Email an einen Chatbot eines Dienstanbieters.
Es ist eine Aufgabe der Erfindung, verbesserte Lösungen zum Verarbeiten von Nutzereingaben bereitzustellen.
Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Anspruchs 1, durch ein Computerprogramm mit Instruktionen gemäß Anspruch 8 und durch eine Vorrichtung mit den Merkmalen des Anspruchs 9 gelöst. Bevorzugte Ausgestaltungen der Erfindung sind Gegenstand der abhängigen Ansprüche.
Gemäß einem ersten Aspekt der Erfindung umfasst ein Verfahren zum Verarbeiten einer Nutzereingabe die Schritte:
- Empfangen einer Nutzereingabe;
- Extrahieren zumindest einer Entität aus der Nutzereingabe;
- Abfragen von Daten für die zumindest eine Entität aus einer Wissensbasis;
- Auswerten der aus der Wissensbasis abgefragten Daten, wobei anhand der aus der Wissensbasis abgefragten Daten eine Klasse für die zumindest eine Entität bestimmt wird und auf Grundlage der Klasse bestimmt wird, ob die zumindest eine Entität zu einer unterstützten Domäne oder einer nicht unterstützten Domäne gehört; und
- Generieren einer Antwort auf die Nutzereingabe unter Verwendung von Ergebnissen der Auswertung.
Gemäß einem weiteren Aspekt der Erfindung enthält ein Computerprogramm Instruktionen, die bei Ausführung durch einen Computer den Computer zur Ausführung der folgenden Schritte zum Verarbeiten einer Nutzereingabe veranlassen:
- Empfangen einer Nutzereingabe;
- Extrahieren zumindest einer Entität aus der Nutzereingabe;
- Abfragen von Daten für die zumindest eine Entität aus einer Wissensbasis; - Auswerten der aus der Wissensbasis abgefragten Daten, wobei anhand der aus der Wssensbasis abgefragten Daten eine Klasse für die zumindest eine Entität bestimmt wird und auf Grundlage der Klasse bestimmt wird, ob die zumindest eine Entität zu einer unterstützten Domäne oder einer nicht unterstützten Domäne gehört; und
- Generieren einer Antwort auf die Nutzereingabe unter Verwendung von Ergebnissen der Auswertung.
Der Begriff Computer ist dabei breit zu verstehen. Insbesondere umfasst er auch Steuergeräte, integrierte Systeme und andere prozessorbasierte Datenverarbeitungsvorrichtungen.
Das Computerprogramm kann beispielsweise für einen elektronischen Abruf bereitgestellt werden oder auf einem computerlesbaren Speichermedium gespeichert sein.
Gemäß einem weiteren Aspekt der Erfindung weist eine Vorrichtung zum Verarbeiten einer Nutzereingabe auf:
- ein Empfangsmodul zum Empfangen einer Nutzereingabe;
- ein Extraktionsmodul zum Extrahieren zumindest einer Entität aus der Nutzereingabe;
- ein Abfragemodul zum Abfragen von Daten für die zumindest eine Entität aus einer Wissensbasis; und
- ein Verarbeitungsmodul zum Auswerten der aus der Wssensbasis abgefragten Daten, wobei das Verarbeitungsmodul anhand der aus der Wissensbasis abgefragten Daten eine Klasse für die zumindest eine Entität bestimmt und auf Grundlage der Klasse bestimmt, ob die zumindest eine Entität zu einer unterstützten Domäne oder einer nicht unterstützten Domäne gehört, und zum Generieren einer Antwort auf die Nutzereingabe unter Verwendung von Ergebnissen der Auswertung.
Erfindungsgemäß werden die eingangs beschriebenen Einschränkung derzeitiger NLU- Komponenten bei der Verarbeitung einer Nutzereingabe, z.B. einer Spracheingabe oder einer textbasierten Nutzereingabe, dadurch überwunden, dass der NLU-Komponente mittels einer Wssensbasis Wssen über Entitäten über die Beziehungen zwischen den Entitäten zur Verfügung steht. Dieses Wissen kann genutzt werden, um Entitäten, die der NLU- Komponente nicht bekannt sind, dennoch einer Domäne zuzuordnen und eine Benutzerabsicht zu ermitteln, die vom Funktionsumfang des Assistenten abgedeckt wird. Falls die ermittelte Benutzerabsicht außerhalb des Funktionsumfangs des Assistenten liegt, kann zumindest noch eine sinnvolle bzw. für den Benutzer verständliche Zurückweisung als Antwort generiert werden. Anhand der aus der Wissensbasis abgefragten Daten wird eine Klasse für die zumindest eine Entität bestimmt. Anhand der Klasse kann auf einfache Weise bestimmt werden, in welche Domäne eine Entität fällt. Die Menge der Klassen kann manuell oder algorithmisch aus der relationalen Hierarchie zwischen den Entitäten und den abstrakten Typen in einer hierarchischen Wssensbasis abgeleitet werden.
Auf Grundlage der Klasse wird bestimmt, ob die zumindest eine Entität zu einer unterstützten Domäne oder einer nicht unterstützten Domäne gehört. Für die unterstützten Domänen und die nicht unterstützten Domänen können manuell oder algorithmisch erstellte und gepflegte Listen mit Klassen geführt werden. Die Liste der nicht unterstützten Domänen kann dabei insbesondere Domänen umfassen, die außerhalb eine Funktionsumfangs eines digitalen Assistenten liegen, für die aber mit Anfragen des Benutzers gerechnet wird. Gehört die Entität zu einer Klasse, die ihrerseits zu einer unterstützten Domäne gehört, kann eine positive Systemantwort generiert werden. Fällt die Entität hingegen in eine nicht unterstützte Domäne, kann als Antwort zumindest eine spezifische Zurückweisung für diese Domäne generiert werden.
Gemäß einem Aspekt der Erfindung umfassen die aus der Wssensbasis abgefragten Daten relationale Attribute der zumindest einen Entität. Bei den relationalen Attributen kann es sich beispielsweise um die Angabe handeln, dass die Entität eine Ausprägung einer anderen Entität ist, oder dass eine andere Entität Teil der extrahierten Entität ist. Derartige Attribute können von einer NLU-Komponente für sinnvolle Rückschlüsse genutzt werden.
Gemäß einem Aspekt der Erfindung werden die aus der Wssensbasis abgefragten Daten durch eine Abfrage eines Wissensgraphen ermittelt. Durch derartige Abfragen kann leicht verifiziert werden, ob eine Entität eine Ausprägung einer abstrakten Entität ist. Im einfachsten Fall kann z.B. geprüft werden, ob die Entität mit der abstrakten Entität durch einen Eigenschaftspfad „Unterklasse-von“ oder „Instanz-von“ verbunden ist.
Gemäß einem Aspekt der Erfindung wird anhand der aus der Wssensbasis abgefragten Daten bestimmt, ob die zumindest eine Entität außerhalb eines vorgegebenen Anwendungsbereichs liegt. Da sowohl die Anzahl der unterstützten Domänen als auch die Anzahl der vorgegebenen nicht unterstützten Domänen begrenzt sind, kann der Fall auftreten, dass die Entität zu keiner dieser Domänen gehört. Sie liegt dann außerhalb des vorgegebenen Anwendungsbereichs. In diesem Fall kann dennoch als Antwort eine unspezifische Zurückweisung generiert werden. Durch Abfrage der Wssensbasis werden dazu eine Reihe von möglichen Interpretationen für die Entität ermittelt. Diese Interpretationen können genutzt werden, um unterschiedliche intelligente Systemantworten zu generieren. Der Assistent kann dabei algorithmisch lernen, welche der Alternativen für das menschliche Verständnis besser geeignet ist. Ein solcher Algorithmus kann beispielsweise vom System entwi ekler spezifiziertes Wissen nutzen. Alternativ oder zusätzlich kann der Algorithmus automatisch aus allgemeinem Wssen über die Welt lernen, oder sogar die Reaktion des Benutzers auf die gewählte Systemreaktion nutzen, um zu lernen, ob die Reaktion für den Benutzer angemessen war.
Gemäß einem Aspekt der Erfindung wird beim Auswerten der aus der Wissensbasis abgefragten Daten ein Abgleich mit Ergebnissen einer nicht-wissensbasierten Sprachverarbeitung vorgenommen. Dies erlaubt es, die Hypothesen der Wssensbasis zu disambiguieren und den korrekten Typ der Entität auszuwählen, wenn die Wssensbasis mehrere Ergebnisse liefert.
Vorzugsweise wird ein erfindungsgemäßes Verfahren oder eine erfindungsgemäße Vorrichtung in einem (teil-)autonom oder manuell gesteuerten Fortbewegungsmittel eingesetzt. Bei dem Fortbewegungsmittel kann es sich insbesondere um ein Kraftfahrzeug handeln, aber auch um ein Schiff, ein bemanntes oder unbemanntes Fluggerät, z.B. eine Drohne oder einen Volocopter, etc. Selbstverständlich kann die erfindungsgemäße Lösung auch in anderen Anwendungsszenarien genutzt werden, z.B. in einem Dialogsystem oder in einem Nutzerendgerät. Beispiele für derartige Nutzerendgeräte sind Smartphones, Tablets oder tragbare und stationäre Computer.
Weitere Merkmale der vorliegenden Erfindung werden aus der nachfolgenden Beschreibung und den angehängten Ansprüchen in Verbindung mit den Figuren ersichtlich.
Fig. 1 zeigt schematisch ein Verfahren zum Verarbeiten einer Nutzereingabe;
Fig. 2 zeigt eine erste Ausführungsform einer Vorrichtung zum Verarbeiten einer Nutzereingabe;
Fig. 3 zeigt eine zweite Ausführungsform einer Vorrichtung zum Verarbeiten einer Nutzereingabe;
Fig. 4 stellt schematisch ein Fortbewegungsmittel dar, in dem eine erfindungsgemäße Lösung realisiert ist; Fig. 5 zeigt eine Möglichkeit der Repräsentation von Weltwissen;
Fig. 6 zeigt einen bekannten Ansatz zur Repräsentation von Wissen in einer NLU- Komponente;
Fig. 7 zeigt einen erfindungsgemäß genutzten Ansatz zur Repräsentation von Wissen in einer NLU-Komponente; und
Fig. 8 zeigt schematisch ein Systemdiagram eines erfindungsgemäßen NLU- Frameworks.
Zum besseren Verständnis der Prinzipien der vorliegenden Erfindung werden nachfolgend Ausführungsformen der Erfindung anhand der Figuren detaillierter erläutert. Es versteht sich, dass sich die Erfindung nicht auf diese Ausführungsformen beschränkt und dass die beschriebenen Merkmale auch kombiniert oder modifiziert werden können, ohne den Schutzbereich der Erfindung zu verlassen, wie er in den angehängten Ansprüchen definiert ist.
Fig. 1 zeigt schematisch ein Verfahren zum Verarbeiten einer Nutzereingabe. In einem ersten Schritt wird eine Nutzereingabe empfangen 10, z.B. eine Spracheingabe oder eine textbasierte Nutzereingabe. Aus der Nutzereingabe wird dann zumindest eine Entität extrahiert 11. Eingangsgröße für diesen Schritt ist eine Textfolge, die beispielsweise beim Empfangen 10 der Nutzereingabe aus einer Sprachäußerung generiert wurde. Anschließend werden Daten für die zumindest eine Entität aus einer Wissensbasis abgefragt 12. Beispielsweise umfassen die aus der Wissensbasis abgefragten Daten relationale Attribute der zumindest einen Entität. Diese können durch eine Abfrage eines Wissensgraphen ermittelt werden. Die aus der Wissensbasis abgefragten Daten werden ausgewertet 13. Es kann Vorkommen, dass im Schritt 11 keine Entität erkannt werden konnte. In diesem Fall können natürlich auch keine Daten aus einer Wissensbasis abgefragt werden 12. Allerdings kann auch das Wissen, dass in der Nutzereingabe keine Entität enthalten war, im Rahmen der Auswertung 13 für eine informierte Entscheidung genutzt werden. Unter Verwendung der Ergebnisse der Auswertung 13 wird schließlich eine Antwort auf die Nutzereingabe generiert 14. Bei der Antwort kann es sich z.B. um eine Sprachausgabe oder eine Textausgabe handeln. Bei der Auswertung 13 kann beispielsweise eine Klasse für die zumindest eine Entität bestimmt werden. Auf Grundlage der Klasse kann festgestellt werden, ob die zumindest eine Entität zu einer unterstützten Domäne oder einer nicht unterstützten Domäne gehört. Bei der Auswertung 13 kann des Weiteren bestimmt werden, ob die zumindest eine Entität außerhalb eines vorgegebenen Anwendungsbereichs liegt. Zudem kann ein Abgleich mit Ergebnissen einer nicht-wissensbasierten Sprachverarbeitung vorgenommen werden.
Fig. 2 zeigt eine vereinfachte schematische Darstellung einer ersten Ausführungsform einer Vorrichtung 20 zum Verarbeiten einer Nutzereingabe NE. Die Vorrichtung 20 hat einen Eingang 21, über den ein Empfangsmodul 22 eine Nutzereingabe NE empfangen kann, z.B. eine Spracheingabe oder eine textbasierte Nutzereingabe. Ein Extraktionsmodul 23 extrahiert zumindest eine Entität aus der Nutzereingabe NE. Eingangsgröße für das Extraktionsmodul 23 ist eine Textfolge, die beispielsweise vom Empfangsmodul 22 beim Empfangen der Nutzereingabe aus einer Sprachäußerung generiert wurde. Ein Abfragemodul 24 der Vorrichtung 20 fragt Daten für die zumindest eine Entität aus einer Wissensbasis 51 ab. Zu diesem Zweck kann das Abfragemodul 24 über eine Schnittstelle 27 auf die Wssensbasis 51 zugreifen. Beispielsweise umfassen die aus der Wissensbasis abgefragten Daten relationale Attribute der zumindest einen Entität. Diese können durch eine Abfrage eines Wssensgraphen ermittelt werden. Ein Verarbeitungsmodul 25 wertet die aus der Wssensbasis 51 abgefragten Daten aus und generiert einer Antwort auf die Nutzereingabe NE unter Verwendung von Ergebnissen dieser Auswertung. Die generierte Antwort kann dann über die Schnittstelle 27 ausgegeben werden. Bei der Antwort kann es sich z.B. um eine Sprachausgabe oder eine Textausgabe handeln. Es kann Vorkommen, dass vom Extraktionsmodul 23 keine Entität erkannt werden konnte. In diesem Fall können natürlich auch keine Daten aus einer Wssensbasis abgefragt werden. Allerdings kann auch das Wssen, dass in der Nutzereingabe keine Entität enthalten war, vom Verarbeitungsmodul 25 für eine informierte Entscheidung genutzt werden. Das Verarbeitungsmodul 25 kann eingerichtet sein, bei der Auswertung eine Klasse für die zumindest eine Entität zu bestimmen. Auf Grundlage der Klasse kann festgestellt werden, ob die zumindest eine Entität zu einer unterstützten Domäne oder einer nicht unterstützten Domäne gehört. Das Verarbeitungsmodul 25 kann ebenso bestimmen, ob die zumindest eine Entität außerhalb eines vorgegebenen Anwendungsbereichs liegt. Zudem kann das Verarbeitungsmodul 25 eingerichtet sein, einen Abgleich mit Ergebnissen einer nicht-wissensbasierten Sprachverarbeitung vorzunehmen.
Das Empfangsmodul 22, das Extraktionsmodul 23, das Abfragemodul 24 und das Verarbeitungsmodul 25 können von einem Kontrollmodul 26 gesteuert werden. Über eine Benutzerschnittstelle 29 können gegebenenfalls Einstellungen des Empfangsmoduls 22, des Extraktionsmoduls 23, des Abfragemoduls 24, des Verarbeitungsmoduls 25 oder des Kontrollmoduls 26 geändert werden. Die in der Vorrichtung 20 anfallenden Daten können bei Bedarf in einem Speicher 28 der Vorrichtung 20 abgelegt werden, beispielsweise für eine spätere Auswertung oder für eine Nutzung durch die Komponenten der Vorrichtung 20. Das Empfangsmodul 22, das Extraktionsmodul 23, das Abfragemodul 24, das Verarbeitungsmodul 25 sowie das Kontrollmodul 26 können als dedizierte Hardware realisiert sein, beispielsweise als integrierte Schaltungen. Natürlich können sie aber auch teilweise oder vollständig kombiniert oder als Software implementiert werden, die auf einem geeigneten Prozessor läuft, beispielsweise auf einer GPU. Der Eingang 21 und die Schnittstelle 27 können als getrennte Schnittstellen oder als eine kombinierte bidirektionale Schnittstelle implementiert sein.
Fig. 3 zeigt eine vereinfachte schematische Darstellung einer zweiten Ausführungsform einer Vorrichtung 30 zum Verarbeiten einer Nutzereingabe. Die Vorrichtung 30 weist einen Prozessor 32 und einen Speicher 31 auf. Beispielsweise handelt es sich bei der Vorrichtung 30 um einen Computer, eine Workstation oder ein Steuergerät. Im Speicher 31 sind Instruktionen abgelegt, die die Vorrichtung 30 bei Ausführung durch den Prozessor 32 veranlassen, die Schritte gemäß einem der beschriebenen Verfahren auszuführen. Die im Speicher 31 abgelegten Instruktionen verkörpern somit ein durch den Prozessor 32 ausführbares Programm, welches das erfindungsgemäße Verfahren realisiert. Die Vorrichtung hat einen Eingang 33 zum Empfangen von Nutzereingaben und Informationen aus einer Wissensdatenbank. Vom Prozessor 32 generierte Daten werden über einen Ausgang 34 bereitgestellt. Darüber hinaus können sie im Speicher 31 abgelegt werden. Der Eingang 33 und der Ausgang 34 können zu einer bidirektionalen Schnittstelle zusammengefasst sein.
Der Prozessor 32 kann eine oder mehrere Prozessoreinheiten umfassen, beispielsweise Mikroprozessoren, digitale Signalprozessoren oder Kombinationen daraus.
Die Speicher 28, 31 der beschriebenen Ausführungsformen können volatile und/oder nichtvolatile Speicherbereiche aufweisen und unterschiedlichste Speichergeräte und Speichermedien umfassen, beispielsweise Festplatten, optische Speichermedien oder Halbleiterspeicher. Die Speicherung von Informationen kann auch in einer Cloud erfolgen.
Fig. 4 stellt schematisch ein Fortbewegungsmittel 40 dar, in dem eine erfindungsgemäße Lösung realisiert ist. In diesem Beispiel handelt es sich bei dem Fortbewegungsmittel 40 um ein Kraftfahrzeug. Das Kraftfahrzeug weist eine Reihe von Assistenzsystemen 41 auf, von denen eines exemplarisch dargestellt ist. Zudem ist eine Sensorik 42 vorhanden, die von den Assistenzsystemen 41 genutzt wird und durch die Informationen zur Umgebung des Kraftfahrzeugs erfasst werden können. Eine Bedienung des Kraftfahrzeugs kann teilweise sprachbasiert erfolgen. Das Kraftfahrzeug weist daher eine erfindungsgemäße Vorrichtung 20 zum Verarbeiten einer Nutzereingabe eines Fahrers oder eines anderen Nutzers auf. Weitere Bestandteile des Kraftfahrzeugs sind beispielhaft ein Navigationssystem 43 und eine Datenübertragungseinheit 44. Mittels der Datenübertragungseinheit 44 kann eine Verbindung zu einem Dienstanbieter 50 aufgebaut werden, insbesondere zu einem Anbieter einer Wissensdatenbank. Bei der Wissensdatenbank kann es sich um einen offline-Dienst handeln, der im Fortbewegungsmittel 40 läuft, oder einen Online-Dienst, z.B. einen Cloud- Dienst oder einfach eine Internetseite. Zur Speicherung von Daten ist ein Speicher 45 vorhanden. Der Datenaustausch zwischen den verschiedenen Komponenten des Kraftfahrzeugs erfolgt über ein Netzwerk 46.
Nachfolgend sollen weitere Details einer erfindungsgemäßen Lösung anhand von Fig. 5 bis Fig. 8 erläutert werden.
Erfindungsgemäß werden die eingangs beschriebenen Einschränkung derzeitiger NLU- Komponenten dadurch überwunden, dass das Wissen der NLU-Komponente so erweitert wird, dass sie eine Vielzahl von Entitäten, wie z.B. Gerichte oder Sportvereine, verstehen kann. Dabei ist zu berücksichtigen, dass sich die Welt fortlaufend verändert. Jeden Tag entstehen neue Entitäten, sodass es nahezu unmöglich ist, ohne große Kosten einen internen Wortschatz aktuell zu halten. Darüber hinaus soll dem System nicht nur Wissen über Entitäten zur Verfügung stehen, sondern auch Wissen über die Beziehungen zwischen den Entitäten. Aus diesem Grund wird ein dynamischer und strukturierter Ansatz zur Pflege des Systemwissens verwendet.
Die Online- Wissensdatenbank Wikidata [1] stellt in diesem Zusammenhang eine strukturierte Wissensressource bereit, die Millionen von Entitäten und deren Beziehungen enthält, kontinuierlich aktualisiert wird, kollaborativ bearbeitet und überprüft wird und unter der Kontrolle von Millionen von Nutzern auf der ganzen Welt steht. Fig. 5 veranschaulicht, wie das Weltwissen über die Lebensmittel „Lasagne“ und „Pho“ erfasst ist. Von Bedeutung sind vorliegend insbesondere die relationalen Attribute „Unterklasse-von“, „Instanz-von“ „Ursprungsland“ und „hat-Teil“. Diese Attribute können von einer NLU-Komponente für sinnvolle Rückschlüsse genutzt werden. Das vorgestellte Framework ist generisch und skalierbar, so dass auch jede andere ähnliche Wissensbasis verwendet werden kann.
Wenn das bestehende NLU-Framework im Fahrzeug eine Benutzeranfrage wie „Ich möchte Pho.“ unterstützen soll, dann muss eine neue Vokabelliste „Gerichte“ für die Speicherung von Gerichten aufgebaut werden und auch eine Zuordnung der Gerichte zu der entsprechenden “Küche“ gepflegt werden. Dieser bekannte Ansatz ist in Fig. 6 dargestellt. Eine Benutzeranfrage wie „Ich möchte Pho.“ kann bearbeitet werden, indem zunächst die Erwähnung einer Entität(x):=Pho anhand der Liste der Gerichte identifiziert wird und dann die Zuordnungen zur Liste der Küchen verwendet werden, um daraus zu schließen, dass der Benutzer über die Küche:=Vietnamesisch spricht. Wie zu Beginn schon erwähnt wurde, skaliert dieser Ansatz jedoch nicht, wenn der Benutzer ein Gericht erwähnt, das im Vokabular nicht existiert.
Der erfindungsgemäß genutzte Ansatz zur Repräsentation von Wssen ist in Fig. 7 dargestellt. Der Ansatz beinhaltet eine neue Art der Ableitung von Wssen über eine Entität. Dies erfordert im einfachsten Fall, dass eine gegebene Entität x ein Typ einer abstrakten Entität Y ist, z.B. Y:={Essen, Suppe, Künstler, Album, Ort}. Die Menge der abstrakten Entitäten wird durch die Klasse der Entitäten im Umfang der Systemfunktionen motiviert. Die Menge der Klassen kann manuell oder algorithmisch aus der relationalen Hierarchie zwischen den Entitäten und den abstrakten Typen in einer hierarchischen Wissensbasis abgeleitet werden. Ob x ein Typ bzw. eine Unterklasse oder Instanz von einer abstrakten Entität ist, kann durch Abfragen des Wssensgraphen verifiziert werden. Solche Abfragen prüfen im einfachsten Fall, ob x mit Y durch einen Eigenschaftspfad „Unterklasse-von“ oder „Instanz-von“ verbunden ist. So kann für Entität(x):=Pho aus Wkidata abgeleitet werden, dass Unterklasse-von(x,Y):=Nahrung gilt. Das heißt, dass Pho eine Art von Nahrung ist.
Zusätzlich kann das Attribut „Ursprungsland“ der Entitäten vom Typ Nahrung in der Wssensbasis verwendet werden, um auf den Typ der Küche zu schließen. Es kann auch der Fall sein, dass die Eigenschaft "Küche" explizit in der Wissensbasis erfasst ist. Konkret kann für die Entität(x):=Pho das Wssen aus Wkidata, dass Unterklasse-von(x):=Nahrung und Ursprungsland(x):=Vietnam gilt, verwendet werden, um abzuleiten, dass der Benutzer an der Suche nach vietnamesischen Restaurants interessiert ist. Dies entspricht einer Suchfunktion im Fahrzeug mit Ort-von-lnteresse(p):=Restaurant und Küche(p):=Vietnamesisch.
Der beschriebene Ansatz skaliert mit der Größe der Wssensbasis. Mit der einfachen Logik der Ableitung des Typs einer Entität unter Verwendung einer hierarchisch strukturierten Wssensbasis und unter Verwendung verschiedener Eigenschaften ist die NLU-Komponente im Fahrzeug in der Lage, jedes in der Wssensbasis erwähnte Gericht und jede erwähnte Küche zu identifizieren.
Der oben beschriebene Ansatz zur Erweiterung der NLU-Fähigkeiten der Sprachassistenten für Anwendungsfälle im Fahrzeug beruht auf der Identifizierung der vom Benutzer genannten Entitäten und des jeweiligen Typs. Die Fähigkeit einer NLU-Komponente, alle Arten von benannten Entitäten zu verstehen, ist auch nützlich, um Benutzeranfragen zu bearbeiten, die über den Funktionsumfang des Assistenten hinausgehen. Der Funktionsumfang eines Sprachassistenten, d.h. unterstützte Domänen, Absichten oder Entitäten, ist dem Benutzer in der Regel nicht bekannt. So kann ein Sprachassistent im Fahrzeug zwar die Bereiche Navigation, Medien, Telefon, Fahrzeugfunktionen etc. unterstützen, aber keine Fragen zu Sportergebnissen beantworten. Wie eingangs schon erläutert wäre auf die Frage „Wie hat Borussia Dortmund gespielt?“ die Systemantwort „Beim Thema Sport kann ich Ihnen leider nicht weiterhelfen.“ angemessener.
Mit dem erfindungsgemäßen Ansatz kann dies mit geringem Aufwand erreicht werden. Ausgangspunkt ist die Identifikation der vom Nutzer genannten Entität, also Entität(x):=Borussia Dortmund. Anschließend wird der Typ von x über die Ist-Typ-von(x)- Abfrage an die Wssensbasis abgeleitet. Bei der oben bereits beispielshaft erwähnten Liste abstrakter Klassen Y:={Lebensmittel, Suppe, Künstler, Album, Ort} für die unterstützten Domänen (in-domain-Klassen) wird erwartet, dass die Abfrage lst-Typ-von(x,Y) null liefert. Dies ist nicht unbedingt hilfreich. Jedoch kann mit dem gleichen Ansatz manuell oder algorithmisch eine Liste von abstrakten Klassen für nicht unterstützte Domänen (out-of- domain-Klassen) erstellt und gepflegt werden, z.B. 0:={Sport, Nachrichten}. In diesem Fall würde eine Abfrage lst-Typ-von(x,0) an die Wssensdatenbank ergeben, dass Ist-Typ- von(x,0):=Sport zutrifft.
Unter Verwendung des abgeleiteten Wissens, dass der Benutzer eine Entität aus einer Klasse einer nicht unterstützten Domäne genannt hat, nämlich Sport, kann der Sprachassistent dem Benutzer auf eine intelligentere Art und Weise antworten, wie z.B. „Entschuldigung, ich weiß nicht viel über Sport.“. Auf diese Weise kann das System vermitteln, dass es in der Lage ist, Benutzeranfragen zu verstehen, auch wenn sie nicht in den Funktionsumfang des Systems fallen.
Es muss nun noch der Fall betrachtet werden, dass der Benutzer etwas erwähnt, das weder zu den Klassen der unterstützten Domänen noch zu den Klassen der nicht unterstützten Domänen gehört. Solche Äußerungen des Benutzers stellen Anfragen außerhalb des Anwendungsbereichs dar. Beispielweise könnte eine solche Anfrage an einen digitalen Assistenten im Fahrzeug lauten „Kannst du mir etwas über Game of Thrones erzählen?“. Eine typische Antwort darauf wäre „Entschuldigung, ich habe Sie nicht verstanden.“. We schon zuvor ist eine solche Systemantwort nicht klar genug: Der Benutzer weiß nicht, ob etwas mit dem Kommunikationskanal falsch gelaufen ist oder ob das System nicht in der Lage ist, über Fernsehserien zu sprechen. Eine angemessenere Systemreaktion wäre z.B. „Entschuldigung, ich weiß nicht viel über Fernsehserien.“.
Falls die NLU-Komponente nicht in der Lage ist, den Typ einer Entität x mit Hilfe eines der beiden Ansätze als Typ einer Klasse der unterstützten Domänen (lst-Typ-von(x,Y)) oder Typ einer Klasse der nicht unterstützten Domänen (lst-Typ-von(x,0)) zu identifizieren, kann sie die Anfrage als außerhalb des Anwendungsbereichs kennzeichnen und die Wissensbasis nur hinsichtlich des Typs der Entität abfragen, d.h. Ist-Typ-von(x). Für eine hierarchische Wissensbasis, in der eine Entität mit anderen Typen in einer hierarchischen Form verknüpft ist, liefert eine solche Abfrage die verschiedenen möglichen Klassentypen von x. Den Verknüpfungen in Fig. 5 kann beispielsweise entnommen werden, dass Pho eine Unterklasse von Suppe und Gericht ist, dass Suppe eine Unterklasse von Flüssigkeit ist und dass Gericht eine Unterklasse von Nahrung ist. Eine entsprechende Abfrage liefert somit Ist- Typ-von(x):={Gericht, Nahrung, Suppe, Flüssigkeit}. Dies repräsentiert im Wesentlichen, dass es sich bei Pho um ein Gericht handelt, dass Pho auch ein Lebensmittel ist, dass Pho eigentlich eine Suppe ist, und dass Pho eine Flüssigkeit ist.
Alle diese Interpretationen sind laut der Wissensbasis korrekt, wobei der Grad der Beschreibung variiert und der Umstand, dass Pho eine Flüssigkeit ist, wahrscheinlich zu abstrakt für eine sinnvolle Systemantwort ist. Dennoch bietet dieser Ansatz der NLU- Komponente verschiedene mögliche Interpretationen.
Für die oben angeführte Frage nach „Game of Thrones“, d.h. Entität(x):=Game of Thrones, erhält die NLU-Komponente durch Abfrage einer Wissensbasis eine Reihe von Interpretationen, z.B. lst-Typ-von(x):={Fernsehserie, Serie, Fernsehsendung, Marke}. Diese Interpretationen können genutzt werden, um unterschiedliche intelligente Systemantworten zu generieren. Mögliche Antworten wären beispielsweise „Entschuldigung, ich weiß nicht viel über Fernsehsendungen.“, „Entschuldigung, ich weiß nicht viel über Serien.“ oder „Entschuldigung, ich weiß nicht viel über die Marke.“ Ein intelligenter Assistent kann dabei algorithmisch lernen, welche der Alternativen für das menschliche Verständnis besser geeignet ist. Ein solcher Algorithmus kann beispielsweise vom Systementwickler spezifiziertes Wissen nutzen. Alternativ oder zusätzlich kann der Algorithmus automatisch aus allgemeinem Wissen über die Welt lernen, oder sogar die Reaktion des Benutzers auf die gewählte Systemreaktion nutzen, um zu lernen, ob die Reaktion für den Benutzer angemessen war. Fig. 8 zeigt schematisch ein Systemdiagram eines erfindungsgemäßen NLU-Frameworks 60. Um benannte Entitäten wie „Lasagne“ oder „Borussia Dortmund“ unter Verwendung einer strukturierten Wissensbasis zu extrahieren und aufzulösen, werden eine Reihe von Verarbeitungsmodulen genutzt. Ein Extraktionsmodul 61 dient dazu, die Entitäten zu erkennen, über die in einer Wortfolge gesprochen wird. Ein konventionelles NLU-Modul 62 ist in der Lage, die Benutzerabsicht und den Funktionsbereich in Hinblick auf Anwendungen im Fahrzeug zu erkennen. Ein wissensbasiertes NLU-Modul 63 sucht in einer externen Wssensbasis nach gefundenen Entitäten und ruft deren Eigenschaften ab. Das Ergebnis des konventionellen NLU-Moduls 62 kann genutzt werden, um die Hypothesen der Wssensbasis zu disambiguieren und den korrekten Typ der Entität auszuwählen, wenn die Wssensbasis mehrere Ergebnisse liefert. Beispielsweise kann die Wssensbasis zwei Suchergebnisse zu „Lasagne“ liefern. Das erste ist ein Lebensmittel und das zweite ein Familienname. Das konventionelle NLU-Modul klassifizierte die Absicht der Äußerung als „Anruf“. Eine anwendungsspezifische Logik wählt in diesem Fall auf der Grundlage der Kompatibilität zwischen Entität und Absicht das zweite Ergebnis aus, d.h. den Familiennamen. Umgekehrt kann das konventionelle NLU-Modul 62 vom wissensbasierten NLU-Modul 63 beim Disambiguieren seines eigenen Sprachverständnisses profitieren. Ein Fusionsmodul 64 fusioniert schließlich die Ergebnisse. Wenn das Ergebnis des konventionellen NLU-Moduls 62 eine hohe Bewertung aufweist und die aus der Wssensbasis abgerufenen Entitäten mit diesem Ergebnis kompatibel sind, werden die Ergebnisse zusammengeführt.
Beispiel: „Finde einen Ort, an dem Lasagne serviert wird“
Konventionelles NLU-Ergebnis: Domäne=Navigation, Absicht=Suche_POI Wssensbasiertes NLU-Ergebnis: Lebensmittel=Lasagne, Ursprungsland=ltalien Kombiniertes NLU-Ergebnis: Domäne=Navigation, Absicht=Suche_POI, Lebensmittel=Lasagne, Ursprungsland=ltalien
Wenn das Ergebnis des konventionellen NLU-Moduls 62 eine niedrige Bewertung aufweist und in der Wssensbasis eine benannte Entität gefunden wurde, können die Eigenschaften dieser Entität genutzt werden, um eine intelligente Zurückweisung zu generieren.
Beispiel: „We hat Borussia Dortmund gespielt?“
Konventionelles NLU-Ergebnis: Domäne=Medien
Wssensbasiertes NLU-Ergebnis: Sportverein=Borussia Dortmund, Eigenschaft=Sport Kombiniertes NLU-Ergebnis: Domäne=Sport Referenzen
[1] https://www.wikidata.org
Bezugszeichenliste
10 Empfangen einer Nutzereingabe
11 Extrahieren zumindest einer Entität aus der Nutzereingabe
12 Abfragen von Daten für die zumindest eine Entität aus einer Wissensbasis
13 Auswerten der aus der Wssensbasis abgefragten Daten
14 Generieren einer Antwort auf die Nutzereingabe
20 Vorrichtung
21 Eingang
22 Empfangsmodul
23 Extraktionsmodul
24 Abfragemodul
25 Verarbeitungsmodul
26 Kontrollmodul
27 Schnittstelle
28 Speicher
29 Benutzerschnittstelle
30 Vorrichtung
31 Speicher
32 Prozessor
33 Eingang
34 Ausgang
40 Fortbewegungsmittel
41 Assistenzsystem
42 Sensorik
43 Navigationssystem
44 Datenübertragungseinheit
45 Speicher
46 Netzwerk
50 Dienstanbieter
51 Wissensbasis
60 NLU-Framework
61 Extraktionsmodul
62 Konventionelles NLU-Modul
63 Wissensbasiertes NLU-Modul
64 Fusionsmodul
NE Nutzereingabe

Claims

Patentansprüche
1. Verfahren zum Verarbeiten einer Nutzereingabe (NE), mit den Schritten:
- Empfangen (10) einer Nutzereingabe (NE);
- Extrahieren (11) zumindest einer Entität aus der Nutzereingabe (NE);
- Abfragen (12) von Daten für die zumindest eine Entität aus einer Wissensbasis (51);
- Auswerten (13) der aus der Wissensbasis (51) abgefragten Daten, wobei anhand der aus der Wissensbasis (51) abgefragten Daten eine Klasse für die zumindest eine Entität bestimmt wird und auf Grundlage der Klasse bestimmt wird, ob die zumindest eine Entität zu einer unterstützten Domäne oder einer nicht unterstützten Domäne gehört; und
- Generieren (14) einer Antwort auf die Nutzereingabe (NE) unter Verwendung von Ergebnissen der Auswertung (13).
2. Verfahren gemäß Anspruch 1, wobei die Nutzereingabe (NE) eine Spracheingabe oder eine textbasierte Nutzereingabe ist.
3. Verfahren gemäß Anspruch 1 oder 2, wobei die aus der Wissensbasis (51) abgefragten Daten relationale Attribute der zumindest einen Entität umfassen.
4. Verfahren gemäß einem der vorherigen Ansprüche, wobei die aus der Wissensbasis (51) abgefragten Daten durch eine Abfrage eines Wissensgraphen ermittelt werden.
5. Verfahren gemäß einem der Ansprüche 1 bis 4, wobei anhand der aus der Wissensbasis (51) abgefragten Daten bestimmt wird, ob die zumindest eine Entität außerhalb eines vorgegebenen Anwendungsbereichs liegt.
6. Verfahren gemäß einem der vorherigen Ansprüche, wobei beim Auswerten (13) der aus der Wissensbasis (51) abgefragten Daten ein Abgleich mit Ergebnissen einer nicht-wissensbasierten Sprachverarbeitung vorgenommen wird.
7. Computerprogramm mit Instruktionen, die bei Ausführung durch einen Computer den Computer zur Ausführung der Schritte eines Verfahrens gemäß einem der Ansprüche 1 bis 6 zum Verarbeiten einer Nutzereingabe (NE) veranlassen.
8. Vorrichtung (20) zum Verarbeiten einer Nutzereingabe (NE), mit:
- einem Empfangsmodul (22) zum Empfangen (10) einer Nutzereingabe (NE); - einem Extraktionsmodul (23) zum Extrahieren (11) zumindest einer Entität aus der Nutzereingabe (NE);
- einem Abfragemodul (24) zum Abfragen (12) von Daten für die zumindest eine Entität aus einer Wissensbasis (51); und
- einem Verarbeitungsmodul (25) zum Auswerten (13) der aus der Wssensbasis (51) abgefragten Daten, wobei das Verarbeitungsmodul (25) anhand der aus der Wssensbasis (51) abgefragten Daten eine Klasse für die zumindest eine Entität bestimmt und auf Grundlage der Klasse bestimmt, ob die zumindest eine Entität zu einer unterstützten Domäne oder einer nicht unterstützten Domäne gehört, und zum Generieren (14) einer Antwort auf die Nutzereingabe (NE) unter Verwendung von Ergebnissen der Auswertung (13).
9. Fortbewegungsmittel (40), dadurch gekennzeichnet, dass es eine Vorrichtung (20) gemäß Anspruch 8 aufweist oder eingerichtet ist, ein Verfahren gemäß einem der Ansprüche 1 bis 6 zum Verarbeiten einer Nutzereingabe (NE) auszuführen.
PCT/EP2021/050016 2020-01-15 2021-01-04 Verfahren, computerprogramm und vorrichtung zum verarbeiten einer nutzereingabe WO2021144155A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102020200455.2A DE102020200455A1 (de) 2020-01-15 2020-01-15 Verfahren, Computerprogramm und Vorrichtung zum Verarbeiten einer Nutzereingabe
DE102020200455.2 2020-01-15

Publications (1)

Publication Number Publication Date
WO2021144155A1 true WO2021144155A1 (de) 2021-07-22

Family

ID=74141576

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2021/050016 WO2021144155A1 (de) 2020-01-15 2021-01-04 Verfahren, computerprogramm und vorrichtung zum verarbeiten einer nutzereingabe

Country Status (2)

Country Link
DE (1) DE102020200455A1 (de)
WO (1) WO2021144155A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022113674A1 (de) 2022-05-31 2023-11-30 Dr. Ing. H.C. F. Porsche Aktiengesellschaft Computerimplementiertes Verfahren zur Ermittlung der Auswirkung der Veränderung eines Kalibrierungsparameters auf eine Kalibrierungsgenauigkeit eines Steuergeräts
DE102022115636A1 (de) 2022-06-23 2023-12-28 Dspace Gmbh Verfahren zum Evaluieren eines Ergebnisses einer Simulation eines Steuergeräts

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7398209B2 (en) 2002-06-03 2008-07-08 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
DE102011120119A1 (de) 2011-12-03 2013-01-03 Daimler Ag Verfahren und Vorrichtung zum sprachbasierten Abrufen von extern bereitgestellten Informationen in einem Kraftfahrzeug und betreffendes Computerprogrammprodukt
US20160163312A1 (en) 2014-12-09 2016-06-09 Apple Inc. Disambiguating heteronyms in speech synthesis
EP3392878A1 (de) 2017-04-21 2018-10-24 LG Electronics Inc. Stimmenerkennungsvorrichtung und stimmenerkennungsverfahren

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7398209B2 (en) 2002-06-03 2008-07-08 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
DE102011120119A1 (de) 2011-12-03 2013-01-03 Daimler Ag Verfahren und Vorrichtung zum sprachbasierten Abrufen von extern bereitgestellten Informationen in einem Kraftfahrzeug und betreffendes Computerprogrammprodukt
US20160163312A1 (en) 2014-12-09 2016-06-09 Apple Inc. Disambiguating heteronyms in speech synthesis
EP3392878A1 (de) 2017-04-21 2018-10-24 LG Electronics Inc. Stimmenerkennungsvorrichtung und stimmenerkennungsverfahren

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ALI AHMADVAND ET AL: "ConCET: Entity-Aware Topic Classification for Open-Domain Conversational Agents", CKIM 2019, 3 November 2019 (2019-11-03) - 7 November 2019 (2019-11-07), Beijing, China, XP081684823 *
JAYA KUMAR ASHWINI ET AL: "A knowledge graph based speech interface for question answering systems", SPEECH COMMUNICATION, ELSEVIER SCIENCE PUBLISHERS , AMSTERDAM, NL, vol. 92, 18 May 2017 (2017-05-18), pages 1 - 12, XP085143003, ISSN: 0167-6393, DOI: 10.1016/J.SPECOM.2017.05.001 *
KLÜWER TINA: "Social Talk Capabilities for Dialogue Systems", SAARBRÜCKEN DISSERTATIONS IN LANGUAGE SCIENCE AND TECHNOLOGY, vol. 39, 2015, XP055791021, Retrieved from the Internet <URL:http://universaar.uni-saarland.de/monographien/volltexte/2015/135/pdf/Saarb_Diss_39_komplett.pdf> [retrieved on 20210329] *

Also Published As

Publication number Publication date
DE102020200455A1 (de) 2021-07-15

Similar Documents

Publication Publication Date Title
DE102016125508B4 (de) Auffindbarkeitssystem für Sprachaktionen
DE69917112T2 (de) Erweiterung des Wortschatzes eines Client-Server-Spracherkennungssystems
DE202016008260U1 (de) Erlernen von Aussprachen einer personalisierten Entität
EP0802522B1 (de) Anordnung und Verfahren zur Aktionsermittlung, sowie Verwendung der Anordnung und des Verfahrens
DE112016004863T5 (de) Parametersammlung und automatische Dialogerzeugung in Dialogsystemen
EP1071075B1 (de) Verfahren und Vorrichtung zur Eingabe von Daten
DE202016008217U1 (de) Automatisch augmentierende Nachrichenaustauschthreads besierend auf der Nachrichtenklassifizierung
DE102014109122A1 (de) Systeme und Verfahren für ergebnisbezogene Arbitrierung in Sprachdialogsystemen
DE102009010275A1 (de) Informationsgewinnungsvorrichtung, Informationsgewinnungssystem und Informationsgewinnungsverfahren
DE102018108947A1 (de) Vorrichtung zum Korrigieren eines Äußerungsfehlers eines Benutzers und Verfahren davon
DE102014109121A1 (de) Systeme und Verfahren zur Arbitrierung eines Sprachdialogdienstes
EP1950672A1 (de) Verfahren und Datenverarbeitungssystem zum gesteuerten Abfragen strukturiert gespeicherter Informationen
DE112011101724T5 (de) Automatisches Routen unter Verwendung von Suchergebnissen
WO2021144155A1 (de) Verfahren, computerprogramm und vorrichtung zum verarbeiten einer nutzereingabe
DE102016125804A1 (de) Das Einbeziehen auswählbarer Anwendungslinks in Konversationen mit persönlichen Assistenz-Modulen
DE102015109379A1 (de) Systeme und Verfahren für ein Navigationssystem, das eine Suche mit Diktieren und Teilübereinstimmung verwendet
WO2006111230A1 (de) Verfahren zur gezielten ermittlung eines vollständigen eingabedatensatzes in einem sprachdialogsystem
DE102014201676A1 (de) Verfahren und Systeme für das Steuern des Dialogs von Sprachsystemen
EP3152753B1 (de) Assistenzsystem, das mittels spracheingaben steuerbar ist, mit einer funktionseinrichtung und mehreren spracherkennungsmodulen
DE102019218918A1 (de) Dialogsystem, elektronisches gerät und verfahren zur steuerung des dialogsystems
DE102015212650B4 (de) Verfahren und System zum rechnergestützten Verarbeiten einer Spracheingabe
DE102019219406A1 (de) Kontext-sensitives sprachdialogsystem
WO2002046956A2 (de) Verfahren und vorrichtung zur automatischen auskunfterleitung mittels einer suchmaschine
DE102018122762A1 (de) Fortwährende schulungs- und ausspracheverbesserung durch rundfunkübertragung
DE10129005B4 (de) Verfahren zur Spracherkennung und Spracherkennungssystem

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21700070

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 21700070

Country of ref document: EP

Kind code of ref document: A1