Automated NLU Skill Generation via Slot Mapping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The development of new skills for digital personal assistants relies heavily on manual creation and input of training utterances, which is time-consuming and expensive, and often requires pre-building all possible skills, making it infeasible to satisfy all users' needs.
Innovation Solution
A system and method for automating natural language understanding (NLU) in skill development, where sample utterances and instructions are used to identify pre-built skills with matching slots, generating additional training utterances and training an NLU engine, reducing manual input and enabling on-demand skill learning.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If manual creation and input of training utterances is used, then the NLU engine can be trained for new skills, but the process is time-consuming and expensive
Solution Approach 1:
The system performs preliminary actions by pre-building a database of known skills with their associated slots and training utterances before new skills are needed. When a new skill is requested, the system leverages these pre-prepared resources to automatically generate training data, eliminating the need for manual creation of training utterances from scratch.
Solution Approach 2:
The system creates copies of existing training utterances from known skills and adapts them for new skills. By copying the structure and patterns from pre-built skills, the system can rapidly generate sufficient training data for new skills without manual input, significantly reducing development time while maintaining quality.
2Reliability
If manual creation of training utterances is used, then the NLU engine can learn new skills, but the process is expensive
Solution Approach 1:
The system copies training utterances from existing known skills and reuses them for new skill training. This copying approach eliminates the need for expensive manual creation processes while maintaining the quality and accuracy of training data, thereby reducing development costs significantly.
Solution Approach 2:
The system performs self-service by automatically generating training utterances for new skills without requiring manual intervention. The automated process identifies relevant known skills, extracts appropriate training data, and trains the NLU engine, eliminating labor costs associated with manual skill development.
3Adaptability or versatility
If all possible skills are pre-built, then user needs can be satisfied, but the complexity and resources required increase
Solution Approach 1:
The system transitions from a static pre-built skills approach to a dynamic on-demand skill creation approach. When users express needs for new skills, the system dynamically creates appropriate skills by leveraging known skills and their training data, ensuring adaptability to user needs without requiring all possible skills to be pre-built.
Solution Approach 2:
The system achieves universality by creating a reusable database of known skills that can serve multiple purposes. These known skills act as templates that can be copied and adapted for various new skills, allowing the system to handle diverse user needs with a relatively small set of foundational skill patterns.
4Manufacturing precision
If manual skill development is used, then precise control over skill behavior is achieved, but the ease of operation decreases
Solution Approach 1:
The system performs self-service by automatically generating training utterances and training the NLU engine for new skills without requiring manual intervention. This automated process maintains precision in skill behavior control while dramatically improving ease of operation, allowing users to create skills with minimal effort.
Solution Approach 2:
The system performs preliminary actions by pre-building a comprehensive database of known skills with properly structured training data. This preparation enables the automated generation of accurate training utterances for new skills, maintaining manufacturing precision while reducing the operational burden on users.
Data Source
AI summary
A method includes receiving, from an electronic device, information defining a user utterance associated with a skill to be performed, where the skill is not recognized by a natural language understanding (NLU) engine. The method also includes receiving, from the electronic device, information defining one or more actions for performing the skill. The method further includes identifying, using at least one processor, one or more known skills having one or more slots that map to at least one word or phrase in the user utterance. The method also includes creating, using the at least one processor, a plurality of additional utterances based on the one or more mapped slots. In addition, the method includes training, using the at least one processor, the NLU engine using the plurality of additional utterances.


