Virtual Keyboard Autocorrection via Word Lattice Pruning
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing autocorrect systems for virtual keyboards, particularly in languages like Japanese and Chinese, face challenges in accurately correcting keystroke errors due to the complexity of these languages and the lack of word boundaries, leading to reduced recognition accuracy.
Innovation Solution
A system that combines a virtual keyboard error model with a language model to construct a word lattice, using dynamic programming and pruning techniques to weight paths and reduce search time, thereby improving autocorrecting accuracy by determining candidate sentences based on path weights and discarding less likely paths.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If a language model alone is used for autocorrection, then the system is simple to implement, but the autocorrection accuracy is insufficient for complex languages like Japanese and Chinese
Solution Approach 1:
The patent combines a language model with a virtual keyboard error model into an integrated autocorrection system. The language model provides contextual understanding while the keyboard error model captures specific typing error patterns, together resolving ambiguities in complex languages without excessive complexity
Solution Approach 2:
The autocorrection system uses a composite approach by integrating multiple modeling components (language model, keyboard error model, word lattice) that work together synergistically, similar to how composite materials combine different substances to achieve superior properties that individual components cannot provide alone
2Measurement precision
If all paths in the word lattice are searched to ensure accurate autocorrection, then the accuracy is improved, but the search time and computational resources increase significantly
Solution Approach 1:
The patent extracts and removes low-probability paths from the word lattice search space using pruning techniques. By eliminating paths that are unlikely to lead to correct autocorrections, the system maintains accuracy for viable candidates while significantly reducing search time and computational overhead
Solution Approach 2:
The system performs partial search by focusing computational resources on the most promising paths in the word lattice rather than exhaustively searching all possible paths. This selective approach achieves sufficient accuracy for practical autocorrection while avoiding the excessive time cost of complete enumeration
Data Source
AI summary
Various techniques for autocorrecting virtual keyboard input for various languages (e.g., Japanese, Chinese) are disclosed. In one aspect, a system or process receives a sequence of keyboard events representing keystrokes on a virtual keyboard. A hierarchical data structure is traversed according to the sequence of keyboard events to determine candidate words for the sequence of keyboard events. A word lattice is constructed using a language model, including deriving weights or paths in the word lattice based on candidate word statistics and data from a keyboard error model. The word lattice is searched to determine one or more candidate sentences comprising candidate words based on the path weights. Paths through the word lattice can be pruned (e.g., discarded) to reduce the size and search time of the word lattice.


