Text Prediction Engine Using Multi-Model Weighting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current text input methods for electronic devices, such as keyboards and touch-screen devices, face limitations in efficiency and accuracy, particularly in reducing user labor and adapting to contextual typing styles, as they rely on static dictionaries and character-based predictions rather than adaptive probabilistic language models.

Innovation Solution

A system utilizing a text prediction engine with multiple language models, including human language, application-specific models, and user-specific models, which generates concurrent predictions using n-gram maps and probabilistic tries, and combines predictions using an ordered associative structure to provide context-aware and adaptive text suggestions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If static dictionaries and character-based predictions are used, then device complexity is reduced, but text input accuracy and adaptability deteriorate

Engineering Contradiction:
Improveadaptability to contextual typing stylesVSAvoidcomplexity of prediction system
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system segments the language model into multiple independent components: n-gram maps for statistical language patterns, probabilistic tries for efficient word storage and retrieval, and context-specific models for different application domains. Each component can be independently trained, stored, and updated, allowing the system to achieve high adaptability while managing complexity through modular architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system transitions from traditional single-dimension character-based prediction to multi-dimensional prediction by incorporating: (1) n-gram context windows capturing sequential language patterns, (2) probabilistic dimensions for word likelihood calculations, (3) application-specific dimensions for domain-adapted predictions, and (4) user-specific dimensions for personalized typing patterns. This multi-dimensional approach enables comprehensive adaptability without linearly increasing system complexity.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Measurement precision

If multiple language models are used for concurrent predictions, then text input accuracy improves, but processing time and computational resources increase

Engineering Contradiction:
Improvetext prediction accuracyVSAvoidprediction generation time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-computing and storing language patterns in n-gram maps during offline training, pre-building probabilistic tries with pre-calculated word probabilities, and pre-training application-specific models. During actual text input, these pre-prepared structures enable rapid concurrent predictions without requiring real-time computation of language patterns, thus maintaining high accuracy while minimizing processing time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates and maintains multiple specialized language model copies: general-purpose n-gram models, application-specific models (e.g., SMS, email, web search), and user-specific adaptive models. Each copy is optimized for its specific domain and can operate independently and concurrently. This copying strategy enables the system to leverage multiple models simultaneously for improved accuracy while each model remains computationally efficient within its specialized domain.

Inventive Principle:
Principle #26Copying

3Productivity

If context-aware adaptive predictions are implemented, then user labor in text input is reduced, but memory requirements and data storage increase

Engineering Contradiction:
Improvetext input efficiencyVSAvoidmemory storage requirements
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system implements a nested architecture where user-specific adaptive models are embedded within application-specific models, which in turn are nested within the general n-gram language models. This nested structure allows the system to store and process multiple levels of contextual information hierarchically: general language patterns at the outer level, application-specific patterns in the middle level, and user-specific patterns at the inner level. This nesting enables comprehensive context-aware predictions while efficiently managing memory by sharing common structures across different model levels.

Inventive Principle:
Principle #7Nested doll (Nesting)

Solution Approach 2:

The system dynamically adjusts model parameters based on context: selecting different n-gram window sizes, adjusting probability thresholds, switching between different application-specific models, and adapting user-specific model weights based on recent usage patterns. These parameter changes allow the system to optimize the balance between prediction accuracy and memory usage dynamically, loading only the necessary model components and precision levels required for each specific prediction context, thereby reducing overall memory requirements while maintaining high text input efficiency.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10402493B2System and method for inputting text into electronic devices
Publication Date: 2019.09.03 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10402493B2 patent drawing
  • US10402493B2 patent drawing
  • US10402493B2 patent drawing

AI summary

Systems comprising a user interface configured to receive text input by a user and a text prediction engine configured to receive the input text and generate text predictions. The text prediction engine may comprise a general language model and a context-specific language model. The text prediction engine is configured to generate text predictions from the general language model and the context-specific language model and combine the text predictions. The text prediction engine may comprise first and second language models and a first context-specific weighting factor associated with the first language model. The text prediction engine is configured to generate text predictions using the first and second language models, generate weighted probabilities of the text predictions from the first language model using the first context-specific weighting factor; and generate final text predictions from the weighted predictions generated from the first language model and the predictions generated by the second language model.