Virtual Keyboard Prediction Using Spatial Probability Models

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing virtual keyboard systems are less accurate and efficient in text input due to their inability to adapt to individual user typing styles and learn from historical input data, leading to increased correction needs and processing requirements.

Innovation Solution

A data input system that models user interactions on a virtual keyboard by generating probabilities for intended targets based on historical input events, using a 2D Gaussian distribution and conjugate prior estimation to predict character inputs, and updates models incrementally to improve prediction accuracy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a reduced keyboard is used, then the error rate is reduced, but the information content of the input is reduced

Engineering Contradiction:
Improveerror rateVSAvoidinformation content
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The system uses feedback by analyzing the spatial relationship between consecutive input events and using this information to disambiguate characters. The feedback loop processes the sequence of inputs and their relative positions to determine the most likely intended character, thereby recovering information lost due to the reduced keyboard layout.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The invention transitions from a one-dimensional character mapping to a two-dimensional spatial analysis by considering the relative positions of input events on the keyboard. This dimensional change allows the system to extract additional information from the spatial coordinates of inputs, compensating for the reduced information content while maintaining lower error rates.

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

2Loss of information

If a full keyboard with error correction is used, then the information content is maintained, but the number of disambiguation keystrokes increases

Engineering Contradiction:
Improveinformation contentVSAvoiddisambiguation keystrokes
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The system performs preliminary action by pre-calculating and storing the relative spatial relationships between all pairs of keyboard locations. When an input event occurs, the system quickly retrieves and applies the pre-computed spatial information to disambiguate the character, avoiding time-consuming real-time calculations and reducing the number of disambiguation keystrokes required.

Inventive Principle:
Principle #10Preliminary action

3Ease of operation

If existing virtual keyboard systems use auto-correction based on coordinate distances, then character input is enabled, but the system cannot adapt to individual user typing styles

Engineering Contradiction:
Improvecharacter inputVSAvoiduser typing style adaptation
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The system implements self-service by automatically learning and adapting to each user's typing patterns through continuous observation of their input behavior. The spatial relationship data is collected and processed to build a personalized model of the user's typing style, enabling the system to improve its predictions over time without requiring explicit user programming or configuration.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11256415B2User input prediction
Publication Date: 2022.02.22 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11256415B2 patent drawing

AI summary

Disclosed are systems and methods that model a user's interaction with a user interface. There is provided a data input system, comprising a user interface having a plurality of targets and being configured to receive user input. The system comprises a plurality of models, each of which relates previous user input events corresponding to a target to that target. An input probability generator is configured to generate, in association with the plurality of models, a probability that a user input event corresponds to a particular target. There is also provided a method of modelling a target of a user interface having a plurality of targets and being configured to receive input, by modelling for each target previous user input events which correspond to that target. Furthermore, there is provided a method of inputting data into a system comprising a user interface having a plurality of targets and being configured to receive input. The method comprises generating using an input probability generator in association with a plurality of models, each model relating previous input events corresponding to a target to that target, a probability that a user input event corresponds to a particular target.