CREATION OF A DISTRIBUTION ALGORITHM FOR A VIRTUAL LANGUAGE ASSISTANT
Patent Information
- Application Number
- DE502021008357
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-01-28
- Publication Date
- 2025-09-11
- Estimated Expiration
- 2041-01-28
AI Technical Summary
Existing distribution algorithms for virtual voice assistants face increasing complexity and inefficiency due to the growing number of specific models and similar sentences, leading to longer query training and execution times and poor runtime performance.
A method involving detection of changes in specific models, optimization of input data, and application of subsampling techniques to generate refined distribution algorithms, including domain models and global dispatchers, which are validated and implemented in virtual voice assistants.
Enhances the efficiency and performance of virtual voice assistants by optimizing distribution algorithms, reducing data redundancy and improving runtime processing of user requests.
Description
[0001] The present invention relates to the technical field of virtual voice assistants and in particular to a method for generating a distribution algorithm for a virtual voice assistant, a computer unit configured to generate the virtual voice assistant, a use of the virtual voice assistant, and a computer program programmed to generate the distribution algorithm.
[0002] Distribution algorithms for incoming audio signals from a virtual voice assistant are known from the state of the art. Such distribution algorithms are also referred to as "dispatcher models" and are used to route a user's voice commands to the correct domain or the appropriate specific model for analyzing and executing the request. Specifically, this means: the user transmits a voice command or request as an audio signal to the virtual assistant using their device. The user device can, for example, record this audio signal using its microphone. Today's virtual voice assistants now have a fairly large range of different domains or specific models for user requests. Instead of "domain," the English term "domains" is often used, as this is a well-established technical term familiar to experts, especially those with German expertise.Virtual assistants can make calls, send messages, find information from the Internet, calculate routes, play music, find devices, and much more, with numerous subsets of commands or requests within each of these domains.
[0003] DILEK HAKKANI-TÜR ET AL: "Multi-Domain Joint Semantic Frame Parsing Using Bi-Directional RNN-LSTM", INTERSPEECH 2016, Vol. 2016, September 8, 2016 (2016-09-08), pages 715-719, XP055406473, ISSN: 1990-9772, DOI: 10.21437 / Interspeech.2016-402 describes a holistic multi-domain and multi-task approach (i.e., slot filling, domain and intent detection) for estimating complete semantic frames for all user utterances addressed to a conversational system. The special power of deep learning methods is demonstrated, namely bi-directional recurrent neural networks (RNN) with LSTM cells (RNN-LSTM) to cope with this complexity.
[0004] PIETER GIJSBERS ET AL: "Layered TPOT: Speeding up Tree-based Pipeline Optimization" presents an AuoML pipeline that trains different pipelines on different samples. The pipeline first evaluates algorithms on subsets of the entire dataset before applying the best algorithms to the entire dataset.
[0005] A distribution algorithm, the "dispatcher model," is then tasked with passing the received audio signal, converted into text, as quickly as possible to the specific model designated for this purpose, which analyzes and executes the request. The audio signal is converted to text using speech-to-text algorithms.
[0006] Traditionally, such a distribution algorithm is generated by incorporating all sentences from the various specific models without considering the entities they contain. Authors then manually rework the model to improve its efficiency and eliminate inconsistencies.
[0007] As the number of specific models continues to grow and become more complex, the complexity of the distribution algorithm also grows, making it increasingly difficult to administer and exhibiting increasingly poor performance in terms of the speed at which the input signal is distributed across the various domains. Distribution algorithms are becoming larger and more efficient over time, and it is to be feared that this problem will become significantly worse in the coming years. The training and execution of queries by the algorithm also takes longer with increasing complexity, negatively impacting runtimes. Another problem is the growing number of sentences, which, due to their similarity, are very difficult to assign to different domains because the deviations between the sentences are very minimal.For example, the sentence "switch on RTL" could refer to a radio domain, a TV domain, or a smartphone domain.
[0008] The present invention is therefore based on the object of providing techniques for generating an efficient distribution algorithm and thus at least partially eliminating the disadvantages mentioned above. The present invention solves this problem by means of the independent claims.
[0009] In the following, preferred embodiments of the present invention are explained with reference to the accompanying figures: Fig. 1: shows a flow diagram of the method according to the invention. Fig. 2: shows a technical environment suitable for implementing the method according to the invention. Fig. 1 to carry out.
[0010] Numerous features of the present invention are explained in detail below using preferred embodiments. The present disclosure is not limited to the specifically mentioned feature combinations. Rather, the features mentioned here can be combined in any desired way to form embodiments of the invention, unless expressly excluded below.
[0011] Fig. 1 shows a flowchart of the inventive method for creating the distribution algorithm 1.
[0012] In a first step 3, changes in the specific models, or domains, underlying a virtual language assistant are detected.
[0013] The next step in the process is processing block 5, which generates the input data from the specific models. This means that if "ground truth" changes are detected, the process corresponding to the changes for the specific models triggers the process of processing block 5. To this end, steps 7 and 9 are executed within processing block 5. In step 7, all audio elements, also called "utterances," are extracted from the specific models and added to the input data. In step 9, recognition with regard to the various domains and a corresponding grouping of the audio elements takes place. Thus, the input data is now available.
[0014] Next comes processing block 11, where steps 13, 15, 17, and 19 are executed, particularly sequentially, within processing block 11. Processing block 11 optimizes the input data passed to it from processing block 5. The input data is cleaned by removing duplicates in step 13, correcting erroneous data in step 15, and removing filler words such as "der," "die," "das," " bitte," " danke," and so on, which have no impact on the training of the distribution algorithm, in step 17. In step 19, overlaps and similarities within the respective domains are also identified and removed, so that at the end of the optimization process, a minimal set of phrases per domain remains. This is because today's models are often too large for good runtime performance, and the phrases often differ too little.Optimization also prevents overfitting of the data.
[0015] In a next step, the optimized input data is passed to processing block 21, where the distribution algorithm is created, or rather, where various models of the distribution algorithm are initially created. For this purpose, various methods 23a, b, and c are applied to the optimized input data, generating various subsets. This process is also referred to as subsampling. This also further reduces the number of phrases. In step 23a, the "random subsampling" method is applied, which removes phrases, or audio elements, using an implemented random algorithm. In In step 23b, the "frequency subsampling" method is applied, which removes phrases or audio elements that are rarely used, i.e., whose frequency is below a threshold to be determined. In In step 23c, the "similarity subsampling" method is applied, which removes at least subsets of similar phrases or audio elements from phrases or audio elements that are similar. This results in audio elements with a higher probability of being used in their respective context.
[0016] In steps 23a, b, c, different subsets are generated, which each serve as a basis for the further steps of processing block 21.
[0017] In steps 25a, b, and c, the domain models of the distribution algorithm are generated using the remaining subsets, or rather the remaining "utterances." An NLU model is generated. All utterances remaining after filtering are packaged into an NLU model. It is important to note that only the intents play a role here.
[0018] In steps 27a, b, and c, the respective "global" distribution algorithms are generated based on the respective domain models of the distribution algorithm from steps 25a, b, and c. This is based on domain dispatchers for dialog processing, as well as a global dispatcher that branches into the respective domains. Generation of "refined models": Further filtering of the utterances based on the entities and entity values. These models are optimized for the respective use cases.
[0019] In steps 27a, b, c, the respective "global" distribution algorithms are automatically checked and validated in a separate test environment based on "ground-truth" test data sets.
[0020] In processing block 31, the various global distribution algorithms are automatically tested in steps 33a, b, and c using generated test cases, with a quality value being determined for each test result. In step 35, one of the various versions of the global distribution algorithm, in particular the best one, is selected based on the quality value.
[0021] In step 37, the selected distribution algorithm model is implemented in the virtual voice assistant.
[0022] Thanks to the implemented distribution algorithm model, the virtual voice assistant can now process the user's requests on their device efficiently and with good performance.
[0023] Fig. 2 shows a technical environment 41 which is suitable for carrying out the method according to the invention for generating the distribution algorithm and also for applying the distribution algorithm in connection with a virtual voice assistant.
[0024] The technical environment 41 comprises a central server 51 and a user's terminal 61, which are connected to each other via a communications network 71, in particular the Internet and / or a mobile network. The central server has a computer unit 53 on which the inventive method for generating the distribution algorithm 1 is implemented.
[0025] The input data can be provided to the central server 51 via a central database 55, which makes it particularly easy for the method for generating the distribution algorithm 1 to run automatically when a change in the specific models, or domains, is detected. For this purpose, an algorithm configured to automatically detect such a change can be implemented on the central server 51.
[0026] The distribution algorithm 1 generated on the central server 51 can be implemented in conjunction with a virtual voice assistant, which can also be implemented on the computer unit 53. However, the virtual voice assistant can also be implemented additionally or alternatively on the computer unit 63 of the terminal device 61.
[0027] For this purpose, the generated distribution algorithm 1 can be transmitted to the terminal device 61 via the communication network 71. Possible embodiments of the terminal device 61 are a smartphone, a tablet, a smartwatch, a smart speaker, and / or a computer.
[0028] However, it is also possible for the distribution algorithm to be generated directly on the end device 61. This can offer the advantage of better taking individual user characteristics into account. In this case, the internal database 65 can be accessed for creation, but the external central database 55 can also be accessed to generate the input data. After the distribution algorithm has been generated on the end device 61, it is implemented in the virtual voice assistant and thus implemented.
Claims
1. A method for generating a distribution algorithm for a virtual language assistant by means of a computing unit (53, 63), wherein the distribution algorithm is configured to forward a query from a user as an audio signal to a specific evaluation module for processing the query, wherein the generation of the distribution algorithm comprises the following steps: • Generating (5) an input dataset, wherein the input dataset comprises elements, in particular elements of the specific evaluation modules; • Optimising (11) the input dataset for the purpose of a generation of a reduced input dataset, wherein the optimisation comprises the following steps: removing redundant data, removing filler words and / or removing overlaps and similar sentences; • Applying at least two different methods (23) to the generated reduced dataset to generate at least two different subsets, in particular a first subset and a second subset, from the reduced data set; • Generating at least two different distribution algorithm models (25, 27), wherein each of the two distribution algorithm models is generated based on one of the subsets, in particular a first distribution algorithm model is generated based on the first subset and a second distribution algorithm model is generated based on the second subset of the reduced dataset; • Testing (31) the quality of the at least two different distribution algorithm models against reference data, wherein a quality value is assigned to each of the distribution algorithm models as a test result; • Selecting (35) the distribution algorithm model with the best quality value as the distribution algorithm.
2. The method according to Claim 1, wherein the distribution algorithm is generated automatically by means of the computing unit (53, 63).
3. The method according to one of the preceding claims, wherein the elements, in particular the audio elements, are grouped into different domains before the optimisation.
4. The method according to any one of the preceding claims, wherein the distribution algorithm is regenerated at regular time intervals.
5. The method according to any one of the preceding claims, wherein the distribution algorithm is regenerated when new specific evaluation modules are implemented in the virtual speech assistant, when existing evaluation modules of the virtual speech assistant are changed, and / or when a change in the ground truth data is detected.
6. The method according to any one of the preceding claims, wherein the optimisation is carried out up to a predetermined termination criterion.
7. The method according to Claim 6, wherein the termination criterion is either the generation of a minimum dataset or of an optimal compromise between the size of the dataset and the information content of the dataset.
8. The method according to any one of the preceding claims, wherein the generation of the various subsets comprises the following method: random subsampling, frequency subsampling, and / or similarity analysis subsampling.
9. The method according to any one of the preceding claims, wherein the computing unit (53, 63) is implemented on a central server (51) or on an end device (63) of the user.
10. The method according to any one of the preceding claims, wherein the computing unit has access to a local and / or a central database (55, 65), wherein the database provides the input data.
11. The method according to any one of the preceding claims, wherein the selected distribution algorithm model is transmitted to end devices of the users via a communication network (71).
12. Use of a distribution algorithm according to any one of Claims 1-11 with a virtual speech assistant on a user end device.
13. A computing unit on a server or on a user end device, wherein the computing unit includes means that are configured to carry out one of the methods 1-11 and / or to run the distribution algorithm in association with a virtual speech assistant.
14. A computer program, wherein the computer program is implemented on a computer unit and executes the steps of the method 1-11 by the commands of the computing program.